Kubernetes 使用nexus覆盖头盔图表中的values.yaml
舵图结构Kubernetes 使用nexus覆盖头盔图表中的values.yaml,kubernetes,kubernetes-helm,Kubernetes,Kubernetes Helm,舵图结构 web-service |_ _ _ templates |_ _ _ Chart.yaml |_ _ _ values.yaml 我有舵图设置,其中我的应用程序的舵图是打包的.tgz 并推到Nexus RePo考虑https://localhost:50714/#browse/browse:helm 它被添加到helmrepositories.yaml中,使用 helm repo add nexus https://localhost:50714/ 一旦加入回购协议,
web-service
|_ _ _ templates
|_ _ _ Chart.yaml
|_ _ _ values.yaml
我有舵图设置,其中我的应用程序的舵图是打包的.tgz
并推到Nexus RePo考虑<代码>https://localhost:50714/#browse/browse:helm
它被添加到helmrepositories.yaml
中,使用
helm repo add nexus https://localhost:50714/
一旦加入回购协议,我就能看到图表
helm search
NAME CHART VERSION APP VERSION DESCRIPTION
nexus/web-service 1.0.0-k8s Custom microservice Helm chart
要安装,我启动以下命令
helm install nexus/ioc-web-service --version 1.0.0-k8s
并部署应用程序。因此,应用程序是使用default values.yaml部署的
我需要对此进行配置,以便我的default values.yaml被另一个文件覆盖
values-override.yaml
web-service
|_ _ _ templates
|_ _ _ Chart.yaml
|_ _ _ values.yaml
|_ _ _ values-override.yaml
我使用helm提供的使用-f
命令传递额外文件的功能,但它提供了值覆盖。yaml
未找到文件
helm install nexus/web-service -f values-override.yaml --version 1.0.0-k8s
需要一些关于如何以文件格式传递覆盖值的输入。因为替代值可以是动态的。在一个环境中,它可以是一个变量,在另一个环境中,有10个变量需要覆盖您不需要在图表中添加
值overwrite.yaml
。它是运行命令的本地文件。通常由模板taskrunner引擎创建,如Ansible或类似的动态任务 以下是的文档,您可以使用两种方式在安装过程中传递配置数据:
(或--values
):指定具有覆盖的YAML文件。这可以多次指定,最右边的文件将优先-f
:在命令行上指定覆盖--set
YAML
文件所在的目录运行helm install
如果您仍然看到错误:open values-override.yaml:没有这样的文件或目录
,这意味着Helm
可能是作为docker容器安装的。如果您使用Kubespray
安装Helm
会发生这种情况。在这种情况下,您可以通过以下方式检查正在将哪个文件夹安装到docker:
$cat/usr/local/bin/helm
您可能会看到如下内容:
cat /usr/local/bin/helm
#!/bin/bash
/usr/bin/docker run --rm \
--net=host \
--name=helm \
-v /etc/ssl:/etc/ssl:ro \
-v /root/.helm:/root/.helm:rw \
-v /usr/share/ca-certificates:/usr/share/ca-certificates:ro \
lachlanevenson/k8s-helm:2.7.0 \
"$@"
这意味着您需要将值override.yaml
复制到/root/.helm
目录。
您还可以通过$helm init
检查目录:
$ helm init
$HELM_HOME has been configured at /root/.helm.
Warning: Tiller is already installed in the cluster.
(Use --client-only to suppress this message, or --upgrade to upgrade Tiller to the current version.)
Happy Helming!
覆盖文件应位于当前目录中