Mantenimiento del sistema de contenedores¶
Aquí están los apuntes de toda la asignatura, unidad por unidad, con las actividades de cada sesión y las prácticas evaluables. Es el mismo material que se trabaja en clase, ampliado con lo que no cabe en dos horas y con enlaces a la documentación oficial.
De qué va la asignatura¶
En Despliegue de plataformas de contenedores se monta la plataforma: hipervisor, red, cortafuegos, código de infraestructura y pipeline. Esta asignatura trabaja sobre lo que aquella va construyendo y se ocupa de que el servicio que corre encima siga vivo, seguro y bajo control durante meses: vigilarlo, saber cuándo algo va mal antes de que lo digan los usuarios, probarlo, actualizarlo sin romper nada, tener copias que de verdad se puedan restaurar y, cuando llegue el momento, retirarlo sin dejar rastro. La monitorización es de esta asignatura: la pila de mon01 (Prometheus, Alertmanager, Grafana y Loki) se monta aquí desde octubre, y la asignatura de despliegue trabaja sobre ella en marzo para vigilar también la propia plataforma.
Las dos asignaturas se cursan a la vez (esta los martes y jueves, la de despliegue los miércoles y viernes) y comparten laboratorio: la VPC dev de Proxmox, el servicio del curso en app01 y la pila de monitorización en mon01. Lo que aquí se llama "contenedor de referencia" es ese servicio.
Estos son los conceptos que vertebran el curso:
- Observabilidad. Los cuatro flujos que salen de un contenedor (métricas de recursos, métricas de aplicación, logs y eventos), cómo se sacan fuera con cAdvisor, exporters, Promtail y Loki, y cómo se comprueba que llegan íntegros.
- Alarmas. De la métrica al umbral, del umbral a la regla, de la regla a Alertmanager y de ahí a una incidencia con dueño. Recording rules, agrupación, inhibición, silencios y verificación de cada alarma.
- Seguridad de la monitorización. Cada exporter es un puerto más. Auditar qué escucha, cerrar lo que sobra, cifrar y autenticar el tráfico de métricas y logs.
- Indicadores y pruebas. Fichas de métricas, SLI y SLO, catálogo de alarmas con runbooks, y pruebas funcionales, de carga, de estrés y de seguridad con pytest, k6 y ZAP.
- Explotación del sistema en la empresa. Revisión sistemática de logs, detección de fuerza bruta con fail2ban, análisis de reinicios y crashdumps, línea base de rendimiento.
- Copias de seguridad en la empresa. Qué se copia, con qué frecuencia, a dónde, con qué retención y, sobre todo, la restauración de prueba que demuestra que la copia sirve.
- Actualización y vulnerabilidades. Versiones y digests, Renovate, SBOM con Syft, escaneo con Trivy y Grype, decisiones justificadas por CVE y actualizaciones trazables de pre a producción.
- Terminación segura. Dar de baja un servicio liberando infraestructura, destruyendo copias y logs de forma irrecuperable, borrando datos sensibles y desconfigurando la monitorización.
flowchart LR
UT1["<b>UT1</b><br><small>Observabilidad</small>"]:::pieza
UT2["<b>UT2</b><br><small>Alarmas</small>"]:::pieza
UT3["<b>UT3</b><br><small>Seguridad de la monitorización</small>"]:::pieza
UT4["<b>UT4</b><br><small>KPI y pruebas</small>"]:::pieza
UT7["<b>UT7</b><br><small>Actualización y vulnerabilidades</small>"]:::pieza
UT8["<b>UT8</b><br><small>Terminación segura</small>"]:::pieza
FE["<b>Formación en empresa</b><br><small>UT5 logs y rendimiento · UT6 copias</small>"]:::infra
UT1 --> UT2 --> UT3 --> UT4 --> UT7 --> UT8
UT4 -.-> FE
classDef act fill:#ea580c22,stroke:#ea580c,stroke-width:1.5px
classDef pieza fill:#64748b22,stroke:#64748b,stroke-width:1.5px
classDef dato fill:#2563eb22,stroke:#2563eb,stroke-width:1.5px
classDef infra fill:#a1a1aa14,stroke:#a1a1aa,stroke-width:1.5px
classDef ok fill:#16a34a22,stroke:#16a34a,stroke-width:1.5px
classDef riesgo fill:#dc262622,stroke:#dc2626,stroke-width:1.5px
Primero se mira, luego se avisa, luego se protege lo que mira, y solo entonces se mide, se actualiza y se retira.
Qué hay en esta web¶
-
Los apuntes de las ocho unidades. Cada una empieza con un par de párrafos sobre lo que se busca y sigue con las sesiones en orden: en cada una, la teoría que se explica ese día y, a continuación, su hoja de práctica. La práctica evaluable cierra la unidad con su rúbrica.
-
Las 41 sesiones del curso con fecha, unidad y lo que se hace en cada una. La vista de calendario muestra el detalle al pasar el ratón y lleva a la actividad con un clic.
-
Resultados de aprendizaje y criterios de evaluación con la unidad donde se trabaja cada uno, cómo se calcula la nota, las herramientas y la metodología.
-
El entorno compartido con la asignatura de despliegue, qué se añade en esta (la pila de monitorización de mon01 con Loki y Promtail, restic, herramientas de escaneo), convenciones y cómo recuperarlo.
-
Docker, PromQL y LogQL, Alertmanager, nftables, k6 y newman, fail2ban, restic, Trivy y Syft, y el borrado seguro.
-
Los términos de la asignatura en una o dos frases, con la unidad donde se explican a fondo.
-
Los apartados de cada unidad que van más allá de lo que se hace en clase y los enlaces para seguir por cuenta propia, ordenados por unidad.
-
Documentación oficial de cada herramienta, libros, sitios donde practicar y créditos de las imágenes.
-
Despliegue de plataformas de contenedores
La asignatura hermana. Ahí está cómo se construye, en paralelo a esta, el laboratorio sobre el que se trabaja aquí: Proxmox, la VPC, el cortafuegos, OpenTofu y Jenkins.
Unidades¶
| UT | Título | Horas | Dónde | RA · CE |
|---|---|---|---|---|
| UT1 | Observabilidad de contenedores: métricas, logs y eventos | 14 | Centro | RA1 a |
| UT2 | Umbrales, agregación y gestión de alarmas | 16 | Centro | RA1 b–e |
| UT3 | Seguridad de las comunicaciones de monitorización | 6 | Centro | RA1 f, g |
| UT4 | Indicadores, KPI y pruebas del servicio | 16 | Centro | RA2 a–f |
| UT5 | Explotación de logs, accesos y rendimiento | 14 | Empresa | RA3 a–d |
| UT6 | Copias de seguridad y restauración | 14 | Empresa | RA4 a, b, c |
| UT7 | Actualización y gestión de vulnerabilidades | 14 | Centro | RA4 d–i |
| UT8 | Terminación segura del contenedor | 10 | Centro | RA5 a–d |
Las unidades del centro van seguidas de octubre a marzo, y la teoría y los exámenes terminan antes de Pascua: la UT8 tiene su última sesión el 18 de marzo y su práctica evaluable, el acta de baja, se entrega por Aules antes del examen. Los exámenes de evaluación van después de la UT3 (primera evaluación, 10 de diciembre de 2026) y después de la UT8 (segunda evaluación, 23 de marzo de 2027), y sus dos sesiones están contadas dentro de las 41 sesiones y las 82 h que el módulo tiene en el centro. Después de Pascua (del 25 de marzo al 2 de abril) el 6 de abril queda sin clase, como margen del calendario, y la última sesión, la del 8 de abril, se dedica a un proyecto conjunto con el resto de asignaturas del curso, que se plantea aparte.
Cómo usar estos apuntes¶
- Conviene leer la sesión antes de clase. Cada unidad está ordenada por sesiones, con la teoría de ese día seguida de su hoja de práctica. En clase la explicación es corta y el laboratorio largo.
- Los comandos están pensados para copiarlos en el laboratorio. Si algo no funciona igual en la versión instalada, el primer sitio donde mirar es la sección "Errores frecuentes" de la unidad.
- Las hojas de práctica numeradas (A1.1, A1.2...) se hacen en la sesión que se indica y no se entregan: su último apartado, «Para practicar», dice qué conviene apuntar, responder y guardar, y la práctica evaluable de la unidad parte muchas veces de ello. Lo que va más allá de lo que se hace en clase está apartado en Para ampliar, para no cargar las unidades. La práctica evaluable cierra la unidad y es lo que se entrega por Aules.
- Conviene documentar sobre la marcha: una captura con fecha, la salida de un comando, el fichero de configuración. Al final de la unidad eso es la práctica.
Antes de empezar¶
Se da por hecho lo mismo que en la asignatura de despliegue: terminal de Linux, redes básicas, Docker y Git. No hace falta tener el laboratorio montado para empezar, porque no existe todavía: la asignatura arranca el 1 de octubre con Docker en el puesto del alumno, con el servicio del curso (nginx, API y PostgreSQL en un solo compose) y una pila mínima de monitorización en localhost. El laboratorio va llegando por fases desde la asignatura de despliegue: app01 y mon01 el 14 de octubre, y la VPC dev y el cortafuegos en noviembre, y cada unidad indica sobre qué se trabaja ese día. La página de laboratorio detalla qué hay disponible en cada momento.
Sobre estos apuntes¶
Este material lo ha escrito Víctor Sellés para la asignatura con el apoyo de Claude; la nota completa sobre cómo se ha elaborado está en la página de presentación. Los errores se pueden comunicar en clase o abrir como issue en el repositorio. El texto se publica con licencia CC BY-SA 4.0; las imágenes de terceros llevan su atribución al pie. La versión publicada aparece en el pie de cada página.