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.

Instalación de varios sistemas operativos Linux mediante KickstartInstalació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 &ltb&gtraíz&lt/b&gt , 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

  1. 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.

  1. Procedimiento de instalación mínimo de CentOS 7
  2. 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 &ltb&gtraíz&lt/b&gt y copie el archivo llamado anaconda-ks.cfg a la ruta predeterminada del servidor de &ltb&gtVsftpd &lt/b&gt(/ 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
  1. Reemplace –url archivado con su ubicación de origen de instalación de red: Ej: –url = ftp: //192.168.1.25/pub/
  2. 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 CentOS KickstartConfiguració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 Pykickstart en CentOSInstalar el paquete Pykickstart
Verificar la configuración de KickstartVerificar 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 FTPVerificar 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ú PXEAgregar 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 PXEMenú 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 de CentOS 7Instalación automática del sistema operativo
Instalación de VNC Remote CentOsConexión a VNC
Instalación automática de CentOS KickstartInstalació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 &ltb&gtraíz&lt/b&gt 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 instaladoConectarse al nuevo servidor instalado

¡Eso es todo! Las instalaciones &ltb&gtautomáticas Kickstart&lt/b&gt 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

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux