DEV Community

Cover image for Cómo instalar Jenkins en AWS: Guía paso a paso
Brian
Brian

Posted on

Cómo instalar Jenkins en AWS: Guía paso a paso

Jenkins es un servidor de automatización de código abierto que se integra fácilmente con servicios de AWS como CodeCommit, CodeDeploy y Amazon EC2. Esta guía te muestra cómo instalar Jenkins en una instancia de Amazon EC2 y configurarlo para que puedas potenciar tus proyectos sin complicaciones.


1. Crear un par de claves

Las claves te permiten conectarte de forma segura a tu instancia.

  1. En la consola de Amazon EC2, selecciona Key Pairs en la sección "Network & Security".
  2. Haz clic en Create Key Pair.
  3. Asigna un nombre descriptivo (por ejemplo, "JenkinsKey").
  4. Elige el formato de archivo:
    • PEM: Compatible con SSH en Linux/macOS.
    • PPK: Compatible con PuTTY en Windows.
  5. Descarga y guarda el archivo en un lugar seguro. 🔒 Solo podrás descargarlo una vez.
  6. En Linux/macOS, ajusta los permisos de la clave:
   chmod 400 JenkinsKey.pem
Enter fullscreen mode Exit fullscreen mode

2. Configurar un grupo de seguridad

El grupo de seguridad controla el tráfico que llega a tu instancia.

  1. En la consola de EC2, selecciona Security Groups y haz clic en Create Security Group.
  2. Asigna un nombre y descripción (por ejemplo, "JenkinsSG").
  3. Agrega las siguientes reglas en la pestaña "Inbound Rules":
    • SSH:
      • Tipo: SSH
      • Puerto: 22
      • Fuente: Tu dirección IP (consulta aquí tu IP pública).
    • HTTP:
      • Tipo: HTTP
      • Puerto: 80
      • Fuente: Anywhere (0.0.0.0/0).
    • Puerto personalizado:
      • Tipo: TCP personalizado
      • Puerto: 8080
      • Fuente: Anywhere (0.0.0.0/0).
  4. Guarda tu grupo de seguridad.

3. Lanzar una instancia EC2

  1. En la consola de EC2, selecciona Launch Instance.
  2. Elige el Amazon Machine Image (AMI) "Amazon Linux 2023" (Free Tier Eligible).
  3. Configura las siguientes opciones:
    • Key Pair: Selecciona el par de claves que creaste.
    • Security Group: Selecciona el grupo de seguridad configurado.
  4. Haz clic en Launch Instance.
  5. Una vez lanzada, verifica que el estado de tu instancia sea "Running".

4. Instalar y configurar Jenkins

Conéctate a tu instancia

Para Linux/macOS:

ssh -i JenkinsKey.pem ec2-user@<public_dns_name>
Enter fullscreen mode Exit fullscreen mode

Para Windows (usando PuTTY):

  1. Abre PuTTY y selecciona el archivo .ppk de tu clave.
  2. Conéctate usando:
    • Host Name: ec2-user@<public_dns_name>
    • Port: 22

Instala Jenkins

  1. Actualiza los paquetes:
   sudo yum update -y
Enter fullscreen mode Exit fullscreen mode
  1. Agrega el repositorio de Jenkins:
   sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
   sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
Enter fullscreen mode Exit fullscreen mode
  1. Instala Java y Jenkins:
   sudo dnf install java-17-amazon-corretto -y
   sudo yum install jenkins -y
Enter fullscreen mode Exit fullscreen mode
  1. Activa y arranca Jenkins:
   sudo systemctl enable jenkins
   sudo systemctl start jenkins
Enter fullscreen mode Exit fullscreen mode
  1. Verifica que Jenkins esté funcionando:
   sudo systemctl status jenkins
Enter fullscreen mode Exit fullscreen mode

Configura Jenkins

  1. Abre tu navegador y ve a: http://<public_dns_name>:8080.
  2. Ingresa la contraseña inicial ejecutando:
   sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Enter fullscreen mode Exit fullscreen mode
  1. Sigue el asistente para:
    • Instalar los plugins sugeridos.
    • Crear tu primer usuario administrador.

5. Limpieza de recursos

Cuando termines, elimina los recursos para evitar costos innecesarios:

  1. En la consola de EC2, selecciona tu instancia y haz clic en Terminate Instance.
  2. Borra el grupo de seguridad si no lo necesitas para otros proyectos.

¡Y listo! 🎉

Ahora tienes Jenkins configurado en AWS, listo para automatizar tus tareas y proyectos. Si tienes dudas o comentarios, déjalos aquí abajo. ¡Feliz automatización! 😊

Top comments (0)