一、NameSpace概念
1、 Namespace是kubernetes系统中的一一种非常重要的资源,他的主要作用是来实现多套环境的资源隔离或者多租户的资源隔离;
2、 默认情况下,kubernetes集群中的所有pod都是可以互相访问的但是在实际中,可能不想让两个pod之间进行互相的访问,那么此时就可以加个两个pod划分到不同的namespace下,kubernetes通过将集群内部的资源分配到不同而namespace中,可以形成逻辑上的“组”,以方便不同的组的资源进行隔离使用和管理;
3、 可以通过kubernetes的授权机制,将不同的namespace交给不同的租户进行管理,这样就实现了多租户的资源隔离,此时还能集合kubernetes的资源配额机制,限定不同租户能占用的资源,例如cpu使用量,内存使用量,来实现租户可用资源的管理;
二、kubernetes默认ns
kubernetes集群启动后,会创建默认的命名空间:
kubectl get namespace
会查出四个默认的命名空间,如下:
1)default:默认命名空间。资源未指定命名空间时,均创建在此命名空间下
2)kube-system:K8s 系统创建的对象在此命名空间下
3)kube-public:这个命名空间对所有用户可见(包括未授权用户),通常作为保留资源为集群所使用
4)kube-node-lease:此命名空间用于与各个节点相关的租期(Lease)对象;此对象的设计使得集群规模很大时节点心跳检测性能得到提升
三、命名空间的操作
1、 查看所有的ns;
kubctl get ns
1、 查看指定的ns;
kubectl get ns default
1、 查看详情;
kubectl describe ns default
1、 创建;
kubectl create ns dev
1、 删除;
kubectl delete ns dev
1、 以配置方式创建ns;
准备一个ns-dev.yaml文件:
apiVersion: v1
kind: Namespace
metadata:
name: dev
执行命令
#创建
kubectl create -f ns-dev.yaml
#删除
kubectl delete -f ns-dev.yaml
》》》博主长期更新学习心得,推荐点赞关注!!!
》》》若有错误之处,请在评论区留言,谢谢!!!
版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: