Deje que la siguiente plataforma aloje su Jenkins, para que usted se centre en la construcción y el desarrollo.

Si usted es un desarrollador o en DevOps, entonces es muy poco probable que usted no ha oído hablar de Jenkins.

Es una herramienta de automatización de código abierto para ayudar con la integración continua y continuar la entrega en el ciclo de software. Hay varios plugins disponibles para ayudarle con la construcción o el despliegue del código, automatizando las cosas. Jenkins puede instalarse en Windows, macOS o en un sistema operativo basado en UNIX.

La integración continua (IC) es una práctica de desarrollo de software en la que los desarrolladores pueden empujar su código al repositorio varias veces en un día. Jenkins es la herramienta más utilizada para la integración continua. Jenkins juega un papel muy importante en la ejecución de una tubería CI/CD. Construye los proyectos de forma continua y los entrega integrándose con las tecnologías de pruebas y despliegue.

Puedo decir que Jenkins es la herramienta más crucial en el ciclo de vida completo de DevOps. Por lo tanto, es esencial alojar Jenkins en una plataforma fiable. Ejecutarlo y gestionarlo por su cuenta puede convertirse en un proceso muy agitado, especialmente cuando empieza a escalar y tiene varias construcciones de las que ocuparse. Existen múltiples opciones de plataformas de alojamiento para Jenkins que puede aprovechar.

Si usted es un novato y tiene curiosidad por aprender Jenkins, entonces eche un vistazo a este curso en línea.

Si es sólo usted quien necesita Jenkins, entonces puede instalarlo en su PC local y realizar el trabajo. Sin embargo, cuando trabaje en equipo o quiera acceder desde Internet, entonces necesitará alojarlo en la nube. Una opción sería obtener la VM en la nube e instalarla y mantenerla usted mismo O dejar que un experto se encargue de la administración y gestión del servidor por usted.

Los siguientes proveedores ofrecen alojamiento Jenkins gestionado en el que usted paga por lo que utiliza o mensualmente y no tiene que preocuparse de la gestión del servidor, los parches, etc.

Google Cloud Platform

Google Cloud Platform es uno de los principales proveedores de servicios en la nube. En los últimos años, GCP y sus servicios han crecido mucho.

Jenkins construye en la nube de Google se ejecutará más rápido con una infraestructura escalable y un rendimiento predecible. La actualización y el escalado de instalaciones en Jenkins pueden automatizarse utilizando el motor Google Kubernetes.

gcp jenkins architecture

En el diagrama anterior, puede ver que se crea una cuenta de servicio en la gestión de identidad y acceso (IAM) de GCP. Esta cuenta de servicio se agrega al maestro Jenkins y luego se crean los agentes Jenkins. Los artefactos se guardan en el almacenamiento en la nube de la plataforma Google. Los artefactos más antiguos se mueven a diferentes clases de almacenamiento después de un cierto periodo para minimizar el coste de retención.

Hay suficientes razones por las que debería alojar Jenkins en Google Cloud. El plugin Jenkins del motor de computación de GCP crea construcciones más rápidas y aprovisiona máquinas bajo demanda. Con Google Cloud, obtendrá compatibilidad nativa con Kubernetes. Puede crear una canalización CI/CD utilizando Jenkins y Kubernetes fácilmente. Kubernetes de Google Cloud se encarga de todo el escalado y el equilibrio de carga del despliegue de Jenkins. Le proporciona informes detallados de cualquier vulnerabilidad de seguridad inmediatamente después de su aparición. Al aplicar la verificación automática de políticas, se asegura de que sólo se desplieguen artefactos verificados. El plugin Jenkins GKE facilita el proceso de ejecución de pruebas y despliegue de artefactos en Google Kubernetes Engine (GKE).

Con el modelo Pay for what you use, el coste sólo se incurre cuando Jenkins está ejecutando las compilaciones.

«GCP hace que escalar Jenkins sea realmente fácil. Con más de 350 TB de transferencia de datos mensuales y las compilaciones de Jenkins repartidas en 670 vCPU, hemos podido reducir la ejecución de las compilaciones de días a minutos. Y con la facturación por segundos, pagamos sólo por lo que utilizamos» – Tony Espley, Jefe de DevOps, PCMS Group plc

Kamatera

Kamatera es un proveedor de servicios en la nube con 20 años de experiencia. Proporcionan una plataforma para alojar también a Jenkins. Su soporte 24 x 7 es el mejor.

Puede desplegar Jenkins en Kamatera en cuestión de segundos sin ningún coste de configuración. Puede cancelar el servicio cuando lo desee, por lo que no se requiere ningún compromiso. Sólo tiene que elegir la versión de Jenkins que desea instalar y la zona en la que debe instalarse.

kamatera jenkins version

Por último, elija la configuración ofrecida por Kamatera, eso es todo. El precio inicial ofrecido por Kamatera es de sólo 4$/mes, el mejor de la industria. Puede empezar con sus 30 días de prueba gratuita.

kamatera configuration

Amazon Web Services

Amazon Web Services es el mayor proveedor de servicios en la nube actualmente en el mercado de la nube. AWS proporciona una plataforma de alojamiento para herramientas como Jenkins.

En AWS, puede desplegar Jenkins en Amazon Elastic Compute Cloud (Amazon EC2). El entorno de Jenkins se colocará dentro de Amazon Virtual Private Cloud (Amazon VPC). También utilizará el volumen Amazon Elastic Block Store (EBS) para fines de almacenamiento.

Este es el aspecto que tendrá la arquitectura:

aws jenkins architecture

El precio dependerá del tipo de configuración que elija para implementar Jenkins en AWS. Puede lanzarlo en una capa gratuita de AWS durante 1 hora; el coste será de 0 $. Para un uso mensual, si opta por una instancia m4.large con una unidad EBS de 40 GB, el precio rondará los 89 $/mes.

Al utilizar la informática de AWS para ejecutar Jenkins, pagará únicamente por lo que utilice. Y dependiendo de las necesidades, puede escalar hacia abajo o hacia arriba. Esta es la opción más adecuada, segura y fiable para alojar Jenkins.

Cloudbees

Cloudbees proporciona servicios de software de entrega continua. La entrega continua es muy crucial para las organizaciones en transición a un entorno DevOps. Kohsuke Kawaguchi, que fue el fundador del proyecto Jenkins, es actualmente Jefe Científico así como CTO en Cloudbees. Hay muchos otros «core committers» del proyecto Jenkins que trabajan ahora en Cloudbees.

Una característica fantástica que ofrece Cloudbees es el asesor de Cloud Jenkins. Se encarga de dar recomendaciones a sus construcciones Jenkins y también ayudarle con posibles problemas en la construcción. Esta característica es totalmente gratuita por Cloudbees, y los expertos en Jenkins de Cloudbees se encargan de esta característica.

  • Es fácil de configurar. Puede descargar, instalar e iniciar Jenkins en cuestión de segundos, sin necesidad de intervención manual.
  • Cuentan con un equipo de expertos en Jenkins que se encargan de proporcionarle un entorno Jenkins de gran estabilidad
  • Es posible que en el pasado se haya enfrentado a compilaciones fallidas con Jenkins, pero ya no con Cloudbees Jenkins. Las actualizaciones también son muy fluidas.
  • El Programa de Garantía de Cloudbees enumera todas las versiones de plugins que han sido probadas a fondo y son seguras para su uso.
  • Con Cloudbees también obtiene un panel administrativo llamado Asistente de actualización de Beekeeper. Muestra todos los plugins Jenkins en ejecución y las acciones recomendadas sobre ellos.

CloudBees Jenkins Distribution está disponible en AWS, Digitalocean, Google Cloud, Microsoft Azure y VMWare.

Servana

Servana elimina todos los problemas a los que se enfrenta en su canalización CI/CD. Usted no necesita preocuparse por cualquier error en sus construcciones o cualquier retraso en la liberación de construcción.

Utilizan la distribución Cloudbees Jenkins para el despliegue de Jenkins. Incluye múltiples plugins para la seguridad y la gestión de Jenkins.

Proporciona servicios de alojamiento en sus propios centros de datos o en su plataforma multi-nube. Existe un único boll para el proceso de desarrollo y entrega de software.

Pueden proporcionar un servicio a nivel de producción, garantizando la coherencia y la calidad. A continuación se detallan otras características ofrecidas:

  • Mantenimiento cero
  • Garantía de tiempo de actividad
  • Monitorización 24×7 con capacidades en tiempo real
  • Panel de control de operaciones
  • Copias de seguridad cifradas cada hora
  • Listas blancas de IP
  • Plantillas de canalización QuickStart

Ofrece 14 días de prueba gratuita en los que obtendrá los siguientes recursos:

  • Identidad y acceso gestionados
  • CICD de Jenkins
  • Ocho desarrolladores y usuarios administradores
  • Siete días de retención de datos
  • 50GB de almacenamiento de artefactos
  • 5 GB de almacenamiento en caché
  • Ocho pipelines concurrentes
  • Agentes de pago

Microsoft Azure

Microsoft Azure es elsegundo mejor servicio en la nube, proveedor. Jenkins puede alojarse en Microsoft Azure, o puede ampliar su arquitectura Jenkins existente con los servicios de Azure. Esto le ayudará en la centralización de su automatización de construcción y también escalar los despliegues según las necesidades del proyecto.

jenkins azure

Hay tres formas de desplegar Jenkins en Azure:

  1. Usando la plantilla de solución Jenkins. Esta plantilla se puede utilizar con un conocimiento mínimo de Azure para configurar la Instancia Jenkins
  2. Puede utilizar Máquinas Virtuales Azure para desplegar Jenkins
  3. Dentro de un contenedor Azure ejecutándose en un cluster Kubernetes

La plantilla de solución Jenkins instalará la última versión de Jenkins, incluyendo herramientas y plugins como git, plugins de credenciales azure, plugin de agentes de contenedores y VM Azure, plugin de almacenamiento azure, CLI azure, etc.

jenkins azure services

Así es como se ve la arquitectura con el despliegue de Jenkins en Azure. El servidor Jenkins se ejecuta en una máquina virtual Azure. Todo se ejecuta dentro de una red virtual para que puedan conectarse entre sí con separación lógica. La subred aísla el servidor Jenkins para que pueda gestionar bien el tráfico de red. Los artefactos de construcción creados por Jenkins builds se almacenan en Azure Blob storage. Azure Active Directory se encarga de las autenticaciones de los usuarios y define las políticas y permisos para cada rol en el flujo de trabajo. Azure Monitor vigila la máquina virtual Azure donde se ejecuta Jenkins. Los discos gestionados se encargan de mantener el estado del servidor Jenkins y proporcionan recuperación ante desastres. Azure Key vault y todos los secretos y claves para el aprovisionamiento de recursos Azure.

Conclusión

Es una decisión inteligente alojar Jenkins en cualquiera de las plataformas de alojamiento de Jenkins mencionadas y dejar que se encargue de ejecutar y gestionar las compilaciones. Elija ahora su plataforma de alojamiento Jenkins.