K8s = Kubernetes
Node
Node是真正运行的主机,可以物理机,也可以是虚拟机。每个Node 节点上有自己的角色,(工兵,还是特种兵)至少要运行container runtime(比如docker或者rkt)、 kubelet 和 kubeproxy 服务。
Pod
Pod是个组合。一组紧密关联的容器集合,比如:某些Node工兵+特种兵+坦克组成一个特务连,执行某个特殊任务,相当于是临时机构。
Volume
Pod的生命周期通常比较短,执行完任务或者任务失败了就解散了,各自归建,但是活不能白干阿,只要出现了异常,就会创建一个新的Pod(新特务连)来代替它。数据随着Pod消亡而自动消失那不就白白牺牲了?Volume就是为了持久化容 器数据而生,把成果留下来。
Volume类型 目前,Kubernetes支持以下持久Volume类型:
- nfs
- iscsi
- glusterfs
- cephfs
- vsphereVolume .......
而emptyDir、secret、gitRepo等,这些 volume会随着Pod的消亡而消失。
Persistent Volume(PV)
PersistentVolume (PV)和PersistentVolumeClaim (PVC)提供了方便的持久化卷:PV提供网络存储资源,而PVC像个调度员,请求存储资源。
PersistentVolumeClaim (PVC)
PersistentVolume (PV)和PersistentVolumeClaim (PVC)提供了方便的持久化卷::PV是存储资源,而PersistentVolumeClaim (PVC) 是对PV的请求。PVC跟Pod类似: Pod消费Node的资源,而PVC消费PV资源;Pod能够请求CPU和内存资源,而PVC请求特定大小和访问模式的数据卷。
StorageClass
Kubernetes提供了StorageClass来动态创建PV
Service
Service为 Pod 提供一个统一的入口,不会因为重新启动Pod而找不到IP。相当于常务机构。
Namespace
Namespace是对一组资源和对象的抽象集合,是上层建筑。比如可以用来将系统内部的对象划分为不 同的项目组或用户组。常见的pods, services, replication controllers和deployments等都是它的成员,而node, persistentVolumes等太低级,则不属于任何namespace。
Deployment是什么?这个我没整明白, 似乎是一个更新或者升级方面的程序
Secret Secret解决了密码、token、密钥等敏感数据的配置问题,是base64编码格式.