08|不同应用场景下的K8s资源对象
王雪飞
你好,我是雪飞。
上节课我介绍了 Deployment,这节课我们来聊聊其他几种资源对象。命名空间 Namespace 用来对 K8s 中的资源对象进行分组隔离管理,Job 和 CronJob 用来部署任务和定时任务类应用,DaemonSet 用来部署节点守护应用,ConfigMap 和 Secret 用来配置 Pod 用到的环境变量和配置文件。这些资源对象都是围绕 Pod 部署单元提供了更多强大的功能。
现在就跟我来学习今天的第一个资源对象 Namespace。
Namespace
之前的课程中提到过命名空间 Namespace,它用于创建 K8s 资源对象的逻辑隔离分区。对于命名空间可以设置不同的访问权限和资源配额,所以你在 K8s 集群中部署资源对象之前,就需要规划好命名空间。K8s 搭建好之后就已经自动创建了几个初始的命名空间,例如 default 是默认命名空间,kube-system 是 K8s 组件的命名空间。
命名空间常用于以下的应用场景:
集群按照不同的项目划分命名空间:项目 1 命名空间 project1-ns 和项目 2 命名空间 project2-ns,项目 1 的相关资源对象部署到 project1-ns 命名空间,项目 2 的相关资源对象部署到 project2-ns 命名空间,这样在某个命名空间下查看和管理资源对象时,都不会影响到另一个项目。
集群按照不同的部署环境划分命名空间:例如开发环境命名空间 dev-ns 和测试环境命名空间 test-ns(命名空间可以划分开发环境和测试环境,但是对于生产环境和测试环境还是建议部署两套集群,从硬件方面就做到完全隔离)。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
1. 命名空间 Namespace 在 K8s 中用于对资源对象进行分组隔离管理,常用于按照不同的项目或部署环境划分命名空间。 2. ConfigMap 和 Secret 是 K8s 中用于管理配置参数的资源对象,支持通过命名空间隔离,同一命名空间内的多个 Pod 可以共享访问该命名空间下的 ConfigMap 和 Secret 资源对象。 3. ConfigMap 是一种明文的配置参数,用于记录环境变量、文件路径、运行参数等;Secret 使用了 base64 编码的配置参数,通常保存数据库密码、第三方的一些秘钥等。 4. 使用 ConfigMap 和 Secret 主要是两步:在集群中创建好 ConfigMap 和 Secret,然后在 Pod 的 YAML 文件中使用 ConfigMap 和 Secret。 5. ConfigMap 和 Secret 可以通过环境变量的方式或者通过数据卷 Volume 挂载成配置文件的方式来使用,适用于不同的配置参数需求。 6. ConfigMap 和 Secret 的使用方式有各自的优势,作为环境变量时适用于不需要频繁修改的配置参数,而作为文件挂载时适用于需要定期检查和重新加载配置参数的应用场景. 7. ConfigMap 和 Secret 的创建可以通过 kubectl 命令和 YAML 文件进行,分别使用不同的参数和类型来定义配置参数. 8. ConfigMap 和 Secret 的使用可以帮助开发者更好地管理和保护敏感信息,提高配置参数的灵活性和安全性. 9. ConfigMap 和 Secret 的使用需要注意安全性,尤其是在处理敏感信息时,需要谨慎处理和存储.
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(1)
- 最新
- 精选
- 抱紧我的小鲤鱼Kubernetes API 服务器在创建或更新 Pod 时会自动处理 Secret 的解码工作2024-07-17归属地:江苏
收起评论