赞
踩
k8s集群Namespace命名空间:
需要准备两套k8s集群用于开发测试及预发布:
我们使用k8s集群中的命名空间即可实现开发测试与预发布环境的隔离。
学习目标:
1、了解NameSpace作用;
2、掌握NameSpace查看方法;
3、掌握NameSpace创建方法;
4、掌握NameSpace删除方法;
学习步骤:
1、NameSpace介绍;
2、查看、创建、删除NameSpace
NameSpace介绍:
命名空间:
作用:多租户的情况下,实现资源隔离;
属于逻辑隔离:
属于管理边界:
不属于网络边界:
可以针对每个NameSpace做资源配额:
查看NameSpace:
- [root@master1 ~]# kubectl get namespace
- NAME STATUS AGE
- default Active 17h
- kube-flannel Active 16h
- kube-node-lease Active 17h
- kube-public Active 17h
- kube-system Active 17h
-
说明:
default:用户创建的pod默认在此命名空间
kube-public: 所有用户均可访问,包括未认证用户
kube-node-lease:集群节点租约状态
kube-system:集群在使用
创建NameSpace:
1)通过kubectl命令行创建:
- [root@master1 ~]# kubectl create namespace test
- namespace/test created
- [root@master1 ~]#
- [root@master1 ~]#
- [root@master1 ~]# kubectl get namespace
- NAME STATUS AGE
- default Active 17h
- kube-flannel Active 16h
- kube-node-lease Active 17h
- kube-public Active 17h
- kube-system Active 17h
- test Active 7s
可见namespace test创建成功。
2)通过kubectl命令应用资源清单文件创建:
准备资源清单文件:
- [root@master1 ~]# cat 01_create_ns.yaml
- apiVersion: v1
- kind: Namespace
- metadata:
- name: demons1
-
- # 应用资源清单文件
- [root@master1 ~]# kubectl apply -f 01_create_ns.yaml
- namespace/demons1 created
- [root@master1 ~]#
-
- # 验证是否创建成功
- [root@master1 ~]# kubectl get namespace
- NAME STATUS AGE
- default Active 17h
- demons1 Active 12s
- kube-flannel Active 16h
- kube-node-lease Active 17h
- kube-public Active 17h
- kube-system Active 17h
- test Active 4m59s
- [root@master1 ~]#
-
删除NameSpace:
删除命名空间的时候,命名空间中包含的所有资源对象同时被删除。
1)通过kubectl 命令行删除:
查看命令空间:
- [root@master1 ~]# kubectl get namespace
- NAME STATUS AGE
- default Active 17h
- demons1 Active 2m53s
- kube-flannel Active 16h
- kube-node-lease Active 17h
- kube-public Active 17h
- kube-system Active 17h
- test Active 7m40s
删除test命名空间:
- [root@master1 ~]# kubectl delete namespace test
- namespace "test" deleted
再次查看Namespace,确认是否删除:
- [root@master1 ~]# kubectl get ns
- NAME STATUS AGE
- default Active 17h
- demons1 Active 4m54s
- kube-flannel Active 16h
- kube-node-lease Active 17h
- kube-public Active 17h
- kube-system Active 17h
确认test命名空间已经删除。
2)通过kubectl命令应用资源清单文件进行删除:
查看namespace资源清单文件:
- [root@master1 ~]# cat 01_create_ns.yaml
- apiVersion: v1
- kind: Namespace
- metadata:
- name: demons1
- [root@master1 ~]#
- [root@master1 ~]# kubectl delete -f 01_create_ns.yaml
- namespace "demons1" deleted
- [root@master1 ~]#
- [root@master1 ~]# kubectl get ns
- NAME STATUS AGE
- default Active 17h
- kube-flannel Active 16h
- kube-node-lease Active 17h
- kube-public Active 17h
- kube-system Active 17h
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。