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.

Descubre todos los pods que están utilizando la cuenta de servicio predeterminada.

Tenemos un clúster k8s con 10 workers. Ejecutamos cientos de pods en el clúster. Queremos evitar ejecutar pods con la cuenta de servicio predeterminada.
Necesitamos encontrar los pods que se están ejecutando con la cuenta de servicio predeterminada. Puedo encontrar el número de pods que utilizan la cuenta de servicio predeterminada con el comando grep, pero también necesito el nombre del pod y la imagen que está utilizando. Háganos saber sus ideas.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para conocer los pods en ejecución con la cuenta de servicio predeterminada y su respectivo nombre de pod e imagen, podemos utilizar el comando kubectl y darle formato a la salida utilizando plantillas de Go. El comando se vería así:

    kubectl get pods -A -o go-template='{{range .items}}{{if eq .spec.serviceAccountName "default"}}{{.metadata.name}}{{"\t"}}{{.spec.containers.[0].image}}{{"\n"}}{{end}}{{end}}'
    

    Este comando recuperará todos los pods en todos los namespaces (-A flag) y, utilizando la plantilla de Go, filtrará los pods que utilizan la cuenta de servicio default. Luego, mostrará el nombre del pod y el nombre de la imagen para cada pod encontrado.

    También puedes guardar la salida en un archivo para su posterior procesamiento o análisis agregando > output.txt al final del comando.

    Ten en cuenta que necesitas tener los permisos RBAC apropiados para obtener esta información.

Comments are closed.