enableServiceLinks=false不';t禁用要注入pod的Kubernetes clusterIP默认服务环境变量

enableServiceLinks=false不';t禁用要注入pod的Kubernetes clusterIP默认服务环境变量,kubernetes,environment-variables,Kubernetes,Environment Variables,在pod规范中,有选项enableServiceLinks。当设置为false时,与pod创建时运行的服务相关的环境变量将不会被注入pod 问题是,我预计默认命名空间上的kubernetes clusterIp服务也会出现这种情况: NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.116.0.

在pod规范中,有选项
enableServiceLinks
。当设置为false时,与pod创建时运行的服务相关的环境变量将不会被注入pod

问题是,我预计默认命名空间上的kubernetes clusterIp服务也会出现这种情况:

NAME                        TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)    AGE
kubernetes                  ClusterIP   10.116.0.1     <none>        443/TCP    27d
用于部署的部署文件:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: indecision-app-deployment
  labels:
    app: indecision-app
spec:
  selector:
    matchLabels:
      app: indecision-app
  template:
    metadata:
      labels:
        app: indecision-app
    spec:
      enableServiceLinks: false
      containers:
      - name: indecision-app
        image: hleal18/indecision-app:latest
        ports:
        - containerPort: 8080
这是正确的行为吗?是否有API支持的避免注入这些服务环境变量的方法?

根据:

我们始终希望为来自的主服务添加环境变量 主服务命名空间,即使
enableServiceLinks
为false

这基本上意味着你将并且不应该阻止那些特定的环境变量被注入到pod中


我希望这能解决您的问题。

kubernetes版本?客户端1.18-服务器1.15抱歉,如果不清楚,我特别要说的是避免kubernetes服务环境变量。没有注入其他服务。@hleal18是否回答了您的问题<代码>我们始终希望从主服务名称空间为主服务添加环境变量,即使enableServiceLinks为false。是的,非常感谢,它提供了更清晰的信息。看来我们无法摆脱它,或者至少,不建议这样做。
apiVersion: apps/v1
kind: Deployment
metadata:
  name: indecision-app-deployment
  labels:
    app: indecision-app
spec:
  selector:
    matchLabels:
      app: indecision-app
  template:
    metadata:
      labels:
        app: indecision-app
    spec:
      enableServiceLinks: false
      containers:
      - name: indecision-app
        image: hleal18/indecision-app:latest
        ports:
        - containerPort: 8080