Fork me on GitHub
摘要:错误现象 在运行容器时,出现以下错误 而实际查看容器时,可以看到容器已经成功创建,但是实际无法启动。 问题复现及分析 容器直接启动 是可以正常启动的。 但是加了挂载的参数 参数后就无法启动了。所以可以判断问题是出在挂载上。 查看上面那个未能启动的容器,可以看到容器中的挂载。 通过上面可以看到,容器中 阅读全文
posted @ 2017-07-04 18:29 xinkun 阅读(2277) 评论(0) 推荐(0) 编辑
摘要:错误现象 在docker容器中想要修改 中的namesever,使用sed命令进行执行时遇到错误: 但是可以通过vi/vim直接修改这个文件 这个文件的内容。 问题原因 sed命令的实质并不是修改文件,而是产生一个新的文件替换原有的文件。这里我们做了一个实验。 我先创建了一个 的文件,文件内容是 。 阅读全文
posted @ 2017-07-04 15:05 xinkun 阅读(3008) 评论(1) 推荐(0) 编辑
摘要:docker对CPU的使用 docker对于CPU的可配置的主要几个参数如下: 这些参数主要是通过配置在容器对应cgroup中,由cgroup进行实际的CPU管控。其对应的路径可以从cgroup中查看到 cpuset cpus 主要用于指定容器运行的CPU编号,也就是我们所谓的绑核。 cpushar 阅读全文
posted @ 2017-05-16 10:49 xinkun 阅读(5791) 评论(0) 推荐(1) 编辑
摘要:ambari部署各个组件 使用ambari进行部署时主要需要的组件包括: ambari server: 主要部署的控制节点,负责控制agent进行部署。 mysql: server存储的数据库。也支持postgresql等数据库。 ambari agent: 主要执行部署的节点,根据控制节点,部署相 阅读全文
posted @ 2017-05-16 10:47 xinkun 阅读(4873) 评论(0) 推荐(0) 编辑
摘要:前言 在私有云的容器化过程中,我们并不是白手起家开始的。而是接入了公司已经运行了多年的多个系统,包括自动编译打包,自动部署,日志监控,服务治理等等系统。在容器化之前,基础设施主要以物理机和虚拟机为主。因此,我们私有云落地的主要工作是基础设施容器化,同时在应用的运维方面,兼用了之前的配套系统。利用之前 阅读全文
posted @ 2017-01-11 14:19 xinkun 阅读(2348) 评论(0) 推荐(3) 编辑
摘要:tensorflow "tensorflow" 是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从图象的一端流动到另一端计算过程。TensorFlow是将 阅读全文
posted @ 2016-10-21 10:31 xinkun 阅读(9216) 评论(9) 推荐(1) 编辑
摘要:问题现象 部署有一个etcd集群,分别是 ,`10.8.65.107 10.8.65.108`。 然后我使用etcdctl为一个值设置ttl,然后通过watch观察,发现失效时间不准确,而且时间随机。 比如我设置 的ttl时间为10秒 这里采用的是东八区时间,所以UTC时间应该为 但是通过watch 阅读全文
posted @ 2016-09-02 17:21 xinkun 阅读(2477) 评论(0) 推荐(0) 编辑
摘要:spark单机运行部署 环境预装 需要预先下载jdk和spark。机器使用centos6.6(推荐)。然后依次运行 配置 1. 关闭selinux。 。 2. 通过 查看机器名,然后加入到 中。 3. 配置 。在文件最后添加 。然后运行 使其生效。 运行spark服务 启动spark master服 阅读全文
posted @ 2016-08-24 09:43 xinkun 阅读(3870) 评论(0) 推荐(0) 编辑
摘要:kube proxy service是一组pod的服务抽象,相当于一组pod的LB,负责将请求分发给对应的pod。service会为这个LB提供一个IP,一般称为cluster IP。 kube proxy的作用主要是负责service的实现,具体来说,就是实现了内部从pod到service和外部的 阅读全文
posted @ 2016-08-23 16:38 xinkun 阅读(31374) 评论(3) 推荐(6) 编辑
摘要:kubernetes源码阅读 工欲善其事,必先利其器。在阅读kubernetes源码时,我也先后使用过多个IDE,最终还是停留在IDEA上。 我惯用的是pycharm(IDEA的python IDE版本),配上go的插件,把源码目录进行合理组织后,加入到go的lib,即可实现跳转。更多的方法可以参看 阅读全文
posted @ 2016-08-09 16:30 xinkun 阅读(7247) 评论(5) 推荐(2) 编辑
摘要:Overview 目前围绕着docker的网络,目前有两种比较主流的声音,docker主导的Container network model(CNM)和社区主导的Container network interface(CNI)。本文就针对两者模型进行分别介绍。 Container Networking 阅读全文
posted @ 2016-07-26 15:35 xinkun 阅读(5654) 评论(0) 推荐(0) 编辑
摘要:部署kubernetes dns服务 kubernetes可以为pod提供dns内部域名解析服务。其主要作用是为pod提供可以直接通过service的名字解析为对应service的ip的功能。 部署kubernetes dns服务主要需要两部分。 kubelet 在kubelet中增加启动项,修改 阅读全文
posted @ 2016-07-25 11:12 xinkun 阅读(6588) 评论(0) 推荐(0) 编辑
摘要:flannel "flannel" 可以为容器提供网络服务。 其模型为全部的容器使用一个network,然后在每个host上从network中划分一个子网subnet。 为host上的容器创建网络时,从subnet中划分一个ip给容器。 其采用目前比较流行的no server的方式,即不存在所谓的控 阅读全文
posted @ 2016-07-22 17:56 xinkun 阅读(2597) 评论(0) 推荐(0) 编辑
摘要:角色说明 这里主要有三个角色,分别部署不同的服务。 |角色|服务| | | | |etcd|etcd| |master|kube apiserver/kube scheduler/kube controller| |node|kube proxy/flannl/kubelet/docker| 这里网 阅读全文
posted @ 2016-07-22 15:22 xinkun 阅读(499) 评论(0) 推荐(0) 编辑
摘要:python & snmp 用python获取snmp信息有多个现成的库可以使用,其中比较常用的是 和`pysnmp`两个库。网上有较多的关于两个库的例子。 本文重点在于如何并发的获取snmp的数据,即同时获取多台机器的snmp信息。 netsnmp 先说netsnmp。python的 "netsn 阅读全文
posted @ 2016-07-06 18:10 xinkun 阅读(7493) 评论(0) 推荐(2) 编辑