sábado, 31 de mayo de 2025

Curso de DevOps: Automatización X. Configurar un entorno de automatización

En este último post de la serie vamos a configurar un entorno de automatización de principio a fin para el mecanismo de entrega impulsado por DevOps. Hay varias formas diferentes que se pueden utilizar para configurar un entorno de automatización. Es necesario contar con una gestión de configuración adecuada mediante Puppet o Chef. Y también debemos tener la capacidad de gestionar todos los módulos que se implementarán en la infraestructura aprovisionada y gestionada por Puppet o Chef. Tomaremos un ejemplo que proporcione un entorno de automatización de principio a fin configurado para un mecanismo de entrega impulsado por DevOps. Vamos a utilizar GitLab. Iniciaremos GitLab ien un navegador y especificando https://gitlab.com. También Podemos tener instalado GitLab en nuestras propias instalaciones o podemos utilizar la versión en la nube.

 

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Hemos iniciado sesión en la versión en la nube. Crearemos nuestro proyecto, para hacer eso, haremos clic en el botón Nuevo proyecto de la parte superior derecha de la página web.

Haremos clic en él, GitLab nos ofrece varias opciones diferentes para crear un nuevo proyecto. Podemos  crear un proyecto en blanco, Crear desde plantilla, Importar proyecto existente o Ejecutar CI/CD para repositorios externos.

Haremos clic en Ejecutar CI/CD para repositorios externos.

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Esto nos llevará a una página donde podremos decidir si deseas conectar el repositorio desde GitHub o mediante URL.

Curso de DevOps: Automatización X. Configurar un entorno de automatización


Haremos clic en GitHub. Una vez hecho clic en GitHub, nos autenticaremos con GitHub.

 

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Nos pedirá que GitHub autorice a GitLab para que poder tener acceso a todos los repositorios de GitHub. Que incluso puede contener infraestructura como código para automatizar el aprovisionamiento de infraestructura. Debemos ir a nuestro GitHub y obtener un token de acceso personal. Después de obtener el token de acceso personal, debemos pegarlo y hacer clic en el botón autenticar, que se encuentra en la esquina derecha de la página actual. Ahora tenemos que decidir a qué repositorio conectarnos. Por ejemplo, podemos ir hacer clic en Conectar donde tenemos una muestra de Kubernetes. Haremos clic en Conectar.

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Una vez hecho clic en conectar, comenzará a ejecutarse y podremos ver claramente el estado. Ahora el estado cambia a Listo, ahora tenemos la parte del repositorio de nuestro GitLab.

 

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Haremos clic en Ir al proyecto

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Hecho esto, encontraremos un panel de control donde tendremos el panel de navegación izquierdo, que nos ayudará a utilizar el repositorio de GitHub e implementar el proceso de escritura de CI/CD con función de automatización. El panel de navegación izquierdo contiene las siguientes opciones: descripción general del proyecto, repositorio, CI/CD, operaciones, etc.

 

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Podemos pulsar sobre cualquiera de estas actividades. Por ejemplo, hacemos clic en CI/CD, se iniciará la página CI/CD, lo que nos facilitará la creación de canalizaciones. (pipelines)

El panel de contenido muestra un título en el centro, debajo del encabezado aparece un botón con la etiqueta: canalizaciones. (pipelines).

 

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Al seleccionar el botón: Comenzar con canalizaciones, aparece una página titulada: Construir con confianza. GitLab CI/CD. Una vez que hagamos clic, en comenzar con las propiedades (Get started with propierties) nos proporcionará documentación que podremos utilizar para crear y automatizar varios tipos diferentes de actividades que requieren los ingenieros de DevOps.

Curso de DevOps: Automatización X. Configurar un entorno de automatización


Nos desplazamos hacia abajo en la página. La página muestra dos tarjetas, tituladas: Corredores específicos y Corredores compartidos. La tarjeta "Corredores específicos" contiene el botón: Instalar Runner en Kubernetes. Lo pulsamos  para configurarlo automáticamente.

 

Curso de DevOps: Automatización X. Configurar un entorno de automatización

Podemos hacer clic en Instalar corredor en Kubernetes. Nos proporcionará documentación que nos ayudará a decidir cómo podemos automatizarlo,  podemos iniciar la ejecución automáticamente. Así es como utilizar GitLab como  plataforma  para configurar un entorno de automatización de principio a fin.

Resumen del curso

En este curso, hemos examinado cómo identificar tareas clave y procesos comerciales para la automatización.  Configurar entornos de automatización de principio a fin. Hemos explorando el concepto de automatización de TI. Las tareas y procesos clave que se pueden automatizar para obtener valor del modelado de negocios. Junto con el ciclo automatizado de entrega de TI y su impacto en la gestión y el monitoreo de TI. El papel de la automatización de procesos, la automatización robótica de procesos y la automatización de servicios en la creación de flujos de valor para la entrega de TI empresarial de principio a fin junto con los beneficios de implementar sistemas de información conscientes de los procesos. Las características clave, el núcleo y el componente de administración que debemos considerar al configurar un sistema de automatización multiplataforma. Los atributos técnicos de la automatización, el papel del flujo de trabajo de DevOps para satisfacer las demandas de la economía digital. Y las herramientas destacadas que podemos utilizar para facilitar los entornos de automatización. Cómo configurar un entorno de automatización de un extremo a otro para un mecanismo de entrega impulsado por DevOps.

 

 

sábado, 17 de mayo de 2025

Curso de PL/SQL. Bucles con FOR LOOP

Curso de PL/SQL. Bucles con FOR LOOP

En PL/SQL, los bucles o ciclos son estructuras de control que permiten ejecutar un bloque de código repetidamente. Uno de los tipos más comunes de bucle es el FOR LOOP, que resulta muy útil cuando sabemos cuántas veces necesitamos repetir una tarea. A continuación, veremos cómo funciona y algunos ejemplos prácticos de su uso.

¿Qué es un FOR LOOP en PL/SQL?

El FOR LOOP en PL/SQL se utiliza para iterar sobre un rango de valores. Cada iteración incrementa automáticamente el contador del ciclo sin que el programador tenga que preocuparse por actualizarlo manualmente. Este tipo de bucle es ideal cuando conocemos el número de iteraciones por adelantado.

El formato básico del bucle FOR LOOP es:

FOR contador IN [rango] LOOP

   -- Código que se ejecutará en cada iteración

END LOOP;

Curso de PL/SQL. Bucles con FOR LOOP


Componentes:

  • contador: Es la variable que se incrementa automáticamente con cada iteración.
  • rango: Define el inicio y el fin del bucle. Puede ser ascendente o descendente.
  • cuerpo del bucle: Es el bloque de código que se ejecuta en cada iteración.

Ejemplo básico

Un ejemplo típico sería imprimir los números del 1 al 5:

BEGIN

   FOR i IN 1..5 LOOP

      DBMS_OUTPUT.PUT_LINE('El valor de i es: ' || i);

   END LOOP;

END;

Explicación:

  • El bucle comienza con la variable i igual a 1.
  • En cada iteración, i se incrementa automáticamente en 1.
  • Se ejecuta el código dentro del bucle, que en este caso imprime el valor de i en cada vuelta.
  • El ciclo se detiene cuando i llega a 5, luego de ejecutar la última iteración.

Resultado:

El valor de i es: 1

El valor de i es: 2

El valor de i es: 3

El valor de i es: 4

El valor de i es: 5

Rango descendente

El FOR LOOP en PL/SQL también permite rangos descendentes. Si quieres ejecutar un ciclo hacia atrás, puedes utilizar el siguiente formato:

BEGIN

   FOR i IN REVERSE 5..1 LOOP

      DBMS_OUTPUT.PUT_LINE('El valor de i es: ' || i);

   END LOOP;

END;

Explicación:

  • Utilizamos la palabra clave REVERSE para que el bucle decremente el valor de i en lugar de incrementarlo.
  • El ciclo comenzará en 5 y finalizará cuando i sea 1.

Resultado:

El valor de i es: 5

El valor de i es: 4

El valor de i es: 3

El valor de i es: 2

El valor de i es: 1

Ejemplo práctico: Insertar registros en una tabla

Supongamos que tenemos una tabla llamada EMPEADOS y queremos agregar 5 registros de prueba utilizando un FOR LOOP en PL/SQL.

BEGIN

   FOR i IN 1..5 LOOP

      INSERT INTO EMPLEADOS (EMPLEADO_ID, NOMBRE)

      VALUES (i, 'Empleado ' || i);

   END LOOP;

   COMMIT;

END;

Explicación:

  • El bucle se ejecuta 5 veces, insertando un nuevo registro en la tabla EMPLEADOS en cada iteración.
  • La columna EMPLEADO_ID toma el valor de i, y la columna NOMBRE concatena el número de empleado.
  • Finalmente, el bloque termina con una sentencia COMMIT para asegurarse de que los cambios se guarden en la base de datos.

Resultado:

La tabla EMPLEADOS tendría 5 registros nuevos:

EMPLEADO_ID

NOMBRE

1

Empleado 1

2

Empleado 2

3

Empleado 3

4

Empleado 4

5

Empleado 5

Consideraciones importantes:

  • Los rangos en un FOR LOOP deben ser enteros. No se pueden utilizar valores decimales o no numéricos como rangos.
  • Un FOR LOOP siempre ejecutará las iteraciones en un orden predecible y fijo. Esto lo hace perfecto para tareas repetitivas donde se necesita controlar exactamente cuántas veces se ejecuta el ciclo.

Conclusión

El FOR LOOP en PL/SQL es una herramienta poderosa y eficiente para realizar tareas repetitivas cuando el número de iteraciones está claramente definido. Desde recorrer un rango de valores hasta realizar operaciones masivas en la base de datos, el FOR LOOP te permite escribir código limpio y fácil de mantener. 

jueves, 1 de mayo de 2025

Curso de DevOps. Automatización IX. Herramientas para la automatización

Uno de los requisitos esenciales es seleccionar la herramienta de automatización adecuada. Y para eso necesitamos saber qué es necesario automatizar y a qué  categoría pertenece. Hemos clasificado en dos categorías importantes. Primero como herramienta de automatización de procesos de negocio. En segundo lugar como herramienta de automatización de infraestructura.

 

Curso de DevOps. Automatización IX. Herramientas para la automatización

Vamos a enumerar ciertas herramientas que se pueden utilizar para la automatización de procesos comerciales. Para empezar, tenemos Blue Prism, s UiPath, Automation Anywhere y Pega. Estas son algunas de las herramientas esenciales que son populares en el mercado y se utilizan para la automatización de procesos comerciales.

 

Curso de DevOps. Automatización IX. Herramientas para la automatización

Podemos comparar Blue Prism, UiPath, Automation Anywhere y Pega utilizando ciertos escenarios de uso. Blue Prism proporciona capacidades básicas. UiPath también proporciona capacidades básicas, Automation Anywhere es similar a UiPath y Blue Prism proporciona capacidades básicas. Pero Pega viene con capacidades de gestión de procesos comerciales. Desde la perspectiva de la independencia de la plataforma. Blue Prism es compatible con cualquier plataforma, UiPath es compatible con cualquier plataforma y también es compatible con Citrix. Automation Anywhere es local y en la nube. Pega es un servidor de escritorio. En cuanto a la facilidad de uso, Blue Prism es fácil de usar para los desarrolladores. UiPath proporciona una interfaz que pueden utilizar incluso quienes no son desarrolladores, lo mismo ocurre con Automation Anywhere y Pega.

Desde la perspectiva de costos, Blue Prism tiene un costo en torno a 15.000 a 18.000 € al año. UiPath es gratis. Automation Anywhere tiene diferentes modelos de cálculo de costos que dependen del sistema local y de la nube. Pega comienza desde 200 € al mes.

Respecto a la escalabilidad, Blue Prism no compromete la escalabilidad. UiPath, Automation Anywhere proporciona escalabilidad. Pero cuando se trata de Pega, es escalable a nivel empresarial porque solo proporciona versiones de servidores de escritorio.

 

Curso de DevOps. Automatización IX. Herramientas para la automatización

Ahora vamos a repasar las herramientas de automatización de infraestructura. Para empezar tenemos Docker, Puppet, Chef, Ansible y Kubernetes. Son cinco herramientas importantes, vamos a ver se puede hacer con cada una de ellas y  para qué. Docker es una tecnología de contenedores. Puppet, Chef, Ansible y Kubernetes son herramientas de gestión de configuración. Docker soporta Go. Puppet, utiliza el lenguaje específico del dominio Ruby, Chef, utiliza Ruby y Erlang. Ansible está escrito en Python y admite scripts de Python y finalmente Kubernetes se maneja en Go.

Docker, es más fácil de administrar, comprender y aislar, generalmente la tecnología de contenedorización es difícil para principiantes. Chef es complejo desde la perspectiva del desarrollo, porque necesitamos conocer Ruby. Ansible proporciona un enfoque sencillo para la gestión de la configuración. Y Kubernetes requiere mucha planificación para poder configurarlo.