Kubernetes - 所有 Pod 的共享环境变量

erd*_*run 6 environment-variables kubernetes google-kubernetes-engine kubernetes-helm

我们必须为从我们的集群实例访问互联网设置 https_proxy 和 http_proxy。

https_proxy 和 http_proxy 环境变量应该导出到所有 pod 中,以便应用程序可以访问外部站点。

我们正在使用 helm charts,所以我们可以设置这些环境变量以便所有 pod 都可以访问互联网。

P E*_*ram 6

您应该使用 PodPreset 对象将公共环境变量和其他参数传递给所有匹配的 pod。

setproxy:true为所有 Pod添加标签

下面的PodPreset对象会将环境变量注入HTTPS_PROXYHTTP_PROXY与标签匹配的所有 Pod 中setproxy:true

apiVersion: settings.k8s.io/v1alpha1
kind: PodPreset
metadata:
  name: inject-proxy-var
spec:
  selector:
    matchLabels:
      setproxy: true
  env:
    - name: HTTPS_PROXY
      value: "https_proxy"
    - name: HTTP_PROXY
      value: "http_proxy"
Run Code Online (Sandbox Code Playgroud)

点击链接获取更多帮助 --> https://kubernetes.io/docs/tasks/inject-data-application/podpreset/

您应该在集群中启用 Pod Preset。请点击以下链接

https://kubernetes.io/docs/concepts/workloads/pods/podpreset/

  • `PodPreset` 已从新版本的 k8s 中删除:( (4认同)