Saltar al contenido

Podcast · 21 nov 2023 · 1:01:25

Ep2 T3 - con Nelson Calero sobre automatización en bases de datos con Ansible

Cuando administras un gran número de bases de datos, ciertas tareas necesitan automatizarse. 👨‍💻 Parchea tú 500 bases de datos en 200 servidores. Una a una. Repitiendo todos los pasos en cada una de ellas. Acabamos mal de la cabeza seguro! 🤯 Pues sucedió que cuando conocí a Nelso

Escuchar y ver el episodio

Transcripción del episodio

Transcripción generada automáticamente y corregida con glosario técnico. Puede contener algún error residual. Está cortada en las mismas frases que llevan los subtítulos: descargar .srt · descargar .vtt

[0:07] Nelson, empezamos ¿Qué tal?

[0:10] ¿Qué tal estás? ¿Qué tal estás?

[0:12] Bien, bien muchas gracias por la invitación.

[0:16] Acá haciendo una pausa en el trabajo y aprendiendo un poco a usar…

[0:21] Por favor, a ti, a ti voy a poner a la gente en antecedentes.

[0:26] Nos conocimos en Las Vegas, en el Cloud World, porque no nos habíamos conocido antes.

[0:30] Antes sí habíamos hecho, había hecho un podcast con Edelweiss sobre Machine Learning

[0:36] y tal, pero nunca nos habíamos conocido hasta Las Vegas y pude asistir, tuve el lujazo

[0:41] de asistir a tu charla sobre Kubernetes en el SPU en Madrid.

[0:48] Y ahí te dije, pues es que tenemos que hacer, tenemos que hablar.

[0:57] Es muy lindo esto en la comunidad ahora, que es lo que tiene, hay mucha gente haciendo

[1:04] cosas todo el tiempo y, bueno, pasan estas cosas porque yo también había escuchado que

[1:09] vos estabas haciendo cosas en España, pero tampoco nos habíamos cruzado antes y, bueno,

[1:15] qué suerte que nos cruzamos.

[1:17] Pues ya estamos, ya estamos tomándonos un café juntos.

[1:20] La gente que está en la audiencia puede participar si quiere, puede levantar la mano

[1:24] y de lo que vayamos hablando

[1:26] Pues eso, pues le podemos dar paso porque este es un formato abierto y voy a contar dos

[1:32] cosas, voy a contar dos cosas: una, ¡vaya pedazo de charla te marcaste sobre Kubernetes

[1:37] en Madrid! Me quedé flipado, lo voy a contar, es decir, él iba contando, yo estaba con

[1:44] los ojos como platos y él iba diciendo todo esto es muy sencillo, bueno, estáis viendo

[1:49] todos estos comandos pero en realidad todo esto es muy sencillo, todos los comandos de

[1:53] la instalación, todos los exis de cómo montar con Kubernetes toda la instalación que

[1:59] estabas haciendo y luego después fuera de la conversación que te dije no he trabajado

[2:03] nunca con Kubernetes, qué interesante y me dijiste dos cosas porque además estábamos

[2:10] hablando de un proyecto que estoy haciendo de si instalaba con Raspberry Pi, Docker y

[2:15] tal y me dijiste pues esto sí puede hacerse y muy interesante me dijiste también, y automatizar

[2:21] procesos de base de datos con Ansible, ¿no?

[2:25] Y dije, bueno, bueno, bueno, tenemos que hablar de ello, tenemos que hablar de ello.

[2:31] Entonces, haz un repasito así para los que no estuvieron en Madrid y no se lo saben,

[2:37] de lo que contaste de Kubernetes en Madrid.

[2:40] Sí, bueno, lo de Madrid fue parte de un tour que se hizo de grupos usuarios por Europa,

[2:46] entonces yo apliqué con propuse un par de estas dos charlas es de las que vos dijiste

[2:51] y bueno el de kubernetes vino porque hace un par de años cuando ahora

[2:59] que empezó a trabajar en crear un operador para kubernetes con ahora que yo bueno Siendo

[3:06] director este cada tanto hablo con los bien y me dijeron a ver si quería ser parte del

[3:11] beta testing, entonces estuve probando todo lo que ellos hicieron antes de que se liberara

[3:18] y, bueno, y después también escribí algún blog y escribir poco, no lea tener que haber

[3:23] escrito más, pero dediqué mucho tiempo a probarlo, por eso termina haciendo la presentación,

[3:28] este esta es la segunda versión de esa presentación sobre Cuba Net es que había dado

[3:33] una cuando todavía no era producción, cuando era todavía beta.

[3:39] Y, bueno, lo interesante es, a mí cuando doy charlas técnicas me gusta mostrar ejemplos

[3:47] y los comandos para que si alguien lo quiere reusar después tenga todo el detalle de

[3:52] lo que necesita hacer, además de haber aprendido de qué se trata la tecnología.

[3:57] Lo malo, lo que yo siempre veo como un defecto de mis charlas es que tienen mucho contenido.

[4:02] Entonces, a veces me estoy muy apurado siempre tratando de poner más cosas, pero bueno,

[4:09] quizás sea mucho para prestar atención en el momento.

[4:13] Lo importante es que después se pueden bajar las slides, tenés todo el material ahí para

[4:17] usarlo y reproducirlo con tu propio usuario y demás.

[4:22] Es buenísimo, es buenísimo.

[4:23] Hiciste todo un despliegue de Kubernetes desde la instalación hasta la creación,

[4:31] despliegue. Sí, exacto. Todos los pasos, porque en general lo que tienen, cualquier cosa

[4:38] que queramos hacer con tecnología en general, por más simple que sea, siempre involucra

[4:44] muchos pasos y a veces pasa de que algo falla o algo necesita una cosita más de

[4:51] lo que dice el manual y los manuales en general te dicen, bueno, esto tenés que ir a

[4:55] otro lado y no te cuentan los detalles.

[4:56] Entonces, a mí me parece interesante cuando se quiere mostrar algo completo que incluya

[5:02] todas esas cosas extras, ¿no?

[5:04] Pero también, bueno, es lo que lo hace Medio pesado después para que entre en el tiempo

[5:09] que se tiene una charla que es medio cortito, ¿no?

[5:12] Y bueno, sí Sí, bueno, y aparte siempre hay muchas charlas interesantes al mismo tiempo

[5:19] y estás en un día donde hay 6, 7 charlas o sea, 7 horarios para escuchar cosas entonces

[5:25] capaz que podés prestar mucha atención en una, dos, tres pero llega un momento que estás

[5:30] cansado también pero bueno, es parte del desafío de estas cosas, yo cuando voy a a los

[5:36] eventos me gusta engancharme a las cosas bien técnicas, pero sí a las 3, 4 de la tarde

[5:40] ya estás muerto no puedes prestar mucho más atención.

[5:44] Sí, sí, las becas fue una maratón.

[5:48] Exacto, es lo que tiene eventos como esos de varios días, físicamente son muy exigentes.

[5:53] Decía que hablaba con Roy Salazar sobre estos eventos.

[5:57] Claro, Roy tiene el de DATA, el de DBSAT y él cada vez lo va ampliando, ampliando, ampliando,

[6:03] entonces su charla cada vez es más contenido, más contenido, más contenido y dice y cada

[6:06] vez lo tengo que dar más rápido.

[6:08] Digo, guau. Eso está interesante.

[6:11] Mantener un mismo tema es una cosa rara, pero también es interesante porque le permite

[6:17] hacer eso, de cada vez ir mejorándolo y agregándole cositas nuevas.

[6:22] Como siempre, hay mil temas de los que uno se enfrenta todos los días y quisiera poder

[6:29] ver más en detalle. A mí en general también me gustan las cosas originales, pero tienen

[6:33] como contra de que la gente todavía no las está usando.

[6:36] Entonces, capaz que es mucho más práctico hablar de temas que son más, digamos,

[6:44] más de entrada, más de principiantes, donde también siempre tienen público.

[6:50] Y bueno, ese de seguridad es algo que todo el tiempo todo el mundo tendría que estar

[6:55] actualizándose, o sea que es un lindo tema.

[6:58] Bueno, y Ansible cuéntame lo de la automatización, ¿qué es lo que sueles hacer?

[7:04] ¿Y cómo funciona la Ansible?

[7:08] Lo que hice en esta presentación, que di también acá en el tour, es que intenté hacerlo

[7:13] no solamente enfocado en Ansible, sino más en base de datos Oracle, como una especie

[7:19] de tratar de mostrar a alto nivel

[7:23] todos los desafíos que hay cuando hay que automatizar y poniendo ejemplos con Ansible.

[7:28] Eso porque, como en todos los temas de tecnología, ya hay mucho material sobre cómo hacer

[7:34] de Ansible. Uno busca información, bueno, es como el

[7:42] doble filo de internet, que uno siempre dice, bueno, uno no se puede guiar por lo que

[7:46] encuentra en internet, pero al mismo tiempo están todos los manuales de todos los productos

[7:50] que usamos. O sea que en realidad lo que uno no puede hacer es a ciegas guiarse por lo

[7:56] que encuentra en internet.

[7:56] Uno tiene que saber un poco, bueno, de dónde viene la información, porque al final todos

[8:03] trabajamos remoto, todos consumimos el soporte de Oracle que está en internet.

[8:09] Entonces hay que tener cuidado cuando decimos algunas palabras porque pueden malinterpretarse

[8:14] el tema que con ansi hay muchísimos ejemplos de una comunidad enorme de gente que lo

[8:20] usa que es una herramienta para automatizar tareas y sirve para cualquier tecnología

[8:25] y digamos que lo que que viene a hacer es ayudar

[8:33] a manejar o codificar las acciones que uno quiere hacer,

[8:41] ejecutar un programa, analizar una salida de un programa, de un comando y poner

[8:48] todo eso en una especie de guía, se le llama, Ansible le llama playbook al código que

[8:55] ejecuta, pero bueno la idea es que uno escribe digo como una guía de bueno quiero seguir

[8:59] estos pasos y tiene bueno manejo una cierta sintaxis se permite más o menos programar

[9:05] este en algunas estructuras de control clásicas pero con una sintaxis Distinta no tenéis

[9:11] tienes condiciones tenés este variables y bueno con esa forma simple de describir

[9:18] la idea de por qué se hizo popular es porque tiene un lenguaje descriptivo, no, donde

[9:24] tiene una simpleza bastante grande, al mismo tiempo le da mucha flexibilidad y,

[9:32] bueno, de a poquito todos los vendedores de software empezaron a agregarle sus propios

[9:36] formas de, o digamos, empezaron a crear código para que Ansible pudiera manipular

[9:43] recursos que ellos crean.

[9:45] Entonces, así fue como se fue extendiendo y hoy en día se puede usar para lo que sea.

[9:50] Entonces podemos usar Ansible para ejecutar en el lugar que queramos.

[9:54] El otro que tiene es que es muy fácil de instalar porque es un ejecutable solamente.

[9:57] Uno va, si está en Windows, un .exe, en Linux un binario y ya está.

[10:03] Después es ir al manual y fijarse, bueno, se aprecia este archivo de configuración que

[10:07] tiene que tener ciertas reglas.

[10:09] Y lo potente, además de la simpleza, lo potente es que uno puede configurar,

[10:17] configurar, se usen muchos servidores y al ejecutar, se ejecutan todos esos servidores

[10:24] al mismo tiempo. Entonces, ahí es donde está la potencia, ¿no?

[10:28] Uno automatiza ciertos pasos, maneja con estructuras de control, qué hacer cuando pasa

[10:35] esto, cuando pasa aquello.

[10:36] Lo que termina siendo, está pronto para ser ejecutado en miles de servidores.

[10:43] Es una locura, ¿no? Y por eso es popular, ¿no?

[10:48] Con la aparición de la cloud, de todos los proveedores de cloud hace un poco más de 10

[10:52] años, esto fue como una necesidad porque las granjas de servidores empezaron

[10:59] a aparecer más accesibles a todo el mundo, porque antes solamente tenías que estar en

[11:06] una empresa grande para poder ver estas cosas.

[11:08] Ahora hoy en día este lo que sé con tu cuenta donde te conectas a tu cloud bueno solo

[11:15] tuyo, pero si trabaja por una empresa nuevamente tiene muchos servidores están todos

[11:18] ahí y bueno esa fue como la motivación de por qué han sido empezó a crecer y se empezó

[11:24] a extender, no. Entonces yo trabajo por una empresa que hace consultoría entonces este

[11:29] en mi rol dentro de la empresa

[11:33] Trabajo en proyectos de tecnología Oracle y hacemos un poco de todo.

[11:38] Somos especialistas en Oracle, base de datos en particular.

[11:42] Y lo que yo vi en los últimos años es que mi trabajo se está convirtiendo más en hacer

[11:50] otras cosas que solamente administrar base de datos.

[11:52] Entonces me pareció interesante hablar en las presentaciones que di este año sobre este

[11:58] tema por el hecho de que desde hacía, yo creo que Larry fue el que empezó con esto, Larry

[12:03] Ellison hace como, no sé, en un open world allá por el 2009, creo que fue que dijo que

[12:08] al principio se reía un poco de la cloud y después cuando ahora que se subió la cloud

[12:12] dijo, ya los devianos se van a precisar, y como que todo el mundo empezó con ese miedo

[12:18] de que, bueno, ¿por qué? Vamos a quedar todos sin trabajo, y yo creo que esto, que sin

[12:24] querer, no sé, que todos estamos viendo estos días de cómo ha cambiado nuestro trabajo,

[12:28] es una muestra de que en realidad los DBA siguen siendo necesarios, pero están haciendo

[12:34] cosas distintas hoy en día.

[12:36] Y quizás, bueno, si son puristas, claro, de repente ya estás haciendo otras tareas y

[12:41] no son exclusivamente DBA, pero yo creo que lo que está pasando es que simplemente el

[12:44] rol de alguien que se especializa en base de datos está extendiendo y estamos incorporando

[12:51] más Herramientas en nuestro trabajo diario, porque la necesidad de hacer lo que hacíamos

[12:56] antes es menor. Entonces, eso no quiere decir que la gente que era DBA tiene que seguir

[13:02] siendo solo lo que hacía antes.

[13:04] Yo creo que simplemente se está dando en la práctica que se están extendiendo a hacer

[13:09] más cosas, incluyendo automatizaciones.

[13:11] Entonces, antes esto lo hacían solamente la gente que trataba con sistema operativo,

[13:16] los isops, los devops, hay muchos nombres y términos.

[13:22] Y mismo hoy en día están saliendo todo el tiempo roles nuevos dentro de la industria,

[13:28] como los data ops, los ml ops y arquitecto, nos estamos metiendo

[13:35] más en todo lo que tiene que ver con la arquitectura.

[13:42] El diseño, sí, sí, claro, por eso no es solamente el diseño de las tablas y cómo

[13:50] hacer mejor uso, optimizar los recursos del servidor y demás, sino que es la de cierto,

[13:56] nos metemos en más, bueno, este, cómo está configurada la red, cómo están configurados

[14:01] los enlaces, sí, sí, cosas que de repente eran más cosas de otros

[14:08] roles, como el CISAMIN, seguramente, o el encargado de la red.

[14:13] Pero para mí es parte de lo que está pasando hoy, que es, yo creo que no es solo exclusivo

[14:18] del DBA, yo creo que toda la tecnología, lo vemos todos los días, aparecen cosas nuevas,

[14:23] hace que las cosas empiecen a ser más simples, las viejas aparecen temas nuevos.

[14:29] Y todos los roles se van adaptando a ser menos de lo que se hacía antes y más de otras

[14:35] cosas nuevas. Y por ahí viene, me parecía a mí, interesante, ¿no?

[14:39] Sí, que se hacen estas tareas un poco más monótonas, sí es mucho más fácil quizá eso,

[14:46] ¿no? Automatizarlas o quizá ya no es tan crítico que haya alguien poniendo inteligencia

[14:51] humana en las tareas. Y eso es lo otro, cuando queremos hacer

[14:58] algo así, yo lo vi en este año, el año pasado con clientes que nos venían a pedir distintos

[15:05] tipos de automatismos, que había como una o sigue habiendo una especie de expectativa

[15:13] de la gente que quiere meterse a hacer estas cosas de que esto es algo simple o que esto

[15:20] debería ser algo simple para la gente que ya sabe, entonces como que decir, bueno, nosotros

[15:24] no sabemos nada de esto y queremos que alguien nos ayude a automatizar esto y como nosotros

[15:31] ya sabemos hacer eso que queremos automatizar, sabemos que lo que ustedes van a hacer

[15:35] es algo chiquito, van a agregar y dos otras cositas y va a quedar andando, pero bueno,

[15:41] al final ese trabajito no es tan simple, ¿no?, tiene ciertas complejidades, entonces

[15:46] eso fue lo que me interesó mostrar y si ustedes ven la slide, si quieren después les

[15:50] pongo el link, yo la subí y por ahí a Slideshare en su momento, está pública.

[15:55] Hace menos cuento un poco eso, ¿no?

[15:57] Los desafíos que hay y cómo encararlo y bueno, y en particular con ejemplos de Ansible

[16:03] de código, ¿no? Mostrando un poco de código de dónde aparecen

[16:08] Complejidades, digamos, porque no son problemas, pero por ser tan flexible

[16:13] Permite que se hagan muchas cosas que después pueden traer problemas, ¿no?

[16:17] Entonces es como que, como todo, ¿no?

[16:19] Cuando uno programa en C, el primer programa que hizo seguramente sea horrible y lo reescribe

[16:25] cada vez. Y la última versión siempre tiene miles de líneas de código, anda más rápido,

[16:30] usa menos memoria, ¿no? Cosas así.

[16:32] Vamos a poner un caso práctico, por ejemplo, ¿vale?

[16:37] Porque evidentemente, vamos a poner un caso práctico, por ejemplo, ¿no?

[16:41] De algo que podríamos hacer de forma manual, pero que con Anselo, por ejemplo, podríamos,

[16:46] o sea, así, por encima, ¿no?

[16:51] Sí, bueno. Aplicar los PSUs, por ejemplo, aplicar el...

[16:56] Exacto. Por ejemplo, a 200 servidores, ¿no?

[17:00] ¿Cómo lo haríamos? Exacto.

[17:03] Aplicar un parche, por ejemplo, ¿no?

[17:05] Entonces, por un lado tenés que Oracle tiene el manual que te dice, bueno, esta parte

[17:12] se liberó, tenés que seguir estas instrucciones, te dice primero baja el software, fíjate

[17:18] que la base, no sé si estás usando RAC o no, tenés un camino distinto, quizás

[17:26] tengas que primero asegurarte que los otros nodos se bajen, si querés aplicarlo en Rolling

[17:32] Upgrade, este después tenés que ejecutar este comando por cierta sintaxis fijarte que

[17:39] el resultado no de ningún error y después continuar con nosotros no si tuvieras rack,

[17:45] no, así muy alto nivel tenés como 56 pasos y en realidad tenemos los pasos porque lo

[17:51] dice el manual este, así que alguien comenta que alguien está creando cuáles con ansiedad,

[17:56] si eso es pico que está interesante, todo lo que uno hace al

[18:04] final se puede hacer con ansiedad claramente, pero para redondearlo con este ejemplo

[18:08] entonces si alguien si ustedes hoy quieren decir bueno el siguiente parche lo voy a aplicar

[18:15] con ansiedad este como hago lo primero es ir a leer el manual el manual te te va a decir

[18:20] todas las cosas que hay que hacer, ¿no?

[18:22] El manual del parche. Te dice las instrucciones.

[18:26] Entonces, lo único que tenemos que hacer es codificar esos pasos en comandos dentro de

[18:32] Ansible. Bueno, parece medio obvio, pero al final Es, bueno,

[18:37] ¿cómo copio, cómo me bajo el archivo del PCU?

[18:42] ¿Me lo bajo yo? ¿Me conecto a soporte para que automáticamente me lo descargue?

[18:48] Este si tengo que hacer eso qué pasa con las credenciales como las almaceno también permite

[18:55] usar wallets o sea que sus propios cuales no son los cuales de oracle entonces ahí hay

[19:01] algunas definiciones han sido lo que tiene es una tarea es la unidad mínima donde uno

[19:07] le dice bueno qué tipo de tarea es en estos casos lo típico que uno diga bueno es una

[19:12] tarea tipo shell y ejecuta un comando de Linux, para poner un ejemplo simple

[19:18] El tema que hay con ese tipo de tareas es que no tienen mucha inteligencia dentro de

[19:22] Ansible, porque Ansible lo único que hace es abrir una shell y ejecutar lo que nosotros

[19:26] escribimos; entonces tenemos que nosotros poner la sintaxis correcta.

[19:30] Por ejemplo, si quisiéramos crear primero el directorio donde vamos a copiar el archivo

[19:35] podríamos decir mi tarea Ansible va a ser una shell que hace MD para que me cree el directorio

[19:42] o podríamos usar algo más elaborado que ahí está lo bueno de Ansible que es usar

[19:49] un módulo que trata con los directorios, entonces le decimos usando ese módulo

[19:56] en este path yo quiero que el estado de ese path que te pongo sea existe, entonces Ansible

[20:04] se encarga de validar si el directorio no existe lo crea, y bueno y tiene 3 o 4 parámetros

[20:10] ese comando de Ansible o esa definición de ANSYL, porque no es un comando, es una tarea,

[20:15] donde dice, bueno, para este módulo que es directorio de sistema operativo, en este path,

[20:21] quiero que el destino sea existe, quiero que si existe el usuario sea tal, el grupo

[20:28] sea tal, los permisos sean tal.

[20:30] Y ANSYL se encarga de crear el comando para que eso pase.

[20:35] Puede ser chown, chmod, mkdir, o sea, Y si estás en Windows también lo hace bien, porque

[20:42] no es solo para Linux. Esa es la potencia de Ansible, es basarse en módulos.

[20:48] En general, cuando uno trabaja en un solo sistema operativo para una infraestructura

[20:53] propia y demás, uno no se preocupa mucho de esas cosas.

[20:56] Uno siempre va y dice, bueno, yo lo voy a hacer para que me funcione a mí.

[20:59] Yo trabajo con Linux, lo hago todo con Linux.

[21:02] Lo que me resulta más fácil es pongo comandos, hardcodeo cosas.

[21:06] Al final eso también puede jugarnos en contra, se vuelve más complicado mantener, como

[21:12] todo, a medida que uno empieza a crear automatismos así, la

[21:20] idea es que la siguiente va a salir mejor.

[21:23] Sí, entonces Nelson, la idea es dedicar mucho tiempo a esa primera instalación, a esa

[21:29] definición de esa tarea en Ansible para definir el estándar que tú tienes en tu compañía

[21:35] o cómo funciona tu parque.

[21:37] Es decir, si tú tienes un estándar basado en, no sé, en tener solamente single instance

[21:44] y rack, por ejemplo, pues para que se adapte al rack como funciona en tu rack, que se

[21:49] adapte a la single instance en la plataforma que tienes y a partir de ahí, ¿no?

[21:54] Dedicando ese tiempo y haciendo pruebas de un despliegue, probar el despliegue de forma

[22:00] universal, ¿no? Exacto, en general es así, vos trabajás para uno solo, o

[22:07] sea, te creás la conversión de Azure con un solo servidor, que es el que usás para probar,

[22:11] creás esta codificación, la ejecutás mil veces hasta que no tiene ningún error, porque

[22:15] lo importante acá es que cada pasito que vos haces, lo siguiente también validás cosas,

[22:20] porque no es solo que pones creo el directorio, copio el binario, lo descomprimo, ejecuto

[22:27] un installer, porque quizás en el medio te pueda dar error, capaz que te quedaste sin

[22:31] espacio en el disco y quizás la copia falló y de repente, bueno, en algunos casos fáciles

[22:37] Ansible aborta y te dice, ops, falló acá y listo.

[22:41] Pero en otros casos no y sigue adelante y te esconde un poco esos mensajes, porque el

[22:46] error, según cómo hayas configurado la ejecución de la tarea, a veces eso puede pasar.

[22:52] Entonces como que uno tenés que poner también pasos de control donde decís, bueno, valido

[22:57] la salida del comando anterior.

[22:59] Si hay algún archivo de log, por ejemplo, la instalación en la aplicación del parche,

[23:04] yo ejecuto seguramente o patch o patch auto, uno de esos dos, bajarán archivos de log,

[23:11] quizás tengo que analizar el archivo log para estar bien seguro de que no hubo una excepción

[23:16] rara, que quizás tenga que buscar algún string en particular que diga suces adentro del

[23:21] log, sabiendo que es el último comando que escriben en el log, ¿no?

[23:25] ¿no? Cositas así eso es lo que lo terminan jarcodeando la ejecución, ¿no?

[23:29] Porque como que al final uno hace la tarea bien específica.

[23:34] Lo que tiene Dos cosas, digamos.

[23:38] La cosa buena es que uno realmente sabe lo que está haciendo, ¿no?

[23:41] Tiene que estar Bien familiarizado con el comando que va a ejecutar, con el proceso,

[23:47] para saber anticipar todos los posibles problemas, para evitar que mañana vos vas a decir,

[23:51] bueno, terminé con uno, lo voy a correr en 100 servidores, y de repente te falla en 20.

[23:56] ¿Y por qué te falla en 20?

[23:57] Y tenés que ir uno por uno.

[23:58] Bueno, si ya el código está un poco más robusto y maneja excepciones y demás, te va a

[24:04] andar siempre más o menos bien, o te va a anticipar y testear que, bueno, si el lecterio

[24:09] no existe, primero lo tiene que crear.

[24:11] Si no hay espacio libre, que te pare ahí, no pierda tiempo haciendo otras cosas.

[24:18] Digamos que por ahí viene algo que por acá comenta Hanoi, el concepto de idempotencia,

[24:23] eso está bien interesante, sí, que también es algo que también está con cuando uno usa

[24:30] Terraform, o sea que se usa es otro utilitario para automatizar la creación de infraestructura,

[24:35] la idea es que cuando el ejecutar un playbook en Ansible este, si

[24:42] uno ejecuta de vuelta, tiene que dar el mismo resultado, no este, y entonces Ansible

[24:48] se va de alguna forma de unas variables internas o unos estados, digamos, para

[24:56] saber identificar si esto está igual, si no está igual, este, no volver a hacerlo, pero

[25:01] eso es una cosa un poco en general es así, pero por ejemplo cuando tenemos que descomprimir

[25:10] el parche, copiamos el archivo, lo descomprimimos.

[25:15] La copia, si usamos los módulos de Ansible que dicen el archivo quiere usar el módulo

[25:22] archivo, el archivo tiene que estar ahí, o el módulo que dice copy from server, hay muchos

[25:27] módulos. Eso funciona, pero si uno manualmente pone los comandos en Linux, Ansible confía

[25:32] en lo que nosotros ponemos y lo ejecuta.

[25:34] Entonces, ahí perdemos, no tenemos la idea en potencia porque le estamos diciendo a Ansible

[25:41] ejecutame esto. Y ahí es donde se empieza a complicar porque hay cosas que queremos hacer

[25:45] que quizás son complejas depende si el módulo lo maneja o no y terminamos Enredándonos

[25:52] en cosas que bueno por esto no debería hacerlo y no lo hace y si es de lo que tiene cuando

[25:59] por ejemplo nosotros en la persona que trabajo hicimos varios este desarrollo con con

[26:06] ansiedad para hacer instalaciones patching de oracle en distintas variedades y termina

[26:13] siendo miles de líneas de código este cientos de directorios de sus directorios creados

[26:18] en el donde tenemos el código de ángel porque se incluyen este se permite

[26:25] rehusar no hace él permite rehusar código entonces bueno uno cuando programa aprovecha

[26:30] y usa eso para decir bueno cuando instalo tías rack o si es inglés insta la creación

[26:35] del licen es el el mismo código, no tengo que escribir dos veces lo mismo pero bueno,

[26:39] le agrega complejidad a todo esto y al final empiezan a pasar estas cosas que terminas

[26:44] ejecutando Un modulito que hace una tarea simple como patchear unos datos y termina demorando

[26:51] como 40 minutos porque tenés un rack de tres nodos y tiene que copiar los binarios a

[26:56] tres lugares, tiene que ejecutar un zip en tres lugares.

[27:01] Validar que tuve requisitos, primero ejecutar después, y después revisar que esté todo

[27:06] bien. Bueno, entonces, estoy imaginando aquí, yo que soy así como un poco pesimista,

[27:10] estoy imaginando las tragedias, ¿vale?

[27:12] Te voy a decir algunas tragedias: imagínate,

[27:15] despliegas Ansible sobre 100 servidores, por ejemplo,

[27:19] van justos de disco y, cuando hacen el unzip,

[27:24] revientan disco y tienes de pronto de 100, tienes 80 caídos, ¿no?

[27:29] ¿Te pasa algo así? ¿Te toca ir a todos o hay alguna forma de decir ¡eh!

[27:35] Rollback hace un deshacer o tienes que crearte con ansible o la mancha atrás también

[27:43] sería crear la marcha tenés que crearla así si no hay una forma automática de retomar

[27:50] en errores como que vos tenés que programar cierta lógica donde crees le agregas este

[27:57] algo que se llaman tags entonces vos podés ejecutar diciendo, bueno, salteate estos tags

[28:02] y cosas así. O sea, que se vuelve medio complejo.

[28:05] Tiene una funcionalidad a partir de cierta versión, hay agregado algo de hacer

[28:11] Resum, pero se basa en estados, es medio complejo.

[28:15] Digamos que depende un poco de las versiones que uses, como quizás respuesta más fácil,

[28:20] ¿no? Pero sí, siempre es complejo.

[28:22] Cuando aparecen problemas, lo difícil es que cuando estás probando no pasa nada, porque

[28:27] en mis pruebas, en mi manejo, pero Pero cuando eso lo vas a ejecutar contra servidores

[28:32] productivos, bueno, eso no puede fallar, ¿no?

[28:38] Y lo que sea que te hayas comido de implementar, de validar, de lo que fuera, si lo haces

[28:43] en muchos servidores al mismo tiempo, después la gente que está trabajando son pocos,

[28:48] ¿no? No podés tener 100 manos para conectarte a todos los servidores.

[28:53] Sí, acá Harold comenta que sí, que hay un comando de dry run.

[28:56] Sí, pero también el Ray -Ran está bueno, pero depende mucho de los módulos que usaste,

[29:01] ¿no? Entonces, hemos tenido, es parte un poco de la proligidad, seguramente cuando terminaste,

[29:08] cuando sabes mucho, lo vas a hacer mucho mejor y vas a incluir todos estos detallitos,

[29:13] pero se te pueden colar ahí cositas que no vayan bien.

[29:16] Sí, sí. Pero lo interesante es que es muy potente.

[29:23] La empresa que creó HashiCorp, que es la que creó Ansible, tiene certificaciones, tiene

[29:31] buena documentación, buenos training.

[29:33] Entonces como que y bueno para antes que eso ha sido es una forma no hay

[29:41] Otros utilitarios por ahí entonces el espectro es muy grande acá como que no estamos

[29:47] achicando y decimos bueno tan me elegí esta herramienta entonces me ahora me caso con

[29:53] esto y que automatizó ahí pero puedes cruzarte con otras y también son un poco distintas

[29:59] y cada una de sus particularidades y lo bueno todo esto es que, bueno, es parte del trabajo

[30:04] actual, ¿no? El trabajo actual es tratar con todos estos utilitarios.

[30:07] Oye, Nelson, una cosa, ¿qué infraestructura se necesita para montar Ansible en una...

[30:13] Pues en una empresa? No, nada.

[30:14] Es un binario. Pero necesita ser un servidor que controle

[30:20] Los despliegues, los procesos...

[30:24] Bueno, hay alguna gente que le gusta tener...

[30:28] digamos... Todo siempre puede ser muy elaborado o no.

[30:34] En principio es un binario que vos lo pones donde quieras, lo corres y chao.

[30:40] Ahora, cuando vas a ser en un ambiente empresarial y querés tener procesos y validaciones

[30:46] y evitar que nadie sin querer haga cosas que no tiene que hacer, a veces se empieza a

[30:50] complicar porque tenés que agregar seguridad, tenés que agregar alguna forma de controles

[30:56] de acceso que no sean por línea de comando.

[30:58] Hay utilitarios, interfaces, webs que permiten hacer eso.

[31:05] Nosotros trabajamos con algunos clientes que tenían eso muy bien elaborado y que se veía

[31:10] muy bien, pero, claro, te agrega mucho más complejidad, más mantenimiento, ¿no?, este

[31:15] porque es como a alto nivel está frente un workflow de tareas

[31:22] este donde podría llegar a retomar la ejecución de cada una si fallan este entonces

[31:30] podrías llegar a tener un panel de control web donde si es bueno que está junto bien

[31:34] no apretó un botoncito y la retoma pero eso con ansia en realidad es complejo porque

[31:40] no tiene módulos que son archivo de texto y les ejecuta polinesia comanda entonces digamos

[31:46] que hay mucho para hacer mismo así el clásico que es bueno como comentaba por acá hanoi

[31:52] que fue comprado por riesga creo por lo visto vamos a invitar a hanoi a que a que suba

[31:58] a tomarse café aquí con nosotros ¿te parece?

[32:00] vamos a invitarles y, claro, sí y es van y también está activa está diciendo que está

[32:07] preguntando ¿podemos tener?

[32:08] Un ambiente local de juego para cazar real o sea podríamos tener un ancho y claro lo

[32:15] difícil del ambiente claro lo difícil elemento del juego es que han sido el

[32:22] por si es un ejecutable que tiene archivo configuración que dice dónde se conecta entonces

[32:27] el ambiente de juego tendría que ser servidores virtuales que creamos que pueden ser

[32:31] bien war puede ser de docker como uno nos guste en la la cloud donde en

[32:38] la configuración de ángel le ponemos ese cip en estos servidores de prueba pero en el

[32:43] fondo tenemos que nosotros preocuparnos por crear esos servidores de prueba en general

[32:49] las pruebas las hago así no me creo algunas maquinas con no tanto con con virtual

[32:57] box sino con este hoy en día con

[33:00] con virt, pero no en el comando virt, pero bueno ejecutas la línea de comando y ya te

[33:06] crea automáticamente el virtual box, te crea todo, ejecuta todo lo importante es eso,

[33:11] uno puede crearse en alguna ambición de ansia y decirle, bueno, usame estos servidores

[33:14] que son los míos de prueba

[33:16] Hanoi, cuéntanos, ¿qué tal?

[33:18] Hola, buenas tardes, ¿qué tal?

[33:21] Pues el micro es tuyo, cuéntanos.

[33:24] Nada, simplemente aportar ahí un poco mi granito de arena,

[33:29] porque porque, bueno, nosotros sí que llevamos trabajando bastante tiempo con Ansible.

[33:37] Y, bueno, la problemática que tenemos resuelta es que tenemos muchísimos servidores,

[33:44] Muchas bases de datos Oracle y cualquier cambio que hacemos, por ejemplo, en scripts

[33:50] de configuración y demás, pues lo hacemos todo por ahí, porque si no es que sería inviable,

[33:56] vamos. A nosotros sería imposible con la cantidad de servidores que tenemos entonces

[34:03] nos viene muy bien es bastante simple pero en el momento que vas entrando un

[34:10] poco en script más elaborados y demás por las cosas va complicando la verdad que el fundamento

[34:18] es simple pero se puede llegar a complicar bastante y nada la verdad que está muy interesante

[34:24] Ah claro, que la idea a mí me gustaba más que nada que la gente tome conciencia de la

[34:31] complejidad que se puede tomar al tratar de hacer estas cosas porque me parece que hay

[34:36] un mensaje como muy simplista sobre que la automatización es algo fácil que está en todos

[34:43] lados, que todo lo podemos hacer pero que bueno, hay que dedicarle un poco de tiempo,

[34:47] es como todo es como, digamos, cualquier tarea compleja que uno trata de hacer sin mucha

[34:54] experiencia siempre lleva un poco de tiempo, y me pareció como que en la automatización

[34:59] y en particular con Ansible había mucha gente que se estaba tratando de hacer cosas y

[35:03] bueno que se estaba complicando y hay templates hay comunidad que vaya haciendo así como

[35:10] templates, hay alguna comunidad de Oracle que Saque templates para aplicar PSU que diga,

[35:15] mira, adapta esto más o menos a como lo tengas.

[35:18] Ah, sí, sí. Dentro de Oracle hay tres o cuatro referentes

[35:25] de, históricamente, usuarios que han hecho mucho, ¿no?

[35:29] Inclusive mucho antes que Oracle.

[35:30] Que está este hora virt de finlandia creo que él empezó como hace

[35:38] más de diez años con todo esto y fue de los primeros que se metió con ansi el que yo

[35:44] que yo encontraba referencias me acuerdo cuando todos empezamos estudiar mismo tim hall

[35:48] empezó después que él no a meterse en estas cosas o sea y él creó pila de documentación

[35:56] de ejemplos de código a los años recién ahora que les acogió ejemplos y que más o menos

[36:02] hacían lo que él hacía entonces cuando uno va a aplicar a un parche no hay nada oficial

[36:08] de hora que no ahora que tiene algunos ejemplos y ya pero muy simples este entonces si

[36:15] uno las puede usar rehusar y a partir de ahí este hacer la versión propia pero que

[36:22] está faltando eso de repente no una especie de repositorio de días bueno para el pc utal

[36:29] apliquen este código anselm que es el que ya está recontra validado y todo el mundo lo

[36:32] usa y funciona bien y pero y también tenés este si no quiero dejar pero

[36:40] hay tres o cuatro no el otro grande es el de a mí se me dan los nombres no se tenía que

[36:45] tener atado para referenciar los fritz fritz holligan él hizo mucho laburo con este con

[36:50] automatismo de aplicación De parte cuando cuando trabajaba en Enquitec hace varios años.

[36:55] También, él tiene unos códigos, miles y miles de señales, el código para cada versión,

[37:02] con cada parche. Mirá, esos códigos son una locura de la cantidad de detalles que tiene,

[37:07] lo que te muestra el tiempo que se le dedicó a hacer todo eso, ¿no?

[37:11] Es lo que tiene Ansible, ¿no?

[37:12] O sea, si querés aplicar parches en todas las versiones de todos los parches, tenés que

[37:18] probarlo. Tiene que funcionar y el código tiene que no dar errores, ¿no?

[37:22] Bueno, y una cosa, a ver, Ansible versus Cloud Control para parcheo, por ejemplo, o para

[37:28] automatismos. Porque Cloud Control también tiene, digamos, una parte para desplegar,

[37:34] te prueba el parche, te prueba el prereqs, te hace el análisis, digamos, de los requisitos.

[37:40] Sí, sí, con el automatismo es lo que tenés, ¿no?

[37:44] En todas las Cloud te ofrecen sus propias versiones de los automatismos, ¿no?

[37:49] Oracle también tiene eso.

[37:50] Tratamos justo de los parches de oracle así que te aplica bien pero como norma general

[37:55] cuando vas a una cloud te enfrentas a que bueno ellos tienen su propia versión de la

[38:01] de los utilitarios que hay que usar no y si lo que tiene buena civil es que funciona

[38:06] con todo entonces este es más portable y demás muy bien

[38:13] muy bien si alguien quiere preguntarnos algo estamos aquí tomando damos un café con todos

[38:19] hoy es muy interesante mira yo sé dónde conocí conocían según en noruega yo estaba trabajando

[38:25] en el departamento de salud y allí se utilizaba para el tema automatismos de servidores

[38:32] y eso se utilizaba el sol pero para lo que era base de datos yo yo lo hice todo con cloud

[38:39] control lo de crear golden image de por ejemplo de los agentes toda esa parte la dice

[38:47] dice así. Pero me encontré por ejemplo que con el despliegue de racks, el despliegue

[38:54] de los binarios de rack y la preparación un poco y el despliegue de software, me encontré

[39:00] con mucho problema de que estaba muy cerrado el tema de automatismos con Cloud Control

[39:04] y sé que resolvieron con Ansible la parte de

[39:12] Futuros despliegues y también la parte de de parches de parche

[39:19] o yo yo llegué a parchear con con con cloud control y como era un

[39:26] estándar muy muy homogéneo era prácticamente la misma versión misma misma versión de

[39:32] linux misma versión de base de datos mismo componente para todo pues fue fácil decir

[39:36] desde claro control agregó todos los destinos y hago el patch desde desde el mismo cloud

[39:42] control no pero sí claro que todo el resto de componentes se parcheaban ahí con Anzio

[39:50] Sí, El Cloud Control se sigue usando también todavía

[39:58] Enterprise Manager en particular

[40:01] Eso es lo otro que tiene Oracle, que tiene tantas.

[40:06] Herramientas que automatizan cosas.

[40:09] Que a veces presentan un poco

[40:14] De dudas de que bueno que cualquier camino me conviene tomar no me pongo a hacer por

[40:19] mi cuenta algo o mejor uso una herramienta que se tiene ahora que la trata de

[40:27] usar hasta lo máximo que pueda para evitarme el trabajo de tener que mantenerla yo no

[40:31] y en ese camino por ejemplo está lo del este

[40:36] Esta herramienta que sacó hace unos años ahora que para manejar los homes golden images

[40:41] y demás más, ¿no? El Fleet Provisioning and Patching.

[40:44] Sí, primero se llamaba el Rapid Home Provisioning and Patching y ahora han cambiado el

[40:48] nombre. Rapid Home Provisioning.

[40:50] Ahora han cambiado el nombre.

[40:51] Se llama Fleet Provisioning and Managing.

[40:55] Fleet Provisioning and Patching, sí.

[40:56] Entonces, esa es una alternativa.

[40:59] Lo único Trae todo, digamos.

[41:03] O sea, un repositorio central donde uno almacena una versión de los binarios, donde los

[41:09] pueda patchear y después distribuir a muchos servidores; lo que tiene, si querés,

[41:16] de contra es que está pensado como para instalaciones grandes.

[41:20] Si uno tiene un rack de dos nodos, usar un servidor de FPP implica crear un servidor

[41:26] de repositorio, mucho espacio en disco para tener las imágenes; es como que te agrega

[41:33] un overhead extra de mantenimiento.

[41:38] Fíjate Fíjate, te iba a preguntar una cosa, te iba a decir, ¿en qué casos no recomendarías

[41:45] el coste de desplegar ANSI o de aprender ANSI para prepararse todo un despliego,

[41:55] todo un automatismo respecto, digamos, al beneficio?

[41:58] ¿En qué casos dirías, mira, es que para hacer algo así no valdría la pena?

[42:02] Que quizá, evidentemente, cuando es algo muy específico en un servidor, pero ¿en qué

[42:06] tareas has echado para atrás y has dicho, mira, lo vamos a hacer con Ansible, pero mejor

[42:13] no, mejor vamos a terminar antes si lo hacemos a mano?

[42:17] ¿En qué casos te has encontrado el caso opuesto?

[42:19] Yo creo que es como dijo Hanoi, que ahora volvió con nosotros acá, es

[42:26] que cuando tenés volumen, o sea, cantidad de servidores, en general la ecuación te da

[42:31] bien de decir, invierto en automatizar.

[42:34] Si tengo poquitos servidores y me pongo a automatizar tareas complejas, a menos que las

[42:41] vaya a ejecutar muy seguido, es difícil que me rinda porque hay que invertir mucho tiempo

[42:47] para tener una automatización funcionando bien.

[42:49] Bien y sobre todo porque cambia las cosas no si voy a hacer imagínate no cambiar

[42:56] la clave de un usuario y me hago un escrito antes del chiquito que me conecta la base

[43:01] crean wallet le pone la paja vieja la nueva bueno capaz que puede estar interesante como

[43:07] ejercicio pero cuántas Veces le andar usando eso yo que sé una por año en un servidor

[43:14] ahora tengo 50 servidores capaz que que me sirven pero siempre este tipo de detalles

[43:20] es muy difícil de estimar porque de repente de entrada uno se genera expectativas que

[43:25] no son alineadas con la realidad porque uno se puede inventar la película decir bueno

[43:30] yo esto le gustan después a futuro millones de veces acá y ella y termina se gastando

[43:34] en diciendo haciendo una cosa enorme que lo usaste tres veces o cuando tienes un parque

[43:39] muy heterogéneo quizá si tienes muchas versiones y si las son mucho seguros operativos

[43:44] distintos y muchas arquitecturas distintas quizá el coste de eso analizar tantísimo y

[43:50] el momento que dices ya paremos la personalización implica dedicarle el mismo tiempo

[43:57] porque en general poco lo que puede usar si hay mucho que puede usar bueno capaz que

[44:04] te sirve pero este si mismo los comandos no sé que se está haciendo exadata el comando

[44:10] para porque un parche distinto hace en la cloud el comando no un gran manager services

[44:15] de los de ahora que el comando distinto entonces está bien capaz que te puedes rehusar

[44:20] la partecita de decir copio el binario pero no sé todo todo lo demás va a ser tan distinto

[44:26] que va a ser difícil no que te rinda al hilo esto que decís quería comentar una Cosa

[44:31] sobre un concepto también importante en archivo el que es el tema del inventario el

[44:38] inventario lo que hace archivo les digamos manejar grupos de servidores en

[44:45] un concepto de inventario el inventario es bastante potente porque permite organizar

[44:52] y viores en grupos y a su vez grupos en sus grupos Entonces tú luego

[44:59] los roles o los playbooks que quieres desplegar, puedes desplegarlos

[45:07] sobre un grupo de servidores en concreto.

[45:10] Entonces esto también da muchísimo juego.

[45:12] No sé si esto Nelson también lo has encontrado tú.

[45:17] Sí, sí, claro. Para mí eso, yo no quise entrar en muchos nombres, pero es parte de la

[45:22] configuración. Cuando configuras, la configuración en general es esos detallecitos de

[45:28] cuáles son los servicios en los que me voy a conectar.

[45:30] Y lo que tiene interesante el inventory es que vos podrías tener en mi misma instalación

[45:37] de prueba, puedo tener distintos archivos de inventario para ejecutar pruebas distintas.

[45:44] Entonces, eso es algo que nosotros hacemos a veces para decir, bueno, voy a probar este

[45:49] RAM book contra un single instance.

[45:51] Este mismo rambo contra un rack pero los sobredotes de racks un grupo de sobredotes distintos

[45:57] porque no quiere usar los mismos entonces mismo que mismo para crearlos es más fácil

[46:01] de otra forma entonces ahí los archivos de inventario distinto tiene variables que

[46:09] se pueden digamos configurar por estos grupos que comento pues esto también te

[46:17] da mucho juego para aplicar por ejemplo una una cosa específica para un grupo de servidores

[46:22] que podría tener un Oracle 11, por ejemplo.

[46:26] Sí, sí, tal cual. Qué bueno.

[46:30] Es bastante potente. Sí, yo lo uso un poco.

[46:34] Digamos que... Bueno, no lo uso, quiero decir.

[46:40] Sí, pero porque no tienes muchos servidores.

[46:42] Si tuvieras muchísimos servidores, vamos, estás 90 % obligado a usarlo.

[46:48] Claro, y cuando tengo son esos, son clientes distintos, sistemas

[46:53] cada uno y claro de un instalador distinto pero si me parece poder nosotros es que

[47:00] tenemos nosotros tenemos un cloud privado en el que tenemos muchas instalaciones de oracle

[47:07] para cada cliente o sea para cada cliente tenemos un oracle por decirlo alguna forma

[47:12] una instancia entonces tenemos muchas bases de datos y cuando tenemos que configurar

[47:17] de configurar en todas a la vez que aplica una una mejora, pues un script que hacen en

[47:23] Ansible y se aplican todas las bases de datos de los clientes.

[47:27] Qué bueno, qué bueno, qué bueno.

[47:30] Pues está muy bien para eso, sí.

[47:33] Pues muy bien, ¿qué dices?

[47:35] ¿Tú siempre usas? ¿Qué dices, Nelson?

[47:37] ¿Que usas siempre el de...?

[47:39] Ah, sí, estaba siguiendo con Bani.

[47:42] Por los virtuales, ¿no? Por el hecho de que para usar máquinas virtuales uno siempre

[47:47] puede ir a VirtualBox y crearlas a mano, ¿no?

[47:49] Pero InHop, él publica siempre, cada vez que sale una versión nueva, él crea la configuración

[47:53] background, ahora con un comando

[47:57] ejecutás y ahí te crea la virtual, te instala el software y todo y él se ha preocupado

[48:03] de mantener todo ese software durante el tiempo ahora que también publica background

[48:08] boxes se llama Pero bueno, como Tim lo ha dicho antes y aparte Tim publica dentro

[48:16] de esas configuraciones también le agrega más cosas le pone

[48:22] Se pone developer, le pone todo, entonces ya te bajás eso y ya te sirve no solo para

[48:29] hacer datos, sino también si querés desarrollar un desarrollo chico, incluye en Apex,

[48:33] RDS. Qué bueno, qué bueno

[48:40] que vuelve. Y es también otro ángulo de la automatización, la automatización no es solo

[48:45] una herramienta, la creación de una virtual ejecutando todo es otro aspecto esos

[48:53] scripts enormes Larguísimos si se ponen a revisar los códigos, todo

[49:00] tiene muchas horas de trabajo atrás, pero reaprovechadas nosotros que

[49:09] solo los copiamos los usamos seguro.

[49:13] Pregunta Miguel si queda grabado el café claro que sí lo grabamos y lo subimos al podcast

[49:19] y tenemos estás nelson en el episodio 2 de la temporada 3 así

[49:27] que sí o no es largo que te parece pues nada pues eso es el tercer año que

[49:34] estamos no digo que el hecho de poder escuchar este los

[49:42] pocas después también está bueno sí porque también es que que a las horas a las horas

[49:47] en las que a veces a lo mejor no está todo el mundo a veces hay gente que está pues está

[49:51] trabajando o está en su casa pues hay mucha gente me decía oscar garcía que él

[49:58] escucha el podcast siempre conduciendo pero está muy bien está muy bien oye

[50:06] pues es que es muy interesante te digo es decir la parte que conocía es algo así no sé

[50:12] hasta qué punto me me interesa aprender...

[50:16] Yo soy muy así, soy principio de economía máximo.

[50:19] ¿Hasta qué punto me interesa aprender una tecnología, un componente, por el beneficio

[50:26] si más o menos hasta ahora me he estado capeando con Cloud Control, por ejemplo?

[50:32] Es decir, descargar scripts, por ejemplo, en todas las bases de datos, pues me lo hago

[50:35] un job, un job con Cloud Control y lo planifico y lo despliego.

[50:39] Ya todo esto que dices tú, esa personalización,

[50:43] O poder hacerlo estándar, no solamente para Oracle, es decir, que en un momento puedas

[50:47] hacer una parte con Oracle y otra parte en otro componente, o otra parte en otro aspecto,

[50:52] digamos, con un asistente operativo, con SQL, ya digamos, una herramienta muy general

[50:58] o genérica como Cloud Control no te permite ir tan a lo fino, ¿no?

[51:03] Y quizá ya Ansible sí es mucho más potente para este tipo de cosas, ¿no?

[51:07] Y aparte Cloud Control es propietario de Oracle y tenés que tenerlo instalado y

[51:14] tenés que mantenerlo en versiones

[51:19] Ancible es como una cosa más genérica más liviana que la podés poner

[51:26] a andar en muy poco tiempo y lo otro es que el código porque las cosas que podés hacer

[51:32] con Ancible es como digamos es como un lenguaje donde puedes escribir por

[51:39] tareas lo que quieras. En el Cloud Control, en realidad, estás limitado para las opciones

[51:43] que tiene el Cloud Control.

[51:44] Sí, mucho, la verdad que sí.

[51:47] Yo creo que es un intento de hacer algo...

[51:50] Es útil. Es un intento como de hacer algo así como automatismos,

[51:57] pero decir, bueno, que nuestra herramienta estándar de monitorización, por lo menos lo

[52:02] haga y haga algo así. Y gestione las golden copies, ¿no?

[52:06] Y se puedan Provisionar homes y a ciertas cosas.

[52:10] Decir, bueno, no nos es tan complicado.

[52:11] Poder implementar un Pequeño Ansible.

[52:15] Para poder Desplegar cosas, pero claro, la herramienta de Cloud Control es como para

[52:21] muchas otras cosas más, de monitorización.

[52:25] Y no te olvides que también tiene, ¿cuánto?

[52:28] 20 años. Bueno, capaz que menos, 15 Cloud Control, o sea que estaba haciendo estas cosas

[52:34] desde hace mucho tiempo atrás.

[52:35] Y de última Ansible es bastante

[52:39] Moderno como una cosa que surgió después o sea tampoco es muy justo decir que ahora hay

[52:45] una cosa moderna que hace todo mucho mejor y más rápido pero bueno es más específica

[52:50] porque digamos si es posible solamente para automatizar claro un poco cloud control es

[52:55] como gestión de toda la monitorización automatización gestión de backup gestión de digamos

[53:02] a universal para ¿Para abatado de base de datos?

[53:06] Exacto pero solamente a eso, claro.

[53:09] Era para tu base de datos todo lo que quisieras hacer con tu base, pensado en Oracle,

[53:14] y bueno, sí, tiene sus ventajas.

[53:17] Quizás hoy en día también se está notando más de que, bueno, no es la realidad de todo

[53:22] el mundo, ¿no? Pero yo que hago consultoría, hay muchas empresas que tienen entornos

[53:27] más heterogéneos. No tienen solo Oracle entonces herramientas como estas que se pueden

[53:33] usar contra con cualquier otro motor o para otras actividades son más valiosas porque

[53:38] son de múltiples propósitos y no como que acá contra que sólo te sirve para ahora entonces

[53:44] es doble fil igual porque cuando quieres hacer en parte para ahora que tiene que ser

[53:50] siguiendo los pasos de ahora que entonces un par de un par de cositas mira miguel debe

[53:56] a está preguntando en el chat opinión entiendo que crees que es mejor ansible el de reformó

[54:02] jenkins a bueno Es una pregunta interesante, son todas herramientas de automatismos

[54:09] para cosas distintas. Ansible es este creada por automatizar tareas y ejecución

[54:16] paso a paso de cosas con módulos para lo que quieras, entonces es más pensado como decir

[54:23] bueno, quiero evitarme de hacer cosas a mano que antes ejecutaba un programas?

[54:28] Bueno, uso ANSI. Terraform tiene una filosofía de configuración similar en el sentido

[54:35] de que es un archivo en texto plano que uno puede leer, también descriptivo sobre recursos,

[54:43] pero se usa para crear infraestructura Terraform.

[54:47] Terraform no sirve para ejecutar tareas paso a paso.

[54:51] Sin embargo, Terraform hace cosas paso a paso, pero no nos da a nosotros la libertad

[54:56] de decir, bueno, Bueno, quiero hacer algo más después de que el servidor...

[55:00] Claro, Terraform es para crear recursos.

[55:02] Entonces, si yo quiero crear un servidor nuevo y eso implica

[55:10] crear un disco, crear la red,

[55:13] Lo que sea que haya que hacer, bueno, Terraform permite hacer eso.

[55:17] Porque de la misma forma que Ansel tiene módulos para todo, Terraform también se hizo

[55:22] muy popular y todos los proveedores de software crearon sus módulos que son capaces de

[55:27] gestionar sus recursos. Entonces, hay módulos de Terraform para poder conectarse ahora

[55:32] a OCI, a Amazon, a Google.

[55:36] Entonces, uno puede crear de forma casi con el mismo código, con algunas variantes, en

[55:43] todos lados cosas, ¿no? Pero los archivos que describen lo que hay que hacer solamente

[55:49] describen cómo crear los recursos.

[55:52] Termina ahí, en el curso que ha creado, y Terraform termina.

[55:57] No podemos decirle después de crearme, instalame ahora, aplicame un parche.

[56:03] No sirve para eso y Cienquis es un utilitario que sirve para automatizar ejecución,

[56:10] pero más orientado a tipo de eventos.

[56:13] Se usa mucho cuando quiero armar un ambiente donde automáticamente se me apliquen, se

[56:20] ejecuten o se disparen tareas anidadas, digamos.

[56:26] Por ejemplo, hago un cambio en la base de datos y eso me dispara, o al revés, hago un

[56:31] cambio en el código, eso me dispara un commit en Git y eso me dispara una compilación

[56:36] de una SQL en la base de datos.

[56:38] Eso es a Jenkins, es como más para un orquestador de cambios.

[56:43] Y bueno, hay formas de, hay muchas recetas, muchos ejemplos De cómo conectar cosas

[56:50] con otras, pero bueno, son como herramientas distintas que están todas vinculadas al

[56:55] tema automatismo, ¿no? Sí, sí, sí.

[56:57] Oye, y acá acabamos con un caso de éxito y otro caso de fracaso.

[57:04] Es decir, ¿tienes algún caso de estos de decir, mira, hicimos esto y fue espectacularmente

[57:10] bien y hicimos esto y fue espectacularmente mal?

[57:14] Bueno, el fracaso para mí en estos casos es cuando las estimaciones no nos dan como pensamos,

[57:22] ¿no? Entonces, hemos tenido proyectos donde inicialmente parecían muy simples, terminaron

[57:28] siendo muy complejos y costándonos muchísimo más de lo que inicialmente asignamos

[57:36] de gente para trabajar en eso.

[57:40] Eso es lo fracaso. Al final las cosas siempre funcionan.

[57:43] Por ejemplo, hicimos algún, hay unos compañeros, ¿no?

[57:48] Yo en particular no toqué mucho, pero se hizo un automatismo con Jenkins, Git

[57:56] y demás para aplicar cambios de bases de datos en ambientes con eBusiness Suite.

[58:01] que funcionó, pero tenía muchas limitaciones y requería muchas cosas manuales por parte

[58:07] de los usuarios. Entonces, al final, como se gastó tiempo, se hizo algo que funciona,

[58:13] pero no se adoptó, digamos.

[58:15] Como que era lindo de ver, pero no era muy práctico.

[58:18] Eso también puede ser... Y el caso súper éxito termina con un bombazo.

[58:24] Venga, terminas con el caso súper éxito.

[58:26] Ah, bueno. De éxito, tenemos tenemos unos módulos ahí públicos para hacer patching de

[58:32] instalaciones de bases Oracle con RAC que están funcionando

[58:37] quizás no puedo dar muchos detalles porque son cosas, algunas confidenciales pero buscan

[58:42] en Git, hay algunos repositorios públicos que hacen eso y que los creamos nosotros para

[58:48] clientes son de Pythian o son tuyos

[58:54] bueno, no los hice con Pythian y con otros compañeros que trabajamos para clientes están

[59:00] publicados en nombres de clientes o sea que si van ahí

[59:06] Buscan en Git y ven algunos repositorios Ansible para instalar ahora con Rack y demás,

[59:11] hay chance de que nosotros hayamos hecho bastante de ese código y que están ahí funcionando

[59:17] desde hace años y cada tanto los mantenemos y demás, pero bueno que bueno

[59:23] la cosa funciona, es como todo, funciona hay que dedicarle mucho este mucho tiempo pero

[59:29] bueno al final funcionan así y facilita mucho tiene el trabajo muy bien son las 7 nos

[59:35] pasamos un par de minutos Nelson sé que tienes tienes algo justo que te vas es un gustazo

[59:42] hablar contigo se nos queda Juan por decir ya

[59:49] nos hemos ido un poquito de tiempo voy Voy a crear, para terminar solo una cosita, crearé

[59:55] un canal de texto para que a lo mejor podamos poner ahí enlaces o podamos poner algún

[60:01] tipo de documentación. Y si alguien se queda con alguna preguntita, pues que lo pueda

[60:05] comentar también en el chat o poner algún link o algo así.

[60:09] Y un gustazo, es que es un gustazo tener de Nelson, eres un tanque de guerra, de verdad.

[60:17] Un placer. Muchas gracias.

[60:19] Bueno, mismo Miguel hizo unas preguntas, de repente las seguimos ahí en ese canal, viste,

[60:23] que están ahí de cómo automatizar OCI y AWS.

[60:26] Sí, qué bueno. Todo eso se puede, hay ejemplos, sí.

[60:29] Lo podemos seguir ahí, sí, seguro.

[60:31] Bueno, muchísimas gracias por la invitación y bueno, un placer, un gusto compartir esta

[60:35] tarde contigo y con la resta de la gente que se conectó hoy.

[60:39] Y de último, cuando tengas el canal creado para hablar de estas cositas que quedaron

[60:42] pendientes también, las que tienen preguntas.

[60:45] Y lo voy a hacer ahora, lo voy a hacer ahora, ¿cómo lo llamamos?

[60:50] Y automatizaciones automatización base de datos si lo que quieras diciendo a los que

[60:55] ya tenés canales tenés, pero no tenés ninguno solo automatismo, si poner la automatización

[61:00] en base de datos, pues mira la de chanel ha creado y le

[61:08] ponemos la pregunta de miguel y la seguimos después, entonces escuchó ahora tengo otras

[61:12] cosas para hacer, pero que esté con tiempo sé que me me habías dicho que tenías justito.

[61:19] Tampoco te quería alargar más.

[61:21] Muchísimas gracias, Nelson.

[61:23] Ahí dejé puesta la pregunta de Miguel.

[61:26] Dale, hablamos después igual.

[61:28] Muchas gracias. Muchísimas gracias a ti, Nelson.

[61:31] Un abrazo muy fuerte.

Suscríbete a la lista de emails y únete a Discord.

Nada de spam: lo que se publica, cuando se publica, y el Discord del Café.