Fork me on GitHub
摘要: ingress controller在物理机上的两种部署方式 ingress controller(ingress nginx)负责k8s中的7层负载均衡。其在物理机中有多种部署方式。本文中主要选择了nodePort和hostNetwork两种部署方式进行介绍。主要原因是这两种部署方式不需要借助于其阅读全文
posted @ 2019-06-19 17:22 xinkun 阅读(244) 评论(0) 编辑
摘要: kubeadm部署k8s 使用kubeadm进行k8s的部署主要分为以下几个步骤: 环境预装: 主要安装docker、kubeadm等相关工具。 集群部署: 集群部署分为single master(单master,只有一个master节点)和高可用HA集群部署两种模式。主要部署k8s的相关组件。本文阅读全文
posted @ 2019-06-18 17:42 xinkun 阅读(155) 评论(0) 编辑
摘要: 最近在使用kubeadm时,被各种连接不上搞到崩溃。费了很多力气,基本都解决了。这里统一整理了国内的一些镜像源,apt源,kubeadm源等,以便查阅。 国内镜像源 Azure China提供了目前用过的质量最好的镜像源。无论是速度还是覆盖范围。而且都支持匿名拉取,也就是不需要登录。这点特别友好。 阅读全文
posted @ 2019-06-14 18:54 xinkun 阅读(753) 评论(0) 编辑
摘要: 写在前面 最近用kubeadm鼓捣了几个cluster集群测试用,网络用的flannel。因为这些机器都不是纯净的环境(以前部署过其他的k8s或者有一些特别的设置),所以部署起来遇到了很多问题。看了下相关的文章,梳理了flannel的vxlan的工作原理,成功对这几个环境进行了排障。本文主要是相关流阅读全文
posted @ 2019-06-11 17:38 xinkun 阅读(128) 评论(3) 编辑
摘要: 写在最前 偶然整理,翻出来14年刚开始学docker的时候的好多资料。当时docker刚刚进入国内,还有很多的问题。当时我们的思考方式很简单,docker确实是个好的工具,虽然还不成熟。但是不能因为短时间内造桥不行,就不过河了。我们的方式很简单,先造个小船划过去。由于各种条件的局限,所以很多方法真的阅读全文
posted @ 2019-05-22 10:36 xinkun 阅读(170) 评论(1) 编辑
摘要: 不聊什么 在开始聊operator前,先说说这篇文章里我们不聊什么。我们这里不聊operator的具体实现,不聊operator的由来历史,不聊operator的hello world。如果想了解这些,其实可以从别的很多文章中可以查找到。这里我们把一些常见的概念,如docker、controller阅读全文
posted @ 2019-05-17 12:42 xinkun 阅读(192) 评论(0) 编辑
摘要: kube liveboard 随着kubernetes 集群的增大,对于集群数据选取恰当的形式进行展示有助于直观反映集群的状态,方便发现集群的短板,了解集群的瓶颈。因此,笔者做了kube liveboard这个项目用以实现以上目标,实现集群状态的可视化。 从apiserver中可以获取所有的资源信息阅读全文
posted @ 2019-04-09 12:04 xinkun 阅读(363) 评论(0) 编辑
摘要: 解决docker容器的dm盘打满导致容器无法启动的问题,并梳理容器的dm盘挂载的整个流程。并详细解释了docker中mnt下挂载点不可见的问题。阅读全文
posted @ 2019-04-02 17:28 xinkun 阅读(591) 评论(0) 编辑
摘要: Serverless/FaaS伴随着k8s的热度增加,也成为了热门话题。相关文章介绍了很多,这里笔者不一一赘述,而是从个人见解上聊聊关于FaaS的架构和意义。 FaaS可能的架构优化 从AppEngine到docker的演变启发 在笔者上学时,云计算刚刚火热,IaaS/PaaS/SaaS的基础概念已阅读全文
posted @ 2019-04-01 10:07 xinkun 阅读(151) 评论(0) 编辑
摘要: 问题的来由 在kubernetes集群的生产中,经常遇到这样的一个问题,就是在应用大规模更新时,大量容器删除而后大量容器创建,创建的容器需要很长时间才能就绪。这其中一个可能的原因,就是大量容器删除释放ip过于缓慢,导致新创建的容器无法及时获取ip,从而无法及时启动。 这种情况普遍存在于ip池较小或者阅读全文
posted @ 2019-03-25 11:16 xinkun 阅读(225) 评论(0) 编辑
摘要: littleTools littleTools是我根据日常运维时编写的一个小工具,开源在了 "https://github.com/xuxinkun/littleTools" 上。 littleTools包含一组简短命令,主要用于简化某些命令的输入。目前littleTools有docker tool阅读全文
posted @ 2019-03-21 11:24 xinkun 阅读(83) 评论(0) 编辑
摘要: ansible kubectl connection plugin ansible是目前业界非常火热的自动化运维工具。ansible可以通过ssh连接到目标机器上,从而完成指定的命令或者操作。 在kubernetes集群中,因为并不是所有的服务都是那么容器化。有时候也会用到ansible进行一些批量阅读全文
posted @ 2019-03-19 12:25 xinkun 阅读(398) 评论(0) 编辑
摘要: docker容器中的环境变量 docker可以为容器配置环境变量。配置的途径有两种: 1. 在制作镜像时,通过 命令为镜像增加环境变量。在容器启动时使用该环境变量。 2. 在容器启动时候,通过参数配置环境变量,如果与镜像中有重复的环境变量,会覆盖镜像的环境变量。 使用 即可查看容器中生效的环境变量。阅读全文
posted @ 2019-03-14 17:00 xinkun 阅读(2439) 评论(0) 编辑
摘要: kubesql kubesql( "https://github.com/xuxinkun/kubesql" )是我最近开发的一个使用sql查询kubernetes资源的工具。诸如node,pod等kubernetes的资源被处理为table。而后可以使用sql语句对其进行查询。 例如,所有pod都阅读全文
posted @ 2019-03-12 16:34 xinkun 阅读(214) 评论(0) 编辑
摘要: hostname在docker中是使用UTS namespace进行隔离的。docker中主要有两种ns的用法, 一种是 。这种会新创建一个新的uts ns。 一种是 。这种创建的容器将会使用物理机的uts ns。 在k8s中,是这样处理的uts的ns的: 这里我们可以关注几个事情: 1. paus阅读全文
posted @ 2019-01-10 16:40 xinkun 阅读(923) 评论(0) 编辑