为什么 kubernetes 天然适合微服务 (3)
此文已由作者刘超授权网易云社区发布。 欢迎访问 网易云社区 ,了解更多网易技术产品运营经验 四、Kubernetes 本身就是微服务架构 基于上面这十个设计要点,我们再回来看 Kubernetes,会发现越看越顺眼。 首先 Kubernetes 本身就是微服务的架构,虽然看起来复杂,但是容易定制化,容易横向扩展。 如图黑色的部分是 Kubernetes 原生的部分,而蓝色的部分是网易云为了支撑大规模高并发应用而做的定制化部分。 Kubernetes 的 API Server 更像网关,提供统一的鉴权和访问接口。 众所周知,Kubernetes 的租户管理相对比较弱,尤其是对于公有云场景,复杂的租户关系的管理,我们只要定制化 API Server,对接 Keystone,就可以管理复杂的租户关系,而不用管其他的组件。 在 Kubernetes 中几乎所有的组件都是无状态化的,状态都保存在统一的 etcd 里面,这使得扩展性非常好,组件之间异步完成自己的任务,将结果放在 etcd 里面,互相不耦合。 例如图中 pod 的创建过程,客户端的创建仅仅是在 etcd 中生成一个记录,而其他的组件监听到这个事件后,也相应异步的做自己的事情,并将处理的结果同样放在 etcd 中,同样并不是哪一个组件远程调用 kubelet,命令它进行容器的创建,而是发现 etcd 中,pod 被绑定到了自己这里