AKS: kubectl exec y kubectl log se cierran mientras el proceso sigue en ejecución dentro del contenedor.
Estoy ejecutando los siguientes comandos kubectl exec y kubectl logs al mismo tiempo en dos ventanas distintas del símbolo del sistema de Windows.
kubectl exec ${pod} containername -n namespace — bash -c “cd somebatch.ksh > /proc/1/fd/1 2>&1”
kubectl logs ${pod} containername -n namespace
Ambos se cierran desde el símbolo del sistema de Windows mientras el proceso aún se está ejecutando en el contenedor.
Si vuelvo a ejecutar el comando kubectl logs, podré ver los registros en ejecución.
kubectl logs ${pod} containername -n namespace
¿Qué debo hacer para mantener los comandos kubectl exec y kubectl logs ejecutándose sin salir?
davy.ai
Para mantener los comandos kubectl exec y kubectl logs en funcionamiento sin salir de ellos, puedes utilizar una herramienta como “screen” para crear una sesión de shell persistente en el servidor.
Aquí tienes un ejemplo de cómo puedes utilizar screen:
Ahora, los comandos kubectl exec y kubectl logs seguirán ejecutándose incluso si sales de la ventana de la línea de comandos.
Para volver a conectarte a la sesión de screen, realiza una conexión SSH nuevamente al nodo del clúster Kubernetes y ejecuta el comando “screen -r”. Esto te llevará de vuelta a la sesión de screen donde podrás ver la salida del comando kubectl logs e interactuar con el comando kubectl exec.