Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

304
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!