【发布时间】:2020-08-12 07:34:11
【问题描述】:
总的来说,我是 helm 和 Kubernetes 的初学者。最近,我开始尝试部署到 AKS 集群,其中包括隐藏在负载平衡 NGINX 节点后面的多个集群 IP 服务。今天我使用 Helm 2.2 并成功安装了 NGINX 节点。我现在的理解是,对于我在 Helm 中的每个单独的服务图表,我使用注释来启用 Nginx 路由。正如我所看到的,我应该能够修改图表顶部的 values.yaml 文件(别处)来执行这些操作。
service:
type: ClusterIP
port: 80
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
hosts:
- chart-example.local
当我执行上述操作时(为简洁起见,排除了文件的其余部分)我收到错误“将 YAML 转换为 JSON:yaml:第 38 行:未找到预期的密钥。”
第 38 行对应于入口部分的末尾(后面的空白行)。我假设我的 yaml 格式不正确,我终生无法找到以这种方式使用此文件的任何示例。我做对了吗?如果是,我在 yaml.xml 中犯了什么错误。如果没有,我应该怎么做才能通过入口文件路由到我的众多服务之一?是否有任何实际示例在此 fasion 中设置的 values.yaml 文件可以在某处看到?每次搜索时,我都会发现 Ingress.yaml 文件被修改为 Kubernetes 对象,而不是模板化 Helm 图表。
【问题讨论】:
-
拜托,你能链接你所指的舵图吗?请花点时间阅读How to create a Minimal, Reproducible Example。
-
嗨@mWatney 感谢您的提问。我的图表纯粹是本地测试图表,没有在任何地方发布。我试图弄清楚如何正确创建 values.yaml。但是,在尝试重新创建可重现的示例时,我解决了布局问题,非常感谢您的提示。
标签: nginx kubernetes yaml kubernetes-helm