es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Existe alguna forma de agregar una ENV a una pod o a un nuevo pod en Kubernetes?

¿Existe alguna forma de agregar una variable de entorno (ENV) a un pod existente o a un nuevo pod en Kubernetes?
Por ejemplo, quiero agregar HTTP_PROXY a muchos pods y a los nuevos pods que se generarán en Kubeflow 1.4. De esta forma, estos pods podrán acceder a Internet.

Describa lo que ha intentado:
He buscado y encontré que Istio tal vez pueda hacer esto, pero es demasiado complejo para mí.
En segundo lugar, hay demasiados archivos YAML en Kubeflow, por lo que no puedo modificarlos uno por uno para usar un configmap o agregar una variable de entorno en ellos.

¿Alguien tiene alguna forma simple de hacer esto? Algo como hacerlo en la configuración de Kubernetes.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Agregar ENV a un Pod en Kubernetes

    Una forma de agregar un ENV a un pod en Kubernetes es mediante el uso de Kubernetes ConfigMap.

    Aquí están los pasos a seguir:

    1. Crear un ConfigMap con el valor deseado de HTTP_PROXY.
    kubectl create configmap http-proxy-config --from-literal=HTTP_PROXY=<valor-del-proxy>
    
    1. Modificar el archivo yaml del pod al que desee agregar el ENV.

    Agregue una nueva sección bajo spec.containers llamada env con los atributos name y valueFrom que hacen referencia al ConfigMap:

    spec:
      containers:
      - name: your-container
        env:
        - name: HTTP_PROXY
          valueFrom:
            configMapKeyRef:
              name: http-proxy-config
              key: HTTP_PROXY
    
    1. Aplicar el archivo yaml modificado al clúster de Kubernetes:
    kubectl apply -f your-pod.yaml
    

    De esta manera, todos los nuevos pods generados a partir de este archivo yaml modificado tendrán el ENV de HTTP_PROXY establecido con el valor almacenado en el ConfigMap.

    Alternativamente, puedes usar una herramienta de plantillas como Helm para gestionar tus recursos de Kubernetes, como tu implementación de Kubeflow. De esta manera, puedes tener un solo archivo de configuración con marcadores de posición que se llenan durante la instalación.

Comments are closed.