当前位置: 首页 > news >正文

k8s-Namespace

Namespace 是k8s中做用户隔离的,适用于多租户的场景。

Namespace 是 Kubernetes 用于实现资源逻辑隔离、多租户、安全授权和环境区分的重要机制,是大规模集群必备的组织手段。

  1. Namespace 是什么?
    Namespace 是 Kubernetes 集群中的一种逻辑隔离方式,可以将集群内的资源(Pod、Service、Deployment、ConfigMap、Secret 等)划分到不同的空间。
    每个 Namespace 里的资源名称互不影响(即可以有多个同名 Pod/Service,但在不同的 Namespace 下)。
    常用于多租户环境、开发/测试/生产环境隔离、团队/项目隔离等场景。

  2. Namespace 的作用
    资源隔离: 不同 namespace 内的资源彼此独立,便于管理和权限控制。
    名称空间下的唯一性: 只要在不同 namespace,下同名资源不会冲突。
    配合 RBAC 实现权限细粒度控制。
    便于批量管理和删除一组相关资源。
    系统组件与业务组件分开: K8s 默认有 kube-system(系统组件)、default(默认)、kube-public(公开只读)等命名空间。

  3. 使用场景举例
    场景1:开发、测试、生产环境隔离
    dev 命名空间放开发环境应用;
    test 放测试环境;
    prod 放生产环境;
    各自的 Service 和 Deployment 不会冲突。
    场景2:多团队/多项目共享一个集群
    每个团队一个 namespace,互不干扰,RBAC 控制各自权限。

场景3:系统组件与业务组件分开管理
K8s 系统组件都在 kube-system,业务应用都在自定义命名空间。

  1. 常见问题与注意事项
    默认情况下,不同 namespace 的 Pod 无法通过 Service 名称直接访问彼此,但可以通过全限定域名访问,如 svcname.namespace.svc.cluster.local。
    某些全局对象(如 Node、PersistentVolume)不属于任何 namespace。
    删除 namespace 会级联删除其中所有对象,请谨慎操作!

image
image

azureuser@master-001:~$ kubectl get pod --all-namespaces
NAMESPACE      NAME                                 READY   STATUS    RESTARTS      AGE
default        nginx-deploy-f88b65dbc-ghrcn         1/1     Running   1 (38m ago)   43h
default        nginx-deploy-f88b65dbc-vf4nx         1/1     Running   1 (38m ago)   43h
default        nginx-deploy-f88b65dbc-vwvmb         1/1     Running   1 (38m ago)   43h
kube-flannel   kube-flannel-ds-glzb5                1/1     Running   0             11m
kube-flannel   kube-flannel-ds-ltkc8                1/1     Running   0             11m
kube-flannel   kube-flannel-ds-r4x7j                1/1     Running   0             11m
kube-system    coredns-5dd5756b68-b6462             1/1     Running   1 (38m ago)   43h
kube-system    coredns-5dd5756b68-lmhq7             1/1     Running   1 (38m ago)   43h
kube-system    etcd-master-001                      1/1     Running   4 (38m ago)   43h
kube-system    kube-apiserver-master-001            1/1     Running   4 (38m ago)   43h
kube-system    kube-controller-manager-master-001   1/1     Running   4 (38m ago)   43h
kube-system    kube-proxy-88ql9                     1/1     Running   1 (38m ago)   43h
kube-system    kube-proxy-g4bk6                     1/1     Running   1 (38m ago)   43h
kube-system    kube-proxy-wb977                     1/1     Running   1 (38m ago)   43h
kube-system    kube-scheduler-master-001            1/1     Running   4 (38m ago)   43h
azureuser@master-001:~$
http://www.hskmm.com/?act=detail&tid=19772

相关文章:

  • 国产化Excel开发组件Spire.XLS教程:C# 写入 Excel ,轻松将数据导出到工作表
  • 牛客刷题-Day6
  • 数字化转型浪潮下:10款主流项目管理工具横向测评与选型指南
  • 借助Aspose.Email,使用 Python 将 EML 转换为 MHTML
  • python+springboot+django/flask的医院食堂订餐系统 菜单发布 在线订餐 餐品管理与订单统计系统 - 教程
  • 计算机网络学习笔记 - 浪矢
  • 数据结构以及LeetCode常用方法 - 浪矢
  • App Store 上架完整流程解析,iOS 应用发布步骤、ipa 文件上传工具、TestFlight 测试与苹果审核经验
  • 使用 Zig 编写英文数字验证码识别工具
  • 数数学习笔记
  • 6 个替代 Microsoft Access 的开源数据库工具推荐
  • 20250626_黔西南网信杯_wireshark
  • Ubuntu STA+AP 开机自启完整方案
  • PDE和CFD的区别?
  • Gitee:中国开发者生态的基石与数字化转型的加速器
  • 20号胶
  • MQTT协议
  • 完整教程:带你了解STM32:TIM定时器(第四部分)
  • 邮件怎么发送超大附件的实用解决方案
  • 告别无效对话:五个让AI输出质量提升10倍的提示词框架
  • 题解:CF2006E Iriss Full Binary Tree
  • CMakeLists.txt用法参考
  • 分布式ID生成算法——雪花算法的实现 - 浪矢
  • 5. Prompt 提示词 - Rainbow
  • 国产文件传输软件有哪些?今日份精选与实用推荐
  • 内外网文件摆渡系统:科研院所数据安全传输的关键支撑
  • 硬盘突然坏掉,我花了半个月才把数据救回来…(附数据恢复工具)
  • MCU的闪存(FLASH)按机制结构划分区域
  • T2
  • 题解:CF1930I Counting Is Fun