k8s 2. 重要概念
参考《每天5分钟玩转kubernetes》 ColdMan著。 一、概念 1. Cluster cluster是计算、存储和网络资源的集合, k8s使用这些资源运行基于容器的应用 2. Master cluster的大脑,主要职责是调度,决定将应用放在哪里运行。在linux上运行(物理机or虚拟机)。为了高可用,可运行多个master。 3. Node 职责是运行容器应用。由master管理,监控、汇报容器状态,要据master要求管理容器生命周期。运行于linux(物理机or虚拟机) 4. Pod 最小工作单元,每个pod包含1个or多个容器。作为整体被master调度到node上运行。 4.1 引入pod(比容器更高层次的抽象)的目的: (1) 可管理性。 将需要一起工作的(紧密联系的)容器封装到同一个部署单元,以pod为最小单位进行调度、扩展、共享资源、管理生命周期。 (2) 通信和资源共享。 pod中所有容器使用同一个网络namespace(相同ip+port),可直接用localhost通信。共享存储,k8s挂载volume到pod,本质是将volume挂载到pod中的每个容器。 4.2 Pods的2种使用方式 (1) 运行单一容器 one-container-per-Pod, 只将单个容器简单封装成pod. (2) 运行多个容器