Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

299
Vistas
Donde se define/configura el espacio de nombres predeterminado para el comando kubectl dentro de un pod

Antecedentes: hay un clúster A y un clúster B en Azure AKS. Cree un pod llamado Agente que ejecute el contenedor de Linux en el clúster A en la prueba de espacio de nombres (que no es el espacio de nombres predeterminado ). En el contenedor de Linux, están instalados pwsh y kubectl.

Operación: Ingrese al pod/agente en el clúster A (kubectl exec -it pod/agent -- bash) y obtenga la credencial del clúster B, el archivo de configuración se configurará con el nombre del clúster y el nombre de usuario, pero SIN espacio de nombres .
Cuando se conecta al clúster B desde pod/Agent, luego ejecuta kubectl get pods , se devuelve el recurso dentro de la prueba del espacio de nombres en lugar de los recursos dentro del espacio de nombres predeterminado .
Dado que no hay un espacio de nombres llamado prueba en el clúster B, no se devuelve ningún recurso.

Entonces, me pregunto dónde se define/configura la prueba del espacio de nombres en el pod/Agent como el espacio de nombres predeterminado.

Pasé un tiempo tratando de sumergirme en el código kubectl en github, sin suerte ...

También traté de usar alias, pero solo funciona para bash/sh, no para pwsh, ya que no quiero cambiar el nombre del comando kubectl, si hago alias kubectl='kubectl -n default', pwsh se atascaría en un círculo.

Cualquier respuesta es apreciada.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

De documentos :

Finalmente, el espacio de nombres predeterminado que se usará para las operaciones de la API con espacio de nombres se coloca en un archivo en /var/run/secrets/kubernetes.io/serviceaccount/namespace en cada contenedor.

Prueba simple de un pod:

 root@ubuntu:/# strace -eopenat kubectl get pod 2>&1 | grep namespace openat(AT_FDCWD, "/var/run/secrets/kubernetes.io/serviceaccount/namespace", O_RDONLY|O_CLOEXEC) = 6 Error from server (Forbidden): pods is forbidden: User "system:serviceaccount:default:default" cannot list resource "pods" in API group "" in the namespace "default"

El directorio /run/secrets/kubernetes.io/serviceaccount siempre está montado de manera predeterminada en el pod y contiene el token de la cuenta de servicio para acceder a la API de Kube.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda