Introducci贸n a Jenkins

2/15
Recursos

Jenkins es open source y probablemente el software de automatizaci贸n m谩s usado de todos, escrito en Java y corre en JVM. Es muy conveniente al ser una herramienta extensible al tener un ecosistema de plugins que te permiten extenderlo, puedes escribir tus propios plugins con Java, pero ya la comunidad ha desarrollado un sinf铆n de ellos.

Tambi茅n nos permite escalar de manera horizontal y verticalmente, puede correr un sin n煤mero de trabajos concurrentemente en una sola m谩quina y si esa m谩quina no da abasto se le puede dar m谩s recursos a Jenkins. O una m谩quina no es suficiente entonces Jenkins nos permite escalar horizontalmente con 鈥溾渟laves鈥濃 y controlar varios nodos para que trabajen por 茅l.

Jenkins siempre esta siendo innovado y teniendo actualizaciones de seguridad, esto es importante porque es el target m谩s grande de seguridad de una empresa porque lo tiene todo.

Algo que Jenkins ha trabajado mucho en los 煤ltimos a帽os es que puedes escribir tus 鈥溾渏obs鈥濃 o unidades de trabajo en c贸digo. Nosotros queremos que nuestra automatizaci贸n tambi茅n sea program谩tica, no solo los comando a ejecutar sino poder migrar nuestro trabajo a un nuevo Jenkins de manera reproducible. Han creado Pipelines as code

Aportes 44

Preguntas 6

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

A tener en cuenta:

Jenkins usa Java 8 por lo menos al d铆a en que este comentario se publica, por esa raz贸n deben asegurarse de instalarlo, no sea que les genere errores.

quienes ten铆an una versi贸n m谩s reciente y manejan ubuntu por ejemplo, luego de instalar java 8 pueden ejecutar el siguiente comando para seleccionar la versi贸n de java que se aplicar谩 por defecto.

sudo update-alternatives --config java

Caracteristicas

  • Es Open Source
  • Escrito en java sobre JVM
  • Mayormente se corre en Linux
  • Es extensible
  • Se puede escribir plugins en java
  • La comunidad aporta tanto escribiendo un sin fin de Plugins.
  • Jenkins es amigable y flexible por la cantidad de comunidad que tiene.
  • Compa帽ias enormes tiene un solo jenkins
  • Jenkins puede crecer horizontalmente a帽adiendo mas hadware ya que soporta esto con el termino slaves.
  • Jenkins es un servicio de automatizaci贸n.
  • CircleCI realiza lo mismo que jenkins.
  • Actualmente se puede escribir tu job con codigo y no solo con la interfaz.

hola a todos, le envi贸 el enlace donde el se帽or yamil tiene todos los script para el curso, lo coloco porque es necesario.
https://github.com/elbuo8/platzi-scripts

Escalabilidad Vertical -> Relacionado con el hardware del servidor, lo conseguimos aumentando los recursos del servidor (procesamiento, memoria, almacenamiento).
Escalabilidad Horizontal -> Agregar nodos adicionales para adaptarse a la carga de trabajo. Si la aplicaci贸n o el sistema est谩n llegando a su punto cr铆tico, entonces se agregan nodos adicionales y se divide la carga entre los distintos nodos. En Jenkis, lo podemos conseguir mediante 鈥淪laves鈥.

En el 2021 existen mas software de automatizacion, las alternativas mas directas son:

  • GitLab CI
  • GitHub Actions
    Igual de potentes, y la recomendacion es aprender mas de una.

驴Puedo integrar Jenkins con Gitlab?

Java鈥 馃槮

Recordar que Jenkins se usa de forma interna, no esta expuesto de forma publica

Jenkins es open source y probablemente el software de automatizaci贸n m谩s usado de todos, escrito en Java y corre en JVM. Jenkins es muy conveniente. Ya que Jenkins es una herramienta extensible; esto quiere decir que tiene un ecosistema de plugins que te permiten extenderlo. Si quieres, puedes escribir tus propios plugins con Java, pero ya la comunidad ha desarrollado un sinf铆n de ellos馃挭馃徎

Nos puedes comentar algo sobre jenkins en docker como comentario.

Install Jenkins in Docker

docker run -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts-jdk11

In your browser type:

http://127.0.0.1:8080/

What is my password?

docker container ls 
docker exec -it <conteiner-name> /bin/bash
cat /var/jenkins_home/secrets/initialAdminPassword

diciembre 2020

El concepto de 鈥淗oney Pots鈥 es importante traerlo consideraci贸n, esto se refiere a que al centralizar nuestro c贸digo y nuestra seguridad en Jenkins entre otras cosas, lo hace un objetivo perfecto para los hackers.

Por ello el foco en las actualizaciones o parchados de seguridad.

Super bien鈥 y el profe es super simpatico XD interesante el curso鈥ontinuemos 馃槑

Un ejemplo de Jenkins as a service:
https://servanamanaged.com/services/managed-jenkins/

pipeline as code

escalar horizontal y vertical, muy buena capacidad de la herramienta.

Muy buen intro para empezar a conocer de herramientas de automatizaci贸n!

Jenkins est谩 escrito en Java , es portable y cuenta con un ecosistema de plugins.

A aprender ha automatizar con Jenkins

Jenkins

Jenkins se utiliza para Continuos Delivery, haciendo m谩s rapido el Deploy de herramientas y ambientes para producci贸n, pruebas o desarrollo.

Excelente Jenkins para automatizaci贸n !!!

Tambi茅n pueden instalar Jenkins mediante Docker, para no instalar todo directamente en la m谩quina y que sea m谩s portable entre computadores con sistemas operativos distintos

Jenkins es Open Source y el software de automatizaci贸n m谩s grande de todos, est谩 escrito en Java, mayormente se corre en Linux, aunque tambi茅n puede correr en Windows, etc.

<h5>Propiedades</h5>
  • Es sumamente extensible por medio de plugins
  • Es portable
  • Mucha comunidad que lo hace friendly
  • Puede escalar vertical y horizontalmente
  • Puede corre un sin n煤mero de tareas en una sola m谩quina, si esa m谩quina no da abasto la puedo hacer m谩s grande y escalarla verticalmente, pero en alg煤n momento, una m谩quina no ser谩 suficiente y tendr茅 que escalar horizontalmente con 鈥渟laves鈥, lo que hace es que un 鈥渕aestro鈥 controle varios esclavos y que ellos trabajen por el Jenkins principal
  • Releases de seguridad constantes dado que puede tener accesos a las llaves de seguridad Cloud, por ende, se intenta correr siempre internamente
  • Es posible escribir los 鈥渏obs鈥 que son la unidad de trabajo de Jenkins en forma de c贸digo lo que permite que no se pierda el trabajo por alguna raz贸n (es reproducible) Pipeline as Code

Jenkins permite escalar vertical y horizontalmente para la ejecuci贸n de tareas automatizadas

  • Extensible

  • Escalable de manera vertical y horizontalmente
    Puede correr un sin numero de trabajos concurrentemente en una sola m谩quina, lo que lo hace escalable verticalmente.
    Si esta m谩quina no da a basto, la puedo hacer mas grande y le doy m谩s recursos a Jenkins, eventualmente cuanto tienes un servicio recibiendo tr谩fico, una m谩quina no va a ser suficiente y tienes que escalar horizontalmente, Jenkins te permite hacer eso con Slaves (esclavos), esto le permite a un Jenkins controlar a otros nodos y que trabajen por el.

  • Innovador
    Siempre tiene nuevos realeases de seguridad.

  • Usualmente es corrido en los servidores de la compa帽铆a que lo est谩 usando.

  • Jenkins permite escribir los Jobs en c贸digo.

Jenkins antes hudson, hace algunos ayeres integr茅 Jenkins + Sonar + Svn + Ant. en el 2022 volvemos a la carga ahora con git y maven.

Lo he usado y es algo que te ahorra mucho trabajo, incluso para la documentaci贸n

Jenkins es una herramienta incre铆ble, open source y escrita en java, es portadle, multiplataforma y sumamente extensible, puedes crear tus pluggins o usar los miles de plugins disponibles, Jenkins permite escalar de manera vertical y horizontal, Jenkins adem谩s tiene parches de seguridad, puedes escribir tus jobs en c贸digo.

software de automatizacion mas usado hecho en java corre en todos los SO.
Tiene multiples plugins. Tiene una gran comunidad
Escala vertucal y horizontalmente
Se pueden escribir jobs propioas o sea unidades de trabajo en codig

Jenkins aparte de ser una herramienta de automatizaci贸n, se usa mucho en temas de integraci贸n, despliegue y entrega continua, Jenkins por otra parte es multiplataforma, es decir, corre sobre cualquier sistema operativo (Windows, Linux, Unix), adem谩s de que Jenkins cuenta con un sin n煤mero de plugins para cualquier tarea que necesites realizar en 茅l. Open source, 隆INCREIBLE!

Vamos con toda aprender de Jenkins

Jenkins se convierte en honey pots (patade conejo) contiene en un solo lugar todo lo importante

Instalando Jenkins en Docker

Jenkins puede escalar tanto vertical como horizontalmente :exploding_head:

interesante de aprender el concepto de pipeline as a code

A conoce una nueva herramienta

Excelente la Intro !

Vamos por ello!!

Excelente鈥!

Me encanta el buen humor del profesor en el curso. Lo hace m谩s ameno.

leeeeeeeeroooooooooooy jenkins

Genial, continuemos

Cuando de hace Continous methodology CI/CD toda herramienta en el chain es un vector de ataque, en especial el canal de comunicacion que esas herramientas usan.
Lo bueno de usar herramientas como Jenkins es que tienes toda la integracion en un solo lugar, lo que complica mas el ataque.