k8s-namespace命名空间的查看、创建、删除命令

查看

查看所有的ns

kubectl get ns

执行结果:

NAME              STATUS   AGE
default           Active   45h
kube-node-lease   Active   45h
kube-public       Active   45h     
kube-system       Active   45h

查看指定的ns

命令格式:

kubectl get ns 命名空间的名称

例子:

kubectl get ns default

执行结果:

NAME      STATUS   AGE
default   Active   45h

指定输出格式

命令格式:

kubectl get ns ns名称  -o 格式参数

kubernetes支持的格式有很多,比较常见的是wide、json、yaml

kubectl get ns default -o yaml

执行结果:

apiVersion: v1
kind: Namespace
metadata:
  creationTimestamp: "2021-05-08T04:44:16Z"
  name: default
  resourceVersion: "151"
  selfLink: /api/v1/namespaces/default
  uid: 7405f73a-e486-43d4-9db6-145f1409f090
spec:
  finalizers:
  - kubernetes
status:
  phase: Active

查看详情

命令格式:

kubectl describe ns 命名空间名称

例子:

kubectl describe ns default

执行结果:

Name:         default
Labels:       <none>
Annotations:  <none>
Status:       Active  # Active 命名空间正在使用中  Terminating 正在删除命名空间

# ResourceQuota 针对namespace做的资源限制,如:分配cpu、内存资源
# LimitRange针对namespace中的每个组件做的资源限制
No resource quota.
No LimitRange resource.

创建

kubectl create ns dev

显示如下表示创建成功:

namespace/dev created

删除

注意:删除该命名空间后,该命名空间下的所有资源(如:所有pod)全部被删除掉

kubectl delete ns dev

显示如下表示删除成功:

namespace "dev" deleted

yaml配置文件

创建yaml文件:

vim ns-dev.yaml

按 i 键

复制粘贴下面内容:

apiVersion: v1
kind: Namespace
metadata:
  name: dev

按 esc,:wq 保存退出

然后就可以执行对应的创建和删除命令了:

创建

根据配置文件创建:

kubectl create -f ns-dev.yaml

删除

根据配置文件删除:

kubectl delete -f ns-dev.yaml

原文出处:/show_1IX6KN5Ppce5.html