GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo instalar el servidor de automatización Jenkins en AlmaLinux 8

Jenkins es un servidor de automatización gratuito y de código abierto escrito en Java. Se puede implementar en un solo servidor o como una aplicación distribuida. Es una de las soluciones de código abierto más populares para la integración continua y la entrega continua de aplicaciones de software.

La integración continua (CI) es una práctica de desarrollo de software que requiere que los desarrolladores integren su código en el repositorio principal (generalmente a diario) tan pronto como sea posible para detectar errores de integración, crear nuevas funciones y proporcionar comentarios para todos. etapas del ciclo de vida del software.

Una plataforma como Jenkins es un marco de CI que se puede usar en línea o instalar localmente en su computadora. Le proporciona una interfaz fácil de usar para colaborar con los miembros de su equipo en GitHub, Bitbucket u otros repositorios que usan Git para crear canalizaciones de integración continua.

La entrega continua (CD) es una práctica de desarrollo de software que permite lanzamientos pequeños y frecuentes de aplicaciones y servicios de software. Es más rápido que el enfoque tradicional, que generalmente implica un solo lanzamiento grande cada seis meses. La entrega continua puede incluir la implementación de código nuevo todos los días, cada hora o incluso varias veces por hora. Los intervalos de tiempo más cortos permiten flexibilidad en respuesta a los cambios en los requisitos comerciales o la tecnología subyacente, al mismo tiempo que reducen el costo y el riesgo asociados con largos períodos de tiempo entre versiones.

Una plataforma como Jenkins es un marco de CD que coordina y administra los diferentes pasos necesarios para producir un sistema de CD. El papel de Jenkins no es solo construir el código, sino también probarlo e implementarlo.

Una arquitectura basada en complementos que permite ampliar la funcionalidad básica de Jenkins con complementos autoescritos, p. para la gestión del código fuente u otras tareas. Los complementos disponibles se enumeran en el Administrador de complementos dentro de Jenkins y se pueden instalar simplemente haciendo clic en ellos.

Jenkins proporciona más de 300 complementos para respaldar la creación, implementación y automatización de cualquier tipo de proyecto desde cero hasta la producción, incluidos Java, Javascript, PHP, Ruby, Android y otros.

También tiene su propia API REST, por lo que puede crear sus propias herramientas personalizadas que se integran con Jenkins sin necesidad de saber cómo codificar ni nada sobre las partes internas de la arquitectura de Jenkins.

Usted es un administrador de sistemas que busca una solución que lo ayude a ahorrar tiempo mientras implementa pequeñas aplicaciones en sus máquinas. Después de mirar algunas opciones, te encuentras con Jenkins, que afirma ser capaz de resolver todos tus problemas. Te sumerges, lees la documentación e instalas Jenkins. La documentación lo guía a través del proceso de instalación, pero no puede instalarlo correctamente.

Instalar y configurar los componentes de software necesarios para un sistema de compilación completo y funcional no es tan fácil como parece. Es por eso que creamos este tutorial paso a paso sobre cómo instalar y configurar Jenkins en AlmaLinux 8.

Requisitos previos

Para instalar Jenkins en AlmaLinux 8, necesitará:

  • Una máquina AlmaLinux 8 de 64 bits con una conexión a Internet que funcione.
  • Acceso raíz a su servidor. Puede obtenerlo siguiendo esta guía.
  • Requisitos del sistema:según el sitio web oficial de Jenkins, una instalación básica de Jenkins necesita un mínimo de 2 GB de RAM. Jenkin requiere 50 GB de espacio libre en disco para la instalación, más 1 GB de espacio libre en disco para cada esclavo de compilación que desee agregar. Además, necesitará un núcleo de CPU y un GB de RAM por trabajador de compilación concurrente que espera admitir.

Actualización de su sistema

Antes de comenzar con la instalación y configuración de Jenkins, debe actualizar su sistema a la última versión disponible de los paquetes de software.

Para eso, ssh a su servidor y ejecute el siguiente comando. El paquete epel-release proporciona paquetes actualizados del repositorio de desarrollo Extras que aún no forman parte de una versión principal de RHEL. El repositorio Extras contiene paquetes que no están incluidos en el conjunto estándar de paquetes de Red Hat, pero que, sin embargo, están creados para las versiones de RHEL. Esto incluye paquetes de idiomas, compatibilidad con versiones más recientes de iconos adaptables y otras actualizaciones de funciones.

  • sudo dnf comprobar actualización &&sudo dnf actualizar -y
  • sudo dnf install epel-release

Instalación de Java

Java es un lenguaje de programación basado en C. Se considera uno de los lenguajes de programación más populares porque se ha utilizado en muchos programas como Android y Google Chrome. Java es un lenguaje de programación multiplataforma que puede ejecutar aplicaciones autónomas en los sistemas operativos Windows y Linux, así como en MacOS, Solaris, FreeBSD y otros sistemas UNIX.

Jenkins, en esencia, es un programa de Java que requiere que instale Java Runtime Environment (JRE) y Java Development Kit (JDK) en su sistema para que funcione correctamente.

Esta demostración instalará OpenJDK 11 en el sistema. OpenJDK es una implementación gratuita y de código abierto de Java Platform, Standard Edition (Java SE). Es un entorno de desarrollo y tiempo de ejecución para crear aplicaciones, microservicios y otros sistemas de servidor que se ejecutan en la máquina virtual Java (JVM).

OpenJDK se basa en el kit de desarrollo de Java de Oracle versión 8 con soporte para Project Jigsaw. Esto significa que puede ejecutar Jenkins en OpenJDK 11 con Project Jigsaw sin problemas de compatibilidad.

Ejecute el siguiente comando para instalar OpenJDK 11 en su sistema.

sudo dnf install java-11-openjdk -y

Una vez que se complete la instalación, puede ejecutar el comando para verificar si funciona correctamente.

java -version

Verá el siguiente resultado.

Instalación de Jenkins

Ahora que tiene Java instalado, está listo para instalar Jenkins.

El repositorio base de AlmaLinux no incluye ninguno de los paquetes de Jenkins, por lo que primero deberá agregar el repositorio oficial de su desarrollador. Es el único repositorio autorizado para distribuir software empaquetado para una distribución compatible específica. En este caso, es el propio repositorio del desarrollador de Jenkins para Redhat y sus derivados.

Ejecute el siguiente comando para importar la clave de Jenkins al sistema. Esta clave es un mecanismo de seguridad utilizado para validar la autenticidad de un paquete de software.

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

Ejecute el siguiente comando para agregar el repositorio de Jenkins al sistema.

cd /etc/yum.repos.d/ && curl -O https://pkg.jenkins.io/redhat-stable/jenkins.repo

Ejecute el comando sudo dnf makecache para actualizar la caché de metadatos de todos los repositorios habilitados para asegurarse de que los datos del repositorio del disco local estén actualizados. Esto se puede usar al actualizar/instalar paquetes o si los metadatos se han dañado.

sudo dnf makecache

Ejecute el siguiente comando para verificar si el repositorio de Jenkins se ha agregado a su sistema. Es una forma de verificar la lista actual de repositorios, que le indica al administrador de paquetes qué repositorios se han habilitado. En otras palabras, es una forma de ver qué repositorios están siendo rastreados actualmente por dnf.

sudo dnf repolist

Ejecute el siguiente comando para instalar Jenkins en su sistema.

dnf install -y jenkins

Una vez que el comando haya terminado de instalarse, ejecute el siguiente comando para iniciar el servicio de Jenkins.

sudo systemctl start jenkins

Ejecute el siguiente comando para comprobar el estado del servicio de Jenkins.

sudo systemctl status jenkins

Jenkins es un servicio de integración continua que puede monitorear ejecuciones de trabajos repetidos, como la creación de un proyecto de software o trabajos ejecutados por cron. Monitorear el estado de Jenkins puede ayudarnos a saber si están funcionando como se esperaba. Este conocimiento puede ser útil para solucionar cualquier problema con los trabajos que ejecuta que no son exitosos.

Verá el siguiente resultado.

Configuración de su cortafuegos

Jenkins es su servidor de compilación automatizado, lo ayuda con la integración y el despliegue continuos para sus proyectos. Jenkins tiene la capacidad de permitir que las conexiones SSH realicen compilaciones y tareas en nodos esclavos remotos. Sin embargo, deberá configurar su firewall para permitir que Jenkins acceda a estos servidores.

Deberá abrir el puerto 22 (SSH) y, opcionalmente, el puerto 8080 (cliente web) para que Jenkins pueda conectarse a los servidores remotos en los que residen sus aplicaciones. Estos puertos suelen estar cerrados de forma predeterminada cuando se utilizan máquinas virtuales basadas en la nube. Si está configurando Jenkins en su propio hardware, deberá permitir estos puertos a través de su firewall o enrutador.

Ejecute el siguiente comando para abrir estos puertos en su firewall.

sudo firewall-cmd --permanent --zone=public --add-port=22/tcp
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp

Ejecute el siguiente comando para aplicar sus cambios. El comando sudo firewalld –reload asegura que las reglas y configuraciones actualmente vigentes se volverán a cargar si están presentes. Esto puede ser útil para aplicar los cambios realizados a través de las herramientas de firewall-cmd al sistema en ejecución.

sudo firewall-cmd --reload

Finalmente, ejecute el siguiente comando para verificar si las reglas se agregaron correctamente.

sudo firewall-cmd --list-all

Acceso a la interfaz de usuario web de Jenkins

Ahora que tiene su servidor Jenkins en funcionamiento, pero desea acceder a él en el navegador web. Puede acceder a Jenkins visitando su dirección IP en el puerto 8080.

Por ejemplo, si su IP es 192.168.1.100 y el puerto predeterminado es 8080, navegue por la siguiente dirección para ir a Jenkins:192.168.1.100:8080

Cuando intente acceder a la interfaz de usuario web de Jenkins, obtendrá un Desbloquear Jenkins pantalla que le pide que vaya a /var/lib/jenkins/secrets/initialAdminPassword , Como se muestra abajo. Estos son datos encriptados que contienen la contraseña que usó para iniciar sesión en el tablero. Almacena la contraseña de administrador inicial de forma cifrada. Esto garantiza que un usuario malicioso que haya obtenido acceso a su servidor Jenkins no tenga la contraseña que utilizó en el primer inicio de sesión.

Regrese a su terminal, donde aún debe estar conectado como usuario raíz. Ingrese el siguiente comando para descifrarlo:

cat /var/lib/jenkins/secrets/initialAdminPassword

Verá el resultado que contiene la contraseña de la interfaz de usuario web de Jenkins.

Copie y pegue esto en su editor favorito y guárdelo en algún lugar de su máquina. Ahora puede usar esta contraseña para acceder a su interfaz web de Jenkins.

En la siguiente pantalla, seleccione instalar complementos sugeridos . Un complemento no es más que un directorio con algunos archivos. Cuando instala el complemento, Jenkins detecta el directorio y habilita las funciones que se especifican en los archivos.

Cuando instale Jenkins por primera vez, debe elegir la opción para instalar complementos sugeridos. Esta opción instala todos los complementos necesarios para una configuración básica de Jenkins. No se preocupe, siempre puede cambiar o agregar más complementos más adelante en la sección Complementos de la interfaz web.

En Crear primer usuario administrador pantalla, proporcione su nombre de usuario, dirección de correo electrónico, nombre completo y contraseña. Haga clic en Guardar y continuar para ir a la pantalla siguiente.

En la siguiente pantalla, mantenga el valor predeterminado y haga clic en Empezar a usar Jenkins

Accederá al panel de control de Jenkins, como se muestra a continuación. Cuando instaló Jenkins por primera vez, probablemente vino con una página en blanco como página predeterminada. Puede ver esto si mira la fuente de la página:no hay nada allí.

Sin embargo, con el tiempo, a medida que comience a agregar trabajos y complementos, la página se transformará en un tablero que muestra información visual sobre sus proyectos.

Conclusión

En esta publicación, aprendió cómo instalar y configurar un servidor Jenkins. Sin embargo, esto es solo el comienzo; es un entorno de compilación automatizado muy valioso que se puede aprovechar en su práctica diaria. Deje sus comentarios y sugerencias en la sección a continuación si tiene comentarios o preguntas.


Linux
  1. Cómo instalar Jenkins en CentOS 8

  2. Cómo instalar Jenkins en Debian 10 (Buster)

  3. Cómo instalar Jenkins Automation Server con Apache en Ubuntu 16.04

  4. Cómo instalar Jenkins Automation Server con Nginx en CentOS 7

  5. Cómo instalar XAMPP en AlmaLinux 8

Cómo instalar o habilitar Cockpit en AlmaLinux 8

Cómo instalar Jenkins en AlmaLinux 8

Cómo instalar Java en AlmaLinux 8

Cómo instalar Tomcat y Java en CentOS 8

Cómo instalar Chef Automation Server en Ubuntu 20.04

Cómo instalar Jenkins en Rocky Linux 8