K8s中的Namespace是什么?


hello大家好😊

由于能够无缝管理和扩展工作负载,Kubernetes (简称K8s)已成为容器化应用编排的首选解决方案。Kubernetes 提供了一项重要功能,可用于维护结构化和有序的集群环境,即“Namespace”(命名空间)概念。在本篇文章中,我们将聊聊 Kubernetes Namespace,了解其目的、优势以及如何有效地管理容器化应用程序。

如何理解Namespace

K8s中的Namespace是一种逻辑分组机制,允许您将集群资源划分为独立的虚拟环境。每个 Namespace 为资源提供了一个范围,使得不同的团队、应用程序或环境可以在同一集群中共存,而不会相互干扰。

就像在一个大院子里分隔出不同的小院子一样,大家住在各自的院子里,公共的部分就少了,冲突也就少了。

默认的Namespace

K8s默认提供了几个预定义的 Namespace,每个 Namespace 都有特定的用途。
我们可以通过kubectl get namespaces查看当前k8s集群中所有的Namespace的信息。

在这里插入图片描述
上面显示了默认的几个Namespace。

  • default:默认的Namespace,就像大楼里的基本居住区。如果没有指定Namespace,资源将自动分配到这里
  • kube-node-lease:存放节点租约信息,用于控制平面了解节点的健康状态
  • kube-public:是大楼的公共区域,每个人都可以进入,但只能浏览,不能进行更改
  • kube-system:专供Kubernetes系统组件和插件使用,就像是大楼里的管家和安保人员

使用Namespace的好处

  • 资源隔离: Namespace 允许我们将不同的应用程序、团队或环境隔离开来。每个 Namespace 提供了一个独立的资源范围,确保资源之间不会互相干扰。这种隔离性有助于降低错误传播的风险,使得故障隔离更加容易
  • 资源组织: Namespace 允许我们按照项目、团队、环境等进行资源组织。我们可以将相关的资源放在同一个 Namespace 中,使得集群管理更加有序,减少资源的混乱和重叠
  • 权限控制: 每个 Namespace 可以拥有自己的权限和策略设置。这使得我们可以为不同的团队、开发者或应用程序设置访问控制,确保只有授权的人员能够访问和操作资源
  • 简化命名: 不同 Namespace 中的资源可以使用相同的名称,因为每个 Namespace 中的名称是唯一的。这使得资源之间的命名冲突得到了解决,减少了命名管理的复杂性

创建和使用Namespace

使用命令行创建

我们可以使用kubectl命令工具创建和管理Namespace。

命令格式:kubectl create namespace <namespace-name>

使用YAML文件创建

先创建一个yaml(或者yml)文件,这里比如是mynamespace.yml 。在文件里面使用以下模板来定义 Namespace:

apiVersion: v1
kind: Namespace
metadata:
  name: your-namespace-name

然后使用 kubectl create -f mynamespace.yml 或者 kubectl apply -f mynamespace.yaml 使用我们刚才创建的yaml文件创建Namespace。

最后使用kubectl get namespaces来查看新创建的 Namespace 是否已经存在。

Namespace 用例

在创建资源时,我们使用-n--namespace标志指定Namespace。

比如:

kubectl run nginx --image=nginx --namespace=mynamespace
kubectl get pod -n mynamespace 

切换Namespace

使用kubectl config set-context --current --namespace=<namespace-name>可以切换默认Namespace。在创建资源时,如果不指定Namespace,就会创建在默认的Namespace中。

删除Namespace

可以使用kubectl delete namespaces <namespace-name>删除namespace 。

删除 namespace 会删除其下所有资源,如果要删除已经切换为默认值的 namespace 时,要先把默认值切换为其他,然后再删除。

感谢 💖

好啦,这次的分享就到这里,感谢大家看到这里🤞

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不怕娜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值