Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

250
Visualizações
¿Cómo revertir una implementación a una revisión anterior automáticamente cuando la implementación ha cruzado 'progressDeadlineSeconds'?

Estoy trabajando en la implementación de una imagen acoplable en kubernetes. La primera vez que implementé el contenedor, usé:

 kubectl apply -f <deployment_file>.yaml

y el contenedor se implementó correctamente en un pod.

Además, el archivo_despliegue se parece a esto:

 apiVersion: apps/v1beta1 kind: Deployment metadata: name: publisher spec: replicas: 2 strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 1 minReadySeconds: 300 progressDeadlineSeconds: 900 template: metadata: labels: app: publisher spec: containers: - name: publisher image: 123dev.azurecr.io/publisher:{{ci-build-number}} env: - name: ENVIRONMENT value: "dev" ports: - containerPort: 8080

He definido el atributo 'progressDeadlineSeconds' en el archivo yaml anterior.

Para realizar un seguimiento de la implementación, utilicé:

 kubectl rollout status deployment.v1beta1.apps/publisher

Ahora, si quiero actualizar el contenedor con una nueva imagen, puedo volver a usar el comando

 kubectl apply -f <deployment_file>.yaml

para aplicar la actualización.

Pero, ¿qué pasa si la aplicación de la actualización falla debido a algún motivo (digamos que la imagen de la ventana acoplable está dañada), hay alguna manera de activar automáticamente una reversión a la revisión anterior cuando el estado de los pods no está configurado como 'en ejecución' O el tiempo de ejecución se cruza? 'pregressDeadlineSeconds'?

Hasta ahora no he encontrado una forma de ejecutar una reversión automáticamente. Los pensamientos serían apreciados.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

siga los pasos a continuación.

 1. append the --record param to deployment, as shown below kubectl apply -f <deployment_file>.yaml --record 2. kubectl rollout history deploy <deployment-name> to check deployment history. for example, kubectl rollout history deploy mynginx deployments "mynginx" REVISION CHANGE-CAUSE 3 kubectl set image deploy mynginx mynginx=nginx:1.12.2 4 kubectl set image deploy mynginx mynginx=nginx:1.13.8 3. you can rollback to previous version using revision, say to revision 3 kubectl rollout undo deploy mynginx --to-revision=3
over 4 years ago · Santiago Trujillo Relatório

0

Después del comando kubectl apply , puede verificar si la implementación se implementó correctamente o no y luego, si es necesario, el kubectl rollout undo puede retroceder a la revisión anterior. Además, puede usar el comando de sleep de Linux para esperar un tiempo antes de eso.

En Linux:

 sleep 900 && \ if [[ $(timeout 5 kubectl rollout status -f <deployment_file>.yaml) != *"successfully rolled out"* ]]; then kubectl rollout undo -f <deployment_file>.yaml fi > /dev/null 2>&1 &

timeout 5 detiene el estado de implementación de kubectl rollout status si se atasca después de 5 segundos.

> /dev/null 2>&1 & ejecuta el comando en segundo plano y sin salida de terminal.

over 4 years ago · Santiago Trujillo Relatório

0

Estos son los pasos que sigo para deshacer el lanzamiento de una implementación

Aquí client-depl es el nombre de la implementación.

Paso.1 Para obtener la lista del historial de una implementación específica, use este comando

 kubectl rollout history deploy client-depl

después de eso obtendrás una salida como esta.

imagen de implementación del historial de implementación

así que digamos que quiero implementar la implementación en la REVISIÓN 1 y luego usar este comando

 $ kubectl rollout undo deploy client-depl --to-revision=1

después de eso obtendrás un resultado como este

imagen de reversión de implementación

Felicitaciones, ha implementado con éxito la implementación a la versión anterior. Para cualquier duda por favor responda será un placer ayudarle.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda