Kubernetes常见概念

1 Kubernetes概念

1.1 Master/Node

运行Kubernetes集群的主机节点,分别为运行API Server、Scheduler、Controller-Manager、ETCD的Master节点和运行kubelet、docker、kube-proxy的Node节点,Node是Pod真正运行的主机。

1.2 Pod

Kubernetes的最小工作单元,也就是说Kubernetes管理的是Pod而不是容器。每个Pod包括一个或多个容器。Pod中的容器会被作为一个整体被Master调度到另一个Node上。

1.3 Labels 和 Selectors

Labels其实就一对 key/value,每个Pod都有标签(Label, Label Selector可以调度),Pod具有标签后Service创建时可根据标签动态关联pod,并且对Node节点或Master节点等节点也可以打标签

1.4 Service

类似负载衡器,把相同标签的Pod聚齐在同一个Service下,通过访问Service名称或者是Service的IP地址<固定IP地址>会把请求代理到这个service关联的多个Pod

1.5 Volume

Volume:挂载,实现磁盘文件持久化的,默认情况下pod内的资源是非持续化的,一旦Pod重启就丢失了。
Volume解决了数据库、程序日志文件等持久化问题

1.6 PV/PVC

持久存储卷(Persistent Volume,PV)和持久存储卷声明(Persistent Volume Claim,PVC),在配置Pod可以忽略对实际后台存储技术的配置直接声明pvc即可,把这项配置的工作交给PV的配置者,即集群的管理者。

1.7 ConfigMap

ConfigMap用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。ConfigMap跟secret很类似,但它可以更方便地处理不包含敏感信息的字符串。

1.8 Secret

Secret是用来保存和传递密码、密钥、认证凭证这些敏感信息的对象。Secret解决了密码、token、密钥等敏感数据的配置问题,不需要把这些敏感数据暴露到镜像或者Pod Spec中。Secret可以以Volume或者环境变量的方式使用。

2 参考文档

https://www.kubernetes.org.cn/docs
原文地址:https://www.cnblogs.com/evescn/p/12260131.html