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.
Instalación múltiple de RHEL / CemtOS 7 usando Kickstart
La forma más sencilla de crear un archivo Kickstart personalizado que puede usar más para múltiples 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 / ruta <b>raíz</b> , a una ubicación de red accesible, y especifique el parámetro de arranque initrd inst.ks = protocol: //path/to/kickstart.fileto Archivo de configuración del menú PXE.
Requisitos
- Configurar un servidor de arranque de red PXE en 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.
- Procedimiento de instalación mínimo de CentOS 7
- Procedimiento de instalación mínimo de RHEL 7
Si necesita un archivo Kickstart que cubra la instalación de GUI y una tabla de particiones específica, le sugiero que primero realice una
instalación gráfica personalizable de RHEL / CentOS 7 en un entorno virtualizado y use el archivo Kickstart resultante 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 a su máquina PXE / directorio <b>raíz</b> y copie el archivo llamado anaconda-ks.cfg a la ruta predeterminada del servidor de <b>Vsftpd </b>(/ var / ftp / pub) , también la ruta para la fuente de instalación del espejo local RHEL / CentOS 7 configurado 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
- Reemplace –url archivado con su ubicación de origen de instalación de red: Ej: –url = ftp: //192.168.1.25/pub/
- Reemplace network –bootproto con dhcp en caso de que haya configurado manualmente las interfaces de red en el proceso de instalación.
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
Configuración de Kickstart
Para obtener opciones y sintaxis de archivo 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
Instalar el paquete Pykickstart
Verificar los archivos Kickstart
4. La última verificación es para asegurar que se puede acceder al archivo Kickstart desde la ubicación de red especificada en este caso, la fuente de instalación del espejo local FTP se define mediante la siguiente dirección URL.
ftp://192.168.1.25/pub/
Verificar espejo de FTP
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.
Para RHEL 7
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
Para CentOS 7
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
Agregar Kickstart al menú PXE
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 se especifica mediante el parámetro de arranque initrd inst.ks = 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: configurar los clientes para instalar automáticamente RHEL / CentOS 7 usando Kickstart
6. Para instalar RHEL / CentOS 7 automáticamente y supervisar todo el proceso de instalación, especialmente en servidores sin cabeza, indique a su máquina cliente desde el BIOS
que arranque desde la red, espere unos segundos, luego presione las teclas F8 y Enter , luego seleccione la opción Kickstart del menú PXE .
Menú de arranque PXE
7. Una vez que el kernel y el ramdisk se cargan y detectan 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.
Instalación automática del sistema operativo
Conexión a VNC
Instalación automática del sistema operativo Kickstart
8. Una vez finalizado el proceso de instalación, inicie sesión en el sistema recién instalado con la cuenta <b>raíz</b> y la contraseña utilizada en la instalación anterior (la
que copió en el archivo Kickstart) y cambie la contraseña raíz del cliente ejecutando el comando passwd .
Conectarse al nuevo servidor instalado
¡Eso es todo! Las instalaciones <b>automáticas Kickstart</b> ofrecen una gran cantidad de beneficios para los administradores de sistemas en entornos en los que tienen que realizar instalaciones del sistema 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.
PXE