k8s的Namespace详解

简介

在一个K8s集群中可以拥有多个命名空间,它们在逻辑上彼此隔离

namespaces是对一组资源和对象的抽象集合,比如可以将系统内部的对象划分为不同的项目组或用户组

K8s在集群启动之后,会默认创建几个namespace

默认namespace

default:所有未指定Namespace的对象都会被分配在default命名空间

kube-node-lease:集群节点之间的心跳维护,v1.13开始引入

kube-public:此命名空间下的资源可以被所有人访问(包括未认证用户)

kube-system:所有由K8s系统创建的资源都处于这个命名空间

查看所有namespace

复制代码
kubectl  get namespace

查看namespace详情

复制代码
kubectl describe ns 命名空间

Status:Active 命名空间正在使用中/Terminating 正在删除命名空间

No resource quota:针对namespace做的资源限制

No LimitRange resource:针对namespace中的每个组件做的资源限制

创建namespace

命名规则:由字母、数字、下划线、连接线等字符组成,并且开头和结尾都必须使用字母、数字或字母数字的组合

例如:my-name、123-abc、MyValue、my_value或12345

复制代码
kubectl create ns 命名空间

删除namespace

复制代码
kubectl delete ns itbaizhan

创建namespace【使用配置文件】

复制代码
vi test.yaml


kind: Namespace
apiVersion: v1
metadata:
  name: test
  labels:
   name: test


kubectl apply -f test.yaml
相关推荐
工具罗某人2 小时前
docker快速部署启动gitlab
git·docker·云原生·eureka
hgz07102 小时前
Docker Compose
运维·docker·容器
Wang15308 小时前
jdk内存配置优化
java·计算机网络
0和1的舞者8 小时前
Spring AOP详解(一)
java·开发语言·前端·spring·aop·面向切面
Wang15308 小时前
Java多线程死锁排查
java·计算机网络
小小星球之旅9 小时前
CompletableFuture学习
java·开发语言·学习
Drqf9 小时前
NAS一键安装脚本
docker
jiayong239 小时前
知识库概念与核心价值01
java·人工智能·spring·知识库
皮皮林55110 小时前
告别 OOM:EasyExcel 百万数据导出最佳实践(附开箱即用增强工具类)
java
Da Da 泓10 小时前
多线程(七)【线程池】
java·开发语言·线程池·多线程