一段文字讲清楚Kubernetes的工作原理

https://www.toutiao.com/a6656616314120962574/

2019-02-11 13:51:00

我们用命令行kubectl run nginx --image=nginx 创建一个deployment之后稍等片刻,便能观察到自动生成了一个处于运行状态的pod。

一段文字讲清楚Kubernetes的工作原理

这背后其实Kubernetes帮我们做了很多事情。

本文会围绕这张图进行讲解。

一段文字讲清楚Kubernetes的工作原理

首先,我们在kubectl get pod命令后加上-v=9的参数,这个参数可以打印kubectl命令运行的明细。

首先看到kubectl从本地目录.kube里读取配置,最主要的目的是获得API服务器的url,然后通过HTTP的方式同API server进行通讯。

一段文字讲清楚Kubernetes的工作原理

由此可见,kubectl就是一个轻量级的命令行工具,把用户输入的指令简单投递给API server,本身不处理任何逻辑。

https://kubernetes.io/docs/reference/kubectl/overview/

一段文字讲清楚Kubernetes的工作原理

API服务器会把我们提交的资源存储到etcd上。etcd是一个分布式的key value存储实现,专门解决分布式系统或者集群部署的存储一致性问题。

etcd gracefully handles leader elections during network partitions and will tolerate machine failure, including the leader.

github地址:

https://github.com/etcd-io/etcd

应该是用go语言开发的:

一段文字讲清楚Kubernetes的工作原理

猜你喜欢

转载自blog.csdn.net/weixin_42137700/article/details/87063690