Docker - Kubernetes架构

Kubernetes是Docker容器的编排框架,它有助于将容器作为服务暴露给外部世界.例如,您可以有两个服务 : 一项服务包含 nginx mongoDB ,另一项服务包含 nginx redis .每个服务都可以有一个IP或服务点,可以通过其他应用程序连接.然后使用Kubernetes来管理这些服务.

下图以简单的格式显示了Kubernetes从架构的角度如何工作.

Kubernetes Architecture

minion 是运行所有服务的节点.你可以在一个时间点运行许多小兵.每个小兵都将主持一个或多个POD.每个 POD 就像托管服务一样.然后每个POD包含Docker容器.每个POD可以托管一组不同的Docker容器.然后,代理用于控制向外界公开这些服务.

Kubernetes在其架构中有几个组件.每个组成部分的作用解释如下&mius;

  • etcd : 此组件是高度可用的键值存储,用于存储共享配置服务发现.在这里,各种应用程序将能够通过发现服务连接到服务.

  • Flannel : 这是容器所需的后端网络.

  • kube-apiserver : 这是一个可以用来编排Docker容器的API.

  • kube-controller-manager : 这用于控制 Kubernetes服务.

  • kube-scheduler : 这用于在主机上安排容器.

  • Kubelet : 这用于通过清单文件来控制容器的启动.

  • kube-proxy : 这用于向外界提供网络代理服务.