k8s

作者: 守护者 | 来源:发表于2021-06-07 09:04 被阅读0次

K8S 是个杂技高手,最擅长的就是“搬箱子”,盘各种容器玩。

K8S 的大致架构,就像上面。Master 节点,用来放“脑子”,“腿脚”搭在工作节点上“搬砖”,工作节点就是实际业务容器的存放地。

单个容器或多个关系密切的容器,被编成一组,称为 pod。K8S 就是以 pod 为单位进行编排操作。

同时,K8S 还要和其它相关软件配合,来完成联网、存储、安全等功能。

Node是Kubernetes中的工作节点,最开始被称为minion。一个Node可以是VM或物理机。每个Node(节点)具有运行pod的一些必要服务,并由Master组件进行管理,Node节点上的服务包括Docker、kubelet和kube-proxy。


Pods中运行多个需要一起工作的容器。Pod可以封装紧密耦合的应用,它们需要由多个容器组成,它们之间能够共享资源,这些容器可以形成一个单一的内部service单位 

Pod将这些容器的存储资源作为一个实体来管理

诞生六年来,K8S 一路高歌,成为容器编排和调度领域的 No.1。但需要注意的是,K8S 和 Docker 们不是替代关系,而是配合关系。

K8S 仍然会使用 Docker 之类的容器引擎(Docker、Containerd、RKT、CRI-O 等),来对容器进行生命周期管理。

Pods提供两种共享资源:网络和存储。

网络

每个Pod被分配一个独立的IP地址,Pod中的每个容器共享网络命名空间,包括IP地址和网络端口。Pod内的容器可以使用localhost相互通信。当Pod中的容器与Pod 外部通信时,他们必须协调如何使用共享网络资源(如端口)。

存储

Pod可以指定一组共享存储volumes。Pod中的所有容器都可以访问共享volumes,允许这些容器共享数据。volumes 还用于Pod中的数据持久化,以防其中一个容器需要重新启动而丢失数据。

kubectl get po 

//查看所有的pods

kubectl get nodes //查看所有的nodes

 kubectl get pods -o wide //查看所有的pods更详细些

 kubectl get nodes -o wide

 kubectl get po --all-namespaces //查看所有的namespace

kubectl get po -o json

相关文章

网友评论

      本文标题:k8s

      本文链接:https://www.haomeiwen.com/subject/irhosltx.html