namespace

功能

Namespace是对一组资源和对象的抽象集合。 常用来隔离不同的用户,比如Kubernetes自带的服务一般运行在 kube-system namespace中

  • pods, services, replication controllers和deployments等都 是属于某一个namespace的(默认是default)
  • node, persistentVolumes等则不属于 任何namespace

namespace 状态

  • Active(正常)
  • Terminating (删除)

命令

查看
查看集群所有的命名空间
kubectl get namespace

# 简写
kubectl get ns
创建
命令行创建命名空间
kubectl create namespace my-namespace

# 简写
kubectl create ns my-namespace
yaml文件创建命名空间
cat >  my-namespace.yaml << EOF
apiVersion: v1
kind: Namespace
metadata:
  name: new-namespace
EOF

# 创建
kubectl apply -f my-namespace.yaml
销毁
销毁一个名为new-namespace的命名空间
kubectl delete namespace new-namespace

# 简写
kubectl delete ns new-namespace
ps
  1. 删除一个namespace会自动删除所有属于该namespace的资源

  2. defaultkube-system 命名空间不可删除。

  3. PersistentVolumes是不属于任何namespace的,但PersistentVolumeClaim是属于 某个特定namespace的。

  4. Events是否属于namespace取决于产生events的对象

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐