Fork me on GitHub
摘要: 伴随着kubernetes 1.20中对于docker的弃用,关于docker的灭亡与kubernetes的兴起的话题再度热了起来。讨论中关于docker灭亡的观点我不敢苟同。docker还远未到达灭亡的程度。相较而言,我觉得更恰当的说法应该是docker的衰落。本文我也就我个人的角度,聊聊我所经历的docker的衰落与kubernetes的兴起。 阅读全文
posted @ 2020-12-09 09:38 xinkun 阅读(1190) 评论(1) 推荐(3) 编辑
摘要: 云原生时代不可变基础设施逐渐成为了趋势。但是在实践过程中,不可变基础设施对于应用要求严格、适用场景受限,导致难以落地。 本文通过对kubernetes中的可变与不可变基础设施的思考,以及对更新升级变化的分析,介绍了OPPO云在动态修改和原地更新的定制设计思路。并结合Kubernetes和OpenKruise的定制代码,介绍了OPPO云在可变基础设施的实践。 阅读全文
posted @ 2020-11-27 19:22 xinkun 阅读(472) 评论(1) 推荐(1) 编辑
摘要: 写在前面 kubectl虽然查询单个的kubernetes资源或者列表都已经比较方便,但是进行更为多个资源的联合查询(比如pod和node),以及查询结果的二次处理方面却是kubectl无法胜任的。所以一直以来,我都有想法将kubernetes作为数据库进行查询。在去年,我开发了第二个版本的kube 阅读全文
posted @ 2020-05-24 11:47 xinkun 阅读(597) 评论(0) 推荐(0) 编辑
摘要: 通过源码分析详细介绍了pod删除时的kubelet一侧的主要处理流程 阅读全文
posted @ 2019-11-24 17:53 xinkun 阅读(2441) 评论(0) 推荐(1) 编辑
摘要: 以一次k8s压测导致所有kubelet呆住,节点大面积notready的问题为例,介绍了在kubernetes出现问题时的一些排障思路和方法,以及自己对于生产和测试问题排障的一些原则。 阅读全文
posted @ 2019-11-10 15:51 xinkun 阅读(1623) 评论(0) 推荐(1) 编辑
摘要: liveness与readiness的探针工作方式源码解析 liveness和readiness作为k8s的探针,可以对应用进行健康探测。 二者支持的探测方式相同。主要的探测方式支持http探测,执行命令探测,以及tcp探测。 探测均是由kubelet执行。 执行命令探测 由kubelet,通过CR 阅读全文
posted @ 2019-11-03 11:26 xinkun 阅读(20594) 评论(0) 推荐(2) 编辑
摘要: ingress controller在物理机上的两种部署方式 ingress controller(ingress nginx)负责k8s中的7层负载均衡。其在物理机中有多种部署方式。本文中主要选择了nodePort和hostNetwork两种部署方式进行介绍。主要原因是这两种部署方式不需要借助于其 阅读全文
posted @ 2019-06-19 17:22 xinkun 阅读(13734) 评论(1) 推荐(0) 编辑
摘要: kubeadm部署k8s 使用kubeadm进行k8s的部署主要分为以下几个步骤: 环境预装: 主要安装docker、kubeadm等相关工具。 集群部署: 集群部署分为single master(单master,只有一个master节点)和高可用HA集群部署两种模式。主要部署k8s的相关组件。本文 阅读全文
posted @ 2019-06-18 17:42 xinkun 阅读(2031) 评论(0) 推荐(0) 编辑
摘要: 最近在使用kubeadm时,被各种连接不上搞到崩溃。费了很多力气,基本都解决了。这里统一整理了国内的一些镜像源,apt源,kubeadm源等,以便查阅。 国内镜像源 Azure China提供了目前用过的质量最好的镜像源。无论是速度还是覆盖范围。而且都支持匿名拉取,也就是不需要登录。这点特别友好。 阅读全文
posted @ 2019-06-14 18:54 xinkun 阅读(25244) 评论(4) 推荐(5) 编辑
摘要: 写在前面 最近用kubeadm鼓捣了几个cluster集群测试用,网络用的flannel。因为这些机器都不是纯净的环境(以前部署过其他的k8s或者有一些特别的设置),所以部署起来遇到了很多问题。看了下相关的文章,梳理了flannel的vxlan的工作原理,成功对这几个环境进行了排障。本文主要是相关流 阅读全文
posted @ 2019-06-11 17:38 xinkun 阅读(3166) 评论(4) 推荐(2) 编辑
摘要: 写在最前 偶然整理,翻出来14年刚开始学docker的时候的好多资料。当时docker刚刚进入国内,还有很多的问题。当时我们的思考方式很简单,docker确实是个好的工具,虽然还不成熟。但是不能因为短时间内造桥不行,就不过河了。我们的方式很简单,先造个小船划过去。由于各种条件的局限,所以很多方法真的 阅读全文
posted @ 2019-05-22 10:36 xinkun 阅读(1071) 评论(1) 推荐(0) 编辑
摘要: 不聊什么 在开始聊operator前,先说说这篇文章里我们不聊什么。我们这里不聊operator的具体实现,不聊operator的由来历史,不聊operator的hello world。如果想了解这些,其实可以从别的很多文章中可以查找到。这里我们把一些常见的概念,如docker、controller 阅读全文
posted @ 2019-05-17 12:42 xinkun 阅读(1266) 评论(0) 推荐(1) 编辑
摘要: kube liveboard 随着kubernetes 集群的增大,对于集群数据选取恰当的形式进行展示有助于直观反映集群的状态,方便发现集群的短板,了解集群的瓶颈。因此,笔者做了kube liveboard这个项目用以实现以上目标,实现集群状态的可视化。 从apiserver中可以获取所有的资源信息 阅读全文
posted @ 2019-04-09 12:04 xinkun 阅读(1868) 评论(0) 推荐(1) 编辑
摘要: 解决docker容器的dm盘打满导致容器无法启动的问题,并梳理容器的dm盘挂载的整个流程。并详细解释了docker中mnt下挂载点不可见的问题。 阅读全文
posted @ 2019-04-02 17:28 xinkun 阅读(10583) 评论(0) 推荐(0) 编辑
摘要: Serverless/FaaS伴随着k8s的热度增加,也成为了热门话题。相关文章介绍了很多,这里笔者不一一赘述,而是从个人见解上聊聊关于FaaS的架构和意义。 FaaS可能的架构优化 从AppEngine到docker的演变启发 在笔者上学时,云计算刚刚火热,IaaS/PaaS/SaaS的基础概念已 阅读全文
posted @ 2019-04-01 10:07 xinkun 阅读(942) 评论(0) 推荐(1) 编辑