linkerd 使用 helm 或命名空间注入?

C0o*_*d3r 2 kubernetes kubernetes-helm linkerd

我似乎无法找到我的问题的简单答案,

使用helm安装软件包时如何使用linkerd注入命令/选项添加,例如postgres?

我已经使用另一个包完成了此操作,但这是通过将注释命令添加到值文件中并在运行 helm install 命令时提供该命令来完成的。

使用istio,我所要做的就是在命名空间上添加一个标签,它就可以工作了吗?

因此,我开始考虑使用以下kubectl create namespace命令将注释添加到我正在使用的命名空间中:

但是,除非我使用文件,否则我似乎无法找到在创建名称空间时添加任何注释的方法。

那么,我要么需要一种方法来使用 create 命令将此注释添加到命名空间,要么在使用 helm 安装包时?

谢谢,

小智 8

我认为有几种方法可以做到这一点。这完全取决于您想要实现的目标以及您希望如何管理底层基础设施。

我假设您想自动安装舵图。如果您要使用创建命名空间,kubectl create namespace那么您可能可以使用kubectl annotate <created-namespace> "linkerd.io/inject=enabled".

或者,您可以利用和 使用提供的注入命令 - 这里的工作流程将涉及和命令Linkerd CLI的组合,所以我不确定这是否是您正在寻找的。尽管如此,你可以做类似的事情。kubectllinkerdkubectl create namespace <my-namespace> -o yaml | linkerd inject - | kubectl apply -f -

最后但并非最不重要的一点是,如果您可以使用kubectl create namespace,那么您也许可以将命名空间清单直接通过管道传输到 kubectl 并收工?您可以使用类似于以下代码片段的内容:

cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Namespace
metadata:
  name: foo
  annotations:
    linkerd.io/inject: enabled
EOF
Run Code Online (Sandbox Code Playgroud)