在安装时指定 namespace
正确使用 --namespace 和 --create-namespace
在安装时指定 namespace 是 CoddyKit 上的免费 DevOps Bootcamp 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 DevOps Bootcamp 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 DevOps Bootcamp 课程共包含 4 节课。
它会部署到哪里
每个发布都位于一个命名空间中,这是 Kubernetes 对资源进行分组的方式。在安装时选择命名空间,可以让各个环境保持整洁。📦
默认命名空间
不添加任何选项时,Helm 会安装到您的 kubeconfig 上下文指定的命名空间中,通常是 default。测试时这样做没问题,但实际工作中容易变得混乱。
选择命名空间
使用 --namespace 或其简写 -n,明确告诉 Helm 要部署到哪里。发布及其所有对象都会位于该命名空间中。
helm install my-web bitnami/nginx --namespace web它必须已经存在
默认情况下,目标命名空间必须预先存在。如果不存在,Helm 会在部署任何内容之前因找不到命名空间而失败。
即时创建命名空间
使用 --create-namespace 可以跳过手动创建步骤。如果命名空间不存在,Helm 会先创建它,然后在其中安装。一个命令即可完成。
helm install my-web bitnami/nginx -n web --create-namespace命名空间的作用
命名空间可以隔离团队和环境。将 dev 和 prod 发布放在不同的命名空间中,可以避免它们相互冲突或被意外删除。
命名空间会绑定到发布
Helm 会记住发布所在的命名空间。之后对该发布进行升级或回滚时,目标会自动指向同一个位置。
之后始终传入 -n
要管理非默认命名空间中的发布,请在 list、status 和 uninstall 命令中重复使用 -n,否则 Helm 会查找错误的位置。
helm status my-web -n web按命名空间列出
helm list 也会限定命名空间范围。使用 -n web 查看该命名空间,或使用 --all-namespaces 一次查看所有位置的发布。
helm list -n web整洁的模式
一种常见做法是:每个应用或每个环境使用一个命名空间。随着集群扩展,这样可以简化 RBAC、配额和清理工作。
组合这些选项
把它们组合起来:名称、图表、--create-namespace 和 -n,可以在一行命令中完成完全隔离且能够自动创建命名空间的安装。🎯
helm install my-web bitnami/nginx -n web --create-namespace快速检查
您要安装到一个尚不存在的命名空间中。会发生什么?
回顾
使用 -n 指定命名空间,使用 --create-namespace 在命名空间缺失时创建它。发布的整个生命周期都会绑定到该命名空间。✅
常见问题解答
「在安装时指定 namespace」课时是免费的吗?
是的 — 「在安装时指定 namespace」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 DevOps Bootcamp 课程的其余内容,请升级到 CoddyKit PRO。 DevOps Bootcamp 课程共包含 4 节课。
「在安装时指定 namespace」这节课中我会学到什么?
正确使用 --namespace 和 --create-namespace 你通过在浏览器中直接运行的动手代码来练习 DevOps Bootcamp,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 DevOps Bootcamp 需要有经验吗?
无需任何先前经验。CoddyKit 上的 DevOps Bootcamp 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「在安装时指定 namespace」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 DevOps Bootcamp 课中编写并运行代码吗?
能。每节 DevOps Bootcamp 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 使用 helm install 部署 nginx
- 命名 Release 与生成名称
- 在安装时指定 namespace
- 观察 Pod 启动