Instalaciones automatizadas de varias distribuciones RHEL / CentOS 7 mediante el servidor PXE y archivos Kickstart


Este artículo es una extensión de mi configuración del entorno de arranque PXE anterior en RHEL/CentOS 7 y se centra en cómo puede realizar instalaciones automáticas de RHEL/CentOS 7, sin la necesidad de la intervención del usuario, en máquinas sin cabeza utilizando un archivo Kickstart leído desde un servidor FTP local.

La preparación del entorno para este tipo de instalación ya se ha procesado en el tutorial anterior sobre la configuración del servidor PXE; la única clave que falta, un archivo Kickstart, se discutirá más adelante en este tutorial.

La forma más sencilla de crear un archivo Kickstart personalizado que puede utilizar más para varias instalaciones es realizar manualmente una instalación de RHEL/CentOS 7 y copiar, una vez finalizado el proceso de instalación, el archivo llamado anaconda-ks.cfg , que reside en la ruta /root , a una ubicación de red accesible, y especifique el parámetro de arranque initrd inst.ks u003d protocol: //path/to/kickstart.fileto Archivo de configuración del menú PXE.

  1. Setup a PXE Network Boot Server on RHEL/CentOS 7

Este tutorial, y la configuración del archivo Kickstart, solo cubre la instalación mínima de RHEL/CentOS 7 sin una instalación gráfica, básicamente el archivo Kikstart resultó del procedimiento de instalación mínima anterior de RHEL/CentOS 7.

  1. CentOS 7 Minimal Installation Procedure
  2. RHEL 7 Minimal Installation Procedure

Instalación gráfica de RHEL/CentOS 7 en un entorno virtualizado y uso que resultó del archivo Kickstart para futuras instalaciones de GUI.

Paso 1: Cree y copie el archivo Kiskstart en la ruta del servidor FTP

1. En el primer paso, vaya al directorio /root de su máquina PXE y copie el archivo llamado anaconda-ks.cfg a la ruta predeterminada del servidor Vsftpd . (/ var/ftp/pub) : también la ruta para la Fuente de instalación del espejo local RHEL/CentOS 7 configurada en el Servidor de arranque de red PXE - Paso 6 (consulte el artículo de configuración del servidor PXE anterior).

# cp anaconda-ks.cfg  /var/ftp/pub/
# chmod 755 /var/ftp/pub/anaconda-ks.cfg

2. Una vez que se haya copiado el archivo, ábralo con su editor de texto favorito y realice los siguientes cambios mínimos.

# nano /var/ftp/pub/anaconda-ks.cfg
  1. Replace –url filed with your network installation source location: Ex: –url=ftp://192.168.1.25/pub/
  2. Replace network –bootproto with dhcp in case you have manually configured network interfaces on installation process.

A continuación se presenta un extracto de cómo se vería un archivo Kickstart.

#version=RHEL7
# System authorization information
auth --enableshadow --passalgo=sha512

# Use network installation
url --url="ftp://192.168.1.25/pub/"
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

# Network information
network  --bootproto=dhcp --device=eno16777736 --ipv6=auto --activate
network  --hostname=localhost.localdomain
# Root password
rootpw --iscrypted $6$RMPTNRo5P7zulbAR$ueRnuz70DX2Z8Pb2oCgfXv4qXOjkdZlaMnC.CoLheFrUF4BEjRIX8rF.2QpPmj2F0a7iOBM3tUL3tyZNKsDp50
# System services
services --enabled="chronyd"
# System timezone
timezone Europe/Bucharest --isUtc
# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --none --initlabel
# Disk partitioning information
part pv.20 --fstype="lvmpv" --ondisk=sda --size=19979
part /boot --fstype="xfs" --ondisk=sda --size=500
volgroup centos --pesize=4096 pv.20
logvol /  --fstype="xfs" --grow --maxsize=51200 --size=1024 --name=root --vgname=centos
logvol swap  --fstype="swap" --size=2048 --name=swap01 --vgname=centos

%packages
@compat-libraries
@core
wget
net-tools
chrony

%end

Para obtener opciones y sintaxis de archivos Kickstart más avanzadas, no dude en leer la documentación de RHEL 7 Kickstart.

3. Antes de intentar usar este archivo para los procedimientos de instalación, es importante que verifique el archivo usando el comando ksvalidator incluido en el paquete Pykickstart , especialmente si se han realizado personalizaciones manuales. Instale el paquete Pykickstart y verifique su archivo Kickstart emitiendo los siguientes comandos.

# yum install pykickstart
# ksvalidator /var/ftp/pub/anaconda-ks.cfg

4. La última verificación es para asegurar que se pueda acceder al archivo Kickstart desde la ubicación de red especificada; en este caso, Fuente de instalación de réplica local de FTP definida por la siguiente dirección URL.

ftp://192.168.1.25/pub/

Paso 2: agregue la etiqueta de instalación de Kikstart a la configuración del servidor PXE

5. Para acceder a la opción Instalación automática de RHEL/CentOS 7 desde el Menú PXE , agregue la siguiente etiqueta a la configuración predeterminada del archivo PXE.

# nano /var/lib/tftpboot/pxelinux.cfg/default

Extracto de la etiqueta del menú PXE.

label 5
menu label ^5) Install RHEL 7 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.ks=ftp://192.168.1.25/pub/anaconda-ks.cfg inst.vnc inst.vncpassword=password
label 5
menu label ^5) Install CentOS 7 x64 with Local Repo using Kickstart
kernel vmlinuz
append initrd=initrd.img inst.ks=ftp://192.168.1.25/pub/anaconda-ks.cfg inst.vnc inst.vncpassword=password

Como puede ver en este ejemplo, la instalación automática se puede supervisar a través de VNC con contraseña (reemplace la contraseña de VNC en consecuencia) y el archivo Kickstart se encuentra localmente en el servidor PXE y está especificado por initrd parámetro de arranque inst.ks u003d Ubicación de red FTP (reemplace el protocolo y la ubicación de red en consecuencia si está utilizando otros métodos de instalación como HTTP, HTTPS, NFS o fuentes de instalación remotas y archivos Kickstart).

Paso 3: Configure los clientes para instalar automáticamente RHEL / CentOS 7 usando Kickstart

para arrancar desde la red, espere unos segundos, luego presione las teclas F8 y Enter , luego seleccione la opción Kickstart del menú PXE.

7. Después de que el kernel y el ramdisk carguen y detecten el archivo Kickstart, el proceso de instalación se inicia automáticamente sin que sea necesaria la intervención del usuario. Si desea ver el proceso de instalación, conéctese con un cliente VNC desde una computadora diferente usando la dirección que le proporciona el instalador y disfrute de la vista.

uno que copió el archivo Kickstart) y cambie la contraseña raíz del cliente ejecutando el comando passwd .

¡Eso es todo! Las instalaciones de Kickstart automático ofrecen una gran cantidad de beneficios para los administradores de sistemas en entornos en los que tienen que realizar instalaciones de sistemas en varias máquinas al mismo tiempo, en un período corto de tiempo, sin la necesidad de interferir manualmente con el proceso de instalación.