Tema: imaging
-
Generalizar una imagen de Windows con Sysprep: /generalize, /oobe, /shutdown y el límite de rearme
Sysprep /generalize elimina de una instalación de Windows la información propia del equipo, como el SID y los dispositivos configurados, para poder implementar la imagen en otros equipos. En Windows 8.1/Server 2012 y posteriores, Sysprep puede ejecutarse hasta 1001 veces por imagen (3 veces en Windows 7/Server 2008 R2), y los fallos de generalización dejan rastro en los registros Panther de System32\Sysprep.
-
Preparar una imagen base (golden image) de Linux para clonar: claves de host, machine-id, logs y reglas de red
Una imagen de Linux pensada para clonarse muchas veces no debe contener un /etc/machine-id relleno (ni un /var/lib/dbus/machine-id obsoleto), claves de host SSH, configuración de red fijada a una MAC ni estado de cloud-init. De lo contrario, cada clon arranca con los mismos identificadores que los demás, y si se eliminan las claves de host sin un mecanismo para regenerarlas en el primer arranque, los clones quedan sin SSH.
-
Creación de imágenes de máquina con Packer: builders, provisioners, validate y build
HashiCorp Packer separa los builders de una plantilla (qué plataforma produce la imagen) de los provisioners (qué configura la máquina antes de capturarla). `packer init` instala los plugins necesarios, `packer validate` comprueba la sintaxis y la configuración de una plantilla antes de que `packer build` la ejecute, y marcar las variables como sensibles evita que las credenciales aparezcan en las plantillas y en los logs.
-
Gestión de configuración frente a image baking: dónde deciden la idempotencia y el drift
Las herramientas de gestión de configuración hacen converger un sistema en ejecución hacia un estado declarado en cada ejecución, mientras que el baking de una imagen de máquina fija ese estado una sola vez, en el momento de la compilación. La idempotencia hace seguro repetir el primer enfoque, y elegir entre baking y configuración en el arranque equivale a decidir dónde se permite que ocurra el drift.
Legible por máquina: JSON