Creación de Deployments en kubernetes

Índice

Para crear un despliegue o deployment en Kubernetes se define el recurso en un fichero yaml.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: deployment-taller3
  labels:
    app: test_web
spec:
  revisionHistoryLimit: 2
  strategy:
    type: RollingUpdate
  replicas: 2
  selector:
    matchLabels:
      app: test_web
  template:
    metadata:
      labels:
        app: test_web
    spec:
      containers:
      - image: iesgn/test_web:latest
        name: contendor-taller3
        ports:
        - name: http
          containerPort: 80

Para crear el Deployment se usa el comando kubectl apply.

kubectl apply -f taller3.yaml

Tras aplicar cada versión de un despliegue, es necesario anotar la información sobre la versión desplegada para poder conservar un registro del historial de versiones.

kubectl annotate deployment/deployment-taller3 kubernetes.io/change-cause="Primer despliegue. Versión 1"

Para actualizar la versión de la aplicación se puede indicar la nueva imagen con el siguiente comando:

kubectl set image deployment/deployment-taller3 contendor-taller3=iesgn/test_web:version2

El historial de versiones se puede ver con el comando rollout history.

kubectl rollout history deployment/deployment-taller3

Para volver a la versión anterior de un despliegue se usa el comando rollout undo.

kubectl rollout undo deployment/deployment-taller3
comments powered by Disqus

Relacionados

Instalación de Jenkins usando Docker como runner

En primer lugar, en un equipo con Docker instalado instalamos también Jenkins.

Leer

Cómo instalar qemu/kvm en Debian 12 para virtualizar equipos

Qemu es un potente virtualizador que permite el uso de máquinas virtuales en equipos que usen sistemas operativos basados en Debian y otras distribuciones GNU/Linux. Este software se complementa a la perfección con VirtManager, que ofrece una interfaz gráfica amigable para realizar todas las tareas relacionadas con la virtualización.

Leer

Disparar un pipeline de Jenkins desde GitHub usando Ngrok

Jenkins se integra con Ngrok para hacer accesible el servidor Jenkins local a servicios en Internet como, por ejemplo, GitHub. Para poder exponer Jenkins a Internet es necesario crear una URL de Ngrok.

Leer