joe-speedboat.os_update
Nombre del Rol
Este rol aplicará seguridad o parcheo completo a máquinas Red Hat, Ubuntu y Alpine.
Puede hacer:
- parcheo de seguridad o completo
- limpiar versiones antiguas del kernel
- detectar reinicios necesarios y ejecutarlos (ver vars)
Como solo trabajo con AWX (v20.0.1), solo se ha probado con sus (últimas) versiones de Ansible.
Requisitos
Conexión a internet y configuración adecuada del repositorio en las máquinas.
Sistemas Operativos Soportados:
RHEL, CentOS, Rocky, Alma
- Versión: 6-9
Ubuntu LTS: 20.04, 22.04
Alpine: estable-latest
Debian debería funcionar, solo uso distribuciones LTS, que pueden tener SLA.
Mint funciona, pero no tiene un enfoque específico (necesidades personales)
Variables del Rol
- gather_facts está desactivado, porque necesitamos decidir si el host está en línea primero.
Hacemos esto varias veces, para evitar problemas de carga y conectividad.
Por favor, mira la carpetatests
.
La mayoría de las variables tienen un equivalente varname_default
, que se utiliza para anular el valor predeterminado a nivel de playbook.
Así que puedes definir el comportamiento predeterminado para todos los objetivos que no tienen variables definidas. Ej: parcheo completo|de seguridad.
Vamos a hacer un ejemplo:
- el predeterminado
os_update_reboot
endefaults/main.yml
está configurado comoTrue
- en el playbook, defines
os_update_reboot_default
comoFalse
- en el inventario, has establecido
os_update_reboot
comoTrue
para tu grupo de hoststesting
Así que todos tus hosts evitarán reiniciarse después del parcheo, excepto tu grupo de hoststesting
.... voilà, inteligente, ¿verdad?
Recuerda: varname
siempre se aplica, varname_default
solo anula el comportamiento predeterminado del rol.
os_update_level:
seguridad
os_update_level: [none|security|full]os_update_reboot:
true
os_update_reboot: [true|false]os_update_remove_old_kernel:
true
os_update_remove_old_kernel: [true|false]os_update_keep_kernel_nr:
2
Dependencias
Hasta ahora, ninguna.
Ejemplo de Playbook
Verifica la carpeta de pruebas para ejemplos.
Licencia
GPLv3
Security or full patching, cleanup old kernel versions, detect needed reboots and boot them. All that is controlled by defaults in clever way :-)
ansible-galaxy install joe-speedboat.os_update