Cobbler es un servidor de aprovisionamiento de Linux gratuito y de código abierto, se utiliza para la instalación automática o desatendida del sistema operativo en varios sistemas simultáneamente a través de la red. El servidor Cobbler hace uso de servicios como DHCP , TFTP y DNS . En Cobbler OS, la instalación se basa en el archivo Kickstart y para comenzar la instalación en clientes o sistemas, uno tiene que iniciar los sistemas a través de la red o pxe y el servidor Cobbler se encargará del resto.
En este artículo, demostraremos cómo instalar y configurar Cobbler Server en CentOS 7.x
Consulte los siguientes pasos para la instalación de Cobbler:
Paso:1 Habilite el repositorio epel ejecutando el siguiente comando yum
[[email protected] ~]# yum install epel-release
Paso:2 Instalar Cobbler y sus paquetes dependientes
Ejecute el siguiente comando desde la terminal para instalar Cobbler y sus paquetes dependientes.
[[email protected] ~]# yum install cobbler cobbler-web dnsmasq syslinux pykickstart xinetd -y
Paso:3 Inicie el servicio Cobbler and Web Server (httpd)
Ejecute los siguientes comandos systemctl para iniciar y habilitar Cobbler y el servicio httpd
[[email protected] ~]# systemctl start cobblerd ; systemctl enable cobblerd [[email protected] ~]# systemctl start httpd ; systemctl enable httpd
En caso de que SELinux esté habilitado, configúrelo en modo Permisivo
[[email protected] ~]# setenforce 0
Para hacer que SELinux esté en modo permisivo de forma permanente, configure el siguiente parámetro en '/etc/sysconfig/selinux ‘
SELINUX=permissive
En caso de que se esté ejecutando el firewall del sistema operativo, establezca las siguientes reglas de firewall.
[[email protected] ~]# firewall-cmd --add-port=80/tcp --permanent success [[email protected] ~]# firewall-cmd --add-port=443/tcp --permanent success [[email protected] ~]# firewall-cmd --add-service=dhcp --permanent success [[email protected] ~]# firewall-cmd --add-port=69/tcp --permanent success [[email protected] ~]# firewall-cmd --add-port=69/udp --permanent success [[email protected] ~]# firewall-cmd --add-port=4011/udp --permanent success [[email protected] ~]# firewall-cmd --reload success [[email protected] ~]#
Paso:4 Acceso a la interfaz web de Cobbler
Una vez completada la instalación, intente acceder a Cobbler desde su navegador web.
https://
En mi caso, la dirección IP de Cobbler Server es "172.168.10.5", el nombre de usuario predeterminado es 'cobbler ' y la contraseña es 'zapatero ‘
La parte de instalación de Cobbler está completa y ahora configúrela.
Consulte los siguientes pasos para la configuración de Cobbler:
Paso:5 Edite el archivo /etc/cobbler/settings
Generemos la contraseña raíz encriptada
[[email protected] ~]# openssl passwd -1 Password: Verifying - Password: $1$j9/aR8Et$uovwBsGM.cLGcwR.Nf7Qq0 [[email protected] ~]#
Actualice esta cadena cifrada en el archivo de configuración '/etc/cobbler/settings ' bajo el parámetro 'default_password_crypted ' y también habilite el DHCP de Cobbler , DNS ,PXE y TFTP función cambiando el valor del parámetro de 0 a 1.
Especifique la dirección IP de su servidor TFTP en 'next_server ' y la dirección IP del servidor de Cobbler en 'servidor ' parámetro.
[[email protected] ~]# vi /etc/cobbler/settings ------------------------------------------------------- default_password_crypted: "$1$j9/aR8Et$uovwBsGM.cLGcwR.Nf7Qq0" manage_dhcp: 1 manage_dns: 1 pxe_just_once: 1 next_server: 172.168.10.5 server: 172.168.10.5 --------------------------------------------------------
Paso:6 Actualice el archivo '/etc/cobbler/dhcp.template' y '/etc/cobbler/dnsmasq.template'
Edite el archivo '/etc/cobbler/dhcp.template' y actualice la subred para el servidor dhcp según su configuración
[[email protected] ~]# vi /etc/cobbler/dhcp.template ----------------------------------------------- subnet 172.168.10.0 netmask 255.255.255.0 { option routers 172.168.10.5; option domain-name-servers 172.168.10.5; option subnet-mask 255.255.255.0; range dynamic-bootp 172.168.10.80 172.168.10.140; default-lease-time 21700; max-lease-time 43100; next-server $next_server; class "pxeclients" { match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; if option pxe-system-type = 00:02 { filename "ia64/elilo.efi"; } else if option pxe-system-type = 00:06 { filename "grub/grub-x86.efi"; } else if option pxe-system-type = 00:07 { filename "grub/grub-x86_64.efi"; } else { filename "pxelinux.0"; } } } --------------------------------------------
Actualice el rango de direcciones IP para clientes pxe en el archivo '/etc/cobbler/dnsmasq.template'
[[email protected] ~]# vi /etc/cobbler/dnsmasq.template dhcp-range=172.168.10.80,172.168.10.140
Reinicie el servicio Cobbler y xinetd y sincronice estos cambios con Cobbler.
[[email protected] ~]# systemctl restart cobblerd [[email protected] ~]# systemctl restart xinetd ; systemctl enable xinetd [[email protected] ~]# cobbler check ; cobbler sync
Monte el archivo ISO e importe su contenido a Cobbler.
Descargue o copie el archivo ISO de CentOS 7 y ejecute los siguientes comandos para importar ISO a Cobbler
[[email protected] ~]# mkdir /mnt/iso [[email protected] ~]# mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/iso/ [[email protected] ~]# cobbler import --arch=x86_64 --path=/mnt/iso --name=CentOS7
Del mismo modo, puede importar archivos ISO de otras versiones de Linux. En caso de que obtenga errores de firma durante la importación, ejecute el siguiente comando para resolver el problema
[[email protected] ~]# cobbler signature update
Paso:7 Verifique la lista de distribución desde la línea de comandos y la interfaz web de Cobbler
Ejecute el siguiente comando desde la terminal para ver la lista de distribuciones
[[email protected] ~]# cobbler distro list CentOS7-x86_64 [[email protected] ~]#
También podemos ver la lista de distribuciones desde la interfaz web de Cobbler.
Inicie sesión en la interfaz, vaya a la pestaña Configuración -> haga clic en Distros
El informe de distribución se puede ver desde el comando usando el siguiente comando de zapatero:
[[email protected] ~]# cobbler distro report --name=CentOS7-x86_64 Name : CentOS7-x86_64 Architecture : x86_64 TFTP Boot Files : {} Breed : redhat Comment : Fetchable Files : {} Initrd : /var/www/cobbler/ks_mirror/CentOS7-x86_64/images/pxeboot/initrd.img Kernel : /var/www/cobbler/ks_mirror/CentOS7-x86_64/images/pxeboot/vmlinuz Kernel Options : {} Kernel Options (Post Install) : {} Kickstart Metadata : {'tree': 'http://@@[email protected]@/cblr/links/CentOS7-x86_64'} Management Classes : [] OS Version : rhel7 Owners : ['admin'] Red Hat Management Key : <<inherit>> Red Hat Management Server : <<inherit>> Template Files : {} [[email protected] ~]#
Paso:8 Crear archivo Kickstart para CentOS 7
Vamos a crear un archivo kickstart para CentOS 7 con el nombre 'CentOS7.ks ', la ubicación predeterminada de los archivos kickstart es '/var/lib/cobbler/kickstarts ‘
[[email protected] ~]# vi /var/lib/cobbler/kickstarts/CentOS7.ks #platform=x86, AMD64, or Intel EM64T #version=DEVEL # Firewall configuration firewall --disabled # Install OS instead of upgrade install # Use HTTP installation media url --url="http://172.168.10.5/cblr/links/CentOS7-x86_64/" # Root password rootpw --iscrypted $1$j9/aR8Et$uovwBsGM.cLGcwR.Nf7Qq0 # Network information network --bootproto=dhcp --device=eth0 --onboot=on # Reboot after installation reboot # System authorization information auth useshadow passalgo=sha512 # Use graphical install graphical firstboot disable # System keyboard keyboard us # System language lang en_US # SELinux configuration selinux disabled # Installation logging level logging level=info # System timezone timezone Europe/Amsterdam # System bootloader configuration bootloader location=mbr clearpart --all --initlabel part swap --asprimary --fstype="swap" --size=1024 part /boot --fstype xfs --size=500 part pv.01 --size=1 --grow volgroup root_vg01 pv.01 logvol / --fstype xfs --name=lv_01 --vgname=root_vg01 --size=1 --grow %packages @^minimal @core %end %addon com_redhat_kdump --disable --reserve-mb='auto' %end [[email protected] ~]#
El paso final es sincronizar el perfil actualizado con el servidor Cobbler usando el siguiente comando Cobbler:
[[email protected] ~]# cobbler profile edit --name=CentOS7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS7.ks [[email protected] ~]# cobbler sync
La configuración básica se completó ahora y arranque los sistemas con pxe o red y realice las pruebas de instalación.
Paso:9 Arrancar los Clientes con PXE
Inicie el sistema con pxe en el que desea realizar la instalación automática del sistema operativo
Seleccione el sistema operativo como CentOS7 y presione enter.
Wow, podemos ver que la instalación desatendida del sistema operativo ha comenzado.
Eso es todo, espero que hayas disfrutado los pasos de instalación y configuración de Cobbler 🙂