kubernetes
因为英文单词 K 和 S 中间包含 8 个字母,所以简称 K8S, 是一个全新的基于容器技术的分布式架构领先方案,是谷歌严格保密十几年的秘密武器----Borg 系统的一个开源版本,于 2014 年 9 月发布第一个版本,2015年 7 月发布第一个正式版本。
kubernetes 的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器进行管理。目的是实现资源管理的自动化,主要提供了如下的主要功能:
一个 kubernetes 集群主要是由控制节点 master、工作节点 node构成,每个节点上都会安装不同的组件。
master:集群的控制平面,负责集群的决策 ( 管理 )
Master 节点上会安装四个重要组件,分别如下:
node 节点上会安装三个重要组件,分别如下:
下面,以部署一个 nginx 服务来说明 kubernetes 系统各个组件调用关系:
Master:集群控制节点,每个集群需要至少一个 master 节点负责集群的管控Node:工作负载节点,由 master 分配容器到这些 node 工作节点上,然后 node 节点上的 docker 负责容器的运行Pod:kubernetes 的最小控制单元,容器都是运行在 pod 中的,一个 pod 中可以有 1 个或者多个容器Controller:控制器,通过它来实现对 pod 的管理,比如启动 pod、停止 pod、伸缩 pod 的数量等等Service:pod 对外服务的统一入口,下面可以维护着同一类的多个 pod
- Label:标签,用于对 pod 进行分类,同一类 pod 会拥有相同的标签NameSpace:命名空间,用来隔离 pod 的运行环境Kubernetes, also known as K8S due to the eight letters between "K" and "S", is a container-based distributed architecture system open-sourced from Google's Borg system. Launched in September 2014, Kubernetes automates resource management across server clusters. Key functions include self-healing, elastic scaling, service discovery, load balancing, version rollback, and storage orchestration.
A Kubernetes cluster is composed of Master and Node components. Master nodes handle decision-making and are equipped with ApiServer, Scheduler, ControllerManager, and Etcd. Node components include Kubelet, KubeProxy, and Docker. Kubernetes' core concepts include Master for cluster control, Node for workload, Pods as the smallest control unit, Controllers for pod management, Services for pod access, Labels for pod classification, and NameSpace for environment isolation.