K8s入门-相关名词

一、Pod

Pod是所有业务类型的基础,也是K8S管理的最小单位级,它是一个或多个容器的组合。

Pod 的context可以理解成多个linux命名空间的联合

PID 命名空间    [同一个Pod中应用可以看到其它进程]
网络 命名空间    [同一个Pod的中的应用对相同的IP地址和端口有权限]
IPC 命名空间    [同一个Pod中的应用可以通过VPC或者POSIX进行通信]
UTS 命名空间    [同一个Pod中的应用共享一个主机名称]
同一个Pod中的应用可以共享磁盘

pod的生命周期

Pending:等待状态
    创建了pod资源对象并存入etcd中,已被 Kubernetes 系统接受,但未被调度运行或者在等其它容器被下载创建

Running:运行状态
    pod已经被调度至某节点,并且所有容器都已经被kubelet创建完成

Succeeded:已成功终止状态
    pod中的所有容器都已经成功终止并且不会被重启

Failed:已失败
    所有容器都已经终止,但至少有一个容器终止失败,即容器返回了非0值的退出状态或已经被系统终止

Unknown:
    无法获取到pod的状态信息,通常是由于其无法于所在工作节点的kubelet通信所致

二、Labels

标签其实就一对 key/value ,被关联到对象上,比如Pod。总体概括就是分组标识索引

标签的使用对于用户能够标识对象,但是对内核系统是没有直接意义的,可以用来划分特定组的对象

标签可以在创建一个对象的时候直接给与,也可以在后期随时修改,每一个对象可以拥有多个标签

用于索引并且反向索引,以获得更高效的查询和监视,用来排序或者分组等等

三、Namespace

Namespace是对一组资源和对象的抽象集合,用来隔离不同的用户。

常见的pods, services, replication controllers和deployments等都是属于某一个namespace的(默认是default)

node, persistentVolumes等则不属于任何namespace。

四、Node

Node是Pod真正运行的主机。

Node本质上不是Kubernetes来创建的,Kubernetes只是管理Node上的资源,而Node管理属于自己的容器资源也就是Pod

为了管理Pod,每个Node节点上至少要运行container runtime(比如docker或者rkt)、kubelet和kube-proxy服务。

后续有学习到继续补充

你可能感兴趣的:(K8s,服务搭建)