Jenkins Ubuntu · 6 min read · Dec 19, 2025
Cómo configurar Jenkins Master y Slave en Ubuntu

Jenkins es un servidor de automatización bifurcado del proyecto Hudson. Tiene soporte para muchos sistemas de software SCM (Gestión de Control de Fuentes) incluyendo Git, SVN y Mercurial. Jenkins proporciona cientos de complementos para automatizar tu proyecto. Jenkins ofrece soporte para una arquitectura ‘master/slave’, permitiendo alojar un gran número de compilaciones de proyectos.
¿Cómo funciona la arquitectura ‘master/slave’ de Jenkins?
La arquitectura master/slave de Jenkins se utiliza para entornos de compilación distribuidos, donde la carga de trabajo de construir proyectos se distribuye a múltiples nodos agentes, y podemos usar diferentes entornos para cada compilación.
En la arquitectura ‘master/slave’ de Jenkins, un master se representa a sí mismo como una instalación básica de Jenkins y maneja todas las tareas para el sistema de compilación. El nodo master de Jenkins se utilizará para programar trabajos, monitorear nodos esclavos, despachar compilaciones a nodos esclavos, registrar y representar el resultado de la compilación, y ejecutar trabajos de compilación directamente.
Los nodos esclavos de Jenkins se configuran para descargar proyectos de compilación del master, y se requiere una conexión establecida entre el master y los esclavos. Los nodos esclavos de Jenkins pueden ejecutarse en varios sistemas operativos como Windows y Linux, y no es necesario instalar paquetes completos de Jenkins en ellos.
Este tutorial nos enseñará cómo configurar la arquitectura master-slave de Jenkins utilizando la última versión de Ubuntu. Aprenderemos a configurar el servidor master de Jenkins y agregar otros nodos de Ubuntu como esclavos de Jenkins.
Requisitos previos
- Servidor Ubuntu (Ubuntu 22.04 - Ubuntu 16.04) - master - 10.0.15.10
- slave01 - 10.0.15.21
- slave02 - 10.0.15.22
- Privilegios de root
¿Qué haremos?
- Instalar Jenkins Master
- Configurar las credenciales del Jenkins Master
- Configurar nodos agentes esclavos
- Agregar nuevos nodos esclavos
- Preparar nodos agentes esclavos para ejecutar la compilación
- Pruebas
Paso 1 - Instalar Jenkins Master
En este tutorial, no cubriremos la instalación básica de Jenkins. Varios artículos en HowtoForge cubren la instalación de Jenkins.
- Instalar Jenkins en Ubuntu 16.04
- Instalar Jenkins en Ubuntu 18.04
- Instalar Jenkins en Ubuntu 20.04
- Instalar Jenkins en Ubuntu 22.04
- Instalar Jenkins en CentOS 7
A continuación, nuestro servidor master de Ubuntu con Jenkins instalado en él.

Paso 2 - Configurar las credenciales del Jenkins Master
Cuando tengas el servidor master de Jenkins instalado, necesitamos configurar el servidor master en sí. Por defecto, hay diferentes formas de iniciar nodos agentes de Jenkins, podemos lanzar los nodos agentes a través de SSH, una cuenta administrativa de Windows, y a través de Java Web Start (JNLP), elige la mejor manera dependiendo de la configuración de tu entorno y sistema operativo.
Para esta guía, lanzaremos los nodos agentes a través de ssh, y necesitamos configurar las credenciales de Jenkins en nuestro servidor master.
Generar clave SSH
Usaremos la autenticación de clave ssh para configurar nuestros nodos agentes, así que necesitamos generar la clave ssh para el usuario Jenkins y luego cargar manualmente la clave en cada nodo de servidor usando ‘ssh-copy-id’.
En el servidor master de Jenkins, inicia sesión como el usuario Jenkins y genera la clave ssh.
su - jenkins
ssh-keygenY obtendrás la clave privada ‘id_rsa’ y la clave pública ‘id_rsa.pub’ en el directorio ‘.ssh’.

Configurar credenciales en Jenkins
Abre tu panel de Jenkins y haz clic en el menú ‘Credenciales’ a la izquierda.

Y haz clic en el enlace del dominio ‘global’.
Ahora haz clic en ‘Agregar credenciales’.

Ahora elige el método de autenticación.
- Tipo: Nombre de usuario SSH con clave privada
- Alcance: Global
- Nombre de usuario: jenkins
- Clave privada: Ingresa directamente y pega la clave privada ‘id_rsa’ del usuario Jenkins desde el servidor master.
Haz clic en ‘OK’.

Y se ha creado la credencial de Jenkins con el método de clave de autenticación ssh.

Paso 3 - Configurar nodos esclavos
Ahora configuraremos los servidores de nodos esclavos instalando java en esos servidores y creando un nuevo usuario Jenkins.
Instalar Java
Instala los paquetes ‘software-properties-common’ y agrega el repositorio PPA de java.
sudo apt install software-properties-common apt-transport-https -y
sudo add-apt-repository ppa:openjdk-r/ppa -yAhora instala java OpenJDK usando el comando apt a continuación.
sudo apt install openjdk-8-jdk -yDespués de que la instalación esté completa, verifica la versión de java instalada.
java -versionY obtendrás Java OpenJDK 1.8 instalado en el sistema.
Agregar nuevo usuario Jenkins
Ahora agrega el usuario ‘Jenkins’ a todos los nodos agentes.
Ejecuta el siguiente comando.
useradd -m -s /bin/bash jenkins
passwd JenkinsEl usuario ‘Jenkins’ para los nodos agentes ha sido creado.

Copiar la clave SSH del Master al Slave
A continuación, debemos cargar la clave ‘id_rsa.pub’ del master a los nodos de servidor esclavos. Necesitamos cargarla en cada nodo de servidor usando el comando ‘ssh-copy-id’ como a continuación.
ssh-copy-id [email protected]
ssh-copy-id [email protected]Escribe la contraseña del usuario Jenkins.
La clave ssh ‘id_rsa.pub’ se ha cargado en todos los nodos agentes.

Paso 4 - Agregar nuevos nodos esclavos
En el panel de Jenkins, haz clic en el menú ‘Administrar Jenkins’, y haz clic en ‘Administrar Nodos’.

Haz clic en ‘Nuevo Nodo’.

Escribe el nombre del nodo ‘slave01’, elige el ‘agente permanente’, y haz clic en ‘OK’.

Ahora escribe los detalles de información del nodo.
- Descripción: servidor agente nodo slave01
- Directorio raíz remoto: /home/jenkins
- Etiquetas: slave01
- Método de lanzamiento: Lanzar agente esclavo a través de SSH, escribe la dirección IP del host ‘10.0.15.21’, elige la autenticación usando las credenciales de ‘Jenkins’.

Ahora haz clic en el botón ‘Guardar’ y espera a que el servidor master se conecte a todos los nodos agentes y lance los servicios del agente.
A continuación se muestran los resultados cuando el servidor master se conecta a todos los nodos agentes.

Los nodos esclavos de Jenkins se han agregado al servidor master.
Paso 5 - Preparar nodos agentes esclavos para ejecutar la compilación
En este paso, configuraremos el master de Jenkins para ejecutar la compilación en los nodos agentes esclavos.
Haz clic en el menú ‘Administrar Jenkins’ y luego haz clic en ‘Configurar Sistema’.

Ahora ve a la sección ‘Configuraciones de Esclavos’ y define todo lo que necesites como se muestra a continuación.

Más información sobre las ‘Configuraciones de Esclavos’ en el enlace.
Haz clic en el botón ‘Guardar’ y ahora estamos listos para ejecutar la compilación en los nodos agentes esclavos.
Paso 6 - Pruebas
Ahora queremos crear una nueva compilación simple para Jenkins y ejecutar la compilación en ambos nodos agentes ‘slave01’ y ‘slave02’.
En el panel de Jenkins, haz clic en el menú ‘Nuevo Elemento’.

Escribe el nombre del elemento, elige el proyecto de estilo libre, y haz clic en ‘OK’.

En la sección general, escribe la descripción del trabajo y marca la opción ‘Restringir dónde se puede ejecutar este proyecto’.
En la ‘Expresión de Etiqueta’, especifica el nodo como ‘slave01’.

Pasa a la sección de compilación y elige la opción ‘Ejecutar shell’, escribe el comando como a continuación.
top -b -n 1 | head -n 10 && hostnameHaz clic en el botón ‘Guardar’, y serás redirigido a la página del trabajo.

Haz clic en ‘Construir Ahora’ para construir el proyecto, y luego haz clic en el elemento en la sección ‘Historial de Construcción’.

Y el siguiente es mi resultado.
Construcción en el nodo agente ‘slave01’.

Construcción en el nodo agente ‘slave02’.

La instalación y configuración de la arquitectura master/slave de Jenkins y las compilaciones distribuidas de Jenkins se han completado con éxito.
Referencias
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.