分类
- 资源的对象 节点node、最小管理单元pod、服务service、存储卷volume
- 资源对象相关的事物与动作 标签label、注解annotation、命名空间namespace、部署deployment、弹性伸缩HPA、持久卷声明PVC
namespace
不同命名空间的资源从逻辑上相互隔离。在每个Kubernetes集群安装完成且正常运行之后,Master会自动创建两个命名空间,一个是默认的(default)、一个是系统级的(kube-system)。用户创建的资源对象如果没有指定命名空间,则被默认存放在default命名空间中;而系统相关的资源对象如网络组件、DNS组件、监控类组件等,都被安装在kube-system命名空间中。
通过命名空间将集群内部的资源对象“分配”到不同的命名空间中,形成逻辑上分组的不同项目、小组或用户组,便于不同的分组在共享使用整个集群的资源的同时能被分别管理。当给每个租户都创建一个命名空间来实现多租户的资源隔离时,还能结合Kubernetes的资源配额管理,限定不同租户能占用的资源,例如CPU使用量、内存使用量等。
实战
如下所示使用命令查看定义的一个名为nginx的Pod副本数是三,所以是以nginx开头,并将其放入dev命名空间中: