Actualizar puppetserver v7 a puppetserver v8

En este post, os vamos a mostrar cómo hemos actualizado el servidor puppetserver 7 a la versión 8.

Requisitos previos:

✔ Sistema con Puppet Server 7 funcionando
✔ Acceso root / sudo
✔ Conexión estable
✔ Agentes Puppet 7 (pueden permanecer 7 incluso cuando el server se actualiza a 8)

Otro de los servidores que tengo alojados en un contenedor Proxmox es el que actúa como servidor puppet, en principio para los sistemas Windows.

Este contenedor tenía instalado Debian Stretch. Así que siguiendo con la tarea de actualización de servidores, he decidido actualizarlo a Debian Buster.

Preparar el entorno

Nos conectamos al servidor vía ssh:

ssh usuario@puppetserver
sudo -i

Verificamos cuál es la versión actualmente instalada:

puppetserver --version
puppetserver version: 7.17.3

A continuación realizamos un backup completo del directorio de configuración por si tuviéramos que restaurarlo:

tar czf /root/puppet-config-backup.tgz /etc/puppetlabs

Y, aunque irá también en la copia de seguridad anterior, realizamos un backup de los certificados:

tar czf /root/puppet-ssl-backup.tgz /etc/puppetlabs/puppet/ssl

Realizar la actualización

Nos aseguramos primero de que Puppet 7 esté actualizado al último release:

apt update && apt upgrade puppetserver -y

Verificamos que estamos en la última versión:

puppetserver --version

A continuación cambiamos los repositorios a Puppet 8. Como nuestro servidor es Debian Bookworm, descargamos el paquete que cambia los repositorios para nuestra versión:

wget https://apt.puppet.com/puppet8-release-bookworm.deb

Una vez descargado el paquete, lo instalamos:

dpkg -i puppet8-release-bookworm.deb 

A continuación, actualizamos repositorios:

apt update

Por último, ya que el repositorio está en la versión 8, realizamos un apt full-upgrade:

apt full-upgrade -y

Este comando:
✔ Descarga Puppet Server 8
✔ Actualiza paquetes necesarios
✔ Instala nuevas dependencias

Por último, reiniciamos el servidor:

systemctl restart puppetserver

Verificamos el estado:

systemctl status puppetserver

Comprobamos la versión actual:

puppetserver --version
puppetserver version: 8.7.0

Y verificamos certificados y agentes:

puppetserver ca list --all

Por último, hacemos la prueba con un agente:

puppet agent -t

Be the first to comment