Kubernetes 命名空间、资源限制与标签选择器使用指南
1. 命名空间概述
命名空间(Namespace)可与上下文(context)关联,每个上下文都能分配给一个现有的命名空间。若没有指定,如上下文 3,则会使用默认命名空间 “default”。当前上下文是客户端的默认环境,在 kubeconfig 中可能存在多个上下文,但当前上下文只有一个,它和关联的命名空间会构成用户的默认计算环境。借助命名空间与 kubeconfig 的协作,用户可通过切换 kubeconfig 中的当前上下文,轻松切换默认使用的资源。不过,用户仍能在指定的不同命名空间中启动任意资源。
1.1 默认命名空间
Kubernetes 默认创建了名为 “default” 的命名空间,所有未指定命名空间而创建的对象都会被放入该命名空间。此外,Kubernetes 还会创建另一个初始命名空间 “kube - system”,用于存放 Kubernetes 系统对象,如插件或覆盖网络。可使用以下命令列出所有命名空间:
$ kubectl get ns
NAME STATUS AGE
default Active 15d
kube-public Active 15d
kube-system Active 15d
“kube - public” 命名空间是在初始阶段列出的额外命名空间,它用于展示一些公共配置,即使是没有访问 Kubernetes 系统权限的用户也能看到。minikube 和 kubeadm 这两个配置工具在系统启动时都会