k8s重要概念

Kubernetes
概念 含义
Cluster Cluster 是计算、存储和网络资源的集合,k8s利用这些资源运行各种基于容器的应用
Master 负责调度,决定应用的运行位置。可以是物理机或虚拟机
Node 运行容器应用,被 Master 管理, Node 定期汇报容器状态并接受 Master 的管理指令
Pod K8s 上的最小工作单元。每个 Pod 包含一个或多个容器。 Pod 中的容器会被作为整体被 Master 调度到某个 Node 上运行。
Controller K8s 通过 Controller 间接管理 Pod。Controller 决定 Pod 的部署特性(副本、Node等)。
Service 定义外界访问特定 Pod 的方式。Service 有自己的 IP 和端口,为 Pod 提供负载均衡。

多个 Pod 之间如何通信?

一个应用可以产生多个副本运行在多个 Pod 上,以实现高可用。这些 Pod 通过Service互相访问对方,而不是 IP,因为 Pod 频繁启停,IP 变化不定。

K8s 通过Controller运行容器;通过Service访问容器

K8s 提供的 Controller

Deployment 最常用的Controller。管理 Pod 的多个副本,并确保 Pod 按照期望的状态运行
ReplicaSet 实现 Pod 的多副本管理。实际上,Deployment 就是通过 ReplicaSet 来管理 Pod 副本的。
DaemonSet 用于每个 Node 最多只运行一个 Pod 副本的场景
StatefulSet 保证 Pod 在其生命周期中,名称是不变的。对于其他 Controller,Pod 重启后名称会发生变化。
Job 用于运行结束就要删除的应用。其他 Controller 中的 Pod 持续运行

你可能感兴趣的:(k8s重要概念)