5 consejos para decidir qué tareas y cargas de trabajo de Linux automatizar

Si ha estado automatizando sus procesos internos, creando canalizaciones de CI/CD y escribiendo código Ansible durante algunos años, puede ser difícil recordar un momento antes de que la automatización se hiciera cargo de su flujo de trabajo diario. Decidir qué automatizar puede ser intimidante para un principiante: hay lenguajes de programación para aprender, herramientas con las que familiarizarse y términos como "idempotenciapara agregar a su vocabulario. ¿Cómo decide por dónde empezar incluso con la automatización? En este artículo, lo guío a través de cinco consejos que han guiado mis decisiones cuando se trata de construir una nueva automatización.

Índice

1. Lleva un diario de trabajo

Puede parecer obvio, pero las mayores ganancias en automatización a menudo se encuentran en la creación de herramientas que se ocupan de tareas comunes y repetitivas. Si bien es probable que tenga una idea general de cuáles son estas tareas, una excelente manera de refinarlas es llevar un diario de trabajo diario. Personalmente, mantengo un cuaderno diario y una caja de tiempo para mi día. Nuestros otros Sudoers han compartido sus consejos de administración del tiempo, y es posible que encuentre algunas formas que funcionen mejor para usted. Incluso mantener un archivo de texto simple con una lista de los logros de cada día es una forma rápida y fácil de realizar un seguimiento de su trabajo.

La idea clave aquí es que puede usar su diario de trabajo para identificar patrones. Puedo mirar hacia atrás en mi cuaderno para identificar áreas en las que paso una cantidad desproporcionada de mi tiempo. Puedo calificar estas tareas para ver si son buenas candidatas para la automatización. No puedo automatizar mi asistencia a una reunión de recopilación de requisitos, pero puedo ver que estas reuniones a menudo dan como resultado la creación de un entorno virtual con una configuración estándar. Es un candidato perfecto para la automatización: con unos sencillos libros de jugadas de Ansible, puedo automatizar la implementación y la configuración de las máquinas virtuales.

2. Explore su sistema de emisión de boletos

Si es miembro de una organización más grande, es muy probable que utilice un sistema formal de emisión de boletos para realizar un seguimiento de su trabajo. Si bien muchos técnicos quieren pasar el menor tiempo posible mirando los tickets (y más tiempo mirando una terminal), no aprovechar su sistema de tickets como un rico depósito de datos es un gran error. La revisión periódica de los tickets puede revelar fácilmente modelos de trabajo que consumen mucho tiempo y son mejores como herramientas automatizadas. Por ejemplo, puede encontrar una plantilla común en los tickets de administración de cambios para ajustar manualmente las configuraciones del balanceador de carga. Esta es una gran oportunidad para escribir una herramienta automatizada en su idioma preferido para manejar esta tarea repetitiva y propensa a errores.

La idea de hurgar en cientos o incluso miles de boletos puede ser muy desalentadora. Mi consejo es empezar poco a poco. He tenido un gran éxito reuniéndome con mi equipo cada dos semanas para revisar el trabajo que hemos estado haciendo. Estas breves reuniones a menudo dieron como resultado que varios miembros del equipo expresaran que habían trabajado en tareas muy similares. Luego podemos tomar esas actividades repetitivas y crear herramientas automatizadas para manejarlas.

3. Identificar los procesos manuales correctos

Uno de mis gerentes creía profundamente en la automatización: toda buena automatización se basa en un proceso manual bien definido. Estoy totalmente de acuerdo con él por dos razones: primero, un buen proceso manual explica exactamente lo que debe hacer al escribir una automatización. Segundo, un proceso bien definido define claramente sus criterios para el éxito.

Uno de mis primeros proyectos de automatización a gran escala en un empleador anterior involucró escribir una herramienta de Python para automatizar todos los pasos involucrados en el cambio de nombre de un host en nuestros muchos sistemas. Después de leer nuestra documentación, decidí trabajar en ella, que explicaba todos los pasos involucrados en este proceso. Nuestro proceso manual fue sólido y solo tuve que traducirlo a código. Si planea automatizar algo en su entorno, asegúrese de tomarse el tiempo para desarrollar y probar primero un proceso manual.

4. Habla con tus clientes

En última instancia, su objetivo como administrador del sistema es respaldar el negocio. En última instancia, la creación de herramientas automatizadas sólidas lo ayuda a satisfacer mejor las necesidades de sus clientes internos o externos. Por lo general, es más fácil identificar las tareas que desea automatizar como administrador del sistema, pero ¿qué pasa con las mejoras de procesos para sus clientes?

Como cualquier tarea de recopilación de requisitos, comienza con una comunicación sólida. Debe tener discusiones periódicas con sus partes interesadas. Si apoya a los equipos de desarrollo internos, asegúrese de reunirse periódicamente con los desarrolladores de todos los niveles para mantenerse informado sobre sus necesidades. Es posible que aprenda que los equipos de desarrollo están frustrados con el tiempo que lleva construir nuevas máquinas virtuales, lo que les impide probar nuevos productos de manera oportuna. Si trabaja en soporte al usuario final, es posible que los usuarios odien abrir tickets para restablecer contraseñas porque es vergonzoso y lento. Estas tareas son candidatas para la automatización.

5. Manténgase al día con la industria

Una de mis cosas favoritas de trabajar en tecnología es que estoy rodeado de personas que son más inteligentes que yo todo el tiempo. A menudo paso tiempo hablando de tecnología con mis colegas en diferentes empresas y en diversas áreas de TI. Estas conversaciones a menudo conducen a nuevas ideas que puedo implementar en mi entorno.

Me encanta leer blogs, subreddits y listas de correo de la industria por la misma razón. A menudo leo sobre una tarea que alguien más ha automatizado y agrego esa información a mi kit de herramientas de automatización mental. Por ejemplo, un colega mío de Enable Sysadmin escribió recientemente sobre cómo automatizar el envío de correos electrónicos usando Ansible y Gmail. Uso ambas herramientas a diario, por lo que este es un excelente tema de automatización para tener en cuenta cuando lo necesito. Te sorprendería la cantidad de ideas geniales que he tenido al leer el trabajo de otras personas.

Envoltura

Con una variedad infinita de herramientas y temas para estudiar, comenzar su viaje de automatización puede parecer desalentador. La automatización, como toda tecnología, es solo una herramienta. Comprender los problemas que tiene lo ayudará a seleccionar la herramienta adecuada para el trabajo. En este artículo, analizó cinco formas diferentes de identificar problemas candidatos para la automatización. Le deseo la mejor de las suertes en su viaje al apasionante mundo de la automatización.

Artículos de interés

Subir