欢迎大家来到IT世界,在知识的湖畔探索吧!
命名空间namespace
1.可以实现多套环境资源隔离
2.多租户资源隔离
默认情况下,pod可以互相访问,想要限制两个pod互相访问可以分配到不同的命名空间下实现网络隔离
namespace可以通过k8s的授权机制,将不同的namespace交给不同的用户管理,这样就实现了多用户的资源隔离
还能结合k8s的资源配额机制,限定用户可以占用的资源
[qq@k8snode1 ~]$ kubectl get namespace
NAME STATUS AGE
default Active 45h # 所有未指定Namespace的对象都会被分配在default命名空间
kube-node-lease Active 45h # 集群节点之间的心跳维护,v1.13开始引入
kube-public Active 45h # 此命名空间下的资源可以被所有人访问(包括未认证用户)
kube-system Active 45h # 所有由Kubernetes系统创建的资源都处于这个命名空间
[qq@k8snode1 ~]$ kubectl create ns dev
《首先先创建一个命名空间》
namespace/dev created
[qq@k8snode1 ~]$ kubectl get ns dev -o yaml
《然后查看一下yaml格式的详细信息》
apiVersion: v1
kind: Namespace
metadata:
creationTimestamp: "2022-02-14T10:48:27Z"
labels:
kubernetes.io/metadata.name: dev
name: dev
resourceVersion: "39246"
uid: 9d4dfd47-2a29-454f-82a2-9404f2fc92ac
spec:
finalizers:
- kubernetes
status:
phase: Active
欢迎大家来到IT世界,在知识的湖畔探索吧!
这样你就获得了一个新鲜的命名空间yaml文件
我们稍加更改
欢迎大家来到IT世界,在知识的湖畔探索吧![qq@k8snode1 ~]$cat devns.yaml
apiVersion: v1
kind: Namespace
metadata:
name: dev
创建一个 devns.yaml文件
[qq@k8snode1 ~]$ kubectl delete ns dev
namespace "dev" deleted
《先干掉之前创建的dev》
[qq@k8snode1 ~]$ kubectl apply -f devns.yaml
namespace/dev created
《用声明式对象配置练习一下》
[qq@k8snode1 ~]$ kubectl get -f devns.yaml
NAME STATUS AGE
dev Active 11s
《有啦》
[qq@k8snode1 ~]$ kubectl delete -f devns.yaml
namespace "dev" deleted
《再干掉》
[qq@k8snode1 ~]$ kubectl create -f devns.yaml
namespace/dev created
《用命令式对象配置再看看》
[qq@k8snode1 ~]$ kubectl get -f devns.yaml
NAME STATUS AGE
dev Active 4s
[qq@k8snode1 ~]$ kubectl get -f devns.yaml
NAME STATUS AGE
dev Active 16s
[qq@k8snode1 ~]$ kubectl delete -f devns.yaml
namespace "dev" deleted
[qq@k8snode1 ~]$ kubectl get -f devns.yaml
Error from server (NotFound): namespaces "dev" not found
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/37529.html