Transcripciones
1. INTRODUCCIÓN: Bienvenido a la modernización de mainframe
con DevOps Mastery. Implemente la automatización para
pruebas, implementación y monitoreo en mainframes utilizando
los principios y herramientas de DevOps Mi nombre es Ricardo Nuke, y soy tu instructor
para este curso Para este curso sobre la automatización operaciones de
mainframe
utilizando herramientas de DevOps, los individuos con más
probabilidades de beneficiarse son administradores de sistemas de
mainframe, los líderes de
operaciones, los ingenieros de
DevOps que trabajan
con sistemas heredados y los directores de infraestructura de TI que de operaciones de
mainframe
utilizando herramientas de DevOps,
los individuos con más
probabilidades de beneficiarse son los administradores de sistemas de
mainframe, los líderes de
operaciones, los ingenieros de
DevOps que trabajan
con sistemas heredados
y los directores de infraestructura de TI que supervisan los entornos de mainframe. Son
profesionales experimentados que administran la compleja
carga de trabajo crítica que manejan los mainframes, a menudo en industrias
como las finanzas, el gobierno, los seguros
y las telecomunicaciones Estos son algunos de los
retos que enfrentan. Uno, integrando herramientas
modernas de DevOps. Los mainframes han operado
tradicionalmente en entornos
silos
con herramientas diferentes a las
utilizadas para
sistemas distribuidos utilizadas para Los gerentes pueden tener dificultades
con la forma de
integrar sin problemas herramientas de Devos
como Jenkins, Ansible y Docker en
su Dos, la resistencia cultural. A menudo hay resistencia
de equipos y organizaciones que han trabajado con procesos heredados
durante décadas. Pasar de las operaciones manuales a las
automatizadas
requiere un cambio de mentalidad Tres, complejidad de mainframe. Incluso los profesionales de SISD enfrentan desafíos para navegar por la complejidad de los sistemas
mainframe, particularmente para equilibrar la
estabilidad con la innovación Cuatro, experiencia limitada
en juegos de herramientas modernos. Muchos profesionales
conocen
bien los mainframes pero pueden carecer de
experiencia con DevOps, herramientas de
automatización
o flujos de trabajo ágiles Cinco, cumplimiento y seguridad. Garantizar el
cumplimiento de las regulaciones, particularmente en
industrias sensibles como la banca, mientras que la adopción de nuevas prácticas agrega una capa adicional
de complejidad. Estos son sus objetivos finales, automatización de tareas repetitivas, automatización de pruebas,
implementación y monitoreo para reducir los errores
manuales y mejorar la eficiencia Optimice los flujos de trabajo, implementando prácticas de DevOps para romper los silos y
crear flujos de trabajo más suaves y
rápidos entre los tallos de
desarrollo y operación Al reducir el tiempo de inactividad,
quieren lograr un inactividad
casi nulo para sus
aplicaciones de misión crítica. Modernizar las operaciones
sin riesgo. Integrar
conjuntos de herramientas modernos mientras se mantiene la confiabilidad y seguridad de los
entornos de mainframe
y los sistemas de pruebas futuros, que garantiza que sus sistemas puedan
evolucionar con un rápido ritmo de avances en
TI y, al mismo tiempo,
continuar entregando las funciones principales El objetivo de la
modernización de mainframe con dominio de DevOps es
capacitar a los gerentes de
sistemas de mainframe y a los profesionales de TI
con las habilidades, herramientas y conocimientos
necesarios para
automatizar con éxito las operaciones de mainframe Este curso permitirá a
los estudiantes implementar automatización para
pruebas, implementación
y monitoreo, mejorando la eficiencia de
los sistemas, reduciendo errores y mejorando la colaboración entre los equipos de
mainframe y DevOps Al final del curso,
los estudiantes podrán diseñar e implementar flujos de trabajo
automatizados para entornos mainframe, aprovechando herramientas DevOps
líderes en la industria
como Jenkins, Cree y administre canalizaciones CICD para aplicaciones de mainframe, asegurando integraciones continuas e implementación sin interrupciones automatizados de prueba, monitoreo Procesos automatizados de prueba, monitoreo
y respuesta a incidentes para lograr una mayor confiabilidad,
escalabilidad y rendimiento de los
sistemas escalabilidad y rendimiento Tenga en cuenta la seguridad y el cumplimiento durante todo el proceso de
automatización, asegurando que se cumplan
los estándares regulatorios en industrias como las finanzas, atención médica y
las telecomunicaciones Liderar el cambio organizacional
promoviendo la adopción de metodologías
Devos dentro equipos
mainframe
tradicionalmente silos, fomentando una cultura de Para este curso, el
objetivo es equipar a los estudiantes con las
habilidades prácticas, conocimientos profundos y habilidades técnicas
necesarias para automatizar sus operaciones de mainframe utilizando las herramientas y principios de
DevOps Al finalizar el curso,
los alumnos podrán uno, tener el dominio de las herramientas de automatización de
mainframe Los estudiantes aprenderán a usar herramientas de
automatización especialmente
diseñadas para mainframes,
como IBM, Urban code Deploy, ZoE y BMC Control M. Serán competentes
en el uso de Jenkins,
Ansibl y otras
herramientas CICD para automatizar pruebas, implementación y monitoreo para aplicaciones herramientas de
automatización especialmente
diseñadas para mainframes,
como IBM, Urban code Deploy,
ZoE y BMC Control
M. Serán competentes
en el uso de Jenkins,
Ansibl y otras
herramientas CICD para automatizar pruebas,
implementación y monitoreo para aplicaciones de mainframe. Dos, construyendo canalizaciones CICD
para entornos mainframe. Los estudiantes obtendrán la
capacidad de diseñar, implementar y administrar integración
continua, entrega
continua
o canalizaciones CICD adaptadas para aplicaciones de mainframe Podrán automatizar
implementaciones para bases de código de
mainframe, integrando mainframes en más amplia de
su organización Tres, automatizando los procesos
de prueba. Los estudiantes aprenderán
a automatizar las
pruebas
funcionales y de regresión unitarias funcionales y de regresión para
aplicaciones de mainframe, asegurando una entrega consistente de código
libre de errores Comprenderán
cómo integrar marcos de pruebas
automatizadas como selenio
para pruebas de interfaz de usuario o J Unit para pruebas unitarias en el
flujo de trabajo de
desarrollo de mainframe Cuatro, monitoreo eficiente
y respuesta a incidentes. Los estudiantes adquirirán
los conocimientos para automatizar el monitoreo de las operaciones de mainframe
utilizando herramientas como Prometheus y Grafana para
rastrear el rendimiento del sistema, actividad y detectar posibles
problemas en tiempo Sabrán cómo configurar
flujos de trabajo
automatizados de respuesta a incidentes para garantizar una
rápida resolución de problemas con
un tiempo de inactividad mínimo. Cinco, scripting
y orquestación. Los estudiantes serán
competentes en el scripting para la automatización usando
lenguajes como Rx, Python y JCL orquestar flujos de trabajo operativos complejos en mainframes Comprenderán cómo usar estos scripts
para automatizar tareas repetitivas
como la programación de trabajos, transferencias de
archivos y las comprobaciones
del estado del sistema Seis, los principios de DevOps
se aplican a los mainframes. Los estudiantes
aprenderán los principios básicos de DevOps, colaboración, retroalimentación
continua, automatización e iteración rápida, y cómo aplicarlos a entornos mainframe tradicionalmente silos. Podrán
cerrar la brecha
entre los equipos de mainframe
y los equipos de DevOps, creando una cultura de
colaboración e innovación Siete, seguridad y cumplimiento
en la automatización de mainframe. Los estudiantes entenderán cómo
mantener la seguridad y cumplimiento
normativo al automatizar los procesos de mainframe, particularmente en
industrias como las finanzas y la atención médica donde la
protección de datos es crítica Aprenderán a integrar verificaciones de seguridad
automatizadas en sus ductos de CICD para garantizar el cumplimiento de las
normas y regulaciones de la industria Ocho, superando la resistencia
organizacional. Los estudiantes obtendrán estrategias
para gestionar el cambio y liderar sus equipos a través
del proceso de
adopción de la automatización
y las herramientas. Sabrán superar resistencia
cultural al cambio
demostrando los beneficios de la automatización y fomentando la
confianza en las nuevas tecnologías. Nueve, optimizando los flujos
del marco principal. Los estudiantes tendrán la capacidad optimizar
las operaciones de mainframe, eliminando
procesos manuales, reduciendo errores y mejorando el rendimiento
del sistema Sabrán identificar
cuellos de botella e ineficiencias en
sus
flujos de trabajo de mainframe y utilizarán la automatización para agilizar estos procesos. Diez, integración en la nube híbrida. Los estudiantes obtendrán conocimientos
fundamentales sobre cómo integrar
mainframes en arquitecturas de
nube híbrida utilizando herramientas de
Devo para automatizar interacciones entre entornos de
nube y mainframes para transferencia de
datos, administración de
aplicaciones y aplicaciones Al final del
curso, los estudiantes tendrán las
habilidades integrales para automatizar
y optimizar las operaciones de
mainframe usando DeboVTOLS Liderarán con confianza a sus organizaciones en la implementación de procesos automatizados de
pruebas, implementación y monitoreo en mainframes, al tiempo que
garantizan la seguridad, confiabilidad y una
integración
perfecta en entornos de TI modernos Para lograr la automatización de las operaciones de
mainframe utilizando herramientas de
Devo e implementar automatización para
pruebas, implementación y monitoreo en mainframes, los estudiantes deberán seguir
un proceso de ocho etapas Cada etapa se basa en
la anterior, lo que garantiza un enfoque sistemático
y seguro la automatización en entornos
mainframe. Etapa uno, comprensión las operaciones de
mainframe
y la integración de DevOps El objetivo es obtener una comprensión fundamental de las operaciones
de mainframe, flujos de trabajo
actuales y cómo pueden integrar los principios de
DevOps Las acciones clave incluyen revisar la
arquitectura actual del mainframe y los procesos operativos, identificar los puntos clave de dolor y las áreas donde la automatización
puede agregar valor Obtenga los fundamentos
de DevOps y cómo se aplican específicamente a los entornos
mainframe Etapa dos, identificando oportunidades
y herramientas de
automatización. El objetivo es
identificar los procesos dentro
del entorno mainframe
que están maduros para la automatización y seleccionar las herramientas
adecuadas Las acciones clave incluyen mapear flujos de trabajo
críticos
que se pueden automatizar, identificar y evaluar
herramientas de automatización como Jenkins,
Ansibl IBM, Urban Co Deploy y Zo que son compatibles
con Seleccione las herramientas de
automatización más efectivas en
función de las necesidades del sistema, los requisitos de
la industria y la infraestructura
existente. Etapa tres, construcción de una
canalización CICD para mainframes. El objetivo es diseñar e implementar una
integración continua, entrega
continua
o canalización CICD para agilizar
implementaciones y actualizaciones. Las acciones clave incluyen
configurar el control de versiones para bases de código de
mainframe usando herramientas como Git para la
colaboración Diseñe una canalización CICD que automatice el
proceso de integración, prueba e implementación cambios de
código en entornos
mainframe Implemente etapas de canalización para pruebas
automatizadas, integración y uso de Jenkins u
otras plataformas DevOps Etapa cuatro, automatizando los procesos
de prueba. El objetivo es implementar marcos de pruebas
automatizados para garantizar pruebas consistentes
y confiables
en todas las aplicaciones de mainframe Las acciones clave incluyen
introducir pruebas unitarias, pruebas regresión y pruebas de
integración a través de herramientas de automatización
como J Unit y selenio Cree scripts de prueba automatizados para las aplicaciones principales de mainframe para asegurarse de que pasan los casos de prueba
predefinidos
después de cada cambio de código Incorpore pruebas automatizadas en la canalización de CICD para detectar
errores antes de la implementación Etapa cinco, automatizando los flujos de trabajo
de implementación. El objetivo es agilizar y automatizar la implementación de aplicaciones de mainframe
para eliminar intervenciones
manuales
y reducir los errores Las acciones clave incluyen
el uso de herramientas como IBM, Urban code Deploy
o responsableable para automatizar la implementación de código en el entorno mainframe Automatice la promoción del código desde el desarrollo
hasta la producción, asegurando un proceso de liberación
uniforme y fluido. Establecer
mecanismos de reversión para automatizar la recuperación en caso de fallas de
implementación Etapa seis, automatizando el monitoreo
de una respuesta a incidentes. El objetivo es automatizar monitoreo
del sistema para
detectar problemas de rendimiento, errores y
amenazas de seguridad en tiempo real. Las acciones clave incluyen implementar herramientas de monitoreo
automatizadas como Prometheus y Grafana,
para rastrear el estado del sistema, tiempo de actividad y las métricas de rendimiento
que aumentan las alertas automatizadas para notificar a los equipos relevantes cuando el rendimiento
del sistema se desvía Automatice
los protocolos de respuesta a incidentes para activar flujos de trabajo que abordan problemas
sin intervención humana. Etapa siete, asegurando el
cumplimiento de la seguridad y la estabilidad. El objetivo es integrar las comprobaciones
de seguridad y cumplimiento en los procesos automatizados para garantizar que se
cumplan los requisitos regulatorios. Las acciones incluyen automatizar las comprobaciones de
seguridad dentro la canalización de CICD
para buscar vulnerabilidades en aplicaciones de
mainframe, para garantizar el cumplimiento de los estándares de
la industria mediante automatización de auditorías y verificaciones de cambios
de código y sistema Monitoree y
pruebe continuamente la estabilidad del sistema para garantizar que la automatización no introduzca nuevos riesgos en el entorno de
mainframe Y finalmente, etapa ocho, escalando y optimizando los procesos de
automatización. El objetivo es refinar, escalar y optimizar los
flujos de trabajo de automatización a medida que
crecen y cambian las necesidades. Las acciones clave incluyen mejorar
continuamente los procesos de
automatización en función comentarios y las métricas de
rendimiento. Los
esfuerzos de automatización de escala para cubrir más áreas de operaciones de mainframe,
como la programación de trabajos, integración de
datos y el aprovisionamiento de
infraestructura Utilice los conocimientos del monitoreo
automatizado para optimizar aún más el rendimiento
del sistema, reducir costos y
mejorar la eficiencia. Estas etapas guían a
los estudiantes a través del proceso completo de automatización de las operaciones de
mainframe utilizando herramientas
desarrolladas,
desde comprender sus
entornos existentes hasta escalar la
automatización a través de varios procesos
operativos Al final,
habrán implementado una automatización
robusta para
pruebas, implementación y monitoreo,
asegurando eficiencia, seguridad y confiabilidad
en sus sistemas mainframe El curso se divide en
ocho módulos de la siguiente manera. El módulo uno es la introducción a la integración de mainframe y
Devo Este módulo proporciona
una visión general de la arquitectura de mainframe y los principios
básicos de DevOps Los estudiantes explorarán cómo las prácticas de
DevOps se
pueden aplicar a entornos
mainframe
tradicionalmente silos
y los beneficios de la automatización El objetivo, al
final del módulo, los alumnos podrán explicar los principios básicos de DevOps e identificar cómo se aplican a los entornos mainframe Módulo dos, identificando oportunidades de
automatización
en operaciones de mainframe Los estudiantes aprenderán a evaluar
sus flujos de trabajo actuales
, identificando procesos manuales
que pueden automatizarse, como pruebas,
implementación y monitoreo Este módulo ayuda a establecer las bases para identificar la automatización
crítica Al final del
módulo, podrá evaluar sus flujos de trabajo actuales de
mainframe e identificar al menos
tres procesos clave que se pueden automatizar
para aumentar la eficiencia Módulo tres, herramientas y tecnologías para la automatización de
mainframe Este módulo presenta
las herramientas clave para automatizar las operaciones de
mainframe,
incluyendo Jenkins, Ansibl IBM, Urban Co Deploy Los estudiantes obtendrán
experiencia práctica con estas herramientas, entendiendo cómo se
integran con los mainframes Al final del
módulo,
podrá seleccionar y configurar al
menos dos herramientas de desarrollo para
comenzar a automatizar las operaciones de
mainframe Módulo cuatro, construcción y administración de ductos CICD
para mainframes Los estudiantes se
sumergirán en la mecánica de la creación y gestión de ductos
CICD Aprenderán a automatizar las pruebas de integración de
código y los flujos de trabajo de implementación, asegurando la
aplicación semless de fechas en mainframe Al final del módulo,
podrá diseñar e implementar una canalización CICD básica para aplicaciones de mainframe, asegurando la
integración y entrega automatizadas de código Módulo cinco, automatización de pruebas para aplicaciones mainframe Este módulo se enfoca en automatizar la regresión unitaria
y las pruebas de integración Los estudiantes utilizarán herramientas como J Unit y Selenium para establecer marcos de pruebas
automatizados que garanticen una calidad consistente
en las aplicaciones de mainframe Al final del módulo,
podrá
automatizar al menos dos
tipos de pruebas para aplicaciones de mainframe utilizando las herramientas de prueba
adecuadas. Módulo seis. En este módulo, los alumnos
aprenderán a automatizar el proceso de
implementación para aplicaciones
mainframe
utilizando herramientas como Ansibl y Urban C También establecerán mecanismos de
reversión y garantizarán la
eficiencia de implementación con un riesgo mínimo Al final del módulo, podrá automatizar el proceso de implementación para aplicaciones
mainframe, asegurando una
implementación exitosa con capacidades de
rollback
en caso de fallas Módulo siete, monitoreo y automatización de
respuesta a incidentes. Los estudiantes explorarán cómo
implementar monitoreo en tiempo real y automatizar la respuesta a incidentes usando herramientas como Prometheus
y Este módulo garantiza que los estudiantes
puedan monitorear el estado del sistema, recibir alertas y
automatizar la resolución de problemas. Al final del
módulo,
podrá implementar herramientas de
monitoreo automatizadas, rastrear el rendimiento del sistema
y configurar alertas
y flujos de trabajo de respuesta a incidentes
para posibles problemas. Módulo ocho,
seguridad, cumplimiento y esfuerzos de automatización de escalado. El módulo final
cubre cómo mantener la seguridad y el cumplimiento en
un entorno automatizado. Los estudiantes aprenderán a implementar comprobaciones de
seguridad automatizadas, garantizar el cumplimiento de los estándares de
la industria y escalar sus esfuerzos de
automatización a través de más
operaciones de mainframe Al final del módulo, podrá integrar comprobaciones de seguridad
automatizadas en su canalización CICD
y demostrar cumplimiento de al
menos un estándar de la industria Sin más preámbulos, vamos a
sumergirnos en el curso.
2. Lección 1: ¿Qué es DevOps?: Bienvenido al Módulo uno de modernización de mainframe
con dominio de DevOps Introducción a la integración de mainframe
y DevOps. En este módulo,
aprenderá cómo principios de
DevOps se integran
con las operaciones de mainframe Exploraremos los siguientes principios básicos de DevOps,
el papel de los mainframes
en la TI moderna y cómo aplicar las prácticas de
DevOps
para mejorar sus Lección uno, ¿qué es Devos? Bienvenido a la Lección
Uno del Módulo uno. En esta lección,
cubriremos los principios básicos de Devos y cómo DevOps transforma las prácticas
tradicionales de TI. Al final de esta lección, comprenderá cómo DevOps
fomenta la colaboración, automatización y la entrega
continua,
y cómo estos principios se aplican
a los entornos mainframe ¿Qué es DevOps? Antes de entrar en cómo Devos transforma las operaciones de
mainframe, primero
entendamos
qué es realmente DevOps El término DevOps es
una combinación de desarrollo que es Deb y
operaciones, que es Representa un movimiento cultural y técnico
dirigido a mejorar la colaboración entre desarrolladores de
software y equipos de operaciones de TI. El objetivo es entregar software
de alta calidad de manera más rápida
y eficiente. Principios de DevOps. DevOps se basa en
tres principios básicos:
colaboración, automatización y entrega continua.
Vamos a descomponer esto. Colaboración. En entornos
tradicionales de TI, los equipos de
desarrollo y operaciones trabajan en silos Los desarrolladores escriben el código, lo
entregan a los equipos de
operaciones, y luego cruzan los dedos, esperando que todo
funcione en producción. Cuando no lo hace, y seamos sinceros , las cosas
se rompen todo el tiempo. Ambos equipos se señalan con
los dedos el uno al otro. Es como ver un
mal partido de tenis. Pero en lugar de golpear
una pelota de un lado a otro, es la culpa la que está
volando a través de la red. DevOps elimina
esta
mentalidad nosotros versus ellos al fomentar la
colaboración entre ambos equipos
desde el principio Los desarrolladores y las operaciones trabajan juntos durante
todo el ciclo de vida de un producto de software,
desde la planificación y codificación hasta las pruebas, la
implementación y el mantenimiento. Comparten responsabilidades,
herramientas y conocimientos. En el mundo DevOps,
todos están en el mismo equipo trabajando
hacia un objetivo común, entrega
más rápida de software
confiable Por ejemplo, en un entorno de
mainframe, los desarrolladores y las operaciones
podrían colaborar en la
automatización de la implementación
de aplicaciones cobol En lugar de esperar
días o semanas para que las operaciones
manejen manualmente la implementación, los equipos podrían trabajar juntos para crear scripts y automatizar el proceso, reduciendo el tiempo de implementación
y los errores. Automatización. Uno de los mayores puntos
problemáticos en el entorno de TI
tradicional
son los procesos manuales. Piense en la tarea repetitiva en su entorno de mainframe, probando nuevo código bal,
implementando aplicaciones, monitoreando la ayuda del sistema Cada una de estas tareas cuando se realiza manualmente consume mucho tiempo
y es propensa a errores. DevOps enfatiza
la automatización para resolver esto. Al automatizar tareas repetitivas,
como pruebas, implementación
y monitoreo, DevOps permite los equipos se centren en un trabajo
más estratégico La automatización también garantiza que los procesos sean consistentes
y confiables. No más sorpresas nocturnas
cuando estás apurando
para arreglar un error porque alguien
olvidó marcar una casilla Imagine automatizar
la implementación de una nueva aplicación
en su mainframe En lugar de configurar
todo manualmente y
cruzar los dedos, presionas un botón y tu
tubería CICD se encarga del resto Las pruebas, la implementación y el
monitoreo ocurren automáticamente, y recibes notificaciones si algo sale mal,
con tu simpático, ¿verdad? Entrega continua.
La entrega continua es la salsa secreta que permite a los equipos de
DevOps implementar
software más rápido Con la entrega continua, los cambios de
código se prueban
automáticamente y se preparan o liberan a producción. En un pipeline
DevOv bien implementado, cada cambio en el
código se
valida automáticamente y se puede
implementar en producción en cualquier momento En un entorno de
mainframe tradicional, llevar nuevo código a
producción puede llevar semanas o incluso meses
debido a pruebas manuales, aprobaciones y procesos de
implementación complejos Con la entrega continua, automatiza todos los pasos entre escribir código
y desplegarlo, asegurando que su software esté siempre listo para la producción. Por ejemplo,
digamos que estás trabajando en una aplicación de adoquines para
una institución financiera Normalmente,
tendrías que pasar por rigurosas comprobaciones manuales antes de
implementar cualquier actualización. Pero con la entrega continua, puede configurar
pruebas automatizadas para verificar sus códigos, funcionalidad, seguridad y rendimiento cada
vez que realice un cambio. Cuando esté listo, su canalización implementa
automáticamente los cambios El resultado, actualizaciones más rápidas, menos errores y clientes
más felices Cómo ese lúpulo transforma las prácticas
tradicionales de TI. Ahora que comprende los principios
básicos de DevOps, veamos cómo transforma las prácticas
tradicionales de TI, especialmente en entornos mainframe Primero, desde procesos manuales hasta automatizados, más rápidos y menos
propensos a errores. entornos de mainframe tradicionales
dependen en gran medida de la intervención manual, ya sea
implementando aplicaciones manualmente, probando
manualmente el código o monitoreando
manualmente el sistema Esto es lento y
puede generar errores, sobre todo cuando los equipos
están bajo presión. DevOps cambia esto al introducir la automatización
en cada paso Tomemos como ejemplo
las pruebas automatizadas. En un entorno de
mainframe tradicional, después de que los desarrolladores escriban el código, podría llevar días o incluso semanas probar
todo manualmente Con DevOps, puede integrar scripts de
prueba automatizados que verifican inmediatamente el nuevo código busca de errores en el
momento en que se envía. Esto permite una
retroalimentación más rápida y correcciones más rápidas. Dos, mejora de la colaboración
y la comunicación. En un ambiente de silos, es común experimentar una
falta de comunicación entre equipos Los desarrolladores no entienden
las necesidades operativas y las operaciones pueden no entender las complejidades del código Esto lleva a
fricciones y retrasos. DevOps mejora la colaboración al traer a todos a la mesa En una cultura DevOps, tanto el desarrollo como las operaciones trabajan juntos en objetivos compartidos Esto significa que su
equipo de desarrollo de
mainframe y sus equipos de operaciones están trabajando sincronizados, creando un flujo de trabajo más fluido, lanzamientos
más rápidos y menos sorpresas de
última hora Tres bucles de
retroalimentación continua. DevOps fomenta ciclos continuos de
retroalimentación que ayudan a
los equipos a identificar problemas y
optimizar sus procesos Por ejemplo, si falla una
implementación, el sistema proporcionará retroalimentación
inmediata, lo que permitirá al equipo solucionar
el problema rápidamente. Esto contrasta con los métodos
tradicionales
donde los problemas solo pueden salir a la luz durante comprobaciones
manuales o después de retrasos
significativos En un entorno de mainframe, este bucle de retroalimentación puede
ser crucial para detectar problemas de
rendimiento o vulnerabilidades de
seguridad al
principio del proceso,
reducir el tiempo de inactividad y
mejorar la confiabilidad del sistema Las conclusiones clave
de esta lección incluyen DevOps, es
acerca de la colaboración, reunir a los equipos
de desarrollo
y operación para romper los silos y trabajar hacia automatización es la
columna vertebral de DevOps, ayudando a eliminar
errores manuales y agilizar procesos
repetitivos como
pruebas e implementación La entrega continua garantiza que su código esté siempre
listo para funcionar, lo que permite actualizaciones más rápidas y una mejor confiabilidad del sistema. Hagamos una actividad de aprendizaje. Tómese un momento para
pensar en su propio entorno de
mainframe ¿Cuáles son las tareas más
repetitivas que podrían
beneficiarse de la automatización Enumere dos tareas y considere
cómo los principios de DevOps como la colaboración o la automatización podrían ayudar a mejorar
esos procesos Comparta sus respuestas en el
foro de discusión del curso y discutiremos algunos ejemplos del mundo real de cómo DevOps ha transformado los entornos de
mainframe ¿Cuál es el siguiente? Ahora que
hemos cubierto los conceptos básicos de lo que Dvovss y cómo
transforma las prácticas de TI, tal vez se
esté preguntando,
¿dónde encajan los mainframes Después de todo, los mainframes son la columna vertebral de industrias
como las finanzas y la atención médica, pero son un poco diferentes
de los sistemas de TI modernos En la siguiente lección, los
mainframes en el ecosistema de TI moderno
se sumergirán en el papel de los mainframes en el
mundo actual y explorarán en qué se diferencian las operaciones de mainframe
de Prepárese para ver cómo los mainframes siguen siendo el corazón
de las industrias críticas y cómo están evolucionando
con la tecnología moderna.
3. Lección 2: mainframes en el ecosistema de TI moderno: Lección dos, mainframes en
el ecosistema moderno de TI. Bienvenido de nuevo. En
la primera lección, cubrimos los fundamentos
de DevOps, colaboración,
automatización y entrega
continua, y cómo estos principios transforman las prácticas tradicionales de
TI Ahora, vamos a sumergirnos en el corazón de su
experiencia, los mainframes Esta lección le ayudará a
comprender los roles en las industrias
modernas y en qué diferencian
sus operaciones
de los sistemas distribuidos. ¿Listos? Empecemos. Mainframes, las potencias
de las industrias modernas. Cuando pensamos en tecnología
de vanguardia, mainframes podrían no
ser lo primero
que nos viene a la mente.
Pero aquí está el secreto. mainframes
siguen siendo la columna vertebral de muchas industrias críticas, desde procesar millones de transacciones
financieras cada segundo hasta garantizar que los datos de los
pacientes estén seguros, mainframes mantienen las ruedas
girando detrás Mainframes en industrias clave. Los mainframes han existido
durante décadas y no van a ir a ninguna parte pronto.
Echemos un vistazo por qué. Mainframes en finanzas, las transacciones de
pases en
el mundo. Imagínese esto. Cada vez que alguien
desliza una tarjeta de crédito, un mainframe está detrás de escena procesando esas transacciones
en Ya sea que esté comprando
comestibles o comprando un café, la industria financiera
depende de mainframes para manejar millones de transacciones por
segundo de manera confiable Un hecho, 92 de los 100 principales bancos mundiales siguen
confiando en mainframes. ¿Por qué? Porque ningún otro
sistema puede manejar el mismo volumen con el
mismo nivel de confiabilidad. Mainframes en atención médica, datos
seguros de pacientes 24 por siete Ahora imagina que estás
en un hospital. mainframes se utilizan para almacenar y administrar cantidades masivas
de datos de pacientes, registros
médicos,
reclamos de seguros y más En atención médica, la seguridad y el
tiempo de actividad no son negociables. Los mainframes garantizan que los datos de los
pacientes sean accesibles, seguros y nunca se vean comprometidos Con la creciente presión
sobre el sistema de atención médica, mainframes soportan la infraestructura
digital que mantiene las cosas
funcionando sin problemas Mainframes en
comunicaciones de conteo, manteniéndote conectado Cada vez que envías un
mensaje de texto, haces una llamada telefónica o usas datos, un mainframe está procesando esa
comunicación La industria de las comunicaciones utiliza mainframes para administrar datos de
clientes, facturación y operaciones
de red a gran escala Imagina la gran cantidad de personas que usan
celulares simultáneamente. Sin mainframes, la infraestructura de
telecomunicaciones colapsaría
bajo la presión ¿Por qué los mainframes siguen siendo esenciales
en el panorama actual de TI? ¿Por qué las empresas siguen
utilizando mainframes en esta área cloud en esta era de cloud computing
y microservicios Aquí están las tres grandes razones. Uno, confiabilidad y tiempo de actividad. Los mainframes son conocidos por
su confiabilidad legendaria. Algunos sistemas cuentan con
99.999% de tiempo de actividad, es
decir, menos de 5
minutos de Por año. Imagínese ejecutar una plataforma de banca en línea y su sistema esté listo incluso
por unos minutos. Los clientes no estarían
muy contentos, ¿verdad? Los mainframes ofrecen una estabilidad
inigualable, razón por la
cual industrias
como las finanzas y salud confían en ellos con sus aplicaciones más críticas Dos, potencia de procesamiento. Necesidad de crujir números enormes. mainframes siguen siendo las máquinas
más potentes cuando se trata de procesamiento de datos de alto
volumen Pueden manejar millones
de transacciones y cálculos a gran escala
simultáneamente, y lo hacen de manera más rápida y eficiente que los sistemas
distribuidos Esto los hace ideales para procesar tareas como transacciones con tarjeta de
crédito, reclamos de
seguros e
incluso logística compleja. Tres, seguridad. No nos olvidemos de la seguridad. mainframes se construyen con características de seguridad
robustas
desde cero. En industrias donde la
protección de datos es crítica, como la atención médica, el
gobierno y las finanzas, mainframes brindan la
seguridad incorporada necesaria
para proteger contra infracciones y garantizar el
cumplimiento regulaciones como
HIPAA En qué se diferencian las operaciones de mainframe
de los sistemas distribuidos. Ahora que hemos establecido por qué los mainframes son tan importantes, exploremos en qué se diferencian
las operaciones de mainframe de los sistemas distribuidos modernos de los
que a menudo escuchamos Primero,
arquitectura centralizada versus arquitectura
distribuida. Los mainframes se construyen alrededor de
la arquitectura centralizada. Esto significa que todo, los datos, la aplicación, la potencia de
procesamiento se aloja en un sistema grande. Es como una
supercomputadora gigante que maneja todo
en un solo lugar Cuenta con control centralizado. Los mainframes permiten una gestión centralizada
de todas las operaciones, haciéndolas fáciles de
monitorear y mantener Permite la eficiencia. Dado que todo
está en un solo lugar, transferencia de
datos es más rápida y los procesos pueden controlarse
estrechamente. Por otro lado,
los sistemas distribuidos distribuyen datos y procesamiento a través de
múltiples servidores o máquinas, a menudo ubicados en
diferentes lugares. Esto proporciona escalabilidad, pero también introduce complejidad Imagínese tratando de administrar cientos de servidores en
diferentes centros de datos. Suena como una
pesadilla lógica, ¿no? Procesamiento por lotes versus procesamiento en tiempo
real. Los mainframes sobresalen en el procesamiento
por lotes donde grandes volúmenes de transacciones
están involucrados en el proceso Piense en ello como lavar la ropa en lugar de lavar
una
pieza de ropa a la vez y espere
hasta que tenga suficiente ropa sucia para
llenar la lavadora. Esto es perfecto para tareas
como ejecutar nóminas o procesar transacciones con tarjeta de crédito por valor
de una noche . Los sistemas distribuidos, por otro lado, están construidos
para procesamiento en tiempo real. Estos sistemas manejan
las solicitudes a medida que entran, a menudo una a la vez. Si bien esto es excelente para aplicaciones web
dinámicas, no siempre
es ideal para procesamiento de datos de
alto volumen que debe
realizarse en lotes. Tercero, estabilidad
versus flexibilidad. Una de las diferencias clave
entre mainframes y sistemas
distribuidos
es su equilibrio estabilidad y flexibilidad Los mainframes tienen que ver
con la estabilidad. Están diseñados para ejecutar aplicaciones de
misión crítica que no pueden permitirse ningún tiempo de inactividad. Una vez que un sistema está en funcionamiento, normalmente
se optimiza para lograr la máxima estabilidad
y cambios mínimos. Los sistemas distribuidos
ofrecen más flexibilidad, lo que permite a los desarrolladores escalar e implementar nuevos servicios rápidamente. Sin embargo, a menudo sacrifican
cierto nivel de estabilidad debido a la complejidad de administrar muchos
servidores y servicios diferentes. Seguridad incorporada
versus agregada. Los mainframes han incorporado características de seguridad que
se han perfeccionado a lo largo de décadas Desde el cifrado de hardware
hasta el control de acceso, mainframes son seguros por diseño Por el contrario,
los sistemas distribuidos suelen
depender de herramientas de seguridad de terceros para administrar cosas como el cifrado de
datos, firewalls y controles de acceso Esto hace que la seguridad sea
más compleja y más difícil de mantener en entornos
distribuidos. Las conclusiones clave de
esta lección incluyen mainframes son la columna vertebral
de industrias como las finanzas, la
atención médica y las
telecomunicaciones, atención médica y las
telecomunicaciones, manejo de transacciones críticas
y el procesamiento de datos Los mainframes ofrecen y combinan
confiabilidad, potencia de procesamiento y seguridad, lo que
los hace esenciales para operaciones de alto
nivel Las operaciones de mainframe difieren de los sistemas
distribuidos en
términos de arquitectura, capacidades de procesamiento
por lotes, estabilidad y seguridad incorporada Hagamos una actividad de aprendizaje. Piense en la
dependencia de su organización en los mainframes. ¿De qué manera la naturaleza
simpalizada de su
entorno mainframe brinda ventajas sobre los sistemas
distribuidos en términos de confiabilidad
y seguridad Identifique un área
donde la estabilidad de su mainframe sea crítica
para sus operaciones comerciales Comparte tus pensamientos en los foros de
discusión y
exploraremos más
muestras del mundo real en nuestra próxima sesión. ¿Cuál es el siguiente? Ahora tiene una sólida comprensión
de cómo los mainframes encajan en el ecosistema de TI moderno y en qué se diferencian sus operaciones
de los sistemas distribuidos Pero aún puede que te
estés preguntando, ¿cómo
encaja DevOps en todo esto En nuestra siguiente lección,
el caso de devops en mainframes analizará
por qué DevOps es crucial para modernizar los sistemas
heredados y cómo la adaptación de devops puede
brindar una implementación más rápida, una mejor colaboración
y una mayor eficiencia
a su entorno en mainframes analizará
por qué DevOps
es crucial para modernizar los sistemas
heredados
y cómo la adaptación de devops puede
brindar una implementación más rápida,
una mejor colaboración
y una mayor eficiencia
a su entorno de mainframe. No querrás
perderte esto.
4. Lección 3: el caso de DevOps en mainframes: Presente tres, el caso para
se desarrolla en mainframes. Bienvenida de nuevo. En
nuestra última lección, exploramos el papel de mainframes en industrias
como las finanzas, salud y
las telecomunicaciones y por qué siguen siendo tan esenciales
en el panorama actual de TI Ahora es el momento de hablar sobre algo que
probablemente esté en tu mente, DevOps y más específicamente por qué
DevOps es crucial para modernizar tu Aquí es donde
las cosas se ponen emocionantes porque verás cómo los mismos principios,
impulsando
la agilidad en entornos de
nube se
pueden aplicar a los mainframes ¿Listos? Vamos. Por qué DevOps es crucial para
modernizar los sistemas heredados. Vamos a aclarar una cosa. hecho de que un sistema
sea un sistema heredado no significa que esté
desactualizado o sea irrelevante Los mainframes son tan cruciales como
siempre, pero aquí está el problema. La forma en que
los manejamos necesita evolucionar. Entra a Devos. Implementación más rápida,
la necesidad de velocidad. Imagine que está ejecutando una aplicación financiera
crítica en un mainframe. Aparece un bicho. Tradicionalmente, puede
tomar semanas o incluso meses, pasar por todo el
ciclo de encontrar el error, mantener una solución,
probarlo e implementarlo. En el mundo acelerado de hoy, eso no es lo suficientemente rápido Los clientes esperan soluciones inmediatas y si no puede
entregarlas, se enterará de ello. DevOps permite implementaciones
más rápidas al automatizar gran parte
del proceso Las pruebas
automatizadas detectan errores temprano. La integración continua
garantiza que cada cambio de código esté
listo para la producción. La entrega continua significa que puede enviar actualizaciones
cuando lo necesite, no solo durante las ventanas de
lanzamiento programadas. En lugar de estar sentados
esperando los ciclos de aprobación, tus equipos pueden avanzar rápidamente sacar nuevas funciones y
correcciones con confianza. Esta velocidad es lo que
mantiene sus sistemas y su negocio
competitivos. Un ejemplo. Piense en Amazon, un
gigante en el comercio electrónico. A pesar de que no están
usando mainframes, implementan nuevo código cada
11.6 segundos en promedio. Ahora imagina si pudieras aportar incluso una fracción de esa agilidad a tu entorno de mainframe ¿Qué podrías lograr si tu equipo pudiera
publicar actualizaciones a
pedido en lugar de
esperar un procesamiento manual lento? Colaboración,
rompiendo los silos. Si ha trabajado en un
entorno de mainframe por un tiempo, probablemente
haya visto a
estos equipos de desarrollo
y equipos de operaciones
trabajando en silos, a menudo con poca comunicación Los desarrolladores lanzan código
sobre la barda a las operaciones y luego bueno, al caos. Esta mano arriba a menudo
conduce a retrasos, malentendidos y mucho señalar con el dedo
cuando las cosas van DevOps rompe los silos
fomentando la colaboración entre el equipo de desarrollo
y operaciones En lugar de operar como
dos mundos separados, estos equipos trabajan
juntos desde el principio. Esto significa que los desarrolladores tienen una comprensión más clara de
cómo se desempeñará su código en la producción y los equipos de
operaciones son vistos en el proceso antes
reduciendo sorpresas. Aquí es donde ocurrió la magia. Al trabajar juntos,
los equipos pueden resolver problemas antes de que
ocurran en lugar esperar hasta el
día de implementación para darse cuenta de que una determinada fecha codificada va
a meterse con el sistema, equipos de
DevOps abordan
estos problemas por adelantado Es un enfoque más proactivo. Tomemos un ejemplo.
Digamos que estás trabajando en una aplicación crítica para
una gran compañía de seguros. El
equipo de desarrollo está trabajando en una nueva función para agilizar el procesamiento de
reclamos, pero no se dan cuenta que el
cambio de código en particular
ralentizará las interacciones de la
base de datos del sistema. Con DevOps, ambos
equipos trabajan juntos, problemas
potenciales de rendimiento
como este se identifican y resuelven temprano antes de que
se conviertan en problemas de
impacto en el cliente Automatización, liberando
tiempo para la innovación. Ahora,
hablemos de automatización. Si estás cansado de los procesos
manuales, chupa horas de tu
día, esto es para ti. DevOps enfatiza la automatización en cada etapa, pruebas,
implementación, monitoreo Esta automatización libera un
valioso tiempo para sus equipos, permitiéndoles centrarse en la
innovación en lugar de tareas tediosas Por ejemplo, las pruebas automatizadas significan que cada vez que se envía un
nuevo código, se
verifica automáticamente para detectar problemas. Las implementaciones automatizadas
reducen el riesgo de errores que vienen con la intervención
manual monitoreo automatizado le
alerta de problemas en tiempo
real antes de que se
conviertan en incidentes importantes Seamos sinceros, los procesos manuales
son propensos a errores y lentos. La automatización no
solo reduce los errores, acelera
todo el flujo de trabajo, lo que le permite
responder a los problemas más rápido y entregar nuevas
funciones con más frecuencia. Tomemos un ejemplo.
Imagine automatizar la implementación de una
actualización en su mainframe En lugar de pasar por múltiples puertas de aprobación y
esperar las comprobaciones manuales, la actualización se
prueba, implementa y monitorea automáticamente . Si algo sale mal, el sistema activa una alerta e incluso retrocede la
actualización si es necesario. Este nivel de automatización garantiza confiabilidad al tiempo
que permite que su equipo se concentre en tareas más críticas. DevOps alinea los mainframes
con la TI moderna. Uno de los mayores conceptos erróneos
sobre DevOVs es que
es solo para sistemas modernos basados
en la nube Eso no es cierto. De hecho,
los principios de DevOps se pueden aplicar a cualquier sistema,
incluidos los mainframes Al adaptar DevOps a
su entorno de mainframe, alinea sus operaciones
con prácticas modernas de TI, asegurando que sus
sistemas heredados no solo
sobrevivan, sino que están prosperando en el mundo digital
actual Para las organizaciones que
dependen en gran medida de mainframes, incorporar devops a la
mezcla garantiza que no te quedes atrás a medida que evoluciona el resto
del mundo de TI Se trata de asegurarse de que su sistema siga siendo
relevante y competitivo. Un ejemplo, considere
un banco global que ejecuta
sistemas financieros críticos en mainframes Al adoptar DevOps,
pueden reducir tiempos
de
implementación de semanas a horas, asegurando que su sistema
se mantenga seguro, rápido y confiable, como los sistemas distribuidos
modernos, también
operan Beneficios clave de la adopción de DevOps
en el entorno de mainframe. Para recapitular, estos son
los beneficios clave que verá cuando adopte DevOps en su entorno de
mainframe Primero, una implementación más rápida. Con la automatización y la entrega
continua, reducirá los
tiempos de implementación de semanas a horas. Dos, mejorar la colaboración. DevOps fomenta la
colaboración entre equipos de
desarrollo y
operaciones, lo que lleva a menos cuellos de botella
y a Tres, automatización. automatización de
tareas repetitivas libera tiempo, reduce los errores y permite que
su equipo se concentre en innovación o la alineación
con La adopción de DevOps pone
sus operaciones de mainframe en línea con las prácticas modernas de
TI, garantiza relevancia
y competitividad a largo plazo Hagamos actividad de aprendizaje. Piense en los procesos
actuales en su entorno de mainframe ¿Cuáles son las dos áreas
donde la automatización podría tener el mayor impacto en la
velocidad o la colaboración? Identificar un proceso manual
que pueda automatizarse. Considere cómo una mejor
colaboración entre sus equipos de desarrollo y
operaciones aceleraría sus implementaciones. Comparta sus respuestas en el
foro de discusión del curso y
profundizaremos en cómo sus compañeros
están aprovechando DevOps para modernizar ¿Cuál es el siguiente? Ahora que hemos hecho caso para Devos
en entornos mainframe, tal vez se
esté preguntando,
¿cuáles son los desafíos? Claro, Devo suena genial, pero adaptarlo en un
entorno heredado puede ser complicado En nuestra siguiente lección, los desafíos de integrar DevOps
con mainframes, exploraremos los desafíos culturales
y técnicos que podría enfrentar al llevar
DevOps a su También hablaremos sobre cómo superar
la resistencia
al cambio y garantizar que tu
transición sea fluida.
5. Lección 4: desafíos de integrar DevOps con mainframes: Lección cuatro, desafíos de integrar DevOps
con mainframes Bienvenidos de nuevo, todos. Hasta ahora, hemos cubierto los
conceptos básicos de DevOps Es importante para modernizar los entornos de
mainframe
y el beneficio que brinda, como una implementación
más rápida, una mejor colaboración
y una mayor automatización Suena genial, ¿verdad?
Pero seamos honestos, implementar DevOps
siempre es fácil,
especialmente en
entornos heredados como mainframes Hoy, vamos a
ser realistas y hablaremos sobre los desafíos tanto
culturales como técnicos, que vienen con la integración Devops en sus operaciones de
mainframe Por supuesto, también cubriremos
cómo superarlos. Porque después de todo, ningún desafío es demasiado grande cuando
tienes el enfoque correcto. Por qué la integración de Devos puede ser un desafío en el entorno de
mainframe mainframes no son solo algunas reliquias de
TI sentadas en la esquina Son la columna vertebral de las operaciones de misión crítica
para muchas industrias. Pero la realidad es que
a menudo están profundamente arraigados en procesos
heredados que han
existido durante décadas La idea de presentar Devops construida alrededor de la
velocidad, la agilidad y la entrega continua
puede parecer como pedirle a
un corredor de maratón que sprint con un
peso de 20 libras en la espalda Es duro, pero
no es imposible. Desafío cultural, que
siempre lo hemos hecho
así mentalidad. Empecemos con el elefante en la habitación, la resistencia cultural. Los mainframes han
existido desde hace mucho tiempo, y también lo han hecho las personas
que los operan. Lo más probable es que tu equipo esté acostumbrado a cierta
forma de hacer las cosas. Si alguna vez has
escuchado a alguien decir, siempre lo
hemos hecho de esta manera, ya
sabes exactamente a lo que me refiero. Miedo al cambio.
El cambio puede dar miedo, especialmente cuando llevas años
usando los mismos
procesos. El temor de que la automatización pueda
llevar al desplazamiento laboral o que pueda romper la estabilidad
del sistema es real. Silos entre equipos. En muchos entornos de mainframe, los equipos de
desarrollo y operaciones han trabajado en silos durante años Devos les pide que colaboren y compartan
responsabilidades, algo que puede sentirse
incómodo o incluso amenazante con equipos acostumbrados a sus propias formas
de hacer las cosas Complejidad percibida de DevOps. Para muchos, DevOps está asociado con tecnologías nativas de
la nube de vanguardia, y algunos pueden pensar,
esto no se aplica a mainframes o es demasiado
complicado para nuestros Cómo superar la resistencia
cultural, la educación y la formación. La clave para superar el
miedo es el conocimiento, brindando
sesiones de capacitación para enseñar a los equipos sobre los
beneficios de Devos y cómo complementa las operaciones
convencionales y convierte a los escépticos Se trata de demostrar que
Devos no está reemplazando empleos, es potenciarlos.
Muéstralo, no digas. En lugar de hablar de
lo grande que es Devos, demuéstrale al equipo un pequeño éxito Comience con un proyecto piloto, tal vez automatizando un simple proceso
repetitivo y demuestre cómo mejora la eficiencia sin
comprometer Fomentar una cultura colaborativa. Devo se esfuerza en entornos
donde colaboran equipos. Rompe los silos involucrando
tanto a desarrolladores como equipos de
operaciones al
principio de las discusiones, cree equipos multifuncionales que trabajen juntos
desde el principio Un ejemplo. En una gran institución
financiera, el equipo de mainframe
se resistió a la automatización porque
sentían que interrumpiría sus procesos existentes El equipo de operaciones se utilizó para gestionar manualmente
los despliegues con estricto control y
la idea de renunciar a eso fue
recibida con escepticismo No fue hasta que se
dieron cuenta de cómo automatización podía
liberar tiempo para tareas
más estratégicas
sin
quitarle el control que
empezaron a abrazarlo. Desafíos técnicos,
integrando herramientas
modernas con sistemas
heredados. Digamos que tienes a todos a
bordo culturalmente. El siguiente obstáculo es el lado
técnico de las cosas. Los mainframes por diseño son
complejos y altamente especializados. La integración de herramientas modernas de
DevOP en este entorno puede parecer como tratar de encajar una
clavija cuadrada en un agujero redondo Problemas de compatibilidad de herramientas. Muchas herramientas de DevOps
como Jenkins o Ansible se construyen pensando en los entornos
nativos de la nube Conseguir que jueguen bien con mainframes puede ser complicado Scripting y automatización. Los mainframes suelen utilizar lenguajes
únicos y herramientas de
scripting bajas
como Coball y JCL,
mientras que las herramientas de Devos se construyen
alrededor de Python, groovy alrededor de Python Integrar los
entornos de scripting sin introducir errores o ineficiencias
puede ser Dependencias complejas. Las aplicaciones de mainframe
suelen formar parte de un sistema
interconectado más grande Un pequeño cambio en
un área puede tener efectos de
ondulación en
toda la infraestructura. Garantizar que la
automatización de DevOps no introduzca problemas imprevistos
requiere una planificación cuidadosa Cómo superar retos
técnicos. Empieza poco a poco y
genera confianza. En lugar de automatizar
todo a la vez, comience con procesos de bajo riesgo Construya gradualmente sus pruebas de estrategia de
automatización a lo largo del camino para garantizar la compatibilidad entre las herramientas DevOps
y los sistemas mainframe Utilice herramientas híbridas como ZOE. Herramientas como Zoe cierran la
brecha entre los mainframes y las prácticas
modernas de DevOps al proporcionar una interfaz CLI y API
al mainframe, lo que le permite conectar
herramientas como Jenkins y Ansibl Colabore con expertos en
mainframe. Reúna pronto a sus expertos en
mainframe e ingenieros de DevOps para trabajar a
través de obstáculos técnicos Mediante equipos de entrenamiento cruzado, creas un
entorno más fluido donde los
sistemas heredados y modernos pueden prosperar. Un ejemplo, en una compañía de
telecomunicaciones, el equipo de mainframe luchó por integrar
a Jenkins en su pipeline CICD porque los scripts de compilación estaban en Cobo y Jenkins Después de mucha prueba y error, finalmente lo
consiguieron funcionar
al aprovechar Zoe CLI, lo que les permitió interconectar herramientas
modernas de DevOps con Superar la resistencia al
cambio en entornos heredados. El mayor reto de todos puede ser simplemente la
resistencia al cambio. Seamos sinceros, los humanos
son criaturas de hábito y cuando esos hábitos
han funcionado durante décadas, la idea de hacer algo
nuevo puede resultar abrumadora. posible que te encuentres con miembros del equipo Es posible que te encuentres con miembros del equipo
que digan, si no está quebrado, no lo arregles y
son escépticos de cualquier cosa que parezca innovación
innecesaria Aversión al riesgo. Los marcos principales
son de misión crítica. inactividad o los errores en el sistema pueden resultar en enormes pérdidas
financieras. Comprensiblemente, muchos equipos son muy reacios al riesgo cuando se trata introducir nuevas prácticas o automatizar procesos previamente
manuales Mentalidades heredadas. Mucha gente todavía piensa que los
mainframes están separados del mundo de los dev offs,
las nubes y Pueden ver la
adopción de dev offs como una partida radical y no como
una evolución natural Cómo superar la resistencia
al cambio. Empieza con por qué. Es más probable que
las personas acepten el cambio cuando entienden
por qué es necesario. Muestre al equipo los beneficios
potenciales, actualizaciones
más rápidas, menos errores y más tiempo para el trabajo
estratégico. Construye la confianza lentamente. Implemente DevOps por etapas, comience con pequeñas ganancias, tal vez automatice las pruebas o monitoreo antes de abordar las implementaciones a
gran escala A medida que los equipos vean los beneficios, estarán más abiertos a
escalar las prácticas de DevOps Brindar soporte continuo. El cambio no ocurre de la noche a la mañana, brinda
capacitación y soporte continuos para
ayudar a los equipos a sentirse seguros
en los nuevos procesos. Hágales saber que son
parte del viaje, no solo siendo manejados
un nuevo conjunto de reglas. Por ejemplo, como proveedor de
atención médica, el liderazgo de TI
quería introducir prácticas de
DevOps para mejorar
la velocidad de las implementaciones No obstante, el equipo
responsable de los
sistemas mainframe fue resistente, temiendo que la automatización redujera su control
y condujera a errores A través de una cuidadosa gestión del
cambio y comenzando con proyectos de
bajo riesgo, demostraron
que DevOps podría
adoptarse sin
introducir nuevos riesgos, ganando
finalmente la compra de equipo Las conclusiones clave de esta lección incluyen que la resistencia
cultural es a menudo el mayor obstáculo adoptar Devos
en
entornos Superarlo con educación, pequeños triunfos y colaboración. Los desafíos técnicos, como la compatibilidad de
herramientas y las dependencias
complejas, se pueden
resolver iniciando pequeños, utilizando herramientas híbridas y fomentando la colaboración
entre equipos La resistencia al cambio es natural
en un entorno heredado, pero al comenzar con Y y generar confianza a través de
una implementación gradual, los equipos pueden adaptarse a
las nuevas prácticas a lo largo del tiempo. Hagamos una actividad de aprendizaje. Piensa en los retos
en tu propio entorno. Identifique un cambio cultural y un
desafío técnico que su equipo pueda enfrentar al adoptar Divorcio. Comparte una solución que podrías usar para abordar cada desafío en el
foro de discusión del curso. ¿Cuál es el siguiente? Ahora que entiendes los retos y
cómo superarlos, es el momento de ponerte manos a la obra. En nuestro siguiente módulo, comenzaremos con la lección uno, mapeando los flujos de trabajo actuales de
mainframe Veremos cómo analizar sus
procesos manuales existentes, como pruebas, implementaciones y programación de
trabajos, e identificaremos dónde la automatización
puede tener el mayor impacto Prepárese para
profundizar en sus flujos de trabajo y descubra cómo puede comenzar a automatizar la eficiencia de la unidad
6. Lección 1: mapeo de los flujos de trabajo actuales de mainframe: Bienvenido al Módulo dos de modernización de mainframe
con dominio de DevOps Identificar
oportunidades de automatización en operaciones de mainframe En este módulo cubriremos los siguientes flujos de trabajo
actuales de mapeo en su entorno de mainframe Identificar procesos de alto
impacto que son
candidatos perfectos para la automatización, priorizando iniciativas de
automatización basadas en las necesidades del negocio Al final del
módulo,
estará equipado para tomar decisiones
informadas sobre dónde enfocar
sus esfuerzos de automatización
para lograr el máximo impacto. Lección uno, mapear los flujos de trabajo actuales de mainframe.
Bienvenido de nuevo. En el módulo anterior, abordamos algunos de los
desafíos que podría enfrentar al integrar
devops con mainframes, resistencia
cultural, obstáculos
técnicos abordamos algunos de los
desafíos que podría
enfrentar al integrar
devops con mainframes, resistencia
cultural,
obstáculos
técnicos y superar mentalidades heredadas. Ahora que ya tienes una idea
de cuáles son esos desafíos, es hora de ponerte un
poco más de manos a la obra. En esta lección, nos
centraremos en mapear sus flujos de trabajo
actuales de mainframe Este es un
primer paso importante identificar qué procesos
están maduros para la automatización. Después de todo, no puedes mejorar lo que no entiendes
del todo. Profundicemos y
exploremos cómo analizar sus procesos manuales y construir un mapa claro de sus operaciones. Por qué mapear flujos de trabajo
es esencial. Antes de saltar
al meollo arenoso, respondamos una pregunta sencilla ¿Por qué es tan importante el
flujo de trabajo de mapeo? Bueno, imagínate esto. Su entorno de mainframe es
como una máquina bien engrasada, pero las piezas han estado
funcionando durante décadas Todo el mundo sabe qué hacer, pero nadie se detiene a
documentar realmente cómo suceden las cosas. Ahí es donde entramos nosotros. Los flujos de trabajo
de mapeo le ayudan a identificar cómo se hacen las cosas
realmente, no solo cómo
deben hacerse. Dos, identificar cuellos de botella
e ineficiencias. Tres, destacar las tareas manuales
que son candidatos perfectos para la automatización y cuatro procesos
estandarizados. Todos están en la
misma página y
tienes una base para
hacer mejoras. Qué centrarse en las pruebas, las implementaciones y la programación de trabajos Cuando hablamos de mapeo de
flujo en entornos mainframe, hay tres grandes
áreas que
brindarán el mayor
valor cuando se automaticen El primero son las pruebas. Las pruebas manuales pueden
llevar mucho tiempo y ser propensas a errores. Nos fijamos en cómo se puede
automatizar esta tarea. Dos, implementaciones,
Implementación manual de
aplicaciones mainframe. Eso es la década de 1990. La automatización puede agilizar este
proceso y reducir los riesgos. Tres, programación de trabajos. mainframes son potentes cuando se trata de procesamiento por lotes, pero la programación manual de trabajos puede ser ineficiente y propensa a errores Vamos a descomponer cada uno de estos. La búsqueda de tareas manuales. Las pruebas manuales son un
candidato perfecto para la automatización. En muchos entornos de mainframe, los desarrolladores
prueban manualmente su código, lo que puede ser tedioso
y Las pruebas automatizadas no solo
garantizan la consistencia, sino que también liberan tiempo para que tu equipo se concentre en tareas más estratégicas Preguntas para hacer al
mapear flujos de trabajo de prueba. ¿Qué tipos de pruebas
se ejecutan manualmente? Pruebas unitarias,
pruebas de regresión, pruebas funcionales. ¿Con qué frecuencia realizamos esta
prueba y por cuánto tiempo duran? ¿Qué herramientas, si las hay, se
están utilizando para las pruebas? ¿Hay alguna parte del proceso
de prueba que frecuentemente provoque cuellos de
botella Veamos un ejemplo. Imagina que eres responsable mantener una
aplicación cobal para un banco Cada vez que se agrega una nueva
característica, el
equipo de operaciones ejecuta manualmente una serie de pruebas para
garantizar que no se rompa nada. Estas pruebas se realizan
varias veces, tardando horas o incluso
días en completarse. Al automatizar estas pruebas, puede reducir el tiempo
dedicado a tareas repetitivas, garantizar una mayor precisión y sacar sus actualizaciones por
la puerta Despliegues, haciéndola perfecta. Implementar código en un mainframe no siempre es sencillo. A menudo se realiza manualmente involucrando múltiples
pasos y personas, lo que deja espacio
para el error humano. Mapear el proceso de
implementación lo
ayudará a determinar dónde
se gasta más tiempo y
esfuerzo y dónde la automatización
puede salvar el día Preguntas para hacer al
mapear implementaciones. ¿Cómo se mueve el código del
desarrollo a la producción? ¿Qué intervenciones manuales
se requieren? Por ejemplo, ¿aprobaciones, firmas
o scripting manual? ¿Cuánto tiempo lleva el proceso
de principio a fin? ¿Qué pasa cuando
algo sale mal? ¿Cómo manejamos los rollbacks? Por ejemplo, digamos que está
ejecutando un
proceso de nómina por lotes en un mainframe Cada vez que hay
una actualización de código, debe
implementarse manualmente. A menudo a altas horas de la noche cuando
hay menos tráfico, tu equipo pasa horas
triplicando el código para
asegurar que nada se rompa. Al automatizar el proceso de
implementación, reduce los errores y
acelera el tiempo que
lleva incorporar nuevas funciones
a la producción, todo mientras le da a su equipo
más tiempo para centrarse en otras prioridades y llegar a
casa a una hora razonable Programación de trabajos, encontrando
las tareas repetitivas. Los marcos principales sobresalen en el procesamiento
por lotes. Pero si estás
programando trabajos manualmente, estás perdiendo una gran
oportunidad de mejora. La programación de trabajos es repetitiva por naturaleza, perfecta para la automatización Preguntas para hacer al
mapear la programación de trabajos. ¿Qué trabajos se programan
manualmente y con qué frecuencia? ¿Hay alguna dependencia
entre los trabajos? Por ejemplo, el trabajo A debe terminar
antes de que el trabajo B pueda comenzar. ¿Qué pasa si un trabajo falla? ¿Existe un proceso manual
para reiniciarlo? ¿Hay patrones de tareas
repetitivas que
podrían racionalizarse? Un ejemplo, imagina tus procesos de
mainframe, transacciones financieras
diarias de la noche El equipo pasa una
parte de cada día configurando los trabajos para
la noche siguiente, verificando dependencias
e
interviniendo manualmente si algo falla Al mapear estos procesos, puede encontrar
oportunidades para automatizar la programación de
trabajos y monitorear
las fallas automáticamente. Herramientas para mapeo de flujo de trabajo
y documentación. Todo bien. Hemos identificado las áreas clave donde la automatización puede hacer pruebas de impacto, implementaciones y programación de trabajos Pero, ¿cómo documenta y mapea estos procesos de manera efectiva? Veamos algunas
herramientas que pueden ayudar. Primero está el gráfico lúcido o
cualquier herramienta de flujo de trabajo visual. Lucid Chart es una herramienta
fácil de usar que te
permite crear
diagramas visuales de tu flujo de Si eres más
una persona visual, es perfecta para diseñar
cada paso de tus procesos actuales e
identificar cuellos de botella Además, es colaborativo
para que los miembros del equipo puedan proporcionar información.
¿Cómo lo usamos? Primero, cree un
diagrama de flujo de su flujo de trabajo de pruebas, implementación o
programación, luego resalte las tareas manuales
y los puntos de decisión y utilícelos como base para identificar áreas que
podrían automatizarse. Segundo es Zoe CLI o interfaz de línea de
comandos. ZoE es un
framework de código abierto que te
permite interactuar con tu mainframe de
una manera más moderna Puede usarlo para extraer
datos sobre los estados de los trabajos, flujos de trabajo y el rendimiento
del sistema, lo que ayuda a documentar
sus operaciones actuales ¿Cómo lo usamos?
Utilice la CLI de Zoe para extraer datos de
su mainframe, documentando cuánto tiempo
llevan los trabajos e
identificando dónde ocurren llevan los trabajos e
identificando Automatice la tarea repetitiva de línea de
comandos para obtener una mejor imagen de dónde se necesita la intervención
manual Tercero, confluencia o
SharePoint para documentación. Una vez que haya
mapeado sus flujos de trabajo, deberá
documentarlos para su uso futuro. Confluence o SharePoint
son excelentes herramientas para almacenar y compartir documentación dentro de su equipo. ¿Cómo los usamos? Almacenar diagramas de flujo de trabajo y documentación
detallada
sobre procesos manuales. Anime a los miembros del equipo
a colaborar en las actualizaciones o mejoras
de estos flujos de trabajo. Las conclusiones clave
de esta lección incluyen que los
flujos de trabajo de mapeo son cruciales para comprender
dónde
existen los procesos manuales e identificar oportunidades de
automatización Concéntrese en tres
áreas clave: pruebas, implementaciones y programación de trabajos, que a menudo son repetitivas
y requieren mucho tiempo Utilice herramientas como Lucid
Chart, Zoe CLI y Confluence para documentar sus flujos de trabajo e identificar Hagamos una actividad de aprendizaje. Piense en un proceso en
su entorno de mainframe, ya sea pruebas,
implementación o programación de trabajos Mapee los pasos
de ese proceso. ¿Dónde están las tareas manuales? Qué herramientas podrías usar para
ayudar a documentar y
analizar este proceso? Comparte tus pensamientos en el foro de discusión del
curso y exploraremos algunos ejemplos del mundo
real juntos. ¿Qué sigue? Ahora que ha comenzado a
mapear sus flujos de trabajo, es hora de ver dónde
debe enfocar sus esfuerzos de
automatización. En la siguiente lección, la identificación oportunidades de automatización de
alto impacto se
sumergirá en los criterios para elegir
los procesos a automatizar, centrándose en la frecuencia,
la complejidad y el impacto en el negocio.
7. Lección 2: identificación de oportunidades de automatización de alto impacto: Lección dos, identificar oportunidades de automatización de
alto impacto. Bienvenidos de nuevo, todos. Ahora que ha trazado sus flujos de trabajo
actuales, es hora de arremangarse
y profundizar en
el siguiente paso, identificando oportunidades de
automatización de alto impacto. La clave del éxito aquí es elegir los
procesos adecuados para automatizar. No todas las tareas manuales
necesitan automatización. Algunas tareas te darán un retorno de la
inversión mucho mayor que otras. En esta lección,
vamos a explorar los criterios para seleccionar
qué procesos automatizar,
centrándonos en tres grandes factores, la
frecuencia, la propensión a centrándonos en tres grandes factores, la
frecuencia, errores
y la repetitividad También hablaremos sobre
cómo priorizar las iniciativas de
automatización
en función de su impacto en el negocio No te preocupes. Me
aseguraré de rociar algunas muestras del mundo real para que puedas relacionarte con
lo que estamos discutiendo. Por qué priorizar la
automatización es fundamental. Seamos honestos. No se puede
automatizar todo a la vez. Roma no se construyó en un día y su
entorno de mainframe de automatización tampoco lo será Si intentas automatizar
todos los procesos de una sola vez, abrumarás a tu equipo,
gastarás tu presupuesto y probablemente terminarás con más
dolores de cabeza que soluciones La clave aquí es la priorización. Cuando te enfocas en oportunidades de alto
impacto, obtienes el máximo rendimiento por
tu dinero, inversión
más rápido, menos
errores manuales y equipos más felices El truco es saber qué
procesos apuntan primero. Criterios para elegir
procesos a automatizar. Comencemos explorando tres criterios clave para elegir
los procesos a automatizar. Estas son las áreas
donde la automatización
brindará los mayores beneficios y liberará la mayor cantidad de recursos. ¿Listo? Aquí vamos. Frecuencia. ¿Con
qué frecuencia ocurre el proceso? Una de las primeras
preguntas a hacer es, ¿con qué frecuencia ocurre este
proceso? Si un proceso solo
ocurre una vez al año, probablemente no
sea una prioridad
alta para automatización a menos que consuma mucho
tiempo o sea propenso a errores. Sin embargo, si una tarea ocurre todos los días o varias
veces a la semana, esa es una gran señal de alarma que la automatización podría tener
un impacto significativo. Trabajos diarios o semanales. Procesos como ejecutar trabajos por lotes
nocturnos o informes financieros
semanales son los principales candidatos para la automatización Cuanto más a menudo sucede
algo, más tiempo vas
ahorrando automatizándolo. Los procesos mensuales,
incluso los procesos mensuales como la nómina o los informes de fin de mes, valen la
pena considerar para automatización si consumen
un esfuerzo manual significativo. Veamos un ejemplo. Digamos que tu equipo ejecuta trabajos
por lotes nocturnos para procesar transacciones
financieras Cada noche, el equipo de operaciones pasa una hora
configurando el trabajo manualmente, asegurando que todas las dependencias estén en su lugar y monitoreando
las fallas del trabajo Eso son 30 horas al mes
dedicadas a una tarea repetitiva. Automatizar este proceso podría
ahorrar más de 360 horas al año. Ahora esa es una oportunidad de
automatización de alto impacto. Propenso a errores es el proceso
propenso al error humano. A continuación, proneess al error. Si un proceso implica pasos
complejos o
requiere precisión, es un candidato perfecto
para la automatización. Los humanos son geniales, pero
nosotros no somos perfectos. Los procesos manuales suelen ser
donde encajan los errores. Tarea compleja con muchos pasos. Si un proceso tiene múltiples pasos donde se necesita la
intervención humana, especialmente si esos pasos tienen que suceder en
cierto orden, existe un mayor
riesgo de errores. Tareas sensibles al tiempo. procesos que son sensibles al
tiempo como implementar un toque
crítico de seguridad, dejan poco margen para errores. Automatizar esta tarea asegura que se realicen
correctamente y a tiempo Por ejemplo, imagine que está implementando manualmente actualizaciones
de CBL nuestro entorno de producción El proceso consiste en
copiar archivos, ejecutar pruebas, coordinar
con otros equipos y firmar en cada paso. Si alguien se salta un
paso o hace un error tipográfico, las consecuencias podrían ser
serias y automatización de este flujo de trabajo elimina el elemento humano de las partes
más propensas a errores, lo que garantiza que la implementación ocurra sin problemas cada vez La repetitividad es el
proceso altamente repetitivo. Por último, considere cuán
repetitivo es el proceso. Si usted o su equipo
están realizando la misma serie de pasos una y
otra vez, esa es un área privilegiada
para la automatización. La repetición conduce a la fatiga y la fatiga conduce a errores. Por qué no dejar que la automatización se encargue trabajo
litigioso mientras su equipo se enfoca en proyectos más
estratégicos Pruebas manuales repetitivas. Ejecutando el mismo
conjunto de pruebas cada vez que hay un
cambio de código, automatizado. Programación y monitoreo de trabajos, programación
y monitoreo
manual de trabajos todos los días, automatizados. Un ejemplo, su equipo
ejecuta el mismo lote de pruebas cada vez que
se realiza un cambio en su aplicación de
mainframe Es la misma serie de pasos, día tras día. Al automatizar esta prueba, estás liberando horas
de trabajo manual cada semana y reduciendo el riesgo de
perder un caso de prueba crucial Priorizar iniciativas
de automatización basadas en el impacto del negocio Ahora que ya sabes
identificar los mejores
procesos para automatizar, el siguiente paso es
priorizarlos. No todos los esfuerzos de automatización
son iguales. Algunos tendrán un impacto
comercial mucho mayor que otros, y esos son en los que
debes enfocarte primero. Concéntrese en el ahorro de costos. Una de las formas más obvias de
medir el impacto del negocio
es el ahorro de costos. Si automatizar un proceso ahorra a tu equipo una cantidad
significativa de tiempo, eso es una reducción directa de costos En este caso, el tiempo
realmente es dinero. Mira las horas manuales
dedicadas a cada tarea. Estime cuánto tiempo ahorrará la
automatización. Luego, calcule el ahorro
potencial de costos en
función del número de
horas ahorradas por semana, mes o año.
Tomemos un ejemplo. Digamos que su equipo
dedica 10 horas a la
semana probando manualmente las aplicaciones de
mainframe. Al automatizar este proceso, liberas esas 10 horas. Eso es 40 horas al mes
o 480 horas al año, tiempo que se puede dedicar iniciativas
más estratégicas o incluso evitar los costos de horas extras Considera la reducción de riesgos. La automatización no
solo ahorra tiempo. También puede ayudar a reducir el riesgo. Los procesos manuales son
propensos a errores humanos, lo que puede llevar a errores
costosos, tiempo de inactividad
del sistema o problemas de
cumplimiento. Cuando automatiza el proceso, reduce el riesgo de esos errores y su impacto
potencial. Identifique procesos de alto riesgo
donde los errores puedan
provocar tiempo de inactividad, pérdida de
datos o
vulnerabilidades de seguridad. Priorizar la automatización de
estos procesos para reducir riesgos y mejorar la confiabilidad.
Tomemos un ejemplo. Considera una empresa que procesa transacciones
con tarjeta de crédito. Un error en el
proceso de implementación podría causar tiempo de inactividad o un procesamiento incorrecto de las
transacciones lo que provocaría pérdidas financieras
e insatisfacción del cliente automatización de este proceso de
implementación reduce
significativamente
el riesgo de tiempo de inactividad, asegurando que las transacciones se procesen correctamente y a tiempo Maximizar el valor estratégico. La automatización también puede ayudar a
desbloquear valor estratégico al liberar a su equipo para que se concentre en un trabajo de mayor impacto Cuando tu equipo no está
empantanado por tareas repetitivas, tienen más tiempo para
trabajar en innovación, mejoras de
sistemas o proyectos de
mayor valor que impulsen tu negocio Identifique áreas donde la
automatización pueda liberar el tiempo de
su equipo para la innovación o la resolución de
problemas críticos. Concéntrese en proyectos de automatización que se alineen con los objetivos estratégicos de su
empresa. Un ejemplo, un
equipo de mainframe pasa 15 horas semana monitoreando los horarios de trabajo y reiniciando
manualmente Después de automatizar este proceso, liberan esas
horas para enfocarse en
mejorar el rendimiento del sistema y desplegar nuevas funciones, lo que proporciona más
valor al negocio puntos clave de esta lección incluyen centrarse en tareas repetitivas, propensas a
errores y de alta frecuencia tareas repetitivas, propensas a
errores y para maximizar el
impacto de la automatización Priorice
las iniciativas de automatización que brinden ahorros significativos de
costos, reduzcan el riesgo y liberen valor
estratégico Automatizar los procesos correctos
primero lo ayuda a lograr un ROI
más rápido y prepara el escenario para
esfuerzos de automatización más ambiciosos en el futuro. Hagamos una actividad de aprendizaje. Piense en los flujos de trabajo que
mapea en la lección anterior. Identifique una tarea de alta frecuencia, una propensa a errores y una propensa a errores y
una repetitiva que se
beneficiaría de la automatización Clasifíquelos en función del impacto del
negocio. ¿Qué proceso automatizas primero? Comparte tu ranking y razonamiento en el foro de discusión del curso. ¿Qué sigue? Ahora que hemos identificado qué
procesos automatizar, es el momento de evaluar si sus sistemas y equipo están
listos para la automatización. En la siguiente lección, evaluando la preparación de la
automatización, veremos cómo determinar
qué sistemas heredados
son adecuados para automatización y cómo evaluar las brechas de habilidades de
su equipo
para garantizar el éxito.
8. Lección 3: preparación para la automatización: Tres Lección tres, evaluando la preparación para la
automatización. Bienvenida de nuevo. En
nuestra última lección, hablamos sobre cómo identificar oportunidades de automatización de
alto impacto. Esos procesos que
son repetitivos, propensos a
errores y
ocurren con frecuencia Ahora que ya tienes tu lista
de candidatos a la automatización, es hora de responder
una pregunta clave. ¿Estás listo para la automatización? Podrías estar pensando,
claro, que estamos listos. Empecemos a automatizar,
pero aguanta. Al igual que no
saltarías a una piscina sin
saber qué tan profundo es, no
deberías
sumergirte en la automatización sin antes evaluar
tu preparación. En esta lección, cubriremos
cómo determinar cuáles de sus sistemas heredados
son adecuados para automatización y cómo evaluar las brechas de habilidades de
su equipo. Piense en ello como sentar
las bases del éxito porque cuando
sepa para qué está listo, sus iniciativas de automatización mucho más probable que
sus iniciativas de automatización tengan éxito. Por qué es importante evaluar
la preparación para la automatización. Imagínese esto. Le entusiasma comenzar a automatizar sus procesos de prueba
e implementación Recoge el flujo de trabajo, aplica algunas herramientas de DevOps y se bloquea y se quema ¿Por qué? Porque tal vez el sistema no
estaba equipado para la automatización, o tal vez tu equipo no
tenía las habilidades adecuadas para
administrar las nuevas herramientas. La
preparación para la automatización consiste en garantizar que tenga la infraestructura y
las habilidades adecuadas antes de comenzar. Es la diferencia entre prepararse para
el éxito a largo plazo versus caer en la frustración
y los contratiempos Paso uno, determinar
qué procesos
y sistemas heredados son adecuados
para la automatización. No todos los sistemas o procesos son adecuados para la automatización
justo fuera del juego. Los sistemas heredados, en particular, vienen con su propio
conjunto de peculiaridades y complejidades que hacen que la
automatización sea más desafiante ¿Cómo averiguas qué sistemas están
listos para la automatización? Evaluar la estabilidad
de los sistemas heredados. Una de las primeras
cosas a considerar es la estabilidad de
sus sistemas heredados. Si se trata de
un mainframe que es propenso a fallas o tiempos de inactividad
frecuentes, es posible que aún no esté listo para la
automatización La automatización funciona mejor en entornos que son
confiables y estables. Preguntas que debe hacerse, es
confiable el sistema que
desea automatizar o con frecuencia
experimenta tiempo de inactividad? ¿Con qué frecuencia se encuentra con mantenimiento
no planificado o problemas
inesperados? Un ejemplo. Digamos que está
ejecutando una
aplicación de nómina en un mainframe Si este sistema es propenso a
errores o averías frecuentes, la
automatización de la programación de trabajos solo
podría agravar el Primero deberá garantizar la estabilidad del sistema antes de
introducir cualquier automatización. Complejidad del flujo de trabajo. A continuación, eche un vistazo a lo
complejo que es el flujo de trabajo. Los procesos complejos con múltiples dependencias
pueden hacer que la automatización sea más difícil de implementar y más propensa a problemas si
algo sale mal La automatización brilla cuando los procesos son sencillos
y están bien documentados Concéntrese primero en flujos de trabajo
más simples. Preguntas a considerar. ¿El flujo de trabajo tiene
múltiples dependencias que podrían complicar ¿Qué tan bien documentados están los procesos manuales
actuales? Veamos un ejemplo. Si su flujo de trabajo involucra varios equipos
coordinando aprobaciones, traspasos
manuales y scripts
complejos escritos en una mezcla de Cobol, JCL y rex, puede que no sea el mejor punto de partida para la automatización En su lugar, considere
automatizar esferas de
procesos
más pequeñas y más independientes, primero, como ejecutar trabajos por lotes
nocturnos
o probar scripts Compatibilidad de herramientas existentes.
Detengamos las herramientas. Si sus
sistemas heredados no se
integran fácilmente con herramientas de
automatización modernas como Jenkins, Ansible o Zoe, es
una señal de que es posible que primero deba
hacer algunas bases Preguntas que hacer, ¿ nuestros sistemas heredados se integran bien con las herramientas modernas de DevOps ¿Estamos ya usando
herramientas como Zoe CLI o JCL que pueden actuar como puente
entre lo viejo y Por ejemplo, si estás
usando una herramienta como Zoe, que proporciona una interfaz
moderna para interactuar con mainframes, ya
estás en buena
forma para comenzar a automatizar Sin embargo, si su configuración
actual requiere scripts
personalizados solo para
realizar tareas básicas, es posible que deba dedicar
algún tiempo a modernizar sus herramientas antes de
sumergirse en la automatización Paso dos, evaluar la
preparación del equipo y las brechas de habilidades. Ahora que ha evaluado la
preparación de sus sistemas, es hora de
centrar la atención en su equipo. Incluso las mejores
herramientas de automatización no ayudarán si tu equipo no tiene las habilidades o la confianza para
usarlas de manera efectiva. Identificar
habilidades de automatización dentro de tu equipo. Automation introduce nuevas herramientas, nuevos lenguajes de programación
y nuevos flujos de trabajo. ¿Los miembros de tu equipo
tienen las habilidades que necesitan para trabajar con
estas tecnologías? Preguntas que hacer, ¿nuestros
desarrolladores y equipos de operaciones saben cómo usar herramientas de
automatización modernas como Jenkins, Ansible y Zoe ¿Tenemos experiencia con lenguajes de
scripting
como Python, Groovy
o Bash, o estamos
confiando principalmente en lenguajes más antiguos
como Veamos un ejemplo. Si su equipo se
siente cómodo con COBOL, pero tiene poca experiencia
con herramientas más nuevas como Ansibl, posible
que se enfrente a una curva de aprendizaje
pronunciada al introducir Brindar capacitación
y mejorar las habilidades en estas herramientas será
crucial para su éxito Comprender la resistencia
organizacional. Recuerda en el Módulo uno, cuando hablamos de retos
culturales, vale la
pena volver a visitarlo aquí Incluso si tu equipo
tiene las habilidades, es posible
que aún se resista a adoptar automatización si no
entienden completamente su valor o peor si temen que
reemplace los roles. Preguntas para hacer. ¿Hay resistencia al cambio
dentro del equipo? Hemos comunicado claramente los beneficios de
la automatización, como la reducción del trabajo manual, mejora de la eficiencia
y un mayor enfoque en tareas de alto valor. Veamos un ejemplo. En un gran proveedor de atención médica, el equipo de TI
dudaba en automatizar implementación
manual porque temía perder el control
sobre el Después de cierta educación sobre
cómo la automatización podría mejorar la confiabilidad y la libertad del estrés de implementación
nocturno, se
volvieron más abiertos
a adoptar nuevas herramientas. Cerrando las brechas de habilidades a través de la
capacitación y el apoyo. Si has identificado brechas
en tu conjunto de habilidades de equipo, no te preocupes, es
completamente normal. La solución es la
capacitación y el soporte. Proporcionar a su equipo
los recursos que necesitan para aprender nuevas
herramientas y procesos
contribuirá en gran medida a lograr que la
automatización sea exitosa.
Preguntas para hacer. ¿Qué capacitación
necesitamos brindar para que nuestro equipo se sienta cómodo con las
nuevas herramientas de automatización? ¿Cómo podemos apoyar a nuestro equipo
a la curva de aprendizaje, asegurando que se sientan seguros en la gestión de los nuevos procesos? Por ejemplo, en una institución
financiera, el equipo de operaciones recibió
capacitación de Jenkins, incluyó talleres prácticos y tutoría de ingenieros de DevOps más
experimentados Este enfoque
les ayudó a realizar
una transición gradual a la gestión de implementaciones
automatizadas, mejorando tanto la confianza
del
equipo la confiabilidad
de sus procesos Las conclusiones clave
de esta lección incluyen que la estabilidad del sistema es crucial para el éxito de la automatización Comience con sistemas estables y
confiables. Concéntrese primero en
flujos de trabajo más simples y
bien documentados antes de pasar
a procesos más complejos. Evalúe las brechas de
habilidades de su equipo y brinde capacitación y apoyo
para cerrar esas brechas. Abordar cualquier resistencia cultural a la automatización educando al equipo sobre sus beneficios y ofreciendo tranquilidad
sobre su papel Hagamos una actividad de aprendizaje. Piense en sus
sistemas y equipo actuales. Identificar un
proceso heredado que sea adecuado para la automatización en función de su
estabilidad y simplicidad. Evalúa tu habilidad de equipo. ¿Existe una brecha entre su experiencia actual y lo que se requiere para la automatización? Comparta sus pensamientos en el foro de discusión del
curso, y discutamos cómo
cerrar las brechas. ¿Cuál es el siguiente? Ahora que ya sabe cómo evaluar su preparación
para la automatización, es hora de ver cómo se une
todo
en el mundo real. En la siguiente lección, un estudio, iniciativas
exitosas de
automatización de mainframe, analizamos ejemplos reales
de empresas que han automatizado con éxito
sus operaciones de mainframe Aprenderás de sus
experiencias y descubrirás lecciones
clave que pueden ayudarte a guiar tu propio viaje de
automatización.
9. Lección 4: estudio de caso: iniciativas exitosas de automatización de mainframes: Lección cuatro, Estudio del gusto, iniciativas
exitosas de
automatización de mainframe Bienvenidos de nuevo, todos. Hasta ahora, hemos explorado cómo identificar oportunidades de
automatización, cómo priorizarlas y cómo evaluar si sus sistemas y equipos
están listos para la automatización Ahora es el momento de
dar un paso atrás y ver cómo ha sido esto
para otras organizaciones. En la lección de hoy,
vamos a ver ejemplos del mundo
real de empresas que han automatizado
con éxito
sus operaciones de mainframe Al aprender de sus viajes, tanto de
los éxitos como de los desafíos, obtendrá
información valiosa que puede guiar sus propias iniciativas de
automatización. Profundicemos en los estudios de
caso y veamos qué lecciones
podemos sacar. Estudio de caso uno, un
viaje global de los bancos para automatizar las implementaciones de
COBOL En primer lugar,
hablemos de uno de los
mayores desafíos para muchas organizaciones que ejecutan
mainframes, las implementaciones de Cobal. Este banco global
ha estado ejecutando aplicaciones financieras
críticas en mainframes durante décadas, pero su
proceso de implementación fue manual, lento y propenso a errores ¿Eso le suena
familiar a alguien? El problema, las implementaciones manuales de
cobal tardaron horas y a menudo
ocurrieron a altas horas de la noche para minimizar el impacto del cliente Había múltiples
puertas de aprobación y cada paso requería
intervención manual desde copiar archivos hasta ejecutar pruebas. El riesgo de
error humano era alto y los procedimientos de
reversión
eran complicados si algo salía mal Dislution el banco
decidió introducir Jenkins como su herramienta de canalización
CICD para automatizar Empezaron pequeños, automatizando
solo la fase de pruebas. Jenkins ejecutaría automáticamente prueba de
regresión cada vez que se empujaba un
nuevo cambio de código Una vez que el equipo estuvo cómodo, ampliaron la automatización para incluir construcciones e implementaciones, lo que permitió a Jenkins manejar todo
el proceso de implementación Con la ayuda de Zoe CLI, integraron Jenkins con
su entorno de mainframe, lo que permitió una interacción perfecta
entre sistemas nuevos y heredados entre sistemas nuevos y Los resultados, los tiempos de implementación se redujeron de
horas a minutos. La tasa de error bajó
drásticamente ya Jenkins aseguró que todos los pasos se
ejecutaran de manera consistente El equipo ya no
tuvo que quedarse hasta tarde para
supervisar manualmente el despliegue, lo que significó empleados más felices y un mejor equilibrio entre la vida laboral y la vida Estudio de caso dos, una iniciativa de
programación automatizada de trabajos de Telecom Giants. Veamos otro ejemplo de industria
de las telecomunicaciones. Esta compañía estaba lidiando
con enormes volúmenes de datos de clientes y su procesamiento
nocturno de trabajos por lotes fue un gran cuello de botella El proceso de programación fue manual
y mano de obra intensiva y cualquier falla en la
cadena provocó retrasos
en los procesos de facturación y atención al
cliente. El problema, el
equipo tuvo que
programar y monitorear manualmente cientos
de trabajos por lotes cada noche. Si un trabajo fallaba, a menudo pasaba desapercibido hasta
la mañana siguiente causando un efecto de onda que retrasaba trabajos
intermedios y
afectaba la facturación de los clientes La recuperación de estas fallas requirió intervención manual, lo que provocó aún más retrasos
y clientes frustrados. La solución, la compañía decidió implementar
BMC Control, una herramienta de programación
y monitoreo de trabajos que podría automatizar todo
el proceso Control se configuró para programar y
ejecutar
automáticamente el trabajo nocturno por lotes en
función de criterios predefinidos Incluía monitoreo en tiempo real y detección automática de fallas, lo que significa que si falla un trabajo, el sistema activaría alertas e intentaría automáticamente volver
a ejecutar el trabajo. El equipo recibió capacitación en la nueva herramienta y la colaboración
interfuncional entre TI y operaciones
ayudó a garantizar una adopción sin problemas. Los resultados, fallas de trabajo fueron capturados y
resueltos en tiempo real, reduciendo los retrasos y mejorando el tiempo de actividad
general del sistema La intervención manual
se redujo en 80%, lo que permitió que el equipo se enfocara en tareas
más estratégicas que en la lucha contra incendios. satisfacción del cliente
aumentó debido a la mayor confiabilidad de los procesos de facturación y la eficiencia
general se disparó Un estudio tres, un proveedor de
atención médica
probando el éxito de la automatización. En la industria de la salud, la precisión
de los datos y el
tiempo de actividad del sistema son críticos Este proveedor de atención médica tenía un complejo sistema mainframe
que ejecutaba varias aplicaciones de
datos de pacientes Su
proceso de pruebas era en gran parte manual y cada vez
que hacían una actualización, el equipo pasaba días realizando pruebas para asegurarse de que
no se rompiera nada. El proceso fue lento
y los errores a veces deslizan causando problemas
con el reporte de datos de los pacientes. El problema, las pruebas manuales eran
un proceso que consumía mucho tiempo a menudo tardando varios
días en completarse. El riesgo de
error humano significó que ocasionalmente los insectos
lo hacían en producción, provocando retrasos en el
procesamiento de datos de pacientes y reclamos de seguros. El equipo de pruebas estaba sobrecargado de trabajo, dedicando más tiempo a tareas
repetitivas y menos estratégicas.
La solución. El
proveedor de atención médica implementó código
IBM Urban para automatizar
el proceso de pruebas. El código urbano les permitió
automatizar pruebas unitarias, pruebas de
integración
y pruebas de regresión, asegurando que cada actualización fuera completamente
evetada antes de comenzar a Pudieron configurar notificaciones
automatizadas
si alguna prueba fallaba, lo que permitió al equipo reaccionar
rápidamente y solucionar problemas. Pudieron realizar pruebas continuamente incluso
durante las horas libres, asegurando que las pruebas no hicieran un
cuello de botella Los resultados, el tiempo de pruebas se
redujo de días a horas, lo que permitió
al equipo impulsar las actualizaciones más rápido y con
mayor confianza. El número de errores
que llegan a la producción disminuyó significativamente mejorando la confiabilidad
del sistema. El equipo de pruebas
pudo cambiar el
enfoque hacia tareas de mayor valor agregado, mejorando el rendimiento general
del sistema. Lecciones clave aprendidas de estos estudios de caso del mundo
real. Como hemos visto en
estos ejemplos, la
automatización de las operaciones de mainframe puede ofrecer algunos beneficios serios, pero requiere una
planificación y ejecución cuidadosas Estas son las
lecciones clave que podemos
sacar de estas iniciativas
del mundo real. Uno, empezar a pequeña escala. Comience automatizando una parte
del proceso como pruebas
y expanda desde allí No intentes automatizar
todo a la vez, o podrías terminar abrumado Integre herramientas heredadas
y modernas. Herramientas como ZoE Control A y Urban code pueden
actuar como puentes entre sus sistemas mainframe
y las herramientas DevOps modernas No dudes en utilizarlos. Tres, entrena y
empodera a tu equipo. La automatización exitosa no se
trata solo de tecnología,
se trata de personas. Asegúrese de que su equipo esté capacitado y confiado
con las nuevas herramientas. O el monitoreo en tiempo real es clave. La automatización sin monitoreo
es como volar a ciegas. Las herramientas que proporcionan alertas en tiempo
real y respuestas
automatizadas te
ayudan a detectar y solucionar problemas antes de que
afecten a los clientes. Hagamos una actividad de aprendizaje. Reflexiona sobre los estudios de caso
que acabamos de revisar. Identifica un proceso en tu propia organización que
creas que podría
beneficiarse de la automatización. ¿Es un despliegue de adoquines, un
proceso de programación de trabajos, pruebas? Comparte tu ejemplo en
el foro de discusión y explica cómo la automatización
podría mejorar la eficiencia, reducir errores y liberar tiempo de
tu equipo para un trabajo
más estratégico. ¿Qué sigue? Ahora que ya has
visto lo que es posible, es hora de ponerte manos a la obra con
las herramientas que hacen que la
automatización suceda. En el siguiente módulo, nos
sumergiremos en las herramientas y
tecnologías específicas que puede utilizar para automatizar sus operaciones de
mainframe Desde Jemkins hasta Zoe y Control, cubriremos cómo cada herramienta encaja en el panorama de DevOps
10. Lección 1: introducción a las herramientas de automatización para mainframes: Módulo tres, herramientas y tecnologías para la automatización de
mainframe En el Módulo tres, aprenderás
sobre las herramientas clave de automatización para mainframes y cómo cada herramienta encaja en el panorama de Devos y
automatización Al final de este módulo, sabrá elegir las herramientas adecuadas para automatizar
las operaciones de
su mainframe Lección uno, introducción a las herramientas de
automatización para mainframes Bienvenido al Módulo tres. Hasta ahora, hemos hablado sobre el por qué
y el qué de la automatización, por qué es importante y qué procesos
debes enfocarte. Ahora es el momento de ponerse práctico
y explorar el cómo. En esta lección,
vamos a presentar las herramientas clave que
le ayudarán a automatizar sus operaciones de
mainframe Ya sea que esté implementando aplicaciones
cobal, ejecutando tareas o
programando trabajos por lotes Hay herramientas que
pueden manejarlo todo. Hoy cubriremos Jenkins,
Ansible Zoe, IBM, Urban code y BMC Control M
y le mostraremos cómo encaja
cada uno en el panorama de DevOps Aún no necesitas ser
un experto en herramientas, pero al final de esta lección, tendrás un fuerte
sentido de qué herramientas hacen qué y estarás listo para
comenzar a implementarlas. Empecemos.
¿Por qué las herramientas de automatización son esenciales para las operaciones de
mainframe mainframes son la columna vertebral de las industrias
críticas, desde la
banca hasta la atención médica, pero las operaciones tradicionales de
mainframe pueden ser lentas, manuales y complejas Ingrese las herramientas de automatización. Están aquí para
simplificar sus flujos de trabajo, reducir los errores humanos y
acelerar los ciclos de entrega. Estas herramientas le permiten
automatizar tareas repetitivas como pruebas, implementación y programación de trabajos Integre los sistemas mainframe
con prácticas modernas de debo, aportando agilidad a su entorno
heredado, y monitoree y responda
a los problemas en tiempo real,
mejorando el tiempo de actividad
y la confiabilidad Ahora, analicemos
las herramientas clave con las que
trabajarás. Jenkins, la herramienta GT para CICD. Comencemos las cosas
con Jenkins. Probablemente ya hayas
oído hablar de él, y hay una buena
razón para ello. Jenkins es el estándar de la
industria para integración
continua de distribución
continua o CICD ¿Qué hace Jenkins? Jenkins automatiza todo el pipeline de implementación de pruebas de
compilación, convirtiéndolo en un
jugador clave en Para mainframes, Jenkins puede
automatizar implementaciones de Cobalt, BL one
o código ensamblador, implementaciones de Cobalt, BL one
o código ensamblador igual que maneja las modernas Con plugins e integración
para herramientas como Zoe CLI, Jenkins puede interactuar con sistemas
mainframe tan fácilmente
como lo hace con sistemas
mainframe tan fácilmente
como lo hace Tomemos un ejemplo.
Imagina que tu equipo está desplegando una actualización de cobol En lugar de
construir, probar
e implementar manualmente el código, Jenkins puede automatizar cada
paso en la canalización Los desarrolladores cometen código,
Jenkins lo construye, ejecuta pruebas automatizadas
y lo implementa
sin que nadie tenga que
intervenir manualmente Automatizar la configuración
y aprovisionamiento. A continuación,
hablemos de responsableable, que es particularmente
útil para automatizar gestión de la
configuración y En otras palabras, responsables,
asegúrese de que sus sistemas
estén configurados exactamente de la manera en que deberían estar
automáticamente exactamente de la manera en que deberían estar
automáticamente. ¿Qué es lo que
responde? Responsible
le permite automatizar tareas
repetitivas como la configuración de entornos,
la configuración sistemas y
la implementación de aplicaciones el caso de los mainframes, los responsableables pueden automatizar los cambios de
configuración, asegurándose de que su entorno
se mantenga constante Utiliza simples
archivos Yamal llamados playbooks para definir tareas de automatización que facilitan la
escritura y el mantenimiento Un ejemplo, digamos que estás implementando
una nueva aplicación en múltiples entornos, cada uno de los cuales tiene configuraciones ligeramente
diferentes. En lugar de
configurar manualmente cada entorno, puede crear un libro de jugadas con
respuesta que configure todos los
entornos de manera idéntica, asegurando Zoe, acortando la brecha entre mainframes
y Ahora, profundicemos en Zoe, que está
diseñado específicamente para
ayudar a modernizar los entornos de
mainframe Zoe es un
framework de código abierto que proporciona una interfaz moderna para interactuar con mainframes, facilitando su
integración con herramientas como Jenkins,
Ansible ¿Qué hace Zoe? Zoe CLI le permite interactuar con
mainframes utilizando herramientas familiares de línea de
comandos, lo
que facilita a mainframes utilizando herramientas familiares de línea de
comandos, los ingenieros de
DevOps que pueden no estar familiarizados con lenguajes de
mainframe Las API de Zoe le permiten integrar mainframes con aplicaciones
modernas y entornos en la nube Actúa como puente
entre el viejo mundo de los mainframes y el
nuevo mundo de Devos Por ejemplo, imagina que
tu equipo está trabajando tanto en
aplicaciones nativas de Cloud como en sistemas mainframe Al usar Zoe CLI, sus ingenieros pueden administrar flujos de trabajo de
mainframe usando los mismos comandos que utilizan para sus proyectos en la
nube, agilizando procesos
y IBM Urban code, orquestando implementaciones de
mainframe. A continuación, tenemos IBM
Urban code que se especializa en automatización de
implementación y lanzamiento de orquestación. Es especialmente útil
cuando necesita administrar implementaciones
complejas que abarcan múltiples sistemas,
incluidos mainframes ¿Qué hace IBM Urban code? El código urbano automatiza los procesos de
implementación, asegurando que el nuevo
código se despliega producción sin intervención
manual Admite entornos distribuidos
y mainframe, lo
que lo hace ideal para infraestructuras
híbridas El código urbano también proporciona capacidades
de reversión. Entonces, si algo sale mal, puedes volver fácilmente a
su estado estable anterior Un ejemplo, si estás
implementando una actualización que afecta tanto a
tu sistema
mainframe tus aplicaciones
basadas en la nube, Urban code puede orquestar toda
la implementación, asegurando que
todo suceda en el orden correcto con el
mínimo riesgo de fallas BMC Control M, automatizando la
programación y monitoreo de trabajos. Por último, pero no menos importante, hablemos de BMC Control M, una herramienta que sobresale en programación de
trabajos y la automatización del
flujo Si su entorno de mainframe
ejecuta muchos trabajos por lotes, especialmente aquellos que son
críticos para sus operaciones, control M cambia las reglas del juego ¿Qué hace BMC Control M? Control M automatiza
la programación y ejecución de trabajos por lotes
en su mainframe Proporciona monitoreo en
tiempo real, para que sepa exactamente
lo que sucede con cada trabajo y puede
resolver rápidamente cualquier problema que surja. Control M se integra con el entorno de TI
moderno, lo que le permite administrar
sus trabajos de mainframe
junto con sus trabajos en la nube y del sistema
distribuido Un ejemplo, digamos que administras un trabajo nocturno por lotes que procesa transacciones
financieras Con Control M, puedes programar este trabajo para que se
ejecute automáticamente, monitorearlo en tiempo real y ser notificado si
algo sale mal. Si un trabajo falla, Control
M puede
probarlo automáticamente o activar una alerta, lo que
garantiza un tiempo de inactividad mínimo. Cómo estas herramientas encajan en el panorama de DevOps y
automatización En este punto, podrías
estar pensando, Bien, estas herramientas suenan muy bien, pero ¿cómo encajan?
Vamos a desglosarlo. Jenkins maneja
la canalización CICD, asegurando que el código se construya,
pruebe e implemente
automáticamente Ansibl administra la configuración de su
sistema, asegurándose de que cada entorno
esté configurado de manera consistente ZoE proporciona una interfaz
moderna para conectar mainframes con el resto de su cadena de herramientas DevOps IBM Urban code orquesta implementaciones
complejas, asegurándose de que
ocurran sin problemas
tanto en entornos mainframe como PMC Control M automatiza la programación y monitoreo
de trabajos críticos por lotes Cada una de estas herramientas juega un papel
único, pero juntas, forman una estrategia de
automatización integral para su entorno de mainframe Los puntos clave
de esta lección incluyen Jem kins es su
herramienta de acceso para CICD,
automatizando construcciones, pruebas e implementaciones tanto para mainframe como para sistemas distribuidos. Ansibl ayuda con la administración de
la configuración, asegurando la consistencia
en todos los entornos. Zoe actúa como un puente entre mainframes y herramientas
modernas de DevOps, lo
que facilita gestión de sistemas heredados
con IBM Urban code es ideal para gestionar implementaciones complejas
en entornos híbridos. BMC Control sobresale en la programación de
trabajos y monitoreo en tiempo
real, asegurando que sus trabajos por lotes se
ejecuten sin problemas y Hagamos actividad de aprendizaje. Elija una de las herramientas
que hemos discutido Jenkins, Ansible Zoe,
Código urbano Reflexione sobre cómo la
herramienta podría mejorar un proceso manual actual
en su organización. Por ejemplo,
automatizar implementaciones o administrar configuraciones
o programar trabajos Comparte tus pensamientos en
el foro de discusión y explica por qué crees que esta herramienta sería una
buena opción para tu equipo. ¿Cuál es el siguiente? Ahora que tienes una sólida comprensión
de las herramientas disponibles, es hora de profundizar más. En nuestra siguiente lección,
exploraremos Jenkins y cómo configurarlo para integración
continua
y la entrega continua o CICD en entornos mainframe
11. Lección 2: Jenkins para CI/CD en mainframes: Lección dos, Jenkins para
CICD en mainframes. Bienvenido a la Lección
Dos del Módulo Tres. Si te has
sentido un poco
excluido de toda la revolución
CICD, porque ella trabajó
con mainframes, lección de
hoy te va a mostrar cómo
puedes llevar
esa misma eficiencia, velocidad y automatización a
tus operaciones de mainframe Nos vamos a centrar en Jenkins, la herramienta más utilizada para integración
continua y entrega
continua o CICD,
y específicamente, cómo se puede configurar para funcionar con
bases de código de mainframe como Cobol Lo sé, mainframes y CICD pueden sonar como dos mundos
completamente diferentes, pero créeme, no lo son Al final de esta lección, verá cómo Jenkins puede optimizar sus flujos de trabajo de
mainframe, igual que lo hace para el entorno nativo de
Cloud Como siempre,
incluiré muchos ejemplos del mundo
real para
mostrarte exactamente cómo funciona esto. Vamos a sumergirnos. Por qué CICD
es importante para mainframes Antes de entrar en la configuración
técnica de Jenkins, veamos rápidamente por qué CICD es importante
para Tradicionalmente,
el desarrollo y
las operaciones de mainframe han seguido
un
modelo similar a una cascada donde el código se mueve a través de
largas etapas manuales de desarrollo, pruebas
e implementación Esto lleva a ciclos de
liberación más largos, tasas de error
más altas y
mucho trabajo manual. Con Jenkins y CICD, automatización reduce el
riesgo de error humano Las versiones más
rápidas significan una entrega más rápida de funciones y actualizaciones. Puede detectar errores antes mediante pruebas
automáticas justo
después de que se haya cometido el código. Los sistemas mainframe y
distribuidos se
pueden administrar dentro de
la misma canalización, rompiendo
finalmente esos silos Ya sea que esté implementando aplicaciones
cobile o integrando su mainframe
con servicios en la nube, CICD aporta agilidad y
confiabilidad a Paso uno, configurar
Jenkins para CICD de mainframe. primero es lo primero,
si aún no tienes configuración de Jenkins, es
relativamente sencillo Jenkins es de código abierto y se
puede instalar en
diversas plataformas, incluyendo Linux,
Windows y macOS Como estamos trabajando en un entorno de
mainframe, lo más probable es que
instalemos Jenkins en un servidor Linux o Windows y lo
configuraremos para interactuar
con sus sistemas mainframe Para instalar Jenkins, descarga Jenkins desde el sitio web
oficial, que es Jenkins Siga la
guía de instalación para su plataforma. Una vez instalado, accederás a Jenkins a través de una interfaz web en HTTP CenLaas Local
Host Cullen Un ejemplo, digamos que tu empresa ha estado
usando Jenkins para aplicaciones basadas en
la nube
y ahora
quieres integrarla con
tus operaciones de mainframe Instalaría Jenkins en un servidor dedicado,
Linux o Windows, y luego comenzaría a
configurarlo para comunicarse con los sistemas mainframe
usando plugins y scripts Ahora que Jenkins está instalado, pasemos a
configurarlo para mainframe
específicos del ICB De inmediato, Jenkins no tiene soporte para
mainframe incorporado, pero hay algunos complementos
excelentes que hacen posible la integración Dos plugins clave que
quieres instalar son Jenkins Pipeline plugin Esto le permite crear scripts de
canalización para
automatizar sus flujos de trabajo, desde construir el código
hasta probarlo e
implementarlo y el complemento Zoe CLI Este complemento permite
a Jenkins interactuar con conjuntos de datos de
mainframe, trabajos y más usando Zoe CLI Es crucial para unir herramientas DevOps
modernas y entornos
mainframe Una vez que instale estos complementos, configurará el script de
canalización para construir e implementar
su código de mainframe Para aplicaciones cobal, esto
podría implicar llamar a JCL o scripts de lenguaje de control de
trabajo o enviar trabajos de mainframe
directamente desde Jenkins También puede configurar pruebas
unitarias y pruebas de
regresión para que
se ejecuten automáticamente después de cada
commit. Tomemos un ejemplo. Imagine que está trabajando
con una aplicación Cobal que necesita
implementarse en producción todos los meses En lugar de hacerlo manualmente, enviar trabajos, ejecutar pruebas y esperar comentarios, puedes configurar Jenkins
para automatizar esto La canalización podría
incluir etapas para construir el código,
ejecutar pruebas unitarias, ejecutar trabajos por lotes
y luego finalmente
implementar el código, todo
con un clic de un botón. Paso dos, construir e integrar bases de
código de mainframe con Jenkins Aquí, automatizamos
el proceso de construcción. Ahora, hablemos de construir código de
mainframe en Jenkins. Al igual que Jenkins
automatiza facturas para aplicaciones Java o Python, puede automatizar el proceso de
compilación para Cobol, PL one u otros lenguajes de
mainframe Deberá configurar
su canalización de Jenkins
para interactuar con
su sistema de compilación, lo que podría implicar compilar programas
CBL o
empaquetarlos A continuación, se muestra un ejemplo sobre
cómo podría ser la
etapa de compilación en un script de
canalización de Jenkins Aquí está el ejemplo completo. Este ejemplo usa Zoe CLI
para cargar código fuente a conjunto de datos de mainframe
y luego envía
un trabajo JCL para compilar A continuación, hacemos las pruebas y la integración
continua. Una vez que la compilación esté automatizada, querrá introducir pruebas
automatizadas
en su canalización. Esto podría implicar pruebas unitarias, probar pequeños trozos de código para asegurar que
funcionen como se esperaba. Pruebas de integración, asegurándose de que los diferentes componentes de sus aplicaciones de mainframe funcionen juntos y pruebas de regresión, asegurando que los nuevos cambios no hayan roto nada en
el código existente Puede configurar
Jenkins para que ejecute esta prueba automáticamente cada vez que se comete
nuevo código, asegurando que los errores
se detecten temprano Un ejemplo, digamos que
tu aplicación cobal tiene mucha lógica
crítica empresarial que no puede darse el lujo de romperse Al integrar
pruebas automatizadas en Jenkins, puede detectar problemas antes de
que lleguen a la producción Jenkins compilará
automáticamente el código, ejecutará pruebas unitarias y generará informes de prueba
para que su equipo los revise, todo antes de que alguien
revise manualmente el código Paso tres, implementación aplicaciones de
mainframe
con Jenkins La etapa final en su
pipeline de CICD es el despliegue. Aquí es donde Jenkins
realmente brilla. Puede implementar automáticamente código de
mainframe en entornos de producción
o staging, reduciendo
drásticamente la cantidad
de trabajo manual involucrado Automatización de despliegues de Cobol
PLO. Usando una combinación de
Zoe CLI y JCL Scripts, Jenkins puede implementar sus aplicaciones Cobol Puede configurar la canalización para enviar
trabajos de mainframe que manejen la implementación e incluso
configurar procedimientos de reversión en
caso de que algo salga mal Aquí hay un ejemplo
de cómo podría
configurar una
etapa de implementación en Jenkins Verificaciones
y monitoreo posteriores al despliegue. Una vez que se completa la implementación, Jenkins se puede configurar para
ejecutar comprobaciones posteriores a la implementación Estas comprobaciones pueden incluir validar que la
aplicación se esté ejecutando como se esperaba o incluso activar alertas de monitoreo si
algo sale mal Un ejemplo, una institución
financiera podría usar Jenkins para implementar actualizaciones
mensuales de CBL Jenkins envía los trabajos JCL
necesarios para implementar el código
a producción, ejecutar pruebas posteriores a la implementación para garantizar que todo esté funcionando y notificar al equipo si
hay algún problema Si se detecta una falla, Jenkins puede incluso hacer retroceder
la implementación automáticamente Los puntos clave de
esta lección incluyen Jenkins es una poderosa herramienta para llevar CICD a entornos de
mainframe,
automatizando todo, desde compilaciones
hasta pruebas e Jenkins es una poderosa herramienta para
llevar CICD a entornos de
mainframe,
automatizando todo,
desde compilaciones
hasta pruebas e implementaciones. Puede integrar Jenkins
con su mainframe usando Zoe CLI y
Jenkins Plugins,
lo que le permite enviar trabajos, lo que le permite enviar trabajos, administrar conjuntos de datos e implementar aplicaciones
Cobol Las pruebas automatizadas como pruebas unitarias, integración o de
regresión garantizan que los errores se detecten temprano, mejorando la confiabilidad
de sus implementaciones. Las comprobaciones posteriores a la implementación y la
supervisión ayudan a garantizar que las aplicaciones de mainframe se ejecuten sin problemas después de cada versión Hagamos una actividad de aprendizaje. Configure una canalización simple de
Jenkins que cargue un archivo a un
dataset de mainframe usando Intente configurar la
canalización para
enviar automáticamente un trabajo JCL que
compila un programa cobalto Comparte tu experiencia en el foro de discusión del
curso, incluyendo cualquier desafío o avance
que hayas encontrado ¿Qué sigue? Ahora
que ya sabes cómo configurar Jenkins
para mainframes CICD, hora de explorar En la siguiente lección,
cubriremos cómo usar Sibyl para automatizar implementaciones
de infraestructura y aplicaciones
12. Lección 3: Ansible para la automatización de mainframes: Lección tres, ansibl para automatización de mainframe.
Bienvenida de nuevo. En la lección anterior,
exploramos cómo Jenkins
puede revolucionar sus operaciones de mainframe
automatizando construcciones Ahora, nos estamos
sumergiendo en una herramienta que juega un papel crucial en la automatización de
la infraestructura. Sibl. Si alguna vez ha
deseado que configurar y mantener
entornos de mainframe sea tan simple como
lo es en la nube, entonces responder es
la herramienta Hoy, exploraremos cómo usar
responsables para automatizar la infraestructura y implementaciones
de
aplicaciones También analizaremos
cómo configurar playbooks
responsables para entornos
mainframe, haciendo que la
administración de su infraestructura sea más fácil, rápida Vamos a saltar a la derecha
y no te preocupes. Te guiaré
paso a paso con algunos ejemplos del mundo real
para mantener las cosas prácticas. ¿Por qué responder es un cambio de juego para
la automatización de mainframe Cuando escuche la
palabra automatización, puede pensar inmediatamente en tuberías de implementación o pruebas. Pero, ¿qué pasa con la
infraestructura misma? Si está
configurando entornos manualmente, administrando aplicaciones o manejando
tareas repetitivas del sistema en su mainframe, probablemente
esté
perdiendo un tiempo precioso y dejando espacio
para errores humanos Ansibl puede cambiar todo eso. He aquí por qué responder es una herramienta poderosa para la automatización de
mainframe Es menos agente,
lo que significa que no tiene que instalar software en
cada máquina que administre. Esto es especialmente útil en
entornos de mainframe complejos Utiliza simples
archivos Yamal llamados playbooks, que son fáciles de
leer y mantener Respondible es declarativo. Describe el estado deseado
de su infraestructura o aplicaciones y da
cuenta de cómo llegar Puede automatizar todo, desde el aprovisionamiento de infraestructura
hasta
las implementaciones de aplicaciones y la configuración
del sistema, lo
que la convierte en una herramienta perfecta
para Devos en mantenimiento Tomemos un ejemplo. Imagine
que es responsable administrar la infraestructura para un mainframe que ejecuta aplicaciones
bancarias críticas Cada vez que
implementamos una actualización, es necesario
configurar manualmente
varios entornos. Este proceso puede llevar horas y cualquier error puede causar
retrasos o errores. Al escribir un libro de jugadas
respondible, puede automatizar toda
la configuración, asegurando que cada
entorno esté configurado correctamente cada vez
con un solo comando Paso uno, configurar responsables
para la automatización de mainframe. Instalando responsablemente.
Lo primero es lo primero, necesitarás
instalar responsableable Dado que el responsable es menos agente, solo
necesitas
instalarlo en el nodo Control, que puede ser una máquina Linux
o macOS que administrará tu Una vez instalado, el
nodo de control se comunica con su mainframe a través de SSH u
otras comunicaciones seguras Para instalar responsableable, ejecute el siguiente comando
en su nodo de control Una vez instalado, puede comenzar a
crear playbooks que definan cómo administrar y configurar su infraestructura de mainframe Un ejemplo. Digamos
que acaba de configurar un nuevo
servidor mainframe y necesita
configurarlo para la aplicación bancaria de su
organización En lugar de
conectarse manualmente
al servidor y ejecutar scripts, instala
responsableable
en un nodo de control, escribe un libro de jugadas y
lo usa para configurar el
servidor Conexión responsable
al mainframe. Ahora que el respondible
está instalado, el siguiente paso es
conectarlo a su Ansib administra sistemas a través SSH y para
entornos de mainframe, puede usar Zoe CLI, que nos sumergiremos más adelante para facilitar la comunicación entre Así es como
configuraría el acceso SSH a su mainframe desde su nodo de control
respondible Primero, generas una
clave SSH en tu nodo de control. Después, copia la clave pública
a su servidor mainframe. Por último, se prueba
la conexión. Establece las bases para que los responsables administren y
configuren su sistema mainframe Paso dos, automatización de la infraestructura de mainframe
con libros de jugadas respondibles Ahora, vayamos a la parte divertida. Redacción de cuadernos de jugadas. Los libros de jugadas son una forma responsable de definir
tareas Cada libro de jugadas está escrito en amo, lo
que lo hace legible por humanos
y fácil de mantener Escribamos un libro de jugadas básico. Hay un ejemplo de un
libro de jugadas simple que configura
un entorno de mainframe
mediante la creación conjuntos de datos y Este libro de jugadas hace dos cosas. Crea un conjunto de datos
secuencial en su mainframe para almacenar el código fuente de
Cobal Después asigna los
permisos apropiados a ese conjunto de datos. Ejecutando el libro de jugadas.
Para ejecutar el libro de jugadas, simplemente use el
siguiente comando Ansibl ejecutará entonces
la tarea en el libro de jugadas, asegurando que su entorno de
mainframe esté configurado de acuerdo
con Un ejemplo,
digamos que estás preparando un ambiente para una
nueva aplicación de cobol que está a punto de ponerse en marcha En lugar de crear
conjuntos de datos manualmente y asignar
permisos, puede automatizar todo el
proceso con un libro de jugadas, asegurando la consistencia y
eliminando los errores humanos A Paso tres, automatización de las implementaciones de
aplicaciones de mainframe Responderable no es solo
para infraestructura. También puede manejar implementaciones
de aplicaciones. Esto significa que puede
automatizar el proceso de
implementación de aplicaciones de mainframe
como Cobol o PL one, ya sea moviendo código a producción o
ejecutando trabajos por lotes Automatizar la
implementación de aplicaciones con respuesta. Aquí hay un ejemplo de
un libro de jugadas respondible que
despliega Este libro de jugadas hace dos cosas. Primero, carga el código de las tiendas
Cobble a un conjunto de datos en el Después envía un trabajo de JCL para
compilar y ejecutar el programa. Automatizar reversiones
y actualizaciones. CBL también puede automatizar retrocesos si algo sale
mal durante Al agregar condiciones
a sus libros de jugadas, puede
especificar procedimientos de
reversión o mecanismos de manejo de errores, asegurando que sus implementaciones
sean seguras He aquí un ejemplo.
Imagine que está implementando una actualización de cobal en
su aplicación bancaria, pero durante la implementación,
algo sale mal AnswerBL detecta la falla, activa
automáticamente
el proceso de reversión y asegura que el sistema se
restaure a su estado anterior, todo sin Las conclusiones clave de
esta lección incluyen. Answerable es una poderosa
herramienta para automatizar
tanto la infraestructura como las tanto la infraestructura como implementaciones
de
aplicaciones Los playbooks permiten definir las configuraciones deseadas y
los estados de
aplicación en
un sencillo formato Yamal. Se puede responder a la lista de agentes, lo que significa
que no es necesario instalar ningún software en los sistemas mainframe
administrados Puede automatizar todo, desde la
configuración de conjuntos de datos hasta la
implementación de aplicaciones, asegurando la consistencia y
reduciendo los errores humanos. Hagamos una actividad de aprendizaje. Escriba un
libro de jugadas simple y respondible que cree un conjunto de datos en su mainframe
y cargue Ejecute el libro de jugadas desde su nodo de control
respondible y verifique que el conjunto de datos y el archivo se crearon correctamente Comparte tu experiencia y cualquier reto que hayas
encontrado en el
foro de discusión de la fuerza. ¿Cuál es el siguiente? El siguiente paso, exploraremos ZoeI, una herramienta de código abierto
que es esencial para integrar mainframes con flujos de trabajo DevOps
modernos En nuestra siguiente lección,
analizaremos cómo
Zoe CLI y las API de Zoe
pueden automatizar los flujos de trabajo y llevar los principios de
DevOps
13. Lección 4: integración de Zowe para DevOps en mainframe: Lección cuatro, Zoe para la integración de DevOps
de mainframe. Bienvenido de nuevo. Si ha estado siguiendo nuestro viaje través de la automatización de mainframe, probablemente
esté comenzando a ver el emocionante potencial de
integrar los principios de DevOps en el mundo de Hasta el momento, hemos explorado
Jenkins y Ansible. Pero hoy, nos estamos
enfocando en una herramienta clave que reduce la brecha
entre los
sistemas mainframe heredados y las prácticas modernas de DevOps Zoe. En esta lección, vamos a profundizar en marco de código abierto de
ZoEI
que está ayudando a modernizar mainframes
haciéndolos más accesibles
y más fáciles de
integrar en la cadena de herramientas DevOps Al final de esta lección, comprenderá el papel
que
juega Zoe en la automatización de
flujos de trabajo y cómo
usar Zoe CLI y API de Zoe para agilizar las operaciones de
mainframe Empecemos, no te preocupes. Lo
desglosaremos paso a paso. Serás una Zoe P en poco tiempo. ¿Qué es Zoe y por qué
importa? Empecemos por lo
básico. ¿Qué es Zoe Zoe es un marco de código abierto diseñado específicamente para
modernizar mainframes Ayuda a cerrar la brecha entre el ecosistema de
mainframe tradicional herramientas
y prácticas modernas, especialmente en el mundo DevOps Básicamente, Zoe brinda a los desarrolladores y administradores de
sistemas acceso
más fácil
al mainframe utilizando herramientas e interfaces con las que
ya están familiarizados Esto es lo que Zoe hace por ti. Primero,
interfaz de línea de comandos o CLI. Zoe CLI le permite interactuar con recursos de
mainframe
a comandos simples de línea de comandos Puedes administrar
conjuntos de datos, enviar trabajos y trabajar con archivos
tal como lo harías en un sistema basado en Linux o
Cloud. Segundo, APIs. ZoEE proporciona API de descanso para acceder a
aplicaciones y servicios de mainframe, lo
que facilita la integración mainframes en un flujo de trabajo de DevOps más amplio En tercer lugar, la interfaz de usuario moderna. Zoe también incluye una interfaz basada en
web, que ofrece una forma gráfica más
intuitiva interactuar con su sistema
mainframe Tomemos un ejemplo. Imagina que eres un
ingeniero de Dabo que necesita
interactuar tanto con sistemas
basados en la nube como con mainframes En el pasado, es posible que tengas que
aprender y hacer malabares con diferentes
herramientas e idiomas. Con Zoe, ahora puede usar herramientas
familiares como comandos
CLI y API para administrar sus
sistemas mainframe con la misma facilidad que administra
sus No más cambios entre ecosistemas
completamente diferentes. Zoe lo simplifica todo. Paso uno, instalar
y configurar Zoe CLI. Ahora que sabemos lo que es Zoe, saltemos a Zoe CLI,
que es la
forma principal en que interactuaremos con mainframes en Instalando Zoe CLI. Puede instalar Zoe CLI en cualquier sistema que no admita Así es como
lo pones en marcha. Primero, instalas Node dot JS en tu nodo de control
si aún no lo tienes. Después ejecuta el siguiente
comando para instalar Zoe CLI. Una vez instalado,
deberá configurar Zoe CLI para conectarse a
su sistema mainframe Configuración de Zoe CLI. Para configurar Zoe CLI, necesita configurar su perfil de conexión a
mainframe Esto le dice a Zoe cómo
conectarse a su mainframe, incluidas las credenciales
y los detalles de conexión Aquí hay un ejemplo de
cómo configurarlo. Este comando crea un perfil de tablero de
mainframe de nombre de perfil que incluye su información de
conexión, lo que facilita la ejecución de
futuros comandos de Zoe sin
volver a ingresar credenciales Tomemos un ejemplo. Digamos que está administrando un gran entorno de
mainframe para un proveedor de atención médica Una vez que Zoe CLI está instalada
y configurada, puede usar comandos simples
para interactuar con conjuntos de datos, enviar trabajos y
administrar archivos desde su modo de control
sin tener que
iniciar sesión para iniciar sesión en
mainframe manualmente Esta configuración acelera tus flujos de trabajo y facilita mucho la
automatización. Paso dos: usar Zoe CLI para
automatizar los flujos de trabajo de mainframe. Una vez que Zoe SLI está configurado, momento de comenzar a
usarlo para automatizar Aquí es donde ocurre la magia. ZoEE le permite administrar
conjuntos de datos, enviar trabajos e interactuar con
su sistema mainframe usando comandos con los que
probablemente ya esté familiarizado Administrar conjuntos de datos con Zoe CLI. Zoe CLI hace que los datasets de mainframe sean tan simples como administrar archivos
en su máquina local Hay un ejemplo sobre
cómo enumerar todos los conjuntos de datos. También puede cargar
archivos a conjuntos de datos, lo que
facilita la transferencia código o datos a su mainframe Enviar trabajos con Zoe ALI. Automatizar el envío de trabajos es un cambio de juego para el flujo de trabajo de
DevOps Con Zoe CLI, puedes enviar trabajos de
JCL desde tu
código de comando y realizar un seguimiento Incluso puede verificar el
estado de un trabajo y recuperar su salida emitiendo un comando
Zoe jobs view Un ejemplo, digamos que
tu equipo necesita
ejecutar un trabajo por lotes todas las noches para procesar
transacciones financieras. En lugar de iniciar sesión manualmente en el mainframe y
enviar el trabajo, puede automatizar todo el
proceso usando Zoe El trabajo se puede programar
y enviar desde una tubería de Jenkins, lo que hace que el proceso sea perfecto
y libre de errores Paso tres, integrar Zoe
con herramientas de DevOps usando API. Si bien Zoe CLI es ideal para interacciones de línea de
comandos,
las API de Zoe abren aún
más posibilidades permitir que otras herramientas DevOP
interactúen con Uso de API de Zoe para la automatización. Las API de Zoe's West
le permiten integrar las operaciones de
mainframe en
sus canalizaciones de DevOps, ya sea que esté utilizando Jenkins, ansibl Por ejemplo, puede usar la API de Zoe para automatizar
la siguiente tarea, recuperar información de conjunto de datos,
enviar trabajos por lotes, consultar estados de trabajos y Aquí hay un ejemplo de cómo llamar a una API de Zoe para enviar un
trabajo desde un taburete DevoP Integrándose con Jenkins y sb. Debido a que las API de Zoe son reparadoras, puede
integrarlas fácilmente en sus canalizaciones de Jenkins y playbooks
responsables para extender sus flujos de trabajo Por ejemplo, en Jenkins, podrías crear una etapa
en tu canalización que envíe un trabajo al
mainframe usando la API Tomemos un ejemplo.
En un entorno DevOps, posible que
su equipo ya esté utilizando Jenkins para una integración continua Al
integrar las API de Zoe en su pipeline de Jenkins, puede automatizar todo el
proceso, desde la confirmación de código
hasta su implementación en el mainframe
y la ejecución de pruebas posteriores De esta manera, usted lleva mainframe a la canalización
moderna de CICD, rompiendo los silos entre sistemas heredados y Las conclusiones clave de
esta lección incluyen que Zoe es un
marco de código abierto que cierra la brecha entre los mainframes
y las herramientas modernas Zoe CLI le
permite interactuar con recursos de
mainframe utilizando comandos de línea de comandos
familiares, simplificando la administración
de conjuntos Las API de Zoe permiten la integración
con otras herramientas de DevOps como Jenkins y Ansibl, incorporando mainframes Zoe hace que la
automatización de mainframe sea accesible, rompiendo
las barreras tradicionales e integrando sistemas
heredados en el ecosistema DevOps
más amplio Hagamos una actividad de aprendizaje. Instale Zoe SLI en
su nodo de control. Configure un
perfil de mainframe y use Zoe Sale para cargar un archivo a un conjunto de datos
y enviar un trabajo de JSL Comparte tu experiencia y cualquier reto que hayas
encontrado en el
foro de discusión del curso. ¿Qué sigue? Siguiente paso, vamos a
sumergirnos en las canalizaciones CICD
para mainframes En nuestro siguiente módulo, aprenderá a diseñar una canalización CICD específicamente diseñada para el
entorno de mainframe, y exploraremos los componentes clave
que hacen que
la canalización
14. Lección 1: diseño de una canalización de CI/CD para mainframes: Módulo cuatro, construcción y administración de ductos CICD
para mainframes En este módulo,
aprenderá a diseñar, construir y administrar canalizaciones CICD específicamente diseñadas para entornos
mainframe Las diferencias entre CICD
para sistemas distribuidos y
mainframes y cómo superar los desafíos únicos que enfrenta
la automatización de mainframe Al final de este módulo, podrá integrar CICD en sus
operaciones de mainframe para ciclos de desarrollo
e implementación
más rápidos y confiables Lección uno, diseñar una
canalización CICD para mainframes. Bienvenido al Módulo cuatro. Si ha estado siguiendo
nuestros módulos anteriores, aprendido a usar varias
herramientas de automatización como Jenkins, Ansibl y Zoe para
modernizar Ahora es el momento de
sumergirse en algo que pueda transformar todo tu proceso de
desarrollo. Tuberías CICD para mainframes. En la lección de hoy, nos
centraremos en cómo diseñar una canalización CICD que funcione
específicamente para mainframes Probablemente hayas escuchado
mucho sobre CICD en el contexto de las aplicaciones
nativas de Cloud, pero los mainframes tienen sus
propios desafíos únicos No se preocupe,
desglosaremos los componentes clave y le
mostraremos cómo construir una
canalización que garantice velocidad, confiabilidad y eficiencia
para las implementaciones de mainframe Al final de esta lección, sabrá cómo construir una canalización CICD que
integre el control de origen, pruebas
automatizadas y la implementación
continua, todo adaptado a entornos de
mainframe Empecemos. Por qué CICD para mainframes. Quizás se esté preguntando
por qué mainframes, estos 30 sistemas de larga duración necesitan el mismo equipo CICD que las aplicaciones en
la nube La verdad es que los mainframes
suelen albergar aplicaciones de misión
crítica, pero sus ciclos de
desarrollo tradicionales son lentos y manuales Ingresa a CICD. CICD, abreviatura de integración
continua y entrega continua,
es una práctica donde los cambios de
código se
prueban automáticamente y se
implementan en producción en incrementos
más pequeños y frecuentes Para mainframes,
la implementación de CICD significa ciclos de
entrega más rápidos, incluso para CBL y
PL una Dos, reducir el riesgo debido a las
pruebas automatizadas y la implementación. Tres, agilizar los flujos de trabajo que eliminan los
traspasos manuales entre las pruebas de
desarrollo
y las costuras de operación Tomemos un ejemplo. Imagina que estás trabajando en una aplicación financiera que maneja millones de transacciones
diarias. Sin CICD, la publicación de
actualizaciones es lenta y requiere múltiples aprobaciones
y fases de prueba manual Pero con CICD, puede automatizar las
pruebas y la implementación, asegurando que los cambios
se entreguen más rápido y con mayor confianza
sin interrumpir Componentes clave de una
canalización CICD para mainframes. Analicemos los componentes
clave de una canalización CICD para mainframes Si bien los
principios básicos son los mismos que para los sistemas distribuidos, hay algunas diferencias
importantes exploraremos a medida que avanzamos. Primero, el control de fuentes. La canalización comienza con el control de
origen donde se almacena,
rastrea y administra
todo su código. En los flujos de trabajo modernos de CICD, Git es la
herramienta más popular para el control de fuentes, pero también hay otros sistemas de control de
versiones utilizados en mainframes La clave es tener un sistema donde los desarrolladores
puedan colaborar, ramificar y fusionar
los cambios de código de manera eficiente. En un contexto de mainframe, el sistema de control de origen almacenará código
escrito en adoquín,
PLI, JCL y Integrar esto con las herramientas modernas de
Devo es crucial. Segundo, pruebas automatizadas. Una vez que el código está comprometido, la siguiente etapa es la prueba
automatizada. Las pruebas son esenciales
para detectar errores temprano y
con mainframes, esto es especialmente crítico
porque a menudo se trata de bases de código heredadas que necesitan mantenerse estables Las pruebas automatizadas para
mainframes pueden incluir una prueba unitaria para verificar funciones individuales
o fragmentos de código Dos,
pruebas de regresión para garantizar que nuevo código no rompa la funcionalidad
existente, tres, prueba de
integración para verificar que el nuevo código se integra
bien con otros sistemas, ya sea en el
mainframe o en la nube Tercero, la integración continua. La integración continua
o CI asegura que
cada vez que un desarrollador envía
código al repositorio, se
construye y prueba automáticamente. Para mainframes, CI normalmente
implica compilar código Cobol o
PLO y ejecutar pruebas
automatizadas a través de
una herramienta como Jenkins La diferencia clave aquí es que la CI de mainframe
implica enviar trabajos
JCL para ejecutar los
procesos de compilación y prueba en el mainframe, mientras que los sistemas distribuidos pueden usar servidores de compilación estándar Cuarto es el despliegue continuo. La etapa final es la implementación
continua o CD, donde la canalización implementa
automáticamente compilaciones
exitosas en entornos de producción
o staging. Para mainframes, la implementación
puede implicar la ejecución trabajos
JCL que manejan la
implementación de código compilado, la
actualización de conjuntos de datos o la
ejecución de trabajos por lotes Es importante saber que las aprobaciones
manuales pueden ser necesarias para aplicaciones de
mainframe críticas, pero CICD puede automatizar gran parte
del proceso de implementación, reduciendo errores y
acelerando Digamos un ejemplo
del mundo real. Digamos que su equipo está
trabajando en una actualización de una aplicación cobal que ejecuta el sistema de nómina de
un banco Usando una canalización de CICD, el desarrollador compromete
sus cambios para dar Jenkins ejecuta pruebas unitarias
y de regresión, y si todo pasa, los cambios se
implementan
automáticamente un entorno de ensayo
para realizar más pruebas Todo el proceso ocurre en minutos más que en las horas
o días que solía tomar. Diferencias entre CICD para sistemas
distribuidos
y mainframes Si bien la estructura general
de una canalización CICD es similar tanto para
sistemas distribuidos como para mainframes, existen
diferencias clave a considerar
al diseñar una
canalización para Primero, construir procesos. En los sistemas distribuidos, el proceso de compilación a menudo
implica compilar código en tiempo real
en un servidor de compilación Para mainframes,
el proceso de compilación generalmente implica enviar trabajos
JCL que compilan código cobol o PL one en el Necesitarás integrar
herramientas como Zoe CLI o Jenkins Plugs para enviar
y rastrear estos Dos, código heredado. Los mainframes a menudo ejecutan bases de código de
décadas de antigüedad, y la introducción de CICD puede ser un desafío cuando se
trata de sistemas heredados Es crucial garantizar que nuevos procesos automatizados
no rompan el código existente. Las pruebas de regresión automatizadas
son clave para asegurarse que los nuevos cambios no afecten la estabilidad de la aplicación
heredada. Tres, entornos de implementación. En los sistemas distribuidos, implementación podría
significar enviar código a un entorno contenerizado o una plataforma en la nube
como AWS o Azure En mainframes, la implementación
a menudo significa actualizar conjuntos de datos, ejecutar trabajos por lotes
o enviar scripts
JCL para activar
varios procesos Las herramientas de implementación automatizadas
como IBM Urban code o BMC Control M pueden ayudar a administrar estos complejos procesos de
implementación de mainframe Diseñando su canalización
CICD de mainframe. Ahora que comprende los
componentes y las diferencias,
analicemos cómo puede diseñar una canalización CICD para su entorno de
mainframe Aquí hay un ejemplo, flujo de
tuberías. Primero, el control de fuentes. Los desarrolladores envían código Cobalt o
PLO a un repositorio Git. A continuación, proceso de construcción. Jenkins cree un trabajo de JCL para compilar el código
en el mainframe A continuación se realizan pruebas automatizadas. Se realizan pruebas unitarias para validar componentes
individuales, se realizan pruebas de
regresión para
garantizar que la estabilidad del código
heredado y las pruebas de
integración verifican la compatibilidad
con otros sistemas. Después despliegue a puesta en escena. Si todas las pruebas pasan, Jenkins implementa el código un entorno de ensayo en el
mainframe Y luego la aprobación manual, que es opcional para aplicaciones
críticas, posible que se
requiera
un paso de aprobación manual antes de
implementarlo en producción. Finalmente, despliegue de producción. El código probado se implementa
automáticamente en
producción a través de JCL Jobs u otros procesos de
implementación de mainframe Las conclusiones clave
de esta lección incluyen CICD para
mainframes que integra prácticas de desarrollo
modernas como integración
continua y pruebas
automatizadas
con Los componentes clave de una
canalización CICD son el control de origen, pruebas
automatizadas, la integración
continua y el despliegue continuo Los
desafíos específicos de mainframe incluyen manejo de trabajos JCL para compilaciones, trabajo con bases de código heredadas y la administración de entornos de
implementación complejos Herramientas como Jenkins, Zoe
e IBM Urban code ayudan a automatizar estos
procesos para Hagamos una actividad de aprendizaje. Identifique una
aplicación de mainframe en su organización que podría beneficiarse de una canalización CICD Delinee los pasos
que necesitaría para automatizar, por ejemplo, construir, probar implementaciones y crear un diagrama de flujo básico del diseño de
su pipeline Comparte tu diseño de tuberías en el foro de discusión del curso
y explica por qué elegiste este enfoque. ¿Cuál es el siguiente? A continuación, profundizaremos en el
control de versiones para el código de mainframe En la siguiente lección,
exploraremos cómo configurar Git u otro sistema de
control de versiones para código de
mainframe y
las mejores prácticas para ramificar, fusionar y
15. Lección 2: configuración del control de versiones para código de mainframe: Lección dos. Configuración del control de
reversión
para código de mainframe Bienvenido de nuevo al Módulo cuatro. Ahora que ha
aprendido a diseñar una canalización CICD para mainframes, es hora de
enfocarse en la base de
cualquier pipeline CICD,
el control de cualquier pipeline CICD, Aquí es donde
comienza el viaje para tu código. Veremos cómo administrar el código de
mainframe usando herramientas como Git y discutiremos las
mejores prácticas para ramificar, fusionar y Si bien el control de versiones puede parecer sencillo para los sistemas
distribuidos, administrar el código de mainframe en un entorno DevOps
conlleva sus propios desafíos Al final de esta lección, tendrás las habilidades
para administrar de manera efectiva el código de
mainframe usando prácticas modernas de control de
versiones Vamos a sumergirnos. ¿Por qué el control de
versiones es esencial para DevOps
de mainframe control de versiones es la columna vertebral del desarrollo colaborativo. Permite
a múltiples desarrolladores trabajar en diferentes partes
del código simultáneamente sin pisarse los dedos de los pies. Pero no se
trata sólo de colaboración. Se trata de rastrear los cambios, garantizar la rendición y facilitar retrocesos
si las cosas salen mal Para los mainframes, el control de versiones
es crítico porque una, las bases de código
heredadas son bases de código heredadas a menudo contienen cientos de
miles de líneas de código cobal, PL one o JCL que necesitan
ser Dos, las aplicaciones de mainframe
suelen ser de misión crítica, por lo que los errores o errores pueden
tener graves consecuencias Tres, con el control de versiones,
puede realizar un seguimiento de los cambios, ver quién realizó qué cambios y cuándo y
volver fácilmente a
versiones anteriores si es necesario Tomemos un ejemplo.
Imagina que estás administrando un gran
sistema de nómina escrito en COBOL Sin
control de versiones, es difícil
rastrear los cambios realizados por
múltiples desarrolladores. Un desarrollador podría
introducir un error en la lógica de cálculo de impuestos, mientras que otro agrega una nueva
función para el pago de horas extras Con el control de versiones, puede revisar el historial de todos y
cada uno de los cambios, aislar problemas e
incluso deshacer cambios sin volver a armar manualmente
el código Elegir el sistema de
control de versiones adecuado para mainframes. Um, si bien hay varios
sistemas de control de versiones disponibles, es de lejos el más popular
en las prácticas modernas de DevOps Está distribuido, lo que
significa que cada desarrollador tiene una copia completa de la historia del proyecto,
lo que facilita la colaboración. Además, se integra a la perfección con herramientas CICD como Jenkins Dicho esto, existen
alternativas como IBM Rational Team Concert
o RTC o Endeavor, que a menudo se utilizan en entornos
mainframe Pero su
uso generalizado, flexibilidad e integración con las herramientas
modernas de DevOps lo
convierten en una opción convincente Configuración de Git para código de
mainframe. Así es como puedes configurar Git para administrar código de mainframe Primero, instale Gill. Git está disponible
para todas las plataformas, incluyendo Windows,
macOS y Linux. Dos, inicializar un repositorio
Git. Crea un nuevo repositorio Git para comenzar a reversionar
tu código de mainframe El, clonar un repositorio
existente. Si tu organización
ya usa Git, puedes clonar un clon de Git
existente. Organizar
código de mainframe en GIP. Quizás te preguntes,
¿cómo organizo Cobb JCL y PL one code
en un repositorio Git Es similar a cómo
organizarías el código en
otros idiomas. Se crea un directorio llamado srclaCoblas store Fuentes PL almacenan
PL un código fuente y fuente principal JCL
para almacenar scripts JCL Organizar tu
código por idioma o función ayuda a mantener las cosas
ordenadas y fáciles de navegar. Eso es prácticas para ramificar, fusionar y comprometer código de
mainframe Uno de los mejores Usar GIP o cualquier sistema de control de versiones de
manera efectiva requiere conocer algunas mejores prácticas para administrar sucursales, fusiones y commits Los mainframes suelen tener
grandes bases de código complejas, por lo que es importante ser
metódico al administrar Estrategias de ramificación
para código de mainframe. Una de las mayores
ventajas de Git es la capacidad de
usar sucursales. ramas te permiten trabajar
en características o correcciones forma aislada sin afectar
la base de código principal hasta que estés listo para
fusionar tus cambios. Ramificación de entidades,
cree una nueva rama para cada función o corrección de errores Esto le permite trabajar
independientemente de la rama principal, generalmente llamada master o main hasta que la función
esté lista para su lanzamiento. Liberar ramificación. Una vez que se completa y se prueba una
función, se puede fusionar en
una rama liberada. Esto asegura que solo el código completamente
probado y estable entre en producción.
Tomemos un ejemplo. Estás trabajando en una nueva función de cálculo de
impuestos para una aplicación cobol En lugar de realizar cambios
directamente en la rama principal, se crea una nueva rama de entidades. Esto le permite experimentar y
probar cambios de
manera segura sin afectar
al resto del sistema. Una vez que la función está lista, vuelve a fusionar en la rama principal después de
pasar la prueba automatizada. Fusión de código de mainframe. Después de trabajar en una sucursal, deberás
volver a
fusionar tus cambios en la base de código principal. Aquí es donde las cosas
pueden ponerse complicadas. Debido a que las bases de código de mainframe
suelen ser grandes y complejas, fusiones pueden generar conflictos si varios desarrolladores están trabajando en el mismo archivo
o región de Para minimizar el conflicto,
cometer a menudo. Los pequeños commits frecuentes
facilitan el seguimiento de los cambios
y la resolución de conflictos. Base R antes de fusionar. Esto pone a tu
sucursal al día con la rama principal
antes de fusionarte, reduciendo las posibilidades de conflicto. Comprometiendo las mejores prácticas. La clave para un control efectivo de
versiones es una buena higiene de compromiso. Aquí hay algunos consejos para hacer que
tus commits sean significativos y fáciles de administrar.
Comprometerse a menudo. No esperes hasta
terminar una función completa. Comete trozos más pequeños
de código con frecuencia. Esto facilita el seguimiento de
los cambios e identificación de errores. Utilice mensajes descriptivos de compromiso. Un mensaje de compromiso como
Tix Bug no es útil. En su lugar, use
mensajes detallados como lógica de cálculo de impuestos
actualizada para
dar cuenta de los cambios fiscales
estatales. Evite cometer
archivos grandes innecesariamente. Los entornos de mainframe
suelen utilizar grandes conjuntos de datos. Evite comprometer conjuntos de datos o archivos
binarios pueden
ralentizar su repositorio. Cómo encaja el Control de versiones
en su canalización CICD. control de versiones
juega un papel crucial en su pipeline de CICD Así es como uno, integración de
control de origen. Cada vez que un desarrollador
empuja código para obtener, activa la canalización de CI. Para los mainframes, esto podría significar dar inicio a trabajos de JCL para
compilar cobalto o
ejecutar Dos, gestión de sucursales. Las características se desarrollan en ramas de
características y se prueban en ramas de estadificación antes fusionarse con la rama principal
de producción Tres, pruebas automatizadas. Cuando el código se
fusiona en la rama principal, Jenkins puede
activar automáticamente pruebas unitarias y de regresión para
garantizar que nada se rompa Tomemos un ejemplo. Su equipo administra una aplicación
bancaria basada en CBL Cada vez que un desarrollador
empuja código para obtener, Jenkins extrae los últimos cambios y activa una serie
de pruebas automatizadas,
incluyendo pruebas unitarias para
el código CBL y prueba de integración para los
trabajos por lotes JCL Si alguna prueba falla, Jenkins notifica al
desarrollador
permitiéndole solucionar el problema antes de
que llegue a conclusiones clave de esta lección incluyen que el control de versiones es esencial para rastrear los cambios, colaborar con
otros desarrolladores y garantizar la estabilidad del código en entornos
mainframe Usa Git para administrar el
código de mainframe y organizar cobal, JCL y PL one code de
manera efectiva en tu Palo mejores prácticas
para ramificar, fusionar y comprometerse para evitar conflictos y garantizar una
integración fluida de los cambios de código Version Control
se integra a la perfección con su pipeline CICD, lo que le permite
automatizar las pruebas y implementación cada vez que se compromete el
código Hagamos una actividad de aprendizaje. Crea un nuevo repositorio Git o haz fluir uno existente
para tu código de mainframe Practica la configuración de sucursales, la realización de commits y la
fusión de cambios Comparte tu experiencia
con la gestión de sucursales y resolución de conflictos en
el foro de discusión del curso. ¿Qué sigue? Siguiente paso. En la siguiente lección,
exploraremos cómo integrar pruebas
automatizadas en sus canalizaciones CICD para garantizar calidad del
código y detectar
errores al principio del proceso de
desarrollo Analizaremos las mejores
prácticas para incorporar la integración
de unidades y pruebas de
regresión en entornos
mainframe.
16. Lección 3: integración de pruebas automatizadas en procesos de CI/CD: Lección tres, integración pruebas
automatizadas
en canalizaciones CICD Bienvenido de nuevo al Módulo cuatro. Hasta ahora, hemos cubierto el
diseño de una canalización CICD para mainframes y la configuración control de
versiones para administrar
su código de mainframe Ahora es el momento de abordar
un aspecto crucial de cualquier pipeline moderno, las pruebas
automatizadas. En la lección de hoy,
profundizaremos en cómo integrar pruebas automatizadas en cada etapa de su pipeline
CICD Las pruebas garantizan que
su código sea estable, confiable y libre de errores antes de que
llegue a producción. Exploraremos cómo incorporar diferentes tipos de
pruebas, unidades, regresión, integración para que
sus bases de código Cobalt, JCL y PL one puedan manejar
cambios continuos con confianza Al final de esta lección, podrá diseñar una estrategia de
prueba que garantice calidad del
código y se integre sin problemas en
su canalización de CICD Empecemos.
Por qué las pruebas automatizadas son cruciales para los mainframes Las pruebas automatizadas
son la red de seguridad que detecta errores antes de
que lleguen a la producción. Para los mainframes, que a menudo manejan cargas de trabajo de misión
crítica, los errores pueden provocar costosos
tiempos de inactividad o pérdida de datos Las pruebas automatizadas
minimizan este riesgo al verificar
continuamente
la integridad de su código cada
vez que cambia He aquí por qué las pruebas automatizadas
son esenciales para los mainframes. Uno, la consistencia. Las pruebas automatizadas se ejecutan de la misma manera cada vez, lo que reduce
los errores humanos. Dos, la velocidad, la prueba se
puede activar inmediatamente después de que se
haya comprometido el código , proporcionando retroalimentación
instantánea. Tres, confiabilidad. Las pruebas antes
de la implementación garantizan que los cambios de código no
rompan el sistema. Tomemos un ejemplo. Imagina que estás trabajando en una
aplicación bancaria de cobalto que maneja miles de
transacciones por minuto. Un solo error en la lógica de procesamiento de
pagos podría perturbar todo el sistema. Con las pruebas automatizadas,
puede verificar que cada cambio, ya sea grande o pequeño, funcione como se esperaba sin comprometer la
integridad de su sistema. Tipos de
pruebas automatizadas para mainframes. Las pruebas automatizadas en mainframes generalmente se agrupan en
tres categorías: prueba
unitaria, prueba de regresión
y prueba de integración Cada uno de estos tiene un propósito diferente,
pero cuando se combinan, forman una estrategia de
prueba sólida que
garantiza que tanto el
código nuevo como el heredado funcionen correctamente. Pruebas unitarias. Las pruebas unitarias son los componentes básicos
de las pruebas automatizadas. Estas pruebas verifican piezas
individuales de código, como el programa COO o un
solo trabajo de JCL para garantizar que funcionen correctamente de manera
aislada. ¿Qué probar? Programas de carbón, subrutinas L
uno, pasos
específicos de trabajo en JCL Herramientas para usar el servidor de pruebas
empresariales de IBM Rational o micro focus. Veamos un ejemplo. Estás desarrollando
una nueva función para
un programa COBOL que
calcula el pago de horas extras Se escribe una prueba unitaria para verificar que el cálculo sea correcto
para varias entradas, horas
regulares, horas extras. La prueba unitaria asegura que incluso si cambian otras partes
del código, la lógica de cálculo de horas extras
seguirá funcionando correctamente Pruebas de regresión.
Las pruebas de regresión garantizan que el nuevo código no rompa la
funcionalidad existente. Esto es particularmente
importante en entornos de
mainframe
donde el código heredado puede haber estado en
su lugar durante décadas Cada vez que
cambie el sistema, debe verificar que funcionalidad crítica
anterior
aún funcione como se esperaba. ¿Qué probar? Lógica crítica de negocio
que no ha cambiado, pero que podría verse afectada
por el nuevo código. Herramientas a usar, Jenkins
con trabajos guionados, IBM Rational Test Workbench.
Tomemos un ejemplo. Has actualizado un programa COBOL para agregar un nuevo cálculo de impuestos Antes de llevar el
código a producción, ejecuta un conjunto de pruebas de
regresión para garantizar que los cálculos de
nómina, que no se ven afectados por la actualización, sigan
funcionando correctamente Cualquier falla en la
prueba de regresión te alertará sobre áreas donde el nuevo código puede haber
introducido errores involuntariamente Pruebas de integración.
Las pruebas de integración verifican que diferentes componentes de su sistema trabajen juntos. En entornos de mainframe,
esto podría significar probar cómo un trabajo
por lotes de JCL interactúa con un programa Cobalt o cómo sus
aplicaciones de mainframe se integran con ¿Qué probar? Interfaces entre aplicaciones de
mainframe y
otros sistemas como bases de datos, servicios
en la nube
o API externas Herramientas para usar Zoe CLI para interactuar con sistemas mainframe o Jenkins Tomemos un ejemplo.
Su aplicación de mainframe necesita intercambiar datos con
un servicio basado en la nube Usted configura una
prueba de integración para garantizar que los datos se transfieren correctamente entre los dos entornos. Esta prueba se ejecuta
automáticamente cada vez que se realiza
una nueva actualización el mainframe
o el sistema en la nube, lo que reduce el riesgo de
problemas de integración en la producción Incorporación de pruebas automatizadas
en la tubería CICD. Ahora que sabe qué probar, veamos cómo integrar las pruebas
automatizadas en
su canalización de CICD Las pruebas automatizadas deben
activarse automáticamente
en diferentes etapas de la canalización para proporcionar retroalimentación a los desarrolladores de manera
temprana y frecuente. Agregar pruebas unitarias
al proceso de construcción. La prueba unitaria debe ser
la primera línea de defensa en su tubería CICD Cuando un desarrollador comete
código en el repositorio de Git, Jenkins o su herramienta de CI
preferida deberían
activar automáticamente la prueba unitaria Flujo de tubería. Primero, el
desarrollador empuja código para dar. Entonces Jenkins tira
los últimos cambios y ejecuta pruebas unitarias Tercero, si la prueba unitaria pasó,
la tubería continúa. De no ser así, el pipeline se detiene y el desarrollador es
notificado de la falla. Prueba de regresión
antes del despliegue. Las pruebas de regresión son esenciales
para mantener la estabilidad. Esto se debe ejecutar
después de la prueba unitaria y antes del despliegue a la
puesta en escena o producción. La ejecución de la prueba de regresión garantiza que no se
rompan las entidades existentes por los nuevos
cambios. Flujo de tubería. Después de pasar las pruebas unitarias, Jenkins desencadena un conjunto
de pruebas de regresión Entonces el pipeline pasa a la etapa de despliegue solo si pasan
todas las pruebas de regresión. Automatización de pruebas de integración
en el entorno de puesta en escena. Una vez que el código está en el entorno de
ensayo, es el momento de ejecutar pruebas de
integración para garantizar que todo
funcione correctamente en conjunto. Prueba de integración, comprueba
cómo
interactúan tus aplicaciones Cobalt, JCL y otras aplicaciones de mainframe y otras aplicaciones de mainframe con
sistemas o servicios externos Flujo de tubería. Después de pasar las pruebas de
regresión, el código se despliega
en el entorno de ensayo. Las pruebas de integración se activan automáticamente
asegurando que las
aplicaciones de mainframe interactúen correctamente con otros sistemas Si todas las pruebas pasan, el código está listo para su implementación en
producción.
Tomemos un ejemplo. Digamos que estás actualizando un programa COBOL que
procesa los pedidos de los clientes Las pruebas unitarias verifican
la lógica del programa. Las pruebas de regresión aseguran que las características
anteriores, por ejemplo, procesamiento de
pagos sigan funcionando, y
las pruebas de integración aseguran que el programa pueda comunicarse con un sistema de inventario basado en la nube. Todas estas pruebas son automatizadas y se ejecutan dentro del pipeline
CICD, reduciendo el riesgo de errores
cuando el código entra en Garantizar la calidad del código
con pruebas continuas. Las pruebas continuas
son la práctica de probar código en cada
etapa de la tubería, no solo al final. Este enfoque asegura
que los errores se detecten temprano cuando son más fáciles
y baratos de arreglar. Para los mainframes, las pruebas
continuas son especialmente importantes
porque las apuestas son mayores Las aplicaciones de mainframe a menudo admiten operaciones
comerciales críticas Pruebas continuas
en cada etapa. Durante el desarrollo,
los desarrolladores escriben pruebas
unitarias para el nuevo código y
las ejecutan localmente antes de
confirmar los cambios. Durante la integración, las pruebas
automatizadas se activan después de que el código se
fusiona en la rama principal. Durante la implementación,
las pruebas se ejecutan en el entorno de ensayo antes implementar
el código en producción. Veamos un ejemplo. Usted es
responsable de mantener un sistema de
contabilidad basado en adoquines Cada vez que un desarrollador
empuja código, Jenkins desencadena una serie de pruebas de regresión
unitaria e
integración Esta estrategia de pruebas continuas garantiza que no importa
cuántos cambios se realicen, el sistema se mantenga estable y confiable durante
todo el ciclo de desarrollo. Las conclusiones clave de
esta lección incluyen pruebas
automatizadas que son esenciales para
garantizar la calidad del código en entornos
mainframe Ayuda a detectar errores temprano y reduce el riesgo de
errores costosos en la producción. Incorpore pruebas unitarias, pruebas de
regresión y pruebas de integración en su canalización CICD para
verificar el código en cada etapa Las pruebas continuas
garantizan que el código se pruebe en cada etapa, desde el desarrollo hasta la producción, mejorando la estabilidad
y reduciendo el riesgo. Hagamos una actividad de aprendizaje. Identifique una aplicación crítica de cobol o JCL en
su organización. Diseñe una estrategia
de pruebas automatizadas que incluya pruebas unitarias, pruebas de
regresión y pruebas de
integración. Comparta su estrategia de pruebas en el primer foro de discusión y discuta cómo encaja en
su pipeline de CICD ¿Cuál es el siguiente? En la siguiente lección, exploraremos la implementación
continua para aplicaciones de mainframe. Aprenderá a automatizar el proceso de implementación
usando Jenkins y
otras herramientas y descubrirá estrategias para implementar de manera segura los cambios de código de
mainframe
17. Lección 4: implementación continua para aplicaciones de mainframe: Lección cuatro, implementación
continua para aplicaciones de mainframe. Bienvenido de nuevo al Módulo cuatro. En nuestras lecciones anteriores, cubrimos los fundamentos del
diseño de ductos CICD, configuración del control de resión y incorporación de
pruebas automatizadas en Ahora vamos a profundizar en uno de los
aspectos más críticos de DevOps, implementación
continua o CD
para aplicaciones mainframe En esta lección,
exploraremos cómo automatizar el
proceso de implementación usando herramientas como Jenkins y estrategias
para garantizar que implementaciones en mainframes
sean seguras La implementación de cambios en
mainframes puede no ser tan simple como enviar código
a un entorno de nube Requiere precaución adicional, pruebas
rigurosas y una
cuidadosa orquestación. Al final de esta lección, comprenderá cómo
configurar implementaciones automatizadas para aplicaciones de
mainframe
e implementar las
mejores prácticas para implementar actualizaciones de manera segura
. Empecemos. ¿Qué es el despliegue
continuo
y por qué importa? implementación continua o CD es el proceso de implementación
automática de nuevo código en producción una vez que ha pasado todas las fases de prueba
necesarias. En una canalización CICD ideal, código fluye sin problemas desde
el desarrollo hasta las pruebas y luego a la producción sin requerir intervención
manual Los beneficios de la CD son numerosos. Versiones más rápidas, el código
se puede implementar de forma rápida
y frecuente. Las implementaciones automatizadas y consistentes garantizan que cada implementación siga
el mismo proceso reduciendo el riesgo de errores Confianza. Dado que el código ha
pasado todas las etapas de prueba,
existe un alto nivel
de confianza en que funcionará como
se esperaba en la producción. Para mainframes, la
implementación de cambios de código ha sido históricamente un proceso manual, lento y de alto riesgo La implementación continua
brinda automatización y confiabilidad a la mesa, lo que reduce el tiempo de implementación
y minimiza los errores humanos. Tomemos un ejemplo. Imagine que está trabajando en una institución financiera
y su equipo necesita
impulsar una pequeña actualización la solicitud de CBL que
maneja el procesamiento de préstamos Sin CID, este sería un proceso manual
que involucraría aprobaciones, programación y el riesgo de
errores durante el despliegue Con una implementación continua,
la actualización se puede implementar automáticamente de
forma segura una vez que pasa todas las pruebas, ahorrando tiempo y
evitando tiempos de inactividad. Automatizar el
proceso de implementación con Jenkins. El primer paso para lograr una implementación
continua es
automatizar el
proceso de implementación en sí mismo. Para mainframes,
herramientas como Jenkins se
pueden utilizar para administrar y
automatizar implementaciones Configuración de Jenkins para implementaciones de
mainframe. Jenkins puede automatizar muchos de los pasos involucrados en las implementaciones de
mainframe,
como enviar trabajos, como enviar trabajos, mover archivos entre conjuntos de datos
o ejecutar Aquí hay una muestra básica de una canalización de Jenkins para
implementar una aplicación CBL En este pipeline,
la etapa de compilación compila el código CBL
usando un trabajo JCL La etapa de prueba realiza pruebas para asegurar que el código
funcione como se esperaba. Finalmente, la
etapa de implementación carga el código compilado
al conjunto de datos de producción y
envía una JCL para Tomemos un ejemplo.
Su equipo necesita actualizar un programa COBOL que se encargue de los cálculos
de nómina Al configurar una canalización de
Jenkins, puede automatizar todo el
proceso, desde compilar el código CBL hasta ejecutar pruebas e implementar el
programa actualizado en producción Cada despliegue sigue
los mismos pasos, reduciendo el riesgo de errores. Integración de Jenkins con Zoe
para la automatización de mainframe. Una de las mejores formas de
automatizar las tareas de mainframe en Jenkins es mediante el uso de Zoe CLI Zoe CLI permite
a Jenkins interactuar con conjuntos de datos de
mainframe, enviar trabajos y recuperar
salidas a comandos clave de la CLI de Zoe que utilizará para la automatización de implementaciones
incluyen Enviar un trabajo de JCL y subir
un archivo a un conjunto de datos. Con estos comandos,
Jenkins puede
automatizar completamente la implementación de aplicaciones de
mainframe, asegurando que las implementaciones se realicen
de manera rápida, consistente y sin Estrategias para implementar cambios de código de
mainframe de forma segura. Los mainframes suelen manejar cargas de trabajo de
misión crítica, por lo que es esencial
implementar los cambios La implementación continua
en mainframes debe abordarse con
estrategias adicionales para mitigar los riesgos Despliegues escalonados. Un enfoque para
reducir el riesgo es
implementar cambios de código
en etapas escalonadas. Comenzando con
sistemas o conjuntos de datos menos críticos e implementando gradualmente cambios a los más
críticos. Esto te da la
oportunidad de atrapar problemas temprano antes de que afecten áreas
de alta prioridad. Por ejemplo, etapa uno, despliegue en un
entorno de desarrollo para pruebas iniciales. Etapa dos, despliegue un entorno de puesta en escena para
simular condiciones del mundo real. Etapa tres, despliegue
a producción, comenzando con trabajos no críticos y terminando con tareas de alta
prioridad. Tomemos un ejemplo.
Un banco actualiza sus sistemas mainframe para introducir una nueva lógica de
cálculo de impuestos En lugar de empujar la actualización
a todos los sistemas a la vez, el equipo primero implementa la actualización en un
subconjunto del sistema responsable de manejar la nómina para un pequeño grupo de empleados Una vez que el equipo verifica que
la actualización funciona correctamente, procede a
implementar el cambio en todo el sistema Aprobaciones manuales para cambios
críticos. Si bien la implementación continua tiene como objetivo eliminar los pasos manuales, es posible que aún desee incluir puertas de aprobación
manuales para
ciertas implementaciones críticas Esto es especialmente
útil cuando se implementa en entornos de producción
donde el tiempo de actividad y la precisión son cruciales En Jenkins, puede configurar pasos de aprobación
manual o implementaciones de
producción que requieran la aprobación de un
administrador
antes de que continúe la implementación Por ejemplo, un programa
COBOL crítico que procesa millones
de transacciones por día está programado
para una actualización importante Aunque el código pasa
todas las pruebas automatizadas, el equipo decide incluir un
paso de aprobación manual en Jenkins Un desarrollador principal
revisa los resultados, aprueba la implementación y el nuevo código se
implementa automáticamente en producción. Mecanismos de reversión. Incluso con pruebas automatizadas,
las cosas pueden salir mal. La implementación de
mecanismos de reversión en su estrategia de
implementación continua garantiza que si una implementación
falla o causa problemas, puede volver rápidamente a
un estado estable anterior Las estrategias clave de reversión
incluyen el versionado de conjuntos de datos. Mantenga múltiples versiones
de conjuntos de datos críticos, para que pueda retroceder fácilmente
a la versión anterior. Automatizar los pasos de rollback,
crear
pasos automatizados en Jenkins que deshacen los cambios enviando trabajos de
rollback JCL o restaurando trabajos de
rollback JCL o Un ejemplo, su equipo
impulsa una nueva actualización un trabajo de JCL responsable de
generar informes financieros Poco después de la implementación, los usuarios notan discrepancias
en la salida del informe Jenkins
activa automáticamente una reversión,
revertiendo el sistema a
la versión estable anterior del trabajo JCL El problema se soluciona
y el equipo puede investigar el problema
sin afectar a los usuarios Los puntos clave
de esta lección incluyen la implementación continua automatiza el proceso de
implementación, reduciendo errores y acelerando versiones para aplicaciones de mainframe Herramientas como Jenkins y Zoe
CLI le permiten automatizar implementaciones desde compilar Utilice estrategias como despliegues
escalonados, aprobaciones
manuales y mecanismos de
reversión implementar
cambios en la producción de
manera segura Hagamos una actividad de aprendizaje. Configure una canalización Jenkins
para una aplicación de mainframe, automatizando el proceso de
implementación usando Zoe CLI u Diseñe una estrategia de
implementación escalonada para implementar
la aplicación de manera segura diferentes entornos
como desarrollo, puesta en escena y producción Comparte tu estrategia de pipeline e
implementación en el foro de discusión del curso. ¿Cuál es el siguiente? En el siguiente módulo, nos centraremos en automatizar las pruebas para aplicaciones mainframe Aprenderá por qué las pruebas
automatizadas son críticas para mantener la confiabilidad
del sistema y
cubriremos varios
tipos de pruebas, como pruebas unitarias, de
regresión, de integración
y de rendimiento.
18. Lección 1: la importancia de las pruebas automatizadas en mainframes: Módulo cinco, automatización de pruebas para aplicaciones mainframe En este módulo,
exploraremos los siguientes
motivos por los que la automatización de pruebas es fundamental para las aplicaciones de mainframe Cómo garantizar la confiabilidad del sistema y reducir errores a través de
diferentes tipos de pruebas. Herramientas y estrategias
para integrar pruebas
automatizadas en
su pipeline CICD Al final de este módulo, estará equipado para
diseñar e implementar una
estrategia de prueba automatizada que mejore la
confiabilidad y el rendimiento de sus mainframes Lección uno, la importancia de las pruebas automatizadas
en mainframes Bienvenido al Módulo cinco. Si ha estado siguiendo junto
con los módulos anteriores, visto
cómo
podemos optimizar los procesos de
desarrollo e implementación con canalizaciones CICD Ahora es el momento de abordar uno de los elementos más críticos para garantizar
la confiabilidad del sistema. Eso son pruebas automatizadas. En esta lección,
vamos a explorar por qué automatización de pruebas es esencial para las aplicaciones de mainframe Los mainframes suelen ejecutar sistemas de
misión crítica
que exigen confiabilidad, seguridad y alta disponibilidad Al implementar pruebas
automatizadas, no solo reduce
el riesgo de errores, sino que también acelera
el proceso de prueba y mejora la calidad del código. Al final de esta lección, comprenderá los
diferentes tipos de
pruebas, incluidas las pruebas unitarias, las pruebas de
regresión, las pruebas de
integración y las pruebas rendimiento y por qué
son cruciales para las aplicaciones de
mainframe Empecemos.
Por qué las pruebas
automatizadas son críticas para mainframes Los mainframes a menudo
manejan sistemas complejos que han estado
funcionando durante décadas Estos sistemas pueden tener
millones de líneas de código y están profundamente
integrados en los procesos de negocio. Esto hace que las pruebas sean
increíblemente importantes, pero hacerlo
manualmente no solo consume mucho
tiempo sino que es propenso a errores. Ahí es donde entran en juego
las pruebas automatizadas. He aquí por qué las pruebas automatizadas
son imprescindibles para los mainframes. Primero, confiabilidad. Los mainframes a menudo admiten servicios
esenciales como sistemas bancarios, de atención médica
o gubernamentales, donde inactividad o los errores pueden causar interrupciones
significativas Las pruebas automatizadas garantizan resultados
consistentes y confiables cada vez que se
cambia el código. Dos, velocidad. Las pruebas manuales pueden llevar horas, si no días, especialmente para aplicaciones
grandes de mainframe Las pruebas automatizadas se ejecutan
rápidamente, a menudo en minutos, lo que permite ciclos de
desarrollo más rápidos. Tres, escalabilidad. A medida que crecen las aplicaciones de mainframe, también lo hace la complejidad
de las pruebas Las pruebas automatizadas se pueden
ejecutar en paralelo cubriendo una amplia gama de casos de prueba que serían imposibles de
lograr manualmente. Para, reducir el error humano. Los probadores manuales pueden faltar cosas. Las pruebas automatizadas no. Una vez configuradas,
las pruebas automatizadas son precisas y confiables. Un ejemplo. Digamos que está manteniendo una
aplicación financiera basada en CVL que maneja miles
de transacciones diarias Un solo error en este sistema
podría retrasar los pagos, lo que llevaría a costosas repercusiones
para el negocio Prueba automatizada y verificación de problemas cada vez
que cambia el código, asegurando estabilidad y
confianza en cada implementación. Tipos de
pruebas automatizadas para mainframes. Ahora que entendemos
por qué las pruebas son esenciales, profundicemos en los tipos de pruebas que desea automatizar. Cada tipo de prueba
cumple un papel único garantizar que sus
aplicaciones de mainframe sean confiables, rendimiento y libres de errores Pruebas unitarias. Las pruebas unitarias se centran en probar
componentes individuales de su aplicación, ya sea una función,
un programa CBO o un script JCL Estas pruebas validan
que las partes más pequeñas de su aplicación se comportan
como se esperaba de forma aislada. Lo que implica probar una sola función o programa
para la salida de entrada esperada. Propósito para atrapar insectos temprano antes de que se propaguen
a través del sistema Tomemos un ejemplo. Estamos trabajando en un programa COBOL que calcula los impuestos sobre la nómina Una prueba unitaria para verificar si
el programa
calcula correctamente las deducciones fiscales con
base en diversos valores de entrada, por
ejemplo, el salario
y las tasas impositivas Esto asegura que sus cálculos de
nómina sean precisos antes de
integrarlos en el sistema más grande. Pruebas de regresión. Cuando
haces cambios en tu código, ¿cómo te aseguras de que tus funciones
existentes sigan funcionando? Aquí es donde entran en juego
las pruebas de regresión. Las pruebas de regresión están
diseñadas para detectar errores introducidos por el nuevo código que podrían romper la funcionalidad
anterior. Lo que implica probar las características
y funcionalidades existentes para garantizar que sigan
funcionando después de los cambios de código. Propósito para evitar que el código
recién introducido rompa el código estable
existente. Tomemos un ejemplo. Has agregado una nueva función a un sistema de informes financieros. Antes de implementar los cambios, prueba de
regresión
garantiza que características como el saldo de la cuenta, el historial de
transacciones y los informes sigan funcionando como se esperaba.
Pruebas de integración. Las aplicaciones de mainframe
rara vez existen de forma aislada. A menudo interactúan
con bases de datos, otros programas o sistemas
externos. Las pruebas de integración garantizan que todas estas piezas funcionen
juntas sin problemas. Lo que implica probar
cómo diferentes partes del sistema interactúan entre
sí , desde el código de mainframe
hasta los servicios externos Propósito para asegurar que
las integraciones entre módulos o servicios funcionen correctamente y no
causen errores inesperados Un ejemplo, una aplicación bancaria
basada en pareja recupera información de clientes
de un sistema basado en la nube Las pruebas de integración aseguran que la conexión entre
el mainframe y el servicio Cloud
funcione correctamente y que se estén
pasando los datos correctos entre los dos sistemas Pruebas de rendimiento.
El rendimiento lo es todo en un entorno de
mainframe de alta demanda Las pruebas de rendimiento
verifican cómo se comporta su aplicación
bajo una carga pesada, asegurando que pueda escalar
y manejar el
tráfico de pick sin
ralentizar o chocar. Lo que implica simular
altos volúmenes de transacciones, usuarios o datos para ver cómo
funciona el sistema bajo estrés Propósito para asegurar que su
aplicación funcione bien, incluso bajo carga máxima e
identificar cualquier cuellos de botella Un ejemplo, estás administrando un sistema de
procesamiento de reclamos de seguros. Durante el periodo pico
después de una tormenta importante, se espera una inundación de reclamos. Las pruebas de rendimiento
simulan este escenario, asegurando que el sistema pueda
manejar grandes volúmenes de procesamiento de reclamos sin que se
rompa ni se ralentice. Al
incorporar pruebas automatizadas en la canalización de CICD, las pruebas
automatizadas deben ser una parte integral de
su canalización de CICD, ejecutándose automáticamente en
etapas de su Al integrar las pruebas
en cada etapa, puede detectar errores temprano y evitar sorpresas cuando el
código llegue a producción. A continuación, le indicamos cómo podría integrar diferentes pruebas en
su canalización de CICD Primero, las pruebas unitarias se ejecutan inmediatamente después de que el código se
haya comprometido en el repositorio. Dos, las pruebas de regresión
se ejecutan después de las pruebas unitarias, asegurando que los nuevos cambios no rompan la
funcionalidad existente. Tres, las pruebas de integración se ejecutan después de que el código se despliega
en un entorno de
ensayo, probando las interacciones
entre los componentes. Cuatro, las pruebas de rendimiento
se ejecutan periódicamente o antes de las versiones principales para garantizar que el sistema pueda
manejar cargas elevadas. conclusiones clave de esta lección incluyen que las pruebas automatizadas son críticas para mantener la confiabilidad
del sistema y reducir los errores en las aplicaciones de
mainframe Los cuatro tipos principales de pruebas
automatizadas son las pruebas unitarias, que se centran en
componentes individuales, las pruebas de regresión, que garantizan que
los nuevos cambios no rompan las características existentes, las pruebas de
integración, que prueban cómo interactúan
los diferentes sistemas y las pruebas de rendimiento, que prueban cómo
funciona el sistema bajo carga. La integración de
pruebas automatizadas en su pipeline CICD garantiza una retroalimentación
continua, lo que reduce el riesgo de que los errores
lleguen a la producción Hagamos una actividad de aprendizaje. Identifique una aplicación de misión
crítica en su organización y determine qué tipos de pruebas
automatizadas serían
las más beneficiosas. Desarrollar una
estrategia básica de pruebas que incluya pruebas unitarias, regresión, de integración
y de rendimiento. Comparte tu estrategia de pruebas en el foro de discusión del curso y explica cómo la
incorporarías a un
pipeline de City ICAD. ¿Cuál es el siguiente? En la siguiente lección, nos
sumergiremos en las herramientas
que pueden ayudar a hacer
realidad las pruebas automatizadas para
aplicaciones de mainframe Cubriremos herramientas populares
como Unidad J para pruebas unitarias, selenio para pruebas de interfaz y cómo integrar estas herramientas con entornos
mainframe
19. Lección 2: herramientas para automatizar las pruebas de mainframe: Lección dos, herramientas para
automatizar pruebas de mainframe. Bienvenido de nuevo al Módulo cinco. En la lección anterior,
exploramos por qué las pruebas
automatizadas son críticas para los mainframes y los diferentes tipos de
pruebas que necesitamos implementar Ahora es el momento de llevar ese
conocimiento al siguiente nivel y explorar las herramientas que hacen posible las pruebas automatizadas. Es posible que esté familiarizado
con algunas de estas herramientas de entornos que no son
mainframe, pero hoy nos centraremos en cómo integrarlas en
sistemas mainframe Al final de esta
lección, tendrá una sólida comprensión de las herramientas de prueba como la
unidad J para pruebas unitarias,
selenio, para
pruebas de interfaz de usuario y otras, y cómo aplicarlas para automatizar las pruebas para aplicaciones de
mainframe Vamos a sumergirnos. ¿Por qué utilizar herramientas
de prueba para mainframes Las aplicaciones de mainframe
a menudo manejan operaciones de
misión crítica y se ejecutan en bases de código de
décadas de antigüedad
como CBL y PLO Probar estos sistemas manualmente no solo
es tedioso
sino también propenso a errores Ahí es donde entra en juego la
automatización, lo que nos permite ejecutar pruebas
consistentes una gran base de código para garantizar que todo el
sistema esté cubierto, no solo
los componentes aislados, y tres, ahorrar tiempo al automatizar tareas de prueba
repetitivas para que
los desarrolladores puedan centrarse en solucionar errores y
mejorar Tomemos un ejemplo.
Imagina que estás trabajando en un banco donde el mainframe procesa millones de
transacciones diariamente Introducir un error
en el sistema podría interrumpir los servicios o
incluso causar pérdidas financieras. Las
herramientas de prueba automatizadas pueden ayudarlo a identificar
rápidamente los problemas
antes de que lleguen a la producción, lo que garantiza que el sistema
siga siendo confiable. E herramientas de prueba para la automatización de
mainframe. Repasemos algunas de las
herramientas más comunes para automatizar pruebas de
mainframe junto con sus casos de uso y cómo se integran en entornos
mainframe La primera es la unidad J para pruebas
unitarias para mainframes. J Unit es uno de los frameworks más utilizados para pruebas unitarias en aplicaciones
Java. Pero, ¿sabías que también se puede adaptar para probar el código de mainframe Si bien Cobol y JCL
no están escritos en Java, aún
puede usar J
Unit para activar pruebas en aplicaciones mainframe
integrándolo con middleware
o envoltorios que
conectan su
entorno de mainframe con conectan su aún
puede usar J
Unit para activar pruebas
en aplicaciones mainframe
integrándolo con middleware
o envoltorios que
conectan su
entorno de mainframe con herramientas modernas de DevOps. ¿Para qué sirve? La
unidad J se utiliza para probar componentes
o funciones
individuales de forma aislada para garantizar que
funcionen como se esperaba. Integración. Puedes usar herramientas como Zoe CLI para
activar la prueba JUnit en el mainframe o desarrollar un
wrapper que te permita
ejecutar pruebas JUnit que simulen llamadas ejecutar pruebas JUnit Tomemos un ejemplo.
Estás administrando un sistema de nómina
escrito en COBOL, pero quieres asegurarte de que tu nueva
función de cálculo de horas extras funcione perfectamente Al configurar un marco basado en
unidades J, puede automatizar las pruebas
para esta función
simulando ejecuciones de trabajos COBOL
y validando los resultados Pruebas de suma o UI. Si bien el selenio se
usa principalmente para probar aplicaciones
web, también
es una herramienta fantástica para probar la interfaz de usuario o
la interfaz de
usuario de aplicaciones que interactúan
con sistemas mainframe, como los webends que con programas de mainframe back end ¿Para qué sirve? Selenium
automatiza las pruebas basadas en navegador, asegurando que las UI se comporten como se esperaba cuando interactúan
con Integración. Si
tiene una interfaz de usuario basada en la web o tablero que interactúa con el
sistema mainframe, por ejemplo, una IU de
procesamiento de reclamos de seguros, puede automatizar las pruebas
usando Selenium para garantizar que la
experiencia del usuario final Un ejemplo, se trabaja para una empresa minorista que tiene un portal web para
procesar pedidos, que se conecta al mainframe
para la administración de inventario Con Selenium, puede automatizar las pruebas para verificar que
los usuarios puedan realizar pedidos, verificar el inventario y recibir confirmaciones, todo sin
interrumpir Micro foco para pruebas de unidades de
cobalto. pruebas de unidades de microenfoque están diseñadas
específicamente para aplicaciones Cobol y mainframe Se integra directamente con entornos de desarrollo de
Cobble y le permite ejecutar pruebas unitarias en Coblde tal como lo haría con
cualquier lenguaje de programación moderno.
¿Para qué sirve? Testing COBOL programa
todas las rutinas directamente, asegurando que funcionen según lo previsto Integración, Microfocus
proporciona una plataforma que se integra tanto con su entorno
de
mainframe canalizaciones de Devos, lo
que facilita la
configuración de pruebas automatizadas dentro de Jenkins u Un ejemplo, estás a
cargo de actualizar un sistema de procesamiento de préstamos
basado en CBL Con micro focus, puedes escribir pruebas
automatizadas para asegurarte que el nuevo algoritmo de
aprobación de préstamos funcione en diferentes
escenarios e integrar esas pruebas en tu
pipeline para detectar errores temprano. IBM Rational test Workbench o
pruebas integrales para mainframes IBM Rational Test Workbench es una solución todo en uno que
admite pruebas unitarias, pruebas regresión y pruebas rendimiento para aplicaciones de
mainframe También se integra
a la perfección con Jenkins y Zoe para automatizar las pruebas a
través de su pipeline CICD ¿Para qué sirve? Pruebas integrales para aplicaciones de
mainframe, incluidas pruebas de carga, pruebas
funcionales y
pruebas de integración. Integración. IBM Rational test Workbench se conecta directamente a
su mainframe y puede automatizar pruebas en
diferentes etapas del proceso de desarrollo, desde pruebas
unitarias hasta pruebas de rendimiento en
todo
el sistema Un ejemplo, está administrando un sistema de
procesamiento de reclamos de atención médica que es fundamental para garantizar que los pacientes
reciban atención oportuna. IBM Rational test
Workbench le permite automatizar pruebas para
programas CBL, trabajos por lotes e incluso sistemas externos que interactúan con
su mainframe, asegurando que todo funcione
según lo esperado Integración de herramientas de prueba
en entornos mainframe. Ahora que conocemos las herramientas, veamos cómo
integrarlas en su entorno de
mainframe Las herramientas de prueba no
funcionan de forma aislada. Necesitan ser parte de un gasoducto de Devo para
ser realmente efectivos Primero, use Jenkins
para la automatización. Hablamos de Jenkins en lecciones
anteriores como la
columna vertebral de su pipeline de CICD Jenkins puede automatizar la
ejecución de pruebas en todo su sistema utilizando las
herramientas que acabamos de cubrir Así es como
podría verse una tubería típica de
Jenkins con
pruebas integradas Primero, commit de código. Un desarrollador compromete el
código de portada en el repositorio. Después pruebas unitarias. Jenkins activa microfoco o unidad
J para ejecutar
pruebas unitarias en el nuevo código Después pruebas de regresión. Jenkins ejecuta el banco de trabajo de pruebas de IBM
Rational para verificar que las
características existentes no estén rotas Después de eso, se trata de pruebas de
integración. Jenkins automatiza el
selenio para verificar que el WUI interactúa
correctamente con el Finalmente, pruebas de desempeño. Una vez que todo está estable, Jenkins activa una prueba de
rendimiento utilizando IBM Workbench para simular el tráfico del mundo
real En segundo lugar, Zoe CLI para interacciones de
mainframe. Si trabaja con soluciones de código
abierto, Zoe CLI puede ayudarle a integrar
herramientas modernas de Devo como Jenkins, J Unit y selenio en su entorno Zoe le permite interactuar con
conjuntos de datos, enviar trabajos y recuperar resultados
del mainframe, lo
que lo convierte en un actor clave en automatización de pruebas para Las conclusiones clave
de esta lección incluyen que J Unit es una gran herramienta
para automatizar pruebas unitarias, incluso en
entornos mainframe
simulando Cobol Selenium le permite
automatizar las pruebas de interfaz de usuario, lo que garantiza que las aplicaciones
front-end funcionen sin problemas con los back-ends de
mainframe Las pruebas de unidades de
micro enfoque están diseñadas para COBOL y proporcionan una potente plataforma para probar
código de mainframe directamente IBM Rational Test Workbench es una herramienta todo en uno
que automatiza regresión
funcional y las pruebas de
rendimiento para mainframes que se integran
fácilmente en Utilice Jenkins y Zoe CLI para automatizar
los procesos de prueba e integrar estas herramientas en su estrategia de DevOP de
mainframe Hagamos una actividad de aprendizaje. Elija una aplicación de mainframe
en su entorno y decida qué herramienta de prueba se
adaptaría mejor a sus necesidades, ya sea unidad J, selenio, microenfoque o IBM
Rational test word Diseñe una
tubería de pruebas básica usando Jenkins que incorpore al
menos dos de las herramientas que hemos discutido Comparta su diseño de tuberías en el foro de discusión del curso
y explique su elección de herramientas. ¿Cuál es el siguiente? En la siguiente lección,
profundizaremos en la automatización de
pruebas unitarias para código de mainframe Veremos cómo escribir y ejecutar
pruebas unitarias automatizadas para Cobol u otros lenguajes de mainframe y las
mejores prácticas para garantizar que la calidad de su
código siga siendo alta
20. Lección 3: automatización de pruebas de unidades para código de mainframe: Lección tres, automatización de
pruebas unitarias para código de mainframe. Bienvenido a la lección
tres del Módulo cinco. Ya hemos cubierto
por qué las pruebas automatizadas son cruciales y exploramos algunas herramientas para automatizar el proceso de
prueba Ahora es el momento de
profundizar en uno de los tipos de pruebas más
fundamentales, las pruebas
unitarias, centrándose
específicamente en el código de mainframe como Cobol, BL one o incluso ensamblador En esta lección,
vamos a aprender a escribir y ejecutar
pruebas unitarias automatizadas para código de mainframe Analizamos las mejores prácticas para garantizar
código de alta calidad y exploramos cómo las pruebas
unitarias pueden ser
una herramienta poderosa para detectar errores al principio
del ciclo de desarrollo. Al final de esta lección, podrá diseñar y
automatizar
con confianza las pruebas unitarias para sus aplicaciones de
mainframe, asegurando que su código sea
sólido como una roca antes de pasar
a la siguiente etapa Empecemos. ¿Qué son las pruebas
unitarias y por qué
es importante? Las pruebas unitarias son el
proceso de probar componentes
o funciones
individuales de un programa de forma aislada. El objetivo es asegurar que cada pequeña
parte comprobable del código o una unidad funcione según previsto antes de
integrarlo con otros componentes Las pruebas unitarias proporcionan una
red de seguridad durante el desarrollo al identificar errores
mucho antes de que se conviertan en problemas de todo el
sistema. Para aplicaciones de mainframe, las pruebas
unitarias son especialmente importantes porque
uno, los sistemas heredados Los mainframes a menudo ejecutan código que ha estado en
producción durante décadas Es crucial probar los nuevos
componentes rigurosamente para garantizar que no
interrumpan los sistemas existentes Dos, lógica compleja. Muchas aplicaciones de mainframe manejan complejas lógicas de negocios, cálculos
financieros
o procesamiento de datos Probar estas unidades de forma aislada
ayuda a garantizar la precisión. Tres, detección temprana de errores. Las pruebas unitarias detectan errores antes de que se
incrusten profundamente en el sistema, lo que los hace más fáciles
y baratos de corregir. Tomemos un ejemplo. Imagina que estás trabajando en una aplicación de cobalto que procesa los pagos de
préstamos de clientes. Si un error en la lógica de
cálculo de pagos pasa desapercibido, podría llevar a cálculos de
intereses incorrectos causando grandes problemas financieros Una captura de
prueba unitaria bien diseñada atraparía ese error temprano, lo que le permite solucionarlo antes de que
impacte a los clientes. Guía paso a paso para escribir pruebas unitarias
para código de mainframe Ahora que sabemos por qué
las pruebas unitarias son esenciales, entremos en los
detalles de cómo
escribir y automatizar
pruebas unitarias para código de mainframe Nos centraremos en el cobol
en esta lección, pero los principios también pueden aplicarse a otros
lenguajes de mainframe Paso uno, divide el código
en unidades comprobables. El primer paso en la prueba
unitaria de escritura es identificar las piezas más pequeñas de funcionalidad que
se pueden probar de forma independiente. En cobol, este podría ser un programa individual,
párrafo o subrutina Por ejemplo, si tienes un programa cobol que
calcula impuestos, podrías aislar la lógica de
cálculo de impuestos como una unidad separada Aquí hay una subrutina CBL de muestra
para el cálculo de impuestos. Esta subrutina
toma un salario y una tasa impositiva como insumo y
calcula un monto de impuestos Es un candidato perfecto
para la prueba unitaria. Paso dos, escribe la prueba unitaria. Ahora escribamos una
prueba unitaria para validar que la
lógica de cálculo de impuestos funciona como se esperaba. Querrás probar
diferentes montos salariales, tasas
impositivas y casos extremos. Por ejemplo, ¿qué pasa
cuando el salario es cero? Usando
pruebas de unidad de micro enfoque para cobol, podrías escribir un caso de
prueba como este Aquí, estamos fijando
el salario 50,000 y la tasa impositiva en 15%. En la prueba unitaria se afirma que se calcula la cantidad correcta de impuestos,
7,500 Paso tres, prueba automatizada. El verdadero poder de las pruebas unitarias
viene cuando se automatizan. En lugar de ejecutar manualmente esta prueba cada vez
que actualice el programa, puede configurar su canalización
CICD para ejecutar pruebas
unitarias automáticamente
cada vez que se confirme el código De esta manera, sabrás instantáneamente si algún cambio rompe
la funcionalidad. Usando Jenkins para automatizar la prueba de la unidad de
adoquines, el proceso se ve
así Uno, el desarrollador omite un
cambio en la base de código Cobol. Dos, Jenkins activa
automáticamente un trabajo para ejecutar todas las pruebas unitarias, incluida la prueba de
cálculo de impuestos Y tres, si pasan las pruebas, procede
el ducto. Si fallan, Jenkins notifica al equipo para que se pueda solucionar
el problema Esta automatización ahorra tiempo y reduce el riesgo de que los errores
entren en producción Mejores prácticas para
pruebas unitarias de código de mainframe. Ahora que hemos visto cómo
escribir una prueba unitaria automatizada, veamos algunas de las
mejores prácticas para garantizar que sus pruebas unitarias sean
efectivas y mantenibles Primero, escribir pruebas claras
y concisas. Cada prueba unitaria debe centrarse en probar una
pieza específica de funcionalidad. Si la prueba es demasiado amplia, puede ser más difícil identificar qué salió mal
cuando falla una prueba. Por ejemplo, una prueba debe validar un
solo cálculo o una condición única o específica en lugar de intentar probar
varias cosas a la vez. Aquí tienes una propina. Usa nombres
descriptivos para tus casos de prueba
como calcular impuestos, subrayar con
insumos válidos o calcular impuestos, guión bajo, con salario cero Está claro qué es lo que está comprobando cada
prueba. Segundo, casos de borde de prueba. Asegúrese de
probar las
cajas de borde de la cubierta de la unidad , como valores cero
o negativos, valores entrada
máximos y mínimos. Entrada inesperada, por ejemplo, caracteres
no numéricos en un
campo que espera un número. Al cubrir estos casos, puede detectar errores que podrían no aparecer en escenarios típicos. Tercero, mantener las pruebas independientes. Cada prueba debe ejecutarse
independientemente de las demás. Esto significa que la prueba
no debe depender de ningún estado externo. Por ejemplo, el resultado de una prueba
previa para poder pasar. Si una prueba falla, no debería crear una cascada
de fallas en otras pruebas. O ejecutar pruebas con frecuencia. La belleza de las pruebas
unitarias automatizadas es que se pueden ejecutar
tantas veces como sea necesario. En una canalización
CICD bien construida, las pruebas deben ejecutarse cada
vez que se compromete el código, por lo que obtiene
comentarios inmediatos sobre cualquier problema Esto hace que sea más
fácil corregir errores tan pronto como se introduzcan en
lugar de días o semanas después. Los puntos clave de
esta lección incluyen. Las pruebas unitarias son esenciales
para detectar errores temprano, especialmente en
entornos de mainframe donde lógica de negocios
compleja
necesita ser validada Al escribir pruebas unitarias, concéntrese en pequeños
componentes comprobables y cubra una amplia gama de escenarios,
incluidos los casos de borde La automatización de las pruebas unitarias en su canalización
CICD garantiza que
las pruebas se ejecuten de manera consistente y proporcionen
retroalimentación inmediata sobre la calidad del código Las mejores prácticas incluyen
escribir pruebas de enfoque claro, cubrir casos de borde y mantener las pruebas independientes
entre sí. Hagamos una actividad de aprendizaje. Elija un programa cobol o JCL
en su organización e identifique una pequeña pieza de
funcionalidad que pueda
probarse de funcionalidad que pueda
probarse Escriba una prueba unitaria para
esa funcionalidad, cubriendo tanto los casos típicos como
los de borde. Configure una tubería de Jenkins
o use una existente para automatizar la ejecución de esta prueba unitaria cada vez que se actualice
el código ¿Cuál es el siguiente? En la siguiente lección, pasaremos a las pruebas de
regresión. Otro aspecto crucial para
garantizar la calidad del código. Exploraremos cómo configurar una prueba de regresión
automatizada que garantice que nuevos cambios de código no rompan funcionalidad
existente
y cómo integrarlos en
su canalización CICD
21. Lección 4: implementación de pruebas de regresión automatizadas: Lección cuatro, implementación de pruebas de regresión
automatizadas. Bienvenido a la lección
cuatro Módulo cinco. En la lección anterior,
exploramos cómo
escribir y ejecutar
pruebas unitarias automatizadas para código de mainframe Ahora es el momento de ampliar nuestra estrategia de pruebas mediante la implementación de pruebas de
regresión automatizadas. Las pruebas de regresión garantizan
que los nuevos cambios su código no rompan la funcionalidad
existente, en
su código no rompan la funcionalidad
existente,
un paso crucial para mantener la integridad de
sistemas complejos grandes como mainframes En esta lección,
profundizaremos en lo siguiente,
cómo configurar la prueba de regresión para salvaguardar sus aplicaciones de
mainframe Por qué las pruebas de regresión son esenciales para detectar efectos secundarios
no deseados Cómo integrar las pruebas de
regresión en su canalización de CICD para hacer de las pruebas un proceso automatizado
sin fisuras Al final de esta lección, podrá implementar una
estrategia de pruebas de regresión que proteja sus aplicaciones de mainframe
del riesgo de cambios de código.
Empecemos. ¿Qué es la prueba de regresión
y por qué la necesitas? Las pruebas de regresión son
el proceso de probar la funcionalidad
existente
para garantizar
que no se haya roto
por nuevos cambios de código. El objetivo es detectar efectos
secundarios inesperados que podrían causar errores en partes
del sistema que no fueron modificadas
directamente. Para mainframes, las pruebas de
regresión son críticas debido a
lo siguiente Uno, sistemas heredados. Las aplicaciones de mainframe a menudo
están altamente interconectadas con
dependencias complejas entre módulos Cambiar una parte
del código puede tener
consecuencias no deseadas en otra parte Dos, estabilidad a largo plazo. Muchos sistemas mainframe ejecutan código que ha estado en
producción durante décadas Los sistemas deben ser estables y las
pruebas de regresión aseguran que nuevas características o correcciones no desestabilicen la funcionalidad
existente Tres, aplicaciones de misión
crítica. mainframes se utilizan en sectores como la banca, la salud
y el gobierno Un pequeño error puede tener
enormes consecuencias, mantener la confiabilidad
es esencial. Tomemos un ejemplo. Digamos que estás actualizando una solicitud de CBL que procesa
solicitudes de préstamo para un banco Agrega una nueva
función para calcular las tasas de
interés en base a
una fórmula diferente. Sin pruebas de regresión, es posible que haya roto inadvertidamente la lógica de aprobación de préstamos existente causando problemas a los usuarios que
solicitan La prueba de regresión atraparía este problema antes de que
llegue a la producción. Guía paso a paso para
configurar pruebas de regresión automatizadas. Ahora que entendemos por qué las pruebas de
regresión son importantes, veamos cómo
configurarlo en un entorno de
mainframe Repasaremos
los pasos para crear pruebas de regresión
efectivas y automatizarlas en
su pipeline de CICD Paso uno, identificar la
funcionalidad crítica para probar. El primer paso para configurar prueba de
regresión es identificar las características principales de su aplicación
mainframe que siempre deben funcionar Estas son las funciones que de romperse
causarían más disrupciones. Por ejemplo, en una aplicación
bancaria, esto podría incluir la siguiente lógica de procesamiento de
préstamos, cálculos de
pagos o comprobaciones de saldo de
cuentas. Una vez que identifique las áreas clave, puede crear un
conjunto de pruebas que se centre en verificar estas funciones
después de cada cambio de código. Escribir casos de prueba de regresión. A continuación, es necesario escribir casos
de prueba para cada
pieza de funcionalidad. Las pruebas Tse deben cubrir
tanto los casos de uso típicos como los casos de
borde para garantizar que sistema funcione bajo una
variedad de condiciones El objetivo es captar cualquier cambio involuntario
causado por un nuevo código Por ejemplo, típico
para un caso típico, cliente solicita un préstamo y el sistema calcula correctamente su pago
mensual. Para el caso de borde, el cliente solicita un préstamo con
saldo negativo, y el sistema
maneja correctamente el error
sin chocar Aquí hay un ejemplo
de un caso de prueba. Es un programa de
procesamiento de préstamos CBL. Esta prueba asegura que la lógica de aprobación del
préstamo calcula el
pago mensual correcto de un préstamo de $10,000 a una tasa de interés
del 5% Paso tres, automatizar las pruebas de
regresión. Ahora que has escrito
tu prueba de regresión, es momento de automatizarlas. automatización asegura
que las pruebas se ejecuten cada vez que cambia el código, proporcionando
retroalimentación inmediata sobre si el nuevo código ha roto alguna funcionalidad
existente. Usando Jenkins para automatizar la prueba de
regresión, el flujo de trabajo podría
verse así Primero, un desarrollador permite un cambio de código en el repositorio. Entonces Jenkins desencadena
automáticamente la demanda de prueba de regresión Si todas las pruebas pasan, la tubería procede
al despliegue. Si alguna prueba falla, Jenkins detiene el proceso
y alerta al equipo Automatizar las pruebas de regresión de
esta manera asegura
que ningún cambio de código llegue a la producción sin ser probado
a fondo para detectar
posibles efectos secundarios Paso cuatro: integre las pruebas de
regresión en su canalización CICD Para lograr la máxima eficiencia, la prueba de
regresión debe
integrarse completamente en su canalización CICD Esto significa que se ejecutan
automáticamente como parte
del
proceso de desarrollo junto con pruebas
unitarias y pruebas de
integración. Aquí no hay una típica
prueba de regresión de
tubería CICD podría parecer Uno, código commit. Un desarrollador compromete código
en el repositorio principal. Después pruebas unitarias. Jenkins realiza pruebas
unitarias automatizadas para verificar que
los componentes individuales funcionen como se esperaba Tercero, las pruebas de regresión. Jenkins ejecuta el conjunto de
pruebas de regresión para garantizar que el cambio de código no haya roto
ninguna funcionalidad existente Después pruebas de integración. Jenkins prueba cómo
interactúa el nuevo código con otros
sistemas o componentes Y por último, despliegue. Si todas las pruebas pasan, el código se despliega
en producción. Al integrar
las pruebas de regresión en la tubería, se asegura de
que las pruebas sean continuas
y se realicen automáticamente
en cada etapa del ciclo de desarrollo. Mejores prácticas para pruebas de
regresión efectivas. Para aprovechar al máximo
tu prueba de regresión, sigue las mejores prácticas. Uno, priorizar las áreas de alto riesgo. No todas las partes de
su aplicación requieren el mismo
nivel de pruebas. Enfoca tus
pruebas de regresión en las áreas que son más críticas para
el funcionamiento del sistema. Para mainframes, esto podría incluir cálculos financieros, procesamiento de
transacciones
o pruebas de integridad de datos Dos, mantén tu suite de pruebas. A medida que su aplicación evoluciona, también debería hacerlo su suite de pruebas de
regresión Actualiza regularmente
tus pruebas para cubrir nuevas funciones y asegurarte que reflejen el
estado actual del sistema. Eliminar pruebas obsoletas
que ya no aplican. Tercero, realizar pruebas con frecuencia. Cuanto más a menudo corras
en tu prueba
de regresión, más pronto podrás
detectar y solucionar problemas. Al automatizar sus pruebas e
integrarlas en
su canalización de CICD, puede asegurarse de que se ejecuten cada
vez que se comete el código, reduce el riesgo de que se
produzcan errores. Cuarto, usar
datos reales para las pruebas. Cuando sea posible, use datos del mundo
real en
su prueba de regresión. Esto asegura que las pruebas sean lo más realistas posible y que su sistema se comporte correctamente en entornos de producción
como Las conclusiones clave
de esta lección incluyen que las pruebas de regresión son esenciales para garantizar que nuevos cambios de código no rompan la funcionalidad
existente, especialmente en
sistemas mainframe complejos Automatice las pruebas de regresión
e intégrelas en su canalización CICD para garantizar que las pruebas sean
continuas y eficientes Las mejores prácticas incluyen
priorizar áreas de alto riesgo, mantener su conjunto de pruebas, ejecutar pruebas con frecuencia
y usar datos reales Hagamos una actividad de aprendizaje. Identifique una característica de misión
crítica en una de sus
aplicaciones de mainframe que
siempre debe someterse a pruebas de regresión
después de cualquier cambio de código Escriba una prueba de regresión para esta característica que cubra casos
típicos y de borde. Prueba automatizada usando Jenkins u otra herramienta CICD y comparte tu configuración en el foro de discusión del
curso ¿Cuál es el siguiente? En el siguiente módulo, pasaremos a automatizar implementaciones para aplicaciones de
mainframe Aprenderá a usar herramientas
como Ansib IBM Urban code o BMC Control para agilizar el proceso de implementación y garantizar implementaciones fluidas y
confiables
22. Lección 1: automatización de implementaciones de aplicaciones de mainframe: Módulo seis, agilizando
el despliegue con automatización. En este módulo,
exploraremos lo siguiente,
cómo automatizar la implementación de
aplicaciones de mainframe utilizando herramientas como
responsableable, IBM Urban code y PMC Control M. Mejores prácticas para garantizar implementaciones
confiables en sistemas de misión crítica, cómo implementar mecanismos de
rollback para recuperación
rápida Al final de este módulo, tendrá el conocimiento
y las herramientas para automatizar su proceso de implementación reduciendo el inactividad y
aumentando la eficiencia. Lección uno, automatización de implementaciones de
aplicaciones de mainframe. Bienvenido a la Lección
Uno del Módulo Seis. Hasta ahora, hemos
explorado el poder de la automatización y las pruebas
y los procesos CICD Ahora es el momento de enfocarse
en una fase crítica
en la implementación del
ciclo de vida del software. En esta lección,
vamos a
profundizar en la automatización de implementaciones de
aplicaciones de mainframe Exploraremos herramientas como
Ansib, IBM Urban code y VMC Control M aprenderemos cómo
optimizan
y automatizan las implementaciones asegurando velocidad y confiabilidad en sistemas de misión
crítica Al final de esta lección, comprenderá
lo siguiente, cómo automatizar las implementaciones
en su sistema de formularios principal Las mejores prácticas para garantizar que las
implementaciones sean fluidas, libres de
errores y repetibles Cómo la automatización reduce la intervención
manual y garantiza
resultados consistentes. Empecemos. ¿Por qué automatizar las
implementaciones de mainframe? La implementación de aplicaciones
en mainframes ha sido históricamente un proceso
manual y complejo Este enfoque manual puede generar errores, retrasos e
inconsistencias, particularmente en
entornos donde inactividad o los errores pueden causar interrupciones importantes como banca o Aquí es donde interviene
la automatización para resolver estos problemas. La automatización de las implementaciones de mainframe
ofrece varias ventajas. Primero, consistencia. Las implementaciones automatizadas
siguen los mismos pasos cada vez que reducen los errores humanos Segundo, la velocidad, tarea que antes tomaba horas ahora se puede
completar en minutos. En tercer lugar, menor tiempo de inactividad. Las implementaciones automatizadas
minimizan el tiempo de inactividad, un factor crítico para los sistemas de
misión crítica Cuarto, escalabilidad. La automatización le permite implementar en múltiples
entornos a escala, ya sea que esté administrando
un solo mainframe o una flota de servidores.
Tomemos un ejemplo. Imagine trabajar en un banco grande donde se
deben implementar nuevos parches de seguridad en
varios sistemas mainframe en diferentes regiones Hacer esto manualmente
puede ser lento y arriesgado. La automatización del
proceso de implementación garantiza que los
parches se apliquen de
manera consistente y rápida, lo reduce el riesgo de vulnerabilidades de
seguridad e interrupciones operativas Elegir la herramienta adecuada
para la automatización de la implementación. Hay varias herramientas potentes disponibles para automatizar las implementaciones de
mainframe Cada uno tiene sus propias fortalezas dependiendo de su entorno
y requerimientos. Exploremos tres opciones
populares AnsiBO IBM Urban code
y BMC Control Respondible. Answerable es una herramienta de
automatización de código abierto que se
puede utilizar para administrar tareas de
implementación en diferentes entornos,
incluidos Es conocido por su simplicidad y su arquitectura menos agente. Las características clave incluyen menos agente. AnsiBL no requiere que se instalen
agentes en su mainframe, lo que reduce la
sobrecarga. Cuadernos de jugadas Define
tareas de implementación en playbooks, archivos Yamal
simples que son
fáciles de escribir y entender Escalabilidad. Responsible
puede administrar implementaciones en cientos de sistemas simultáneamente.
Cómo funciona. Se escribe un
libro de jugadas con respuesta que describe los pasos de implementación,
como copiar archivos, enviar trabajos o ejecutar
comandos en el Ansib luego ejecuta este
paso en el orden correcto, asegurando que el despliegue sea consistente
en todos los sistemas Aquí hay un ejemplo de un libro de jugadas para implementar
una aplicación cobot IBM Urban Co Deploy. IBM Urban Co Deploy es una
potente herramienta diseñada específicamente para
automatizar implementaciones
en entornos empresariales
complejos Es ampliamente utilizado para implementaciones de
mainframe en industrias como banca,
telecomunicaciones y seguros Las características clave incluyen modelos de implementación
visual. Puede crear modelos visuales
de su proceso de implementación, facilitando la
gestión de flujos de trabajo complejos. Gestión del entorno El código
urbano
le permite implementar en múltiples
entornos como desarrollo, puesta en escena y producción
en un solo flujo de trabajo. Integración, se integra
con otras herramientas como Jenkins y Ansibl proporcionando flexibilidad en su pipeline de
automatización Cómo funciona.
El código urbano automatiza la implementación mediante la ejecución de procesos
definidos como la transferencia de archivos, ejecución de trabajos JCL
y la verificación Ofrece
opciones de reversión en caso que algo salga mal,
lo que garantiza implementaciones seguras Escenario de ejemplo,
está implementando una nueva función para un sistema de procesamiento de
reclamos de seguros. código urbano automatiza
la transferencia de nuevo código al mainframe, envía los trabajos necesarios
y verifica que la función se esté ejecutando correctamente
antes de
moverla El código urbano automatiza
la transferencia
de nuevo código al mainframe,
envía los trabajos necesarios
y verifica que la función
se esté ejecutando correctamente
antes de
moverla a producción. Control. BMC Control M es
otra herramienta popular para administrar cargas de trabajo por lotes
y automatizar implementaciones Está diseñado para entornos
complejos y admite la integración
con sistemas mainframe Las características clave incluyen
una programación integral. El control sobresale en la gestión de programaciones
complejas de trabajos en diferentes
entornos. Automatización laboral. Automatiza todo el ciclo de vida del
trabajo desde ejecución hasta el monitoreo.
Administración de lotes. Ideal para administrar cargas de trabajo
por lotes, que son comunes en entornos
mainframe Cómo funciona, Patrol M
permite automatizar los procesos de ejecución
e implementación de trabajos. Puede definir dependencias
entre trabajos y asegurarse de que las tareas se ejecuten
en el orden correcto También ofrece monitoreo en
tiempo real, para que pueda ver exactamente dónde se encuentra
su implementación en cualquier momento. Escenario de ejemplo,
está implementando un
proceso por lotes actualizado para manejar transacciones de un día
para un banco global. Control M automatiza la
ejecución de este proceso, asegurando que se ejecute
a tiempo y se complete con éxito al tiempo que
le avisa si surge algún problema Mejores prácticas para automatizar implementaciones de
mainframe. Ahora que hemos
cubierto las herramientas, hablemos de las mejores prácticas para automatizar las implementaciones de
mainframe Estas prácticas
ayudarán a garantizar que sus implementaciones sean fluidas,
confiables y repetibles Primero, use Control de versiones
para scripts de implementación. Al igual que con el código de la aplicación, sus scripts de implementación
deben almacenarse en un
sistema de control de versiones como Git. Esto le permite realizar un seguimiento los cambios en su proceso de
implementación, colaborar con
otros miembros del equipo y retroceder a versiones
anteriores si algo sale mal. Un ejemplo, imagina que acabas actualizar un script de implementación para agregar una nueva característica de seguridad. Posteriormente, descubre que este cambio rompió el proceso
de implementación. Al tener tu
versión de script en Gib, puedes volver rápidamente a la versión
anterior de trabajo En segundo lugar, implemente
un manejo robusto de errores. Las cosas no siempre
salen según lo planeado, especialmente en entornos de
mainframe complejos Asegúrese de que la
automatización de su implementación incluya el manejo de errores para detectar
y administrar fallas. Por ejemplo, si falla un trabajo de JCL, el proceso de implementación
debería poder registrar el error, notificar al equipo y potencialmente
revertir los cambios Tercero, prueba en estadificación
antes de la producción. Nunca se desplieguen directamente producción sin realizar pruebas
en un entorno de ensayo. Esto le ayuda a detectar cualquier
problema temprano y garantizar que el proceso de implementación sea
fluido antes de que impacte en los usuarios. Cuatro mecanismos de
reversión automatizados. La automatización de la implementación no se trata
solo de impulsar el código en vivo. También se trata de retroceder
cuando algo sale mal. Asegúrese de que su
proceso de automatización incluya mecanismos de reversión
automatizados que puedan
volver rápidamente a una versión
estable anterior si falla una implementación conclusiones clave de
esta lección incluyen automatización de implementaciones que
reduce la intervención manual, minimiza los errores y acelera el proceso de lanzamiento para Herramientas como NCB, IBM Urban code y BMC Control son potentes opciones para automatizar implementaciones Siga las mejores prácticas, como
el uso de control de versiones, manejo de
errores y
entornos para garantizar que las implementaciones
sean fluidas y confiables Hagamos una actividad de aprendizaje. Elija una de las herramientas
que discutamos responsables, IBM Urban code o BMC Control M, y escriba un proceso de
implementación simple
para una para una Implemente el proceso en un entorno de ensayo y pruebe la implementación para garantizar
que se ejecute sin problemas. Comparte tu experiencia en el foro de discusión del
curso, explicando cualquier desafío que hayas encontrado y cómo
los resuelves. ¿Cuál es el siguiente? En la siguiente lección, discutiremos cómo implementar mecanismos de
reversión y recuperación para la implementación automatizada Aprenderá a manejar fallas de
implementación y garantizar una recuperación rápida
con un tiempo de inactividad mínimo.
23. Lección 2: creación de mecanismos de retroceso y recuperación: Lección dos, crear mecanismos de reversión
y recuperación. Bienvenido a la Lección
Dos del Módulo Seis. En nuestra lección anterior, exploramos cómo automatizar las implementaciones de aplicaciones de
mainframe Pero qué pasa cuando
las cosas no salen según lo planeado. En esta lección, nos centraremos en un aspecto crucial de la automatización de la
implementación, la reversión y los mecanismos de
recuperación Las implementaciones no son infalibles, y cuando algo sale mal, necesita una forma de volver
a un estado estable rápidamente, minimizando el tiempo de inactividad y el
impacto Al final de esta lección, sabrás
hacer lo siguiente. Implementar procesos de
rollback automatizados en caso de implementación fallida Garantice un tiempo de inactividad mínimo
y una recuperación rápida durante los problemas de implementación. Utilice estrategias del mundo real para prepararse para fallas inesperadas
de implementación. Participemos y
aprendamos cómo asegurarnos sus implementaciones
no solo sean rápidas sino seguras ¿Por qué son importantes los
mecanismos de reversión y recuperación? La implementación de la producción de código
siempre es una operación de alto interés, especialmente en entornos de misión crítica
como mainframes, donde una implementación fallida
podría interrumpir los servicios bancarios, de
atención médica o
gubernamentales Si bien apuntamos a implementaciones
sin problemas, las cosas pueden salir mal y funcionan Los errores se deslizan, los sistemas
se comportan inesperadamente o las configuraciones pueden
no ser del todo correctas. Con nuestra estrategia de reversión, te queda luchando para
solucionar el problema manualmente Esto puede llevar a un tiempo de inactividad
prolongado , usuarios
frustrados y posibles
daños al sistema. Al implementar mecanismos
automatizados de reversión y
recuperación, asegura de que cuando surja
un problema, pueda
volver rápida
y automáticamente a un buen estado conocido Tomemos un ejemplo. Digamos que está implementando
una nueva función para manejar las solicitudes de préstamos
en un sistema bancario. Todo parece estar
bien en las pruebas. Pero una vez en producción, el sistema comienza a calcular mal las tasas de
interés para
ciertos tipos de préstamos En lugar de esforzarse para solucionarlo en vivo y permitir que los usuarios
encuentren el error, un proceso de reversión automatizado podría detectar la falla y
restaurar la versión
estable anterior antes de que impacte Identificar
puntos clave para la reversión. El primer paso para implementar
un mecanismo de rollback es comprender qué
debería desencadenar una reversión Esto implica identificar puntos
clave en el proceso de implementación donde algo podría
fallar o salir mal. La reversión debe activarse cuando se cumpla alguna de estas
condiciones Fallas de código. El código
recién implementado tiene errores o
errores
críticos. Fracasos laborales. Un trabajo por lotes, un script JCL o proceso
automatizado no se
completa como se esperaba Degradación del rendimiento del sistema. El sistema se ralentiza o
comienza a arrojar errores bajo problemas de integración de carga. El nuevo despliegue
no interactúa bien con otros
sistemas o servicios. Cuando surja alguno de estos problemas, el mecanismo de reversión
debería iniciarse para restaurar la versión estable anterior del código o
la
configuración del sistema Un ejemplo, implementas un nuevo módulo COBOL
que se supone calcula bonificaciones para los empleados, pero después de la implementación,
notas que los
trabajos de nómina están fallando Esto desencadenaría una reversión
automática, restaurando la versión
anterior
del sistema de nómina para que los empleados sigan recibiendo
pagos sin interrupciones Implementación de
rollback automatizado con herramientas. Hay varias
herramientas disponibles que pueden automatizar el proceso de
reversión Veamos cómo los responsables, código
IBM Urban y control
BMC pueden ayudar a automatizar las reversiones en entornos mainframe. Rollback con responsableable. Responsible te permite
definir tareas de rollback
en Estas tareas pueden revertir archivos, configuraciones o sistemas a nuestro anterior de. Cómo funciona. Si una tarea de implementación falla, respuesta puede desencadenar un proceso de reversión
predefinido Puedes definir pasos como
revertir el código, restaurar archivos desde una copia de seguridad o redistribuir una versión estable Aquí hay un
libro de jugadas de ejemplo para rollback. En este libro de jugadas,
contundente comprueba errores y automáticamente
retrocede si algo Rollback con IBM
Urban code Deploy. IBM Urban cod Deplye
soporta la reversión automatizada al permitirle configurar procesos de
reversión
en caso Se integra con
canalizaciones CICD para volver a la última implementación de la tabla
si se
detecta un error la última implementación de la tabla
si se
detecta un error. Cómo funciona. código urbano rastrea
cada implementación, retroceder a una versión
anterior es tan simple como ejecutar
un plan de reversión, que puede restaurar archivos, configuraciones o
incluso estados de bases Escenario de ejemplo. Durante la implementación de
una nueva función, falla
un script que actualiza el esquema
de la base de datos. código urbano detecta
la falla y automáticamente revierte el sistema al último estado estable, asegurando que no haya
interrupciones en el servicio Rollback con BMC
Control M. BMC Control M maneja el rollback automatizando
la restauración de trabajos y configuraciones por la restauración de trabajos Si un trabajo falla,
Control M puede ejecutar procesos
de reversión para restaurar el
estado anterior del sistema. Cómo funciona. Control M le permite programar trabajos de
reversión que
se activan cuando se cumplen ciertas condiciones, como un fallo de trabajo o error
durante un proceso por lotes Escenario de ejemplo, un proceso
por lotes que procesa esta transacción del cliente
falla a mitad de camino Control M detecta el problema y
invierte automáticamente el sistema
al último lote completado asegurando que no se pierdan
las transacciones de los clientes. Mejores prácticas para
rollback y recuperación. Al configurar mecanismos
de reversión, hay varias
prácticas recomendadas que debe seguir para garantizar
que funcionen de manera confiable Primero, asegúrese de que las reversiones
sean reversibles. Siempre asegúrese de que cualquier rollback que implemente
se pueda revertir fácilmente En algunos casos, una reversión podría solucionar un problema pero
crear otro, por lo que debería tener la
capacidad de volver a aplicar la implementación original
después de resolver el problema Segundo, procedimientos de
reversión de pruebas. No es suficiente tener un plan de
reversión en su lugar. necesario probarlo regularmente para asegurarse de que funcione como se esperaba. Simule fallas de implementación
en un entorno de ensayo y verifique que el proceso de reversión restaure el sistema correctamente En tercer lugar, automatice los retrocesos
para escenarios clave. Automatice los retrocesos para los escenarios
más críticos como fallas de trabajo, errores
críticos en la aplicación o degradación del
rendimiento del sistema Esto asegura que
su sistema se recupere rápidamente sin necesidad de intervención
manual Cuatro, monitorear métricas
de implementación. Configure herramientas de monitoreo para
rastrear el rendimiento de la implementación y activar
automáticamente los procedimientos de
reversión cuando se cruzan los umbrales clave Esto podría incluir tiempos de
respuesta, tasas de
error o sistema solo. Las conclusiones clave
de esta lección
incluyen los mecanismos de reversión que son críticos para minimizar el tiempo de inactividad y garantizar una recuperación rápida
cuando las implementaciones fallan Automatice las reversiones utilizando
herramientas como responsableable,
IBM Urban code o BMC Control M
para volver a estados
estables anteriores cuando surjan problemas de implementación IBM Urban code o BMC Control M para volver a estados
estables anteriores . Siga las mejores prácticas como garantizar que los retrocesos
sean reversibles, probar los procedimientos
y automatizar retrocesos para los puntos clave Hagamos una actividad de aprendizaje. Elija una
herramienta de implementación, respondible, IBM Urban code o BNC Control y configure un proceso de
rollback automatizado
para una para Simule una falla de implementación en un entorno de ensayo y pruebe su mecanismo de reversión
para asegurarse de que funciona Comparte tu experiencia en el foro de discusión del
curso, incluyendo cualquier desafío que hayas encontrado y cómo los
superaste. ¿Cuál es el siguiente? En la siguiente lección, nos centraremos en monitorear y administrar
implementaciones automatizadas Aprenderá a usar herramientas para rastrear el proceso de
implementación, administrar registros y garantizar que todo funcione
sin problemas en tiempo real.
24. Lección 3: monitoreo y administración de implementaciones automatizadas: Lección tres, monitoreo y administración de
despliegues automatizados Bienvenido a la lección
tres del Módulo seis. Ya hemos cubierto
cómo automatizar las implementaciones y crear mecanismos de
rollback. Ahora es el momento de
centrarse en cómo monitorear y administrar
implementaciones automatizadas de manera efectiva. La automatización simplifica
las implementaciones, pero es fundamental
monitorear esos procesos para monitorear esos procesos garantizar que todo funcione sin problemas En esta lección,
aprenderá a realizar un seguimiento de
sus implementaciones, administrar registros y detectar cualquier problema antes de
que se conviertan en problemas Exploraremos herramientas
que le ayudarán a vigilar la ayuda de implementación, asegurando un ciclo de lanzamiento sin problemas. Al final de esta lección, comprenderá
lo
siguiente, cómo monitorear
las implementaciones en tiempo real Las mejores herramientas y
técnicas para
rastrear el estado de implementación y los registros. Cómo solucionar y
resolver problemas rápidamente durante la implementación Vamos a sumergirnos en el mundo del monitoreo y administrar implementaciones
automatizadas Por qué es fundamental supervisar
las implementaciones automatizadas. Imagine que acaba de iniciar una implementación automatizada en
un sistema de misión crítica. Todo parece
estar funcionando sin problemas. Hasta que de pronto el
sistema se ralentiza, trabajo comienza a fallar y se reportan
errores. Sin un monitoreo adecuado,
es posible que ni siquiera sepas que algo salió mal
hasta que es demasiado tarde. El monitoreo de sus
implementaciones le brinda información
en tiempo
real sobre lo siguiente Falla de éxito de implementación. ¿Las nuevas actualizaciones
funcionan como se esperaba? Métricas de desempeño. ¿El sistema está manejando los nuevos cambios sin degradación
del rendimiento? Seguimiento de errores. ¿Hay alguna advertencia o error
que requiera atención? En entornos de mainframe donde inactividad o los errores
pueden ser costosos, monitoreo es su red de seguridad Proporciona la visibilidad que
necesitas para responder rápidamente a los problemas antes de que afecten tus usuarios o procesos de
negocio. Veamos un ejemplo. Trabajas para un
banco global y acabas implementar una nueva función que automatiza la
detección de puntos en tiempo real Si la implementación
encuentra problemas, por
ejemplo,
tiempos de respuesta lentos o procesamiento de
datos incorrecto, el sistema de monitoreo puede
marcar estos problemas temprano, lo que le permite
retroceder o solucionar el problema antes de que afecte a las transacciones de
los clientes. Elegir las herramientas
de monitoreo adecuadas. Hay varias
herramientas disponibles para monitorear implementaciones de
mainframe, y la correcta
depende de su entorno, herramientas de
implementación y necesidades de
monitoreo Estas son algunas de las opciones más
utilizadas. IBMZ Omega moon para
monitoreo de mainframes. IBM Zima Omega moon es una herramienta de monitoreo ampliamente utilizada específicamente diseñada
para mainframes Proporciona monitoreo del
rendimiento en tiempo real, capacidades
de solución de problemas y registros detallados de las actividades
del sistema. Las características clave incluyen que monitorea el
estado del sistema en tiempo real, que proporciona información sobre
el uso de CPE, memoria y las operaciones de E/S Realiza un seguimiento del estado del trabajo y te
alerta de fallas
o problemas de rendimiento. Proporciona registros históricos para revisar implementaciones
anteriores Ejemplo, uso. Después de implementar una nueva función en un sistema de
administración de atención médica, Omegamon monitorea el
rendimiento para garantizar que los registros de
pacientes se procesen
rápidamente y sin errores Si el rendimiento
comienza a degradarse, Omegamon te avisa, permitiéndote tomar medidas
inmediatas Splunk para análisis de
gestión de registros. Splunk es una
herramienta popular para recopilar, buscar y analizar
registros de diferentes sistemas Es ampliamente utilizado para la agregación de
registros, lo que
facilita el seguimiento eventos y errores en todo
su entorno. Las características clave incluyen recopilaciones y agregados de registros de aplicaciones de
mainframe, trabajos
por lotes y procesos de
implementación Proporciona paneles visuales para monitorear métricas y eventos clave Permite la búsqueda y
análisis de registros en tiempo real para
detectar problemas de forma temprana. Ejemplo de uso. Durante la implementación de un trabajo
por lotes, Splunk recopila registros de
varias etapas del proceso Si un trabajo específico falla, alertas y los registros de
Splunk te
ayudan a
identificar rápidamente el problema, ya sea un problema de configuración o un
error del sistema Jenkins para monitoreo de
tuberías CICD. Si está utilizando Jenkins
para sus canalizaciones CICD, viene con funciones integradas de monitoreo
y alerta Jenkins puede realizar un seguimiento de las etapas de
implementación, los resultados de las
pruebas y la ayuda
general de construcción Las características clave incluyen que proporciona retroalimentación en tiempo
real sobre las etapas
de implementación
y la finalización del trabajo. Le alerta sobre implementaciones
fallidas o problemas en proceso. Se integra con
otras herramientas como Prometheus y Grafana para monitoreo y visualización avanzados.
Ejemplo de uso. Al implementar una
aplicación CBL a través de Jenkins, el sistema monitorea cada etapa, compilación de
código, pruebas,
implementación a producción, Si falla algún paso Esto le ayuda a abordar los problemas inmediato y a mantener la
tubería en movimiento sin problemas. Registros de seguimiento para
el éxito o el fracaso. Los registros son tu mejor
amigo
a la hora de entender lo que
sucedió durante una implementación. Los registros proporcionan
información detallada sobre lo que funcionó, qué falló y por qué. Pero administrar los registros de manera efectiva
requiere una estrategia. A continuación, le indicamos cómo abordar administración de
registros durante la implementación
automatizada. Primero, centraliza tus registros. Asegúrese de que todos los registros, ya sean del mainframe, trabajos
por lotes o los sistemas externos estén centralizados en una ubicación Esto le permite
buscar fácilmente a través de ellos, encontrar patrones y
resolver problemas más rápido. Herramientas que puedes usar. Usa herramientas como Sprumk o ayuda a apilar para agregar registros
de diferentes fuentes Segundo, Use
análisis de registros y alertas. Simplemente tener troncos no es suficiente. Es necesario analizarlos para obtener información
significativa y
configurar alertas y se alcanzan ciertos umbrales
o errores Por ejemplo, puede configurar alertas para los
siguientes fallos de trabajo, uso
elevado de CPU o memoria, errores o advertencias
en los registros de aplicaciones. Tercero, monitorear
métricas clave en registros. Concéntrese en las métricas que más
importan para su implementación. Esto podría incluir tiempos de finalización del
trabajo. A empleos tardando más de lo
esperado? Tasas de error. Ciertos códigos de error
aparecen con más frecuencia
después de la implementación? Rendimiento del sistema. ¿Cómo ha cambiado
el tiempo de respuesta del sistema después de la implementación? Monitoreo de implementación en tiempo real. monitoreo en tiempo real
le permite detectar y resolver problemas
antes de que escalen. Echemos un vistazo a cómo
funciona en la práctica
el monitoreo en tiempo real . Uno, configurar alertas
y umbrales. Las herramientas de monitoreo como
IBM Z, Omega moon, Jenkins o Splunk
le permiten configurar umbrales
para Por ejemplo, podría
establecer un umbral para el uso de
CP durante una implementación y, si
se excede ese umbral, el sistema
le avisa inmediatamente. Dos, use paneles para obtener información
en tiempo real. Los paneles proporcionan una vista de
un vistazo del estado de sus
implementaciones. Herramientas como Grafana o
Splunk le permiten crear paneles
visuales que
muestran métricas clave
como tasas de éxito, trabajos
fuera de implementación, métricas como tasas de éxito, trabajos
fuera de implementación, rendimiento
del sistema
como el uso de la CPU y la memoria, y registros de errores
y advertencias Tercero, monitorear dependencias. Las implementaciones de mainframe a menudo involucran múltiples sistemas
interconectados monitoreo en tiempo real
le permite rastrear cómo los cambios en una parte
del sistema afectan a otras. Por ejemplo, una
implementación que actualice una aplicación financiera puede afectar el trabajo por lotes
que se ejecuta en paralelo. El monitoreo de estas dependencias ayuda a prevenir fallas en el patinaje Mejores prácticas para monitorear implementaciones
automatizadas. Para asegurarse de que sus
implementaciones estén bien monitoreadas y que cualquier
problema se detecte temprano, siga estas mejores prácticas Uno, conjunto de alertas
para métricas críticas. Asegúrese de tener alertas establecidas para métricas clave
como el éxito del trabajo, tasas de
fallas, el
rendimiento del sistema y los registros de errores. Estas alertas deben activarse inmediatamente si
algo sale mal, lo que permite un tiempo de respuesta rápido. En segundo lugar, use paneles
para obtener información rápida. Los paneles de control le brindan visibilidad en tiempo
real del
estado de sus implementaciones Usa herramientas como los dashboards Grafana, Splunk o Jenkins para monitorear las implementaciones
a medida que ocurren Tres, agregar registros
y configurar el análisis de registros. Registros centralizados en
todos sus sistemas utilizando herramientas como Splunk o SAC Asegúrese de que los registros se analicen
para obtener información clave y configure alertas para mensajes de error
comunes o problemas de rendimiento Cuatro, monitoree a través de
entornos. No se limite a monitorear la producción. Configure el monitoreo en
todos los entornos, incluido el desarrollo
y la puesta en escena. Esto le ayuda a
detectar los problemas de manera temprana y garantiza implementaciones de
producción más fluidas Las conclusiones clave de esta
lección incluyeron el monitoreo de implementaciones
automatizadas,
lo que garantiza que cualquier problema se detecte temprano evitando
tiempos de inactividad y fallas Herramientas como IBMZ,
Omega Mon, Splunk y Jenkins proporcionan seguimiento en tiempo
real, administración de
registros y alertas para Utilice paneles para
obtener una vista rápida de
su celda de implementación y
configurar alertas para los puntos clave de
falla Hagamos una actividad de aprendizaje. Elija una herramienta de monitoreo, IBM Z Omegamon Splunk o Jenkins y configure monitorización en tiempo
real para Configure alertas para
métricas clave como el éxito del trabajo, tasas de
fallas de reducción, el
rendimiento del sistema y los registros de errores Comparta su experiencia en el foro de discusión del
curso y describa cómo administra los registros y monitorea el proceso de
implementación. ¿Cuál es el siguiente? En la siguiente lección, nos sumergiremos en
estrategias de implementación como implementaciones
canarias e implementaciones
azul-verde,
que reducen el riesgo
durante las que reducen el riesgo
durante Aprenderá a implementar
estas estrategias en mainframes para garantizar implementaciones
fluidas y de bajo riesgo
25. Lección 4: estrategias de implementación: canario, azul-verde y más: Lección cuatro, estrategias de
despliegue, Cary, azul-verde y más Bienvenido a la lección
cuatro del Módulo seis. Hasta ahora, hemos cubierto cómo
automatizar implementaciones, manejar retrocesos y monitorear
sus procesos de implementación Ahora es el momento de hablar sobre estrategias de
implementación
que reduzcan el riesgo y garanticen actualizaciones fluidas. En esta lección, aprenderá cómo diferentes
estrategias de implementación que le
ayudan a implementar
cambios de manera más segura, minimizando el tiempo de inactividad y
el riesgo de fallas. Nos centraremos en dos estrategias
populares, las Canara y las implementaciones
azul-verde Ambos están diseñados para proteger su sistema
liberando gradualmente los cambios, facilitando la detección y resolución de problemas antes de que
afecten a toda la base de usuarios. Al final de esta lección, comprenderá
cómo implementar canarias y azul-verdes estrategias de
implementación
canarias y azul-verdes
en mainframes Los beneficios de estas estrategias para reducir el riesgo
durante las actualizaciones. Mejores prácticas para elegir la estrategia adecuada
para su entorno. Profundicemos y exploremos cómo estas
estrategias de implementación pueden hacer que sus actualizaciones sean más
confiables y libres de estrés. Por qué son importantes
las estrategias de despliegue. Antes de entrar en
los detalles de implementaciones
canarias y
azul-verdes, hablemos de por qué
las estrategias de implementación son importantes Imagine que está trabajando para una gran
compañía de seguros y necesita
implementar una nueva función que
cambie la forma en que se procesan
las reclamaciones de los clientes. Si simplemente empuja estas
actualizaciones en vivo de una sola vez, a menudo llamado
implementación de un gran banco y
algo sale mal, todo
el sistema de reclamos podría fallar interrumpiendo miles
de transacciones de clientes En cambio, ¿y si pudiéramos
lanzar la actualización a un pequeño subconjunto de usuarios de prensa
observar cómo funciona, y luego gradualmente
rodarla a todos los demás? Esta es la esencia de los despliegues canarios
y azul-verde. Te ayudan a reducir el riesgo al lanzar actualizaciones en trozos
más pequeños y manejables, asegurando que si
algo sale mal, el impacto se minimiza Ahora, vamos a desglosar estas
estrategias con más detalle. Despliegues en Canarias. Un despliegue canario es una
estrategia en la que implementas una nueva versión de
tu aplicación a un pequeño subconjunto de usuarios, el canario antes de
liberarla gradualmente al
resto de tu base de usuarios. El término proviene de la
antigua práctica de enviar canarios a minas de carbón
para detectar gases peligrosos Si algo salía
mal con el canario, los mineros sabrían evacuar En las implementaciones canarias, si algo sale mal
con una nueva actualización, solo un pequeño porcentaje
de usuarios se ven afectados, lo que le permite
detener la implementación o retroceder antes de
que afecte a todos ¿Cómo
funcionan las implementaciones canarias en mainframes? En un entorno de mainframe, las implementaciones
canarias se pueden usar para lanzar
actualizaciones para trabajos incorrectos, código de
aplicación o cambios de
infraestructura Así es como podría
funcionar. Primero, actualizas un programa CBL que
calcula las primas de seguro Entonces, en lugar de implementar la
nueva versión a todos los usuarios, liberas al 10% de
tu entorno de producción. Monitoreas cómo se ve afectado a este
grupo. Si todo funciona como se esperaba,
se despliega la actualización
a otro 20% y así sucesivamente. Si el sistema detecta errores, por ejemplo, cálculos de
primas incorrectos, detiene el despliegue,
investiga el problema y lo arregla o
retrocede a la versión anterior Por ejemplo, está implementando una nueva función para el sistema de
procesamiento de reclamos en una compañía de seguros. Primero,
lo liberas a un pequeño grupo de empleados que presentan
reclamaciones internamente. Después de una semana sin problemas, extiendes el lanzamiento
a usuarios externos en una región antes de finalmente
implementarlo en todo el país. Beneficios de los despliegues canarios. Reducir el riesgo, solo un pequeño grupo de usuarios está expuesto
a posibles problemas. Reversión pasada. Si
algo sale mal, puede
detener rápidamente la implementación o retroceder a la versión
anterior. La implementación gradual
le permite observar cómo funciona
la actualización en una condición del mundo real
antes de la implementación completa Despliegues azul-verde. Un despliegue azul-verde
es una estrategia donde se tienen dos entornos de
producción idénticos, uno azul, que es
la versión actual, y otro verde, que
es la nueva versión. Despliega la nueva
versión verde un entorno separado mientras mantiene activa la
versión anterior azul. Una vez que estés seguro de que la
nueva versión funciona correctamente, cambias el tráfico
de azul a verde. Si algo sale mal, puedes volver a
cambiar fácilmente al azul. ¿Cómo
funcionan las implementaciones Blue Green en mainframe? En un entorno de mainframe, las implementaciones
Blue Green
le permiten cambiar de
manera segura entre
versiones de trabajos por lotes,
bases de datos o
código de aplicación sin Así es como funciona. Primero, se tienen dos entornos idénticos, azul, que es el sistema
actual, y el verde, que es
el sistema actualizado. Despliega el nuevo programa
Cobalt o JCL el entorno verde
y ejecuta pruebas para garantizar que funcione
como se esperaba Una vez que esté seguro de que la
nueva versión es estable, cambia todos los tráficos o
trabajos al entorno verde Si surge algún problema, simplemente vuelve
al entorno azul
sin tiempo de inactividad. Un ejemplo, estás actualizando un sistema de nómina
para un banco global. Despliega el nuevo trabajo de procesamiento de
nómina en el entorno verde y
lo prueba con datos no críticos. Una vez que verifiques que funciona, mueves todas
las transacciones de nómina al entorno verde. Si surge un problema, puede volver instantáneamente al entorno azul para que la
nómina funcione sin problemas. Beneficios de las
implementaciones azul-verde, cero tiempo de inactividad. cambio entre
entornos es perfecto, por lo que los usuarios nunca experimentan
tiempo de inactividad durante las implementaciones. Es rollback. Si la
nueva versión falla, puede
volver inmediatamente a la versión anterior. Aislamiento. La nueva versión
está completamente aislada, por lo que las pruebas pueden ocurrir
sin afectar a los usuarios. Otras estrategias de despliegue. Si bien
las implementaciones canarias y azul-verde son las más comunes, aquí hay algunas otras
estrategias que podrían ser útiles
dependiendo de su entorno El primero son los despliegues
rodantes. En una implementación continua, actualiza una partición de servidor o
mainframe a la vez Esto permite
reemplazar gradualmente la versión
antigua por la nueva,
minimizando el riesgo al tiempo que se
evita la necesidad duplicar entornos
como en azul verde. Dos, pruebas AB. Las pruebas A B permiten
ejecutar dos versiones de la aplicación
simultáneamente con diferentes grupos de usuarios. Esto es ideal para
probar nuevas funciones o experiencias de
usuario antes de
comprometerse a un despliegue completo Elegir la estrategia
de implementación correcta. ¿Cómo elige la estrategia de implementación
adecuada para su entorno de mainframe La implementación de Canary es
mejor cuando desea implementar actualizaciones
gradualmente
y monitorear el rendimiento. Se trata de sistemas de
misión crítica donde las fallas podrían tener consecuencias
significativas. El verde azul es ideal cuando no
necesita tiempo de inactividad durante las implementaciones y desea la capacidad de
revertir instantáneamente si
algo sale mal Las implementaciones continuas son excelentes para entornos donde
las limitaciones de recursos hacen que sea difícil duplicar
sistemas completos y sistemas donde las actualizaciones
graduales son
más seguras que implementar
todo a la vez Las pruebas AB funcionan bien cuando
estás experimentando con nuevas funciones u
optimizaciones y quieres compararlas con la versión anterior
antes de comprometerlas Mejores prácticas para implementaciones
seguras. Para garantizar que su
proceso de implementación transcurra sin problemas, siga las mejores prácticas. Uno, monitorear cada
etapa del despliegue. Utilice herramientas de monitoreo
como IBMZ Omega moon o Splunk para rastrear el rendimiento y la experiencia del
usuario a lo largo de
cada etapa de Si algo sale mal, tómalo temprano y ajusta
tu estrategia de despliegue. Dos, use mecanismos de
reversión automatizados. Ya sea que esté utilizando canary, blue green o
rolling deployment, establezca procesos automatizados que puedan volver rápidamente a la versión anterior
si surgen problemas Tres, prueba primero en un
ambiente de puesta en escena. Antes de implementar en producción, pruebe
siempre nuevas versiones
en un entorno de ensayo que imite su
configuración de producción lo más estrechamente posible Esto ayuda a bosquejar problemas
antes de que afecten a los usuarios. conclusiones clave de
esta lección incluyen las implementaciones
canarias que
lanzan actualizaciones a un pequeño subconjunto de usuarios por, reduce el riesgo y permite realizar pruebas en
el mundo real Las implementaciones de color azul y verde cambian entre dos
entornos idénticos, lo que permite
implementaciones sin tiempo de inactividad y retrocesos rápidos Utilice implementaciones rodantes
o pruebas AB para implementaciones graduales o cuando experimente
con Supervise todo el proceso y asegúrese de que existan
mecanismos automáticos de reversión Hagamos una actividad de aprendizaje. Elija una estrategia de implementación, Canary o azul verde y aplíquela a una simple actualización de
mainframe Por ejemplo,
programa Oval o trabajo JCL. Simule el proceso de
implementación en un entorno de ensayo y
monitoree cualquier error
o problema de rendimiento. Comparte tu experiencia en el
foro de discusión del curso explicando cómo la estrategia te ayuda a reducir el
riesgo durante la actualización. ¿Cuál es el siguiente? En el siguiente módulo, exploraremos el
monitoreo automatizado para mainframes Aprenderá por qué la
automatización de monitoreo es crucial
para detectar problemas en tiempo real y las mejores herramientas para monitorear el rendimiento de
mainframe
26. Lección 1: introducción al monitoreo automatizado para mainframes: Bienvenido al Módulo siete, monitoreo y automatización de
respuesta a incidentes. En este módulo,
aprenderás a hacer lo siguiente. Automatice
el monitoreo de mainframes para detectar problemas en tiempo real Configure alertas para
problemas de rendimiento y fallas. Automatice
la respuesta a incidentes para resolver los problemas más rápido y
reducir el tiempo de inactividad. Al final de este módulo, podrá monitorear,
administrar y responder de
manera efectiva a cualquier incidente del sistema antes de
que se vuelva crítico. Lección uno, introducción al monitoreo
automatizado
para mainframes Bienvenido al Módulo siete. En este módulo,
exploraremos cómo vigilar de cerca sus sistemas
mainframe
mediante el uso de monitoreo automatizado El monitoreo automatizado le permite detectar problemas en tiempo real, asegurando que
los problemas potenciales se capten
temprano y se manejen antes de
que causen interrupciones. En esta primera lección, nos centraremos en por qué el monitoreo
automatizado
es tan crucial para las operaciones de
mainframe y exploraremos las herramientas que puede usar
como Prometheus Grafana e IBM Omega moon para
monitorear el rendimiento y monitorear el rendimiento y Al final de esta lección, comprenderá
lo
siguiente la importancia
del monitoreo en tiempo real para detectar problemas de
rendimiento del sistema. Las herramientas clave disponibles
para monitorear mainframes. Cómo estas herramientas le
ayudan a mantener rendimiento
y la confiabilidad del
tiempo de actividad en su entorno de mainframe Analicemos y
analicemos más de cerca
cómo la supervisión automatizada mantiene sus sistemas mainframe
funcionando sin problemas Por qué la supervisión automatizada
es crucial para los mainframes. Los sistemas mainframe suelen ser la columna vertebral de
industrias críticas como la banca, atención médica y los servicios
gubernamentales En estos entornos, inactividad o las fallas del sistema
pueden ser catastróficas, lo que lleva a la pérdida de ingresos, problemas de
cumplimiento y
daños en la confianza del cliente Si bien el monitoreo manual
es cosa del pasado, los mainframes modernos
actuales
exigen
herramientas de monitoreo automatizadas que proporcionen información en tiempo
real sobre el rendimiento
del sistema ¿Por qué exactamente es tan importante el
monitoreo automatizado? Vamos a desglosarlo. Detectando
problemas en tiempo real. El monitoreo automatizado proporciona retroalimentación instantánea sobre el estado de su sistema. En lugar de
esperar
a que un administrador note un problema
o filtre los registros, las herramientas
automatizadas detectan
problemas en tiempo real, desde picos de uso de CPU hasta fugas de
memoria y trabajos por lotes
fallidos Un ejemplo, imagina que estás administrando un mainframe para
un gran banco minorista Durante las horas pico, el
trabajo por lotes responsable del procesamiento de
transacciones
comienza a fallar debido a restricciones de recursos. Con el monitoreo automatizado,
obtienes una alerta en el momento en que
el trabajo comienza a fallar, lo que te permite solucionar el problema antes de que los clientes
se vean afectados. Reduciendo la intervención manual.
Seamos honestos. monitoreo manual del
rendimiento del mainframe es tedioso, consume mucho
tiempo y es
propenso a errores humanos monitoreo automatizado
elimina la
necesidad de supervisión humana constante, liberando a su equipo para
enfocarse en tareas más valiosas En lugar de
examinar manualmente los registros de rendimiento, el sistema
rastrea automáticamente las métricas y envía alertas cuando
algo necesita atención Prevenir costosos tiempos de inactividad. inactividad es costoso, ya sea que se trate de un
sistema bancario que se desconecta durante el día de pago o de una plataforma de atención médica falla en
mitad de la noche, cada minuto de tiempo de inactividad cuesta dinero y puede
dañar la reputación Las herramientas de monitoreo automatizadas detectan problemas antes de que escalen, lo que permite una resolución más rápida y evita interrupciones del sistema Mejorando el rendimiento
y la confiabilidad del sistema. El monitoreo automatizado no
solo detecta problemas. Te ayuda a optimizar el rendimiento de
tu sistema. Al realizar un
seguimiento continuo de métricas clave como el uso de la CPU, el consumo de
memoria y el rendimiento de E/S, puede identificar ineficiencias
y cuellos de botella, lo que hace que sus sistemas Herramientas para monitorear el rendimiento de
mainframe. Ahora que sabemos por qué el
monitoreo automatizado es esencial, hablemos de las herramientas
que lo hacen realidad. Existen varias herramientas poderosas que puede usar para
monitorear el estado de sus sistemas mainframe y detectar problemas antes de que
afecten las operaciones El primero es IBM Omegamon. IBM Omegamon es una herramienta líder para monitorear entornos de
mainframe Proporciona información en
tiempo real el rendimiento de
sus sistemas ZOS, haciendo un
seguimiento de todo, desde la utilización de la CPU hasta el rendimiento del trabajo
y las cargas de trabajo del sistema Las características clave incluyen monitoreo en tiempo
real, obtener visibilidad instantánea del rendimiento de la CPU, la
memoria, el dicio y
la red Datos históricos, rastrear tendencias de desempeño
a largo plazo e identificar patrones a lo largo del tiempo. Alertas detalladas,
configure alertas para métricas
clave de rendimiento, como fallas en el
trabajo o agotamiento de
recursos del sistema Un ejemplo, después de implementar una nueva característica en un sistema bancario
basado en mainframe,
Omega Moon realiza un seguimiento del rendimiento
del sistema para
garantizar que las velocidades de procesamiento de transacciones sigan siendo óptimas Si el sistema detecta tiempos de transacción
más lentos
o restricciones de recursos, se activa
una alerta que permite una intervención
inmediata. El segundo es Prometeo. Prometheus es una herramienta de monitoreo de
código abierto, ampliamente utilizada en entornos
nativos arados, pero también se puede
aplicar Prometheus sobresale en la
recopilación de datos de series temporales, lo que le permite realizar un seguimiento de las métricas
del sistema a lo largo tiempo y crear
paneles personalizados Las características clave incluyen la recolección de
métricas. Prometheus raspa métricas de diversas fuentes y
las almacena en una base de datos de series temporales Conjunto de reglas de alertas personalizadas para activar alertas cuando
ciertas métricas alcanzan el umbral crítico. Integraciones. Prometheus
se integra con otras herramientas como Rafana para visualizar datos y gestor de alertas Por ejemplo, está monitoreando
la utilización
de la CPU de un sistema mainframe que maneja transacciones con
tarjetas de crédito Prometheus recopila
métricas de CPU cada 5 segundos. Y si el uso de CPU supera el
90% o más de 10 minutos, se activa
una alerta para
notificar al equipo de operaciones. El tercero es Grafana. Grafana es una poderosa herramienta de código
abierto para crear paneles visuales para
monitorear el rendimiento del sistema Se integra con diversas fuentes de
datos como Prometheus, DV de
afluencia y Elastic Search, lo que le permite visualizar y
monitorear datos históricos y en tiempo
real Las características clave incluyen paneles
personalizables, crear
visualizaciones personalizadas para monitorear crear
visualizaciones personalizadas para monitorear
keymetric. Datos en tiempo real. Muestre métricas en tiempo real, incluida la carga de CPU, el uso de
memoria y las tasas de éxito del trabajo por lotes. Alertas, integre
con sistemas de alerta para notificar a los equipos cuando se superen ciertos
umbrales Un ejemplo, en una institución
financiera grande, Grafana se utiliza para crear
un tablero en tiempo real que muestra
métricas del sistema como tiempos de
procesamiento de transacciones, tasas de éxito
laboral y utilización de recursos
del sistema El equipo puede identificar rápidamente degradación
del rendimiento y tomar medidas antes de que
afecte a los clientes. Métricas clave para monitorear. Al monitorear
mantener el rendimiento, hay varias métricas clave
que siempre deben ser rastreadas. El primero es el uso de CPU. alto uso de la CPU puede llevar a un rendimiento
más lento y
aumentar las tasas de fallas en el trabajo. monitoreo del uso de la CPU
le permite detectar botella en el
rendimiento
y garantizar que las cargas de trabajo
críticas reciban
los En segundo lugar está el uso de memoria. Las fugas de memoria o
el consumo excesivo de memoria pueden provocar
fallas o ralentizaciones del sistema Mantenga un ojo en el uso de la memoria, especialmente durante los tiempos de
procesamiento PIC. En tercer lugar, el rendimiento de IO. Los sistemas mainframe a menudo
manejan grandes volúmenes de datos y el rendimiento de E/S
es fundamental para garantizar un procesamiento de datos rápido y
confiable Monitoree E/S de disco y
red para detectar ralentizaciones o cuellos de botella en la
transferencia de datos En cuarto lugar, las tasas de éxito del
trabajo por lotes. Los trabajos por lotes son una parte central de las operaciones de mainframe
y las fallas pueden tener
consecuencias generalizadas monitoreo de las tasas de
éxito laboral
le ayuda a detectar los problemas con
anticipación y garantiza que los trabajos críticos como favorecer el procesamiento o la
liquidación de transacciones se completen a tiempo. M mejores prácticas para monitoreo
automatizado. Primero, establezca umbrales
para las alertas. No se limite a monitorear pasivamente. Establecer umbrales de alerta
para métricas críticas. Por ejemplo, active
una alerta si el uso de CPU supera el 90% durante
más de 10 minutos o si falla un trabajo por lotes clave. En segundo lugar, use paneles
para obtener información rápida. Crea dashboards
con herramientas como Rafana para darte una visión en tiempo real del estado de
tu sistema. Los paneles le permiten
detectar problemas rápidamente y
tomar decisiones informadas de un vistazo Tercero, monitorear a través de los sistemas. No se limite a monitorear su entorno
de producción. realice un seguimiento de métricas en
entornos de desarrollo y puesta en escena, para que pueda detectar
posibles problemas antes de
que lleguen a producción. Las conclusiones clave de
esta lección incluyen, monitoreo
automatizado es esencial
para detectar problemas en tiempo
real y evitar costosos tiempos de inactividad en entornos
mainframe Herramientas como IBM OmegaMonpmethes y Grafana proporcionan
potentes capacidades de monitoreo y potentes Siempre realice un seguimiento de métricas
como el uso de la CPU, la memoria, el rendimiento de
E/S y las tasas de éxito del
trabajo por lotes para garantizar
un rendimiento óptimo del sistema. Hagamos una actividad de aprendizaje. Elija una
herramienta de monitoreo, IBM Omegaamon, Prometheus o Grafana y conéctela para rastrear métricas
clave en un sistema para rastrear métricas
clave Por ejemplo, el uso de CPU o las tasas de éxito del trabajo
por lotes. Configure al menos una alerta
para una métrica crítica. Por ejemplo, el
uso de CPU supera el 90%. Comparta su experiencia en el foro de discusión del
curso y explique cómo el monitoreo automatizado ayuda a prevenir problemas del sistema. ¿Cuál es el siguiente? En la siguiente lección, cubriremos la configuración de
alertas y notificaciones. Aprende a configurar alertas
automatizadas para problemas de rendimiento
del sistema y cómo
notificar a tu equipo cuando ocurren incidentes
críticos.
27. Lección 2: configuración de alertas y notificaciones: Lección dos, configuración de
alertas y notificaciones. Bienvenido a la lección
dos del Módulo siete. Ahora estamos pasando del monitoreo
automatizado a las alertas y notificaciones El monitoreo por sí solo no es suficiente. ¿De qué sirve saber
sobre un tema si nadie es informado
a tiempo para tomar medidas? Ahí es donde
entran en juego las alertas
y notificaciones automatizadas . En esta lección veremos cómo
configurar alertas
automatizadas para problemas de rendimiento
del sistema
y errores críticos. Nos centraremos en herramientas como
Prometheus alert Manager, que notifican a tus equipos en el
momento en que algo sale mal, permitiendo una respuesta rápida
a los incidentes del sistema Al final de esta lección, comprenderá
cómo automatizar alertas para problemas del sistema
en función de umbrales predefinidos, cómo usar Prometheus
alert Manager y otras herramientas para notificar a los equipos
de Mejores prácticas para administrar alertas para evitar la fatiga de las alertas. Comencemos
con asegurarnos de que tu equipo nunca vuelva a perder una alerta
importante Por qué las alertas y
notificaciones son críticas. Monitorear métricas y
registros es importante, pero puedes pasar todo el día
mirando los paneles, esperando detectar problemas
antes de que se conviertan Es por eso que necesita alertas
automatizadas para ser notificadas en el
momento en que algo excede los umbrales críticos,
lo que permite una respuesta a
incidentes
rápida y eficiente Tomemos un ejemplo.
Imagine que está administrando un sistema mainframe para una gran
organización de atención médica Es la mitad de la
noche y el uso de la CPU comienza a aumentar causando retrasos
en el procesamiento de los datos del paciente Sin alertas, nadie es consciente del problema
hasta que es demasiado tarde. Pero con la configuración automatizada de alertas, su equipo recibe una notificación
inmediata y el problema se resuelve antes de
que afecte la atención al paciente. Las alertas son su sistema de
alerta temprana. Se aseguran de que los problemas
no se deslicen por las grietas. Configuración de alertas para problemas
de rendimiento del sistema. El primer paso para automatizar su respuesta a incidentes es configurar alertas para
las métricas correctas Las alertas pueden ser activadas por
cosas como un alto uso de CPU, fugas de
memoria,
trabajos por lotes fallidos o errores del sistema. A continuación, le mostramos cómo abordar
la configuración de alertas. Primero, identificar
métricas críticas para monitorear. Debe decidir
qué métricas son las más importantes para el rendimiento de su
sistema. Métricas comunes para
configurar alertas en. Las métricas comunes configuran alertas
para incluir el uso de CPU. Alerta si el uso de la CPU excede un cierto umbral
durante un período prolongado. Por ejemplo, más del 90%
o más de 10 minutos. Uso de memoria, configure una
alerta si el uso de memoria supera el 80% o si hay fugas de
memoria con el tiempo. Fallos de trabajo de parches. Alertas más rápidas cuando los trabajos por lotes
clave no se completan o superan
el tiempo de ejecución esperado. Rendimiento de E/S, alerta si IO de
disco o red se
ralentiza significativamente, lo que puede indicar cuellos de botella Veamos un ejemplo. En un sistema mainframe que maneja transacciones
financieras, es posible que desee monitorear trabajos
por lotes que
procesan pagos podría establecer una alerta para que se
active si un trabajo se ejecuta más de 20% más de lo habitual o si un trabajo
falla por completo. Dos, definir umbrales
para alertas. Una vez que hayas identificado
la matriz, necesitas establecer umbrales Umbral es el punto en que su
herramienta de monitoreo debe activar una alerta. Mejores prácticas. Comienza con
umbrales conservadores para evitar abrumar a tu
equipo con demasiadas alertas Con el tiempo, ajuste
el umbral a medida que aprende más sobre el comportamiento de su
sistema. Por ejemplo, para un sistema de
procesamiento de pagos, establezca una alerta si el
trabajo por lotes falla o si el uso de la CPU supera el 85% durante
más de 10 minutos durante el tiempo pico de procesamiento. Elija Herramientas de alerta Shore. A continuación, seleccione la herramienta para
administrar y enviar alertas. Una opción popular para la infraestructura
moderna es
Prometheus Alert Manager. Pero otras herramientas
como NcJospJerjt o IBMZOmegaMn también pueden ser apropiadas dependiendo de su entorno. IBMZOmegaMn también pueden ser apropiadas dependiendo de su entorno. Usar Prometheus Alert
Manager para notificaciones. Prometheus Alert Manager
es una herramienta ampliamente utilizada que funciona sin problemas con
Prometheus Le permite definir reglas de
alerta, administrar alertas y enrutarlas a diferentes canales de
comunicación como correo electrónico, holgura o servicio de buscapersonas Primero, definir
reglas de alerta en un Prometeo. El administrador de alertas de prensa le permite configurar reglas
de alerta que definen cuándo se
debe activar una alerta Las reglas de alerta especifican
la métrica a vigilar, el umbral para
activar la alerta y cualquier condición adicional. Veamos un ejemplo de
una regla de alerta que se activa cuando uso
del sueño es del 90% por
más de 10 minutos. Esta alerta
notificará al equipo cuando el uso de la CPU se mantenga aproximadamente
90% durante 10 minutos, dándoles tiempo para responder
antes de que el sistema falle. Configuración del gestor de alertas
para enrutar las notificaciones. Una vez que se activa una alerta, debe decidir cómo y
dónde se enviará la alerta. administrador de alertas de Prometheus
le permite enrutar alertas a diferentes destinos
en función de la gravedad
y el tipo de Por ejemplo,
las alertas críticas, por ejemplo, sistema inactivo se enrutarían al servicio de buscapersonas para atención
inmediata Las alertas de advertencia, por ejemplo, alto uso de CP podrían enviarse a Slack o correo electrónico para que
el equipo las monitoree. Veamos una
configuración de ejemplo para enviar alertas
críticas al servicio de buscapersonas y menos críticas a Slack Esta configuración garantiza que los problemas
críticos vayan directamente al servicio de
buscapersonas, mientras que
se envían alertas
menos severas a Slack
para que el equipo conozca. Evitando la fatiga de alerta. Uno de los retos
de configurar alertas es el riesgo
de fatiga de alerta, donde el equipo recibe
tantas alertas, dejan de prestarles
atención. Para evitar esto, es importante administrar
las alertas con cuidado. Sintoniza tus alertas. Asegúrese de que sus alertas sean significativas
y procesables. La alerta solo debe disparar cuando algo realmente necesita atención. Por ejemplo, no
establezca una alerta para uso de
CPU que se dispare
brevemente y luego se estabilice. Desea que se le
notifique solo cuando uso de la
CPU es consistentemente alto. Utilice agrupaciones de alertas. Utilice la agrupación de alertas para combinar alertas
similares en una
sola notificación. Por ejemplo, si
varios trabajos por lotes fallan aproximadamente al mismo tiempo, envíe una sola alerta resumiendo las fallas en lugar de
enviar una alerta para cada trabajo Priorizar las alertas por gravedad. No todas las alertas son iguales. Asegúrese de priorizar las
alertas por gravedad. Un bachop fallido procesando transacciones con tarjetas de
crédito es crítico, mientras que un breve aumento en el uso de
la ciudad podría simplemente
garantizar una advertencia Utilice herramientas como el
administrador de alertas para enrutar las alertas
de alta gravedad
de manera diferente a las de baja gravedad. Mejores prácticas para la gestión de
alertas. Para garantizar que su
sistema de alertas funcione de manera efectiva, siga estas mejores prácticas Uno, las alertas de prueba regularmente. Pruebe regularmente su sistema de
alertas para asegurarse de que las alertas se activen correctamente
y que las notificaciones se enruten a
los equipos adecuados Simule fallas del sistema en un entorno de ensayo para
ver cómo se comportan las alertas. Dos, establecer protocolo de
respuesta claro. Las alertas solo son útiles
si conducen a la acción. Asegúrate de que tu equipo sepa qué hacer cuando
se active una alerta. Cree un libro de estrategias de
respuesta a incidentes que describa el paso a seguir para los
diferentes tipos de alertas Tres, monitorear y
sintonizar el ruido de alerta. Demasiadas falsas alarmas o alertas de
baja prioridad pueden
causar fatiga de alerta. Revise regularmente sus ajustes de
alerta y ajuste el umbral según
sea necesario para reducir el ruido. Las conclusiones clave
de esta lección incluyen alertas automatizadas que son esenciales para detectar
y responder rápidamente a los problemas de
rendimiento del sistema Utiliza herramientas como Prometheus
alert Manager para crear reglas de
alerta y
enrutar notificaciones a tu equipo
en función de la gravedad de la alerta Evite la fatiga de las alertas
ajustando los umbrales de alerta, agrupando las alertas y priorizando las notificaciones
por gravedad Hagamos una actividad de aprendizaje. Configura un sistema de alertas usando gestor de alertas de
Prometheus u
otra herramienta de tu elección Configure alertas para
al menos dos métricas críticas,
por ejemplo, el uso de CP
y las tasas de fallas en el trabajo. Comparte tu experiencia en el foro de discusión del
curso, incluyendo cómo configuras alertas y
notificaciones enrutadas a tu equipo. ¿Cuál es el siguiente? En la siguiente lección,
exploraremos automatización de los flujos de trabajo de
respuesta a incidentes Aprenderá a implementar respuestas
automatizadas a incidentes como reiniciar servicios o escalar recursos, y a crear manuales de
respuesta a incidentes
para problemas de uso común del sistema
28. Lección 3: automatización de los flujos de trabajo de respuesta a incidentes: Lección tres, automatización de flujos de trabajo de respuesta a
incidentes. Bienvenido a la lección
tres del Módulo siete. Hasta el momento, hemos cubierto la
configuración, monitoreo y alertas. Pero, ¿qué sucede después de
que se activa una alerta? En esta lección, nos centraremos en
automatizar los flujos de trabajo de
respuesta a incidentes Automatizar sus respuestas
puede ayudar a resolver problemas rápidamente sin necesidad de intervenciones
manuales para cada alerta Al final de esta lección, comprenderá cómo
implementar respuestas automatizadas
a incidentes como reiniciar servicios
o escalar recursos, cómo crear manuales de
respuesta a incidentes problemas comunes del sistema
y mejores prácticas
para configurar flujos de trabajo que ahorren tiempo a su equipo y mantengan
los sistemas Empecemos por sumergirnos en el poder de automatizar las respuestas a
incidentes Por qué es importante automatizar la
respuesta a incidentes. Imagínese esto. Son las 3:00 A.M. Y su
sistema está bajo carga pesada. Se dispara una alerta
porque el uso de la CPU está llegando al 95% y
los trabajos comienzan a fallar. Sin automatización, alguien
de tu equipo tiene que despertarse, iniciar sesión y comenzar a
solucionar problemas para reiniciar los servicios o
escalar recursos. Con flujos de trabajo automatizados de
respuesta a incidentes, el sistema puede manejar el problema automáticamente dando tranquilidad a
tu equipo. He aquí por qué es crucial automatizar
las respuestas a incidentes. Resolución más rápida. Las respuestas automatizadas
resuelven los problemas
tan pronto como se detectan,
minimizando el tiempo de inactividad. Confiabilidad de 24 por siete. Los incidentes se pueden
manejar en cualquier momento, día o noche sin
depender de la intervención humana. Reducir la carga de trabajo manual. La automatización libera a
su equipo para que se concentre en mejoras
estratégicas en lugar de los incidentes diarios de extinción
de Veamos un ejemplo. Digamos que está ejecutando un sistema de nómina basado en
mainframe para una compañía global Durante el rendimiento máximo durante los tiempos de procesamiento
pico, el uso de
recursos aumenta. En lugar de esperar la
intervención manual para agregar recursos, un flujo de trabajo automatizado escala
la CPU o reiniciar los servicios, lo que garantiza que la nómina funcione sin
problemas y sin demoras. Implementar respuestas
automatizadas. Los flujos de trabajo automatizados de
respuesta a incidentes pueden manejar una amplia
gama de tareas, desde reiniciar servicios hasta escalar recursos o incluso
retroceder una implementación fallida Analicemos algunas respuestas automatizadas
clave que son comunes en los entornos
mainframe. Uno,
reiniciando automáticamente los servicios. A veces la
solución más sencilla es reiniciar un servicio que
así deja de responder Esto se puede configurar como una acción
automatizada en respuesta a una condición específica del sistema,
como un alto uso de CT, relaks de
memoria o trabajos fallidos Un ejemplo, un
sistema de procesamiento de trabajos
por lotes basado en adoquines se cuelga repentinamente En lugar de esperar
a que alguien reinicie manualmente el servicio, la herramienta de monitoreo
detecta el problema y reinicia
automáticamente el
servicio, minimizando el tiempo de inactividad Dos, escalando recursos. Para los sistemas que
experimentan un aumento en el uso, escalar
automáticamente
los recursos es una necesidad. Los flujos de trabajo automatizados se pueden
configurar para asignar más CPU, memoria o E/S cuando sea necesario y liberar esos recursos
cuando el sistema se estabilice. Un ejemplo, durante el procesamiento
de fin de mes, el uso de recursos del sistema aumenta debido al aumento del volumen de
transacciones. El sistema detecta el aumento y
escala automáticamente los recursos, asegurando que el sistema se mantenga estable sin intervención
manual. Tres, retroceder implementaciones
fallidas. No todos los despliegues
van según lo planeado. En caso de una implementación fallida, una respuesta automatizada puede hacer retroceder el sistema
al estado estable anterior. Esto minimiza el riesgo de fallas de producción y ayuda a mantener funcionando los
servicios críticos para el negocio Un ejemplo, se envía
una actualización a un sistema mainframe que
introduce un problema que afecta el procesamiento de datos El flujo de trabajo automatizado
detecta el error, cifra una reversión a
la versión anterior y envía una notificación
al equipo para tomar e
investigar el problema Creación de cuadernos de
respuesta a incidentes. Las respuestas automatizadas a incidentes
son tan efectivas como los
flujos de trabajo que diseña. Una excelente manera de organizar sus respuestas es a través de playbooks de respuesta a
incidentes, conjuntos
predefinidos de acciones a tomar para
tipos específicos de incidentes ¿Qué es una guía de
respuesta a incidentes? Un
manual de respuesta a incidentes es esencialmente un plan para manejar problemas
comunes del sistema Describe un conjunto de acciones
automatizadas y pasos
manuales que deben
tomarse cuando ocurre un
incidente específico. Estos libros de jugadas ayudan a
garantizar un enfoque consistente y eficiente para
resolver problemas Componentes de un libro de jugadas. Un buen libro de jugadas debe
incluir la descripción del incidente. ¿Qué desencadena la respuesta? Por ejemplo, CPU
superior al 90% o 10 minutos. Acciones automatizadas. ¿Qué se debe hacer
automáticamente? Por ejemplo, reiniciar servicios o escalar recursos. Acciones manuales. Si el problema persiste,
¿qué debe hacer un equipo? Por ejemplo, escalar
a ingenieros. Notificaciones, ¿quién
necesita ser informado y cómo? Por ejemplo, notificación por correo electrónico o holgura
al equipo de operaciones. Manual de ejemplo
para un uso elevado de CPU. Incidente. El uso de la CPU supera el
90% durante 15 minutos. Las acciones automatizadas incluyen
escalar los recursos de CPU en un 20%. Reinicie cualquier servicio que
haya dejado de responder. Las acciones manuales incluyen I CPU permanece alta después de 30 minutos, escalar a los
equipos de DevOps para su investigación Revise los registros para identificar
la causa raíz, por ejemplo, un trabajo por lotes defectuoso. Notificaciones, envíe
un mensaje de holgura al ingeniero de guardia. Envíe un correo electrónico al equipo con detalles
del incidente y acciones tomadas. Automatizar flujos de trabajo con herramientas. Existen varias
herramientas que puede utilizar para implementar flujos de trabajo automatizados de
respuesta a incidentes. Estas son algunas de las herramientas más
utilizadas. Primero es IBMZ Ogamon. Para entornos mainframe,
IBMZ Omegamon
ofrece capacidades integrales de monitoreo y automatización. Puede configurar
respuestas automatizadas a alertas e
incidentes del sistema , como reiniciar trabajos o reasignar recursos Segundo es respondible. Answerable es una poderosa herramienta de
automatización que permite definir respuestas
automatizadas a través Puede manejar tareas
como reinicios de servicios, escalado de
recursos y reversiones de
aplicaciones. Un ejemplo, use un libro de jugadas
respondible para reiniciar
automáticamente un servicio cuando el uso de memoria
exceda el umbral Responsible también se puede integrar con herramientas de
monitoreo como Prometheus para activar
flujos de trabajo específicos basados Tercero es el buscapersonas Jut. Pager jut es una herramienta de
gestión de incidentes que se integra con su sistema de
monitoreo para activar flujos de trabajo automatizados Cuando se activa una alerta, buscapersonas Jut puede automatizar acciones como
escalar recursos o reiniciar servicios, así
como notificar Mejores prácticas para automatizar la respuesta a
incidentes. Uno, probar flujos de trabajo regularmente. No espere un incidente real para probar sus flujos de trabajo
automatizados. Configura simulaciones regulares para garantizar que
tus flujos funcionen correctamente y que las respuestas se
activen como se esperaba Dos, priorizar incidentes
críticos. No todos los incidentes
son iguales. Asegúrese de priorizar sus respuestas
automatizadas para problemas
críticos que puedan
causar un tiempo de inactividad importante
o fallas en el sistema temas no críticos
aún pueden requerir
intervención manual. Tres,
mejorar continuamente los playbooks. A medida que su sistema evoluciona, también deberían hacerlo sus playbooks de
respuesta a incidentes Revise y actualice regularmente sus libros de jugadas para reflejar la
nueva configuración del sistema, las aplicaciones y los cambios
operativos conclusiones clave de esta lección incluyen la automatización de las respuestas a
incidentes que
le permite resolver
problemas más rápido sin intervención
manual,
mejorando el tiempo de actividad del sistema Utilice herramientas como IBMZ Omega Mon, ansib o pager ut para implementar flujos de trabajo que reinicien
automáticamente los servicios, recursos anticuados o despliegues fallidos
de reversión Cree manuales de
respuesta a incidentes que describan los pasos a seguir
durante incidentes específicos, asegurando un enfoque consistente
y eficiente para resolver problemas Hagamos una actividad de aprendizaje. Cree un libro de estrategias de
respuesta a incidentes para un problema común en su entorno de
mainframe Por ejemplo, el uso de CP
o falla en el trabajo. Incluir ambas acciones automatizadas, por ejemplo, reinicio de
servicios y un paso manual. Por ejemplo, notificar
al ingeniero de guardia. Comparta su libro de jugadas
en el foro de
discusión del curso y
explique cómo planea implementarlo con su
herramienta de respuesta a incidentes de su elección Por ejemplo, IBMZ Omega
moon o respondible. ¿Qué es lo siguiente? En
la siguiente lección, exploraremos estudios de casos
reales de monitoreo
automatizado y sistemas de respuesta a
incidentes en acción. Aprenderá cómo las empresas
han implementado con éxito estos sistemas para reducir el tiempo de inactividad y mejorar la confiabilidad
del sistema.
29. Lección 4: estudios de casos en el monitoreo automatizado y la respuesta a incidentes: Lección cuatro, estudios de caso y monitoreo
automatizado
y respuesta a incidentes. Bienvenidos a la Lección
Cuatro del Módulo Siete. Cubrimos cómo configurar el monitoreo
automatizado, crear alertas e implementar flujos de trabajo de respuesta a
incidentes. Pero, ¿cómo
funcionan estas estrategias en el mundo real? Hoy, analizamos casos de estudio de empresas
que han
implementado exitosamente monitoreo automatizado y respuesta a
incidentes en su entorno
mainframe Estos ejemplos del mundo real
demostrarán cómo la automatización
puede reducir el tiempo de inactividad, mejorar la confiabilidad del sistema y liberar a su equipo para tareas
más estratégicas. Al final de esta lección, comprenderá cómo
las organizaciones reales han utilizado monitoreo
automatizado
y la respuesta
a incidentes para resolver desafíos
operativos clave. Los beneficios que se han dado cuenta como una resolución de
incidentes más rápida, inactividad
reducido y
una mayor eficiencia del sistema. Información práctica que puede aplicar en su propio entorno de
mainframe Profundicemos en estas historias de
éxito y descubramos lo que es posible cuando automatización se
implementa de manera eficiente. Como estudio uno,
institución financiera global reduce el tiempo de inactividad
con monitoreo automatizado. Comencemos con una institución
financiera global que depende en gran medida de los sistemas
mainframe para el procesamiento de transacciones Manejan millones de
transacciones por día y cualquier tiempo de inactividad podría resultar en pérdidas
significativas y daños a la
reputación Antes de implementar la automatización, enfrentan varios desafíos. Desafío. El equipo
luchó para monitorear el alto volumen de trabajos por lotes
y transacciones manualmente Esto a menudo condujo a una detección de
incidentes retrasada, lo que provocó un tiempo de inactividad prolongado
durante las horas pico. Solución. La compañía implementó IBMZ Omega moon para implementar monitoreo en tiempo
real y alertas
automatizadas para el uso de la CPU, consumo de
memoria y el desempeño del trabajo
por lotes Respuesta automatizada. Cuando el pico de uso de CP o el trabajo
por lotes comenzaron a fallar, escalado
automatizado
de los recursos y los reinicios del
servicio se
activaron sin intervención
manual El resultado, el tiempo de inactividad
se redujo en 40%. A medida que el sistema automatizado detectaba y respondía a
incidentes en cuestión de segundos, el equipo ahora podría enfocarse en
optimizar el rendimiento y manejar problemas complejos del sistema, sabiendo que los incidentes crutin
se manejaban automáticamente Page stuty two, proveedor de
atención médica, mejorando la confiabilidad del sistema
con automatización de incidentes Un importante
proveedor de atención médica necesitaba garantizar tiempo de actividad de
24 por siete para
sus sistemas mainframe, que manejan
datos confidenciales de pacientes y procesan reclamos médicos Con estrictos
requisitos de cumplimiento y cargas de trabajo críticas, inactividad no era una opción Desafío. Antes de la automatización,
incidentes como alto uso de memoria o los tiempos de espera de la
base requerían una intervención manual, que a veces tomaba horas, especialmente durante las horas de
baja actividad Solución, implementaron
Prometheus para monitoreo, junto con el deber de buscapersonas para
activar flujos de trabajo automatizados de respuesta a incidentes También crearon libros de estrategias de
respuesta a incidentes para manejar problemas comunes, como los reinicios de
servicios y el escalado de
recursos Respuesta automatizada. El libro de jugadas para un uso elevado de memoria activó
automáticamente ansibl para escalar los recursos de memoria y reiniciar los servicios sin
ninguna intervención humana El resultado, el tiempo de
respuesta a incidentes bajó de horas a
solo unos minutos. confiabilidad del sistema
mejoró significativamente y el equipo pudo
cumplir con estrictos
requisitos de cumplimiento con monitoreo en tiempo real
y resolución de incidentes. El proveedor de atención médica
ganó más confianza en la capacidad de
su sistema para manejar datos
críticos 24 por siete. Un estudio tres, agencia gubernamental automatiza retrocesos
para evitar la pérdida de datos Una agencia gubernamental que dirige un público crítico que enfrenta problemas de
plataforma con implementaciones fallidas, lo que provocó corrupción de datos
e interrupciones del servicio Su sistema mainframe procesaba gran cantidad de información
confidencial diariamente una
gran cantidad de información
confidencial y una
implementación fallida podría dar lugar a importantes problemas de confianza
pública Las implementaciones fallidas del desafío causan fallas en el sistema
y corrupción de datos Revertir estas
implementaciones manualmente tomó horas afectando la disponibilidad
de los servicios públicos La solución, implementaron un
sistema de rollback automatizado utilizando playbooks
responsables y
Git Si fallaba una implementación, el sistema
volvía automáticamente a la versión estable anterior
asegurando la continuidad La respuesta automatizada, el sistema detectó fallas de
implementación a través de alertas prometeosas e inmediatamente desencadenó una reversión vía
responsableable, restaurando el sistema a su estado previo al El resultado, la agencia
redujo el tiempo requerido para la reversión de
4 horas a 10 minutos. No hubo más casos
de interrupciones prolongadas debido a fallas de
implementación
y
se mantuvo la integridad de los datos durante cada actualización confianza de actualización en el
sistema se restauró medida que los usuarios experimentan una interrupción mínima del
servicio. Estudio de página cuatro recursos de
escalamiento bancario minorista durante el alto tráfico. Una plataforma de
banca en línea de bancos minoristas experimentó aumentos de tráfico durante el día de pago con miles de usuarios accediendo a la
plataforma simultáneamente El sistema necesitaba escalar
para satisfacer esta demanda, pero escalar manualmente los recursos era ineficiente y
propenso a demoras El desafío de los picos de tráfico, ralentizaciones del sistema de
costos
y las interrupciones ocasionales Los equipos de identificación del banco
tuvieron dificultades para mantenerse al día con escalado
manual de recursos, lo que condujo a una mala experiencia del usuario
durante los tiempos críticos La solución, el banco
desplegó prometheus y drafana para monitorear los patrones de
tráfico y la utilización de recursos
en tiempo real Cuando el tráfico aumenta, una respuesta
automatizada escalaría los recursos de
CPU y memoria
en función de umbrales predefinidos, la respuesta automatizada, libros de jugadas
ansible activaban
automáticamente recursos
adicionales
durante las horas pico y los reducirían durante el período de
bajo tráfico, optimizando el rendimiento
y El resultado, el banco redujo las ralentizaciones
del sistema en un 50%, lo que llevó a una mayor satisfacción
del cliente La automatización le ahorró al equipo de ID varias horas de
trabajo manual cada semana y escalado se convirtió en una
respuesta automatizada perfecta, proceso automatizado. Desglose paso a paso del éxito. Resumamos los elementos
comunes que hicieron que estos
estudios de caso fueran exitosos Uno, herramientas de monitoreo. Las empresas utilizan herramientas
como IBMZ Omega Mon, Romius y Gropana para configurar monitoreo en tiempo
real de métricas
clave como CPU,
memoria, IO memoria, Dos, respuestas automatizadas. El uso de herramientas como las empresas con respuesta
y buscapersonas, las empresas de Juty automatizaron las respuestas a incidentes clave como escalar recursos, reiniciar servicios Tres, cuadernos de jugadas de incidentes. manuales de respuesta a incidentes predefinidos permiten a los equipos crear flujos de trabajo
repetibles consistentes para incidentes comunes, mejorando el tiempo de respuesta
y reduciendo el trabajo manual O notificaciones, alertas
se enviaron a través de Slack, correo electrónico o servicio de buscapersonas, asegurando que los equipos adecuados siempre
estuvieran informados Mejores prácticas para implementar monitoreo
y respuesta
automatizados. Si está
pensando en implementar monitoreo
automatizado
y respuesta a incidentes, aquí hay algunas de las mejores prácticas. Primero, empieza poco a poco. Automatice primero tareas simples como reinicios de
servicios o escalado de
recursos, construya
gradualmente flujos de trabajo
más complejos como automatizadas
o balanceo de carga En segundo lugar, use cuadros de mando. Implemente
paneles visuales con herramientas como Rafana para que pueda monitorear
fácilmente el
estado del sistema de un vistazo Tercero, prueba tu automatización. Pruebe regularmente sus flujos de trabajo
automatizados en un entorno de ensayo para asegurarse de que todo funcione como se
esperaba cuando
ocurre un incidente en producción. O refinar con el tiempo. Revise y ajuste sus libros de jugadas de
incidentes regularmente para reflejar
los cambios en sus sistemas, cargas de trabajo o requisitos comerciales conclusiones clave de esta lección incluyen ejemplos del mundo real que
demuestran el poder del monitoreo
automatizado y la respuesta a
incidentes en entornos
mainframe, lo que
conduce a resolución
más rápida y un tiempo de inactividad
reducido Herramientas como IBMZ
OmegaMonpThes, Grafana y responsableable pueden ayudar a automatizar las respuestas a incidentes
como escalar recursos, y responsableable pueden ayudar a automatizar
las respuestas a incidentes
como escalar recursos,
reiniciar servicios o retroceder implementaciones de fallas. La implementación de manuales de
respuesta a incidentes garantiza un enfoque consistente
para manejar incidentes, mejorar la confiabilidad del sistema
y la eficiencia del equipo Hagamos una actividad de aprendizaje. Reflexione sobre uno de
los estudios de caso discutidos en esta lección. ¿Cómo podrías aplicar
una estrategia similar en tu propio entorno? Identifique un problema común al que se enfrenta su
sistema, por ejemplo, sobretensiones
gráficas o fallas de trabajo
por lotes y describa un flujo de trabajo de
respuesta automatizada antes Comparta sus ideas en el foro de discusión del curso
y discuta cómo
implementaría la automatización para reducir el tiempo de inactividad o mejorar la confiabilidad. ¿Cuál es el siguiente? En el siguiente módulo, exploraremos la seguridad y cumplimiento en la automatización de
mainframe Aprenderá a integrar comprobaciones de seguridad
automatizadas
en sus canalizaciones CICD para garantizar el cumplimiento los estándares de
la industria y proteger sus sistemas de
vulnerabilidades
30. Lección 1: automatización de controles de seguridad en tuberías de CI/CD: Módulo ocho, cumplimiento
de seguridad y esfuerzos de automatización de escalado. En este módulo,
aprenderás a hacer lo siguiente. Automatice las comprobaciones
de seguridad dentro de su canalización CICD. Garantizar el cumplimiento de los estándares de
la industria como PCI DSS, HIPAA y SOC Escale sus esfuerzos de automatización mientras mantiene la
seguridad y el cumplimiento. Al final de este módulo, comprenderá cómo construir un marco de automatización
escalable y compatible seguro. Lección uno, automatización de
comprobaciones de seguridad en ductos CICD. Bienvenido a la lección
uno del Módulo ocho. La seguridad es una
prioridad para cualquier sistema, pero es especialmente crítica en entornos como mainframes Donde están en juego datos confidenciales y aplicaciones de
misión crítica. En esta lección, nos
centraremos en cómo automatizar las comprobaciones de seguridad
dentro de su canalización de CICD, asegurando que la seguridad
no sea una ocurrencia tardía, sino que se integre en cada etapa de
su proceso de desarrollo e
implementación Al final de esta lección, comprenderá
lo
siguiente la importancia de
automatizar las comprobaciones de seguridad como
parte de su proceso CICD, cómo usar herramientas como el análisis de código
estático y escaneo de
vulnerabilidades para
identificar problemas de seguridad Cómo integrar la seguridad
en cada etapa de
la canalización de CICD sin
ralentizar sus Vamos a saltar y hacer que su seguridad sea tan automatizada
como el resto de su sistema. ¿Por qué automatizar las comprobaciones de seguridad? La seguridad es una de
esas cosas que es fácil pasar por alto hasta que
algo sale mal, entonces es demasiado tarde. Tradicionalmente, las
comprobaciones de seguridad se realizaban manualmente después de
escribir el código o antes de la implementación, lo que no solo
ralentizaba el proceso de lanzamiento, sino que también permitía que las vulnerabilidades se
deslizaran Al automatizar estas comprobaciones, puede detectar problemas de manera temprana, prevenir brechas y mantener un entorno seguro sin
ralentizar Tomemos un ejemplo.
Imagina que estás ejecutando un sistema financiero que procesa millones
de transacciones. Incluso una pequeña vulnerabilidad
podría ser explotada para robar datos sensibles
o causar daños financieros. Al automatizar las comprobaciones de seguridad
en su canalización de CICD, puede identificar vulnerabilidades antes de que lleguen a producción,
lo que garantiza la confianza del cliente
y la integridad del sistema Es comprobaciones de seguridad para automatizar. Existen varios tipos de comprobaciones de
seguridad que deberían formar parte de cualquier canalización automatizada de
CICD Vamos a desglosarlos. Análisis
de código estático o SAST. El análisis estático de código
es un método analizar tu código
sin ejecutarlo. Examina la base de código para detectar vulnerabilidades de
seguridad, problemas de calidad del
código y bus
potencial que podría
conducir a violaciones de seguridad ¿Qué comprueba?
El análisis de código estático busca vulnerabilidades
como riesgos de inyección SQL, desbordamientos de
búfer, vulnerabilidades de secuencias de
comandos posteriores al sitio y
credenciales codificadas en código duro Un ejemplo, en una aplicación
COBOL, análisis
estático podría detectar manejo
inseguro de cadenas que podría conducir a desbordamientos de búfer, evitando una futura explotación Herramienta a utilizar. Herramientas como las marcas de verificación de
SonarQube o Veracode se integran en su canalización de CICD
para
analizar automáticamente el código en busca de vulnerabilidades
cada vez que un desarrollador cada vez Escaneo de dependencias. Las aplicaciones madre a menudo
dependen de bibliotecas o
paquetes de terceros y cada dependencia es un riesgo potencial para la seguridad. El escaneo de dependencias verifica
las dependencias de tu proyecto para detectar vulnerabilidades
conocidas.
¿Qué comprueba? La exploración de dependencias busca bibliotecas
obsoletas o
vulnerables, parches de
seguridad que
no se han aplicado y vulnerabilidades conocidas
en código de terceros. Un ejemplo, su aplicación de
mainframe podría depender de una
biblioteca de terceros para el cifrado Si esa biblioteca tiene una vulnerabilidad
conocida, escaneo de
dependencias te
alertará para que la actualice antes de que
pueda ser explotada. Herramienta a utilizar. Herramientas como SNIC OS dependencies check o Black Doc pueden escanear
dependencias automáticamente, asegurando que estés usando versiones
o
bibliotecas seguras y actualizadas Pruebas dinámicas de
seguridad de aplicaciones o DAST. A diferencia del análisis de código estático, pruebas
dinámicas de
seguridad de aplicaciones, DAST analiza una aplicación en ejecución para
detectar vulnerabilidades Simula ataques contra la aplicación para
encontrar problemas como configuraciones
inseguras o vulnerabilidades de tiempo de
ejecución ¿Qué comprueba? DAST busca vulnerabilidades en la aplicación en ejecución, por ejemplo, inyección SQL
o autenticación rota Configuraciones inseguras,
por ejemplo, acceso
excesivamente permisivos controles Un ejemplo, ejecutar
una herramienta DAST contra su sistema
bancario basado en mainframe podría detectar una vulnerabilidad en la que autenticación
del usuario no
está debidamente protegida, impide el acceso no autorizado
. Herramienta a utilizar. Herramientas como OAS Zap o BRB Sweep realizan pruebas dinámicas en
sus aplicaciones en ejecución
como parte de la canalización Exploración de vulnerabilidades. El escaneo de vulnerabilidades se centra en identificar debilidades en su
infraestructura como errores de configuración, software
obsoleto
o servicios expuestos que podrían ser explotados
por atacantes ¿Qué comprueba?
La exploración de vulnerabilidades busca puertos abiertos o servicios
innecesarios
que expongan el sistema. Configuraciones débiles,
por ejemplo, contraseñas
débiles o protocolos
inseguros, vulnerabilidades
sin parchear
en Un ejemplo, en un entorno de
mainframe, escaneo de
vulnerabilidades
podría detectar que ciertos servicios se
ejecutan en puertos abiertos que no necesitan ser expuestos o que algunos sistemas no se han actualizado con los últimos parches Herramienta a utilizar. Herramientas como NSS, palacio o sostenible,
automatizan la infraestructura, escaneo de
vulnerabilidades y reportan posibles riesgos de
seguridad Integrando la seguridad
en su pipeline de CICD. Es importante
pensar en la seguridad como algo que está entretejido
en su tubería, no atornillado al final A continuación, le mostramos cómo puede
integrar las comprobaciones de seguridad en cada etapa de
su proceso CICD Uno, etapa pre commit, análisis de código
estático. En la etapa de pre commit, las herramientas de análisis de código
estático pueden verificar el código a medida
que se escribe. Los desarrolladores reciben
comentarios inmediatos sobre las vulnerabilidades, lo que les permite solucionar problemas
incluso antes de que se comprometan. Herramientas. SonarQube se puede
integrar en ediciones de banderas de editores de
código como
código de desarrolladores asegurando
prácticas de codificación seguras desde Dos, etapa de construcción, dependencia
y análisis estático. Durante la etapa de compilación, las herramientas de escaneo de
dependencias
pueden verificar automáticamente si hay bibliotecas de
terceros desactualizadas o vulnerables. Las herramientas de análisis estático también pueden ejecutar un escaneo más completo de
la base de código en este punto. Dos, la comprobación de dependencia de SNAC OOS y la exploración de
dependencias vulnerables
durante el proceso Tres, etapa de prueba, DAST y escaneo de
vulnerabilidades. Una vez que la aplicación se
ejecuta en un entorno de prueba, las herramientas
DAST y
los escáneres de vulnerabilidad se pueden usar para probar la seguridad de la aplicación en condiciones del mundo real Esto garantiza que en cualquier
momento se detecten vulnerabilidades o configuraciones erróneas
de
infraestructura configuraciones erróneas
de
infraestructura antes de la implementación Dos, OAS Zap o BRB Suite para pruebas
dinámicas y NSS o escaneo de vulnerabilidades de infraestructura O etapa de despliegue, monitoreo continuo
de seguridad. Después de la implementación, las herramientas de monitoreo de
seguridad continuo y aseguran que no
se introduzcan
vulnerabilidades en el sistema. Si
se encuentran nuevas vulnerabilidades, pueden activar alertas e incluso despliegues de reversión
si es necesario. Herramienta, herramientas como
CisDig secure pueden proporcionar monitoreo continuo de la aplicación implementada
y su entorno Mejores prácticas para la
seguridad automatizada en caning de CI. Estas son algunas de
las mejores prácticas para garantizar que sus comprobaciones de
seguridad automatizadas se ejecuten sin problemas y no
creen cuellos de botella Desplazamiento de seguridad a la izquierda. Cuanto antes capte
las vulnerabilidades, más fáciles serán de arreglar. integración de comprobaciones de seguridad en La integración de comprobaciones de seguridad en las etapas de pre commit y build evita que las vulnerabilidades
lleguen a etapas
posteriores donde las
correcciones son más costosas. Automatice todo. Las comprobaciones manuales de seguridad son propensas a
errores humanos y retrasos. Asegúrese de que todas las etapas
de su canalización, desde el análisis de código hasta el escaneo
de
vulnerabilidades, estén completamente automatizadas. Monitoree continuamente. La seguridad no se
detiene en el despliegue. Utilice
herramientas de monitoreo continuo para vigilar nuevas vulnerabilidades y
abordarlas a medida que surjan. conclusiones clave de esta lección incluyen la automatización de las comprobaciones de
seguridad que garantiza que las vulnerabilidades
se
detecten y aborden al principio del proceso CICD, lo que reduce el riesgo sin
ralentizar Utilice herramientas como Sonar tube
para análisis de código estático,
SNIC para escaneo de dependencias, OAS Zap para pruebas dinámicas y NESIS para
escaneo de vulnerabilidades para automatizar comprobaciones de seguridad
críticas Integre las comprobaciones de seguridad en cada etapa de la canalización desde el compromiso previo hasta el monitoreo posterior a la
implementación para
una protección integral. Hagamos una actividad de aprendizaje. Elija una herramienta de seguridad, por
ejemplo, SonarQube, SNAP o OAS
Zap, o OAS
Zap, e intégrela en
su Ejecute una verificación de seguridad en una de sus aplicaciones de
mainframe actuales e identifique cualquier vulnerabilidad o posible problema de seguridad Comparte tu experiencia y los resultados en el foro de discusión del
curso, junto con cualquier paso que
tomaste para abordar las
vulnerabilidades. ¿Cuál es el siguiente? En la siguiente lección, profundizaremos en la automatización las comprobaciones de cumplimiento para
garantizar que su sistema cumpla con los estándares de la industria como
PCI DSS, HIPA Aprenderá a generar informes de cumplimiento
automatizados y a garantizar que su entorno de
mainframe siga siendo compatible en todo momento
31. Lección 2: garantizar el cumplimiento de los estándares del sector: Lección dos, asegurar el
cumplimiento de los estándares de la industria. Bienvenido a la Lección
Dos del Módulo Ocho. En el mundo actual, el
cumplimiento las regulaciones de
la industria no
es negociable, especialmente para
las organizaciones que manejan datos
confidenciales como
los de salud, finanzas
o gobierno Pero mantenerse constantemente al día con los estándares de
cumplimiento
como PCIDSS, HIPAA o SOC puede ser
un gran desafío, especialmente cuando las
verificaciones manuales ralentizan En esta lección, nos
centraremos en cómo automatizar las comprobaciones de cumplimiento
en su canalización de CICD Al final de esta lección, sabrá cómo asegurarse de que
sus sistemas sigan siendo compatibles sin sacrificar la
agilidad o la velocidad También exploraremos
cómo generar informes de cumplimiento
automatizados que lo mantengan listo para las auditorías y garanticen
que siempre esté actualizado. Comencemos
entendiendo por qué importante la automatización del
cumplimiento y cómo puede transformar
sus operaciones. ¿Por qué es importante automatizar las
comprobaciones de cumplimiento? Cuando las organizaciones
administran datos confidenciales, es crucial que cumplan
con las regulaciones de la industria. El incumplimiento puede
dar lugar a multas masivas, sanciones
legales y pérdida
de confianza con los clientes. Sin embargo, verificar manualmente el cumplimiento
durante cada versión puede ralentizar el desarrollo e
introducir errores humanos. Ahí es donde entra en juego
la automatización del cumplimiento. Le permite verificar
continuamente los requisitos
reglamentarios y
asegurarse de que cumple con los estándares sin
ralentizar sus operaciones Un ejemplo, digamos que ejecuta
una plataforma de atención médica que procesa datos de pacientes con regulaciones de HIPAA implementadas, cualquier violación de seguridad podría
resultar en multas rígidas Al automatizar las comprobaciones de cumplimiento como parte de su canalización de CICD, puede asegurarse de que
se apliquen los protocolos de
seguridad y que cada versión cumpla con los estándares
regulatorios sin necesidad de
verificar manualmente cada Él estándares de la industria
a cumplir. Antes de profundizar en el cómo, revisemos rápidamente los
principales estándares de la industria que la mayoría de las organizaciones
deben cumplir. El primero es PCIDSS o seguridad de
datos de la industria de tarjetas de
pago A quién aplica. Una empresa que procesa, almacena o transmite información
de tarjetas de crédito. Requisitos de cumplimiento. PCI DSS requiere que las empresas
apliquen medidas de seguridad
como el cifrado de datos, control de
acceso y la administración de
vulnerabilidades Un ejemplo, si su entorno de
mainframe maneja transacciones con
tarjetas de crédito, PCIDSS requerirá
que encripte datos
confidenciales del titular de la tarjeta y escanee
regularmente Dos, HIPAA o Ley de Portabilidad
y Rendición de Cuentas del Seguro de
Salud Quién aplica a
Organizaciones en atención médica o cualquier entidad que se ocupe información de salud
protegida o PHI. Requisitos de cumplimiento. La HIPAA exige controles estrictos sobre el acceso a los datos de los pacientes, incluidas las políticas de cifrado, auditoría y retención de datos Un ejemplo, si está ejecutando una
aplicación de atención médica en un mainframe, cumplimiento de
HIPAA
significa que necesita asegurarse de que
los datos del paciente estén encriptados, registrados y accesibles solo
para Tres, SOC para
Sarbanes Oxley Act, quien aplica a
las empresas públicas en Estados Unidos,
principalmente para garantizar la principalmente para garantizar integridad
financiera Requisitos de cumplimiento, SOT requiere que
los sistemas utilizados para informes
financieros
tengan controles para garantizar la precisión y
seguridad de los datos financieros. Estos sistemas deben mantener auditoría y
garantizar la integridad de los datos. Un ejemplo, si su empresa procesa
estados financieros en mainframes, cumplimiento
fiscal significa
garantizar que cualquier cambio datos
financieros se registren,
auditen y Automatizar las comprobaciones de cumplimiento
en su pipeline de CICD. Ahora que está familiarizado
con los estándares clave, hablemos sobre cómo
puede automatizar comprobaciones de
cumplimiento
en diferentes etapas de su canalización de CICD A continuación, le indicamos cómo puede incorporar
el cumplimiento en cada paso. Primero, comprobaciones previas a la etapa de confirmación, código y configuración. En la etapa de pre-commit, los desarrolladores pueden ejecutar
herramientas que hacen cumplir las reglas de
cumplimiento directamente en sus archivos de código y
configuración. ¿Qué verificar? Asegúrese de que se cumplan los estándares de cifrado
como AES. Verifique que
los datos confidenciales, por ejemplo, números de tarjetas de
crédito o información
del paciente
no estén codificados. Validar
políticas de control de acceso en código. Herramienta a usar, herramientas como
OpenSCAP o CIS CAT pueden escanear código en busca de
configuraciones erróneas o violaciones de las reglas de cumplimiento
antes de que se comete el código Un ejemplo, antes de enviar el código que maneja los datos del paciente, una
aplicación de atención médica verifica el
cumplimiento de los requisitos de
HypaSencrption, asegurando que todos los
archivos de datos confidenciales Segundo, etapa de construcción,
pruebas de cumplimiento durante la construcción. Durante la etapa de construcción, se pueden activar pruebas
automatizadas para garantizar el cumplimiento de
diversas regulaciones de la industria. Este paso le permite detectar problemas de
cumplimiento antes de implementar la
aplicación. ¿Qué verificar? Verificar el cifrado de datos confidenciales en bases de datos. Confirme que el registro está habilitado para
transacciones confidenciales. Validar los registros de
auditoría para el cumplimiento de calcetines o HIPA. Herramienta a utilizar. Herramientas como Hashi
Corps Sentinel o
chef Inspeccione las verificaciones de
cumplimiento de la fuerza de inquilinos automáticamente
durante la Un ejemplo, en un entorno
financiero, se ejecuta
una verificación de cumplimiento
durante la compilación para garantizar que todas
las transacciones financieras se registren
correctamente para cumplir con los requisitos de auditoría de
SOBS En tercer lugar, la etapa de prueba, la validación dinámica
del cumplimiento. En la etapa de prueba, las
herramientas de cumplimiento pueden
validar dinámicamente el
comportamiento de las aplicaciones en un entorno de prueba. Esto implica simular operaciones
del mundo real para garantizar que la aplicación esté siguiendo las reglas de
cumplimiento. ¿Qué verificar? Compruebe que no
se puede acceder a los datos confidenciales sin
una autenticación adecuada. Validar que los registros de auditoría están capturando todas
las transacciones necesarias. Garantizar el cumplimiento las políticas de control de
acceso. Herramienta a utilizar. OAS Zap o Berk Suite se
pueden integrar en su canalización de pruebas
para simular un acceso fiscal o no autorizado y verificar si hay violaciones
de cumplimiento Un ejemplo, un entorno de prueba
para un sistema de pago simula un escenario en el que un usuario autorizado intenta acceder
a datos cifrados de tarjetas de
crédito El sistema confirma que el
usuario no puede acceder a los datos, asegurando el cumplimiento de PCI DSS Cuatro, etapa de despliegue, monitoreo
continuo de cumplimiento. Después de la implementación, las herramientas de monitoreo
continuo garantizan que el cumplimiento se
mantenga en producción. Estas herramientas verifican si hay
errores de configuración, vulnerabilidades
e
infracciones de control de acceso que podrían
llevar al incumplimiento ¿Qué verificar? Supervise los registros de
acceso para garantizar que solo los usuarios autorizados accedan a los datos confidenciales. Los parches de seguridad
verificados se aplican regularmente. Verifique si hay configuraciones erróneas
que puedan violar los estándares
de cumplimiento.
Herramienta a utilizar. Herramientas como Qualis
o Tenable proporcionan monitoreo
continuo de cumplimiento y le
alertan de cualquier violación Ejemplo, en un entorno
sanitario de producción, Qualis monitorea el
sistema en busca de hipacmpliance, asegurando que solo el
personal autorizado acceda a los datos
del paciente y
que personal autorizado acceda a los datos
del paciente y los registros de auditoría se Aquí están las
herramientas de cumplimiento para la automatización. OpenSCAP para la automatización de la seguridad y el cumplimiento de la
configuración, Chief Inspect para verificar seguridad y el cumplimiento
del sistema,
y Qualis para el monitoreo
continuo del
cumplimiento y el cumplimiento de la
configuración,
Chief Inspect para verificar la seguridad y el cumplimiento
del sistema,
y Qualis para el monitoreo
continuo del
cumplimiento y la administración de vulnerabilidades. Generación de reportes automatizados de
cumplimiento. El cumplimiento no se trata solo de
hacer cumplir las medidas de seguridad. También se trata de
demostrar que su organización
cumple con los estándares de la industria. Aquí es donde entran en juego los informes de
cumplimiento automatizados. Estos informes son
esenciales para las auditorías y generarlos manualmente
es una tarea que consume mucho tiempo. Al automatizar los informes de
cumplimiento, puede asegurarse de que
siempre está listo para una auditoría sin compilar
datos manualmente ¿Qué reportes generar? Para PCI DSS, genere informes que muestren prácticas de
cifrado de datos, controles de registro de
acceso, registros de control de
acceso y resultados de
escaneo de vulnerabilidades Para HIPA, cree informes
que documenten
políticas de cifrado, control de
acceso
y retención de datos para información de
salud protegida o PHI Para SOC, genere informes de auditoría para rastrear los cambios
en los datos financieros, registrar el acceso y garantizar la integridad de
los datos. Herramientas para la generación de informes automatizados. Splunk, logaritmo y pila
elástica se pueden utilizar para automatizar la generación de informes de cumplimiento basados en los registros de actividad de
sus sistemas Un ejemplo, un banco minorista utiliza Splunk para generar informes mensuales de cumplimiento de
PCIDSS, detallando el cifrado de los datos del titular
de la tarjeta, los registros de control de
acceso y
cualquier vulnerabilidad que
se escaneó y remedió Mejores prácticas para
automatizar el cumplimiento. Uno, incorporar el cumplimiento
en cada etapa. No trate el cumplimiento como algo que hace al
final del desarrollo,
asegúrese de que las
verificaciones de cumplimiento sean parte de su canalización de CICD
desde el principio Dos, actualice regularmente
sus reglas de cumplimiento. Los estándares de la industria como PCI DSS e HIPA están en
constante evolución Asegúrese de que sus comprobaciones
automatizadas estén actualizadas para reflejar los
últimos requisitos. Tres, generar
informes automáticamente. Utilice herramientas para generar informes de
cumplimiento
automáticamente para que su organización
esté siempre
lista para auditar y pueda demostrar
el cumplimiento en cualquier momento. Las conclusiones clave de esta
lección incluyen la automatización de las comprobaciones de cumplimiento para garantizar que
sus sistemas cumplan con los requisitos de PCIDSS, HIPAA y SOC sin intervención Utilice herramientas como OpenSCAP, HashiCorp Sentinel y Qualis para
hacer cumplir el cumplimiento en Genere informes de
cumplimiento automatizados para garantizar que
siempre esté listo para realizar auditorías y pueda demostrar fácilmente que su organización
cumple con los estándares de la industria. Hagamos una actividad de aprendizaje. Elija un estándar de la industria su organización
debe cumplir. Por ejemplo, ECIDSS HIPA o SOC. Configura una verificación automatizada de
cumplimiento en tu canalización de CICD usando una herramienta como OpenSCAP
o Generar un informe
de cumplimiento automatizado y revisar los resultados. Comparte tu experiencia y cualquier reto que enfrentes en
el foro de discusión del curso. ¿Cuál es el siguiente? En la siguiente lección, exploraremos cómo escalar la
automatización a través de sus operaciones de
mainframe Aprenderá a expandir sus esfuerzos de automatización mientras mantiene la
estabilidad y el rendimiento del sistema.
32. Lección 3: escalar la automatización en las operaciones de mainframe: Lección tres, escalando automatización en todas las operaciones de
mainframe Bienvenido a la lección
tres del Módulo ocho. En las lecciones anteriores, cubrimos la automatización de los controles de
seguridad y el
cumplimiento de los estándares de la industria Ahora estamos listos para analizar
más ampliamente la automatización
y cómo escalarla en todas sus
operaciones de mainframe Escalar la automatización no se trata
solo de agregar más herramientas, se trata de expandir la automatización de una
manera estratégica que mejore la eficiencia
al tiempo que mantiene estabilidad
y el rendimiento
del sistema. Al final de esta lección, comprenderá
lo siguiente,
cómo expandir
la automatización para cubrir más áreas de sus operaciones de
mainframe Estrategias para mantener la estabilidad
del sistema a la
vez que se aumenta la automatización. Lecciones prácticas de ejemplos del mundo
real sobre cómo escalar sin
interrumpir los procesos críticos Vamos a sumergirnos en el desafío de expandir la automatización y
cómo hacerlo con éxito. Por qué la automatización de escalas. Ya hemos visto
los beneficios de
automatizar partes de su tubería CICD, controles de
seguridad y procesos de
cumplimiento Entonces, ¿por qué parar ahí? La automatización de escalado
significa que puede ampliar esos beneficios, como implementaciones
más rápidas, menos errores y una mejor administración de
recursos en más áreas de su entorno de
mainframe El objetivo es eliminar las tareas repetitivas
manuales y permitir que tu equipo se concentre
en un trabajo más estratégico Un ejemplo, pensar una gran institución financiera que maneja sistemas
bancarios críticos. Es posible que ya tengan
implementaciones automatizadas para algunas aplicaciones de
mainframe, pero escalar la automatización para
manejar el procesamiento por lotes, monitoreo
del sistema y el escalado de
recursos podría reducir intervención
manual y permitir que la organización responda
más rápidamente a las demandas del sistema Áreas clave para ampliar la automatización. Al escalar la automatización a través de
sus operaciones principales de pago, debe buscar áreas que brinden el
mayor rendimiento en términos de eficiencia,
confiabilidad y rendimiento Aquí hay algunas
áreas clave en las que enfocarse. Automatización de procesamiento por lotes. Muchos entornos de mainframe
dependen en gran medida procesamiento
por lotes
donde se procesan grandes volúmenes de datos
en trabajos programados Automatizar este proceso
puede reducir errores, garantizar que los trabajos se ejecuten a
tiempo y ajustar los recursos dinámicamente en
función de la carga ¿Qué automatizar?
Automatice la programación y ejecución de trabajos por lotes. Utilice herramientas como BMC Control para monitorear y optimizar los procesos
por lotes Asigne automáticamente
recursos adicionales, por ejemplo, memoria y CPU si un trabajo
se ejecuta más tiempo de lo esperado. Todo ejemplo, un banco minorista automatiza sus trabajos nocturnos por lotes que procesan las transacciones de los clientes Al automatizar la
asignación de recursos, evitan demoras en la finalización del
trabajo y aseguran que los clientes puedan acceder a sus
saldos de cuentas actualizados para la mañana siguiente Monitoreo automatizado del sistema. Una vez que la automatización se escale
en varias operaciones, deberá asegurarse de que sus
sistemas funcionen sin problemas Las herramientas de monitoreo automatizadas le
ayudan a vigilar
el rendimiento y el estado de su entorno de mainframe.
Qué automatizar. Configura alertas automatizadas para el rendimiento de CPU, memoria y E/S. Supervise las fallas en los trabajos y
desencadene respuestas automatizadas, por ejemplo, reinicie
trabajos o escale los recursos. Utilice Prometheus y Grafana para monitoreo en tiempo
real y Un ejemplo, en un entorno de
atención médica, las herramientas de monitoreo
automatizadas detectan cuándo un proceso de trabajo por lotes de reclamos de
seguros falla
un proceso de trabajo por lotes de reclamos de
seguros y
activan automáticamente un reinicio, lo que garantiza que no haya interrupciones en
la facturación del paciente. Escalado de recursos.
Los sistemas mainframe a menudo experimentan
picos en la demanda, particularmente durante las horas pico, por ejemplo, el procesamiento
financiero de fin de mes Automatizar el escalado de recursos
le permite a su sistema manejar una mayor carga de trabajo sin aprovisionar
manualmente recursos
adicionales.
¿Qué automatizar? Asigne automáticamente CPU
y memoria
adicionales durante los períodos
de alta demanda. Vuelva a reducir los recursos una vez que la carga de trabajo disminuya
para optimizar los costos. Utilice sib para administrar la asignación
dinámica de recursos basada en umbrales predefinidos Un ejemplo, una compañía de
telecomunicaciones automatiza
el escalado de recursos durante las horas pico de uso, como el final de los ciclos de
facturación cuando los clientes acceden a sus cuentas
e información de facturación Esto evita
ralentizaciones del sistema sin
sobreaprovisionar recursos DevOps y expansión de
integración continua. A medida que escala la automatización, es importante integrar los principios de
DevOps aún más, como expandir su integración
continua
y sus canalizaciones de
entrega continuas Qué
automatizar Automatice las pruebas en cada etapa de desarrollo para cada aplicación de mainframe Integre herramientas adicionales
como Jenkins para expandir las capacidades de
CICD en
toda su cartera de mainframe Implemente
reversiones automatizadas en caso de fallas en la implementación,
evitando el tiempo de inactividad Un ejemplo, una
empresa de logística escala su pipeline CICD para incluir todas sus aplicaciones de
mainframe, asegurando que las nuevas
características se prueben e implementen automáticamente
con un tiempo de inactividad mínimo Lecciones para la automatización de escalado. Escalar la automatización no se
trata solo de implementar más herramientas. Se trata de escalar inteligentemente. Aquí hay algunas
lecciones prácticas que debe tener en cuenta al expandir la automatización en sus
operaciones de mainframe Uno, priorizar las áreas
de alto impacto. No intentes automatizar
todo a la vez. Enfócate en las áreas que te
darán el mayor
retorno de la inversión,
como el procesamiento por lotes
y el escalado de recursos. Estos suelen ser los procesos que consumen
más tiempo y son propensos a errores
en los entornos mainframe. Dos, mantener la estabilidad del sistema. A medida que escala la automatización, mantener
la estabilidad del sistema es crucial. Siempre pruebe la automatización en un entorno de ensayo antes implementarla en producción. Esto asegura que los
scripts o procesos de automatización no impacten negativamente en el
rendimiento del sistema. Aquí tienes una propina. Implemente
paneles de monitoreo, alertas en tiempo real para que pueda rastrear el impacto de la automatización en la estabilidad del sistema Tres, mantener el elemento humano. Si bien la automatización puede
manejar tareas repetitivas, aún
necesitará supervisión
humana para la toma de decisiones críticas Configura
alertas y respuestas automatizadas, pero asegúrate de que tu equipo
se mantenga informado de incidentes
importantes y cambios en el sistema o en el sistema. Veamos un ejemplo,
una agencia gubernamental. Una agencia gubernamental
encargada de procesar presentación de
impuestos enfrentó
demandas crecientes durante la temporada tributaria, lo que provocó frecuentes
desaceleraciones del sistema o fallas laborales Decidieron escalar la
automatización a través
de las siguientes áreas. El procesamiento por lotes, la automatización de los trabajos de procesamiento de
tareas, redujo los errores y garantizó finalización
oportuna.
Escalado de recursos. Los recursos se escalaron
dinámicamente para manejar mayores cargas de trabajo, evitando el tiempo de inactividad durante los períodos
pico de presentación Monitoreo automatizado. implementación de
monitoreo en tiempo real les permitió detectar los problemas de manera temprana y
reiniciar automáticamente los trabajos fallidos. El resultado fue una
reducción de 30% en las fallas laborales, tiempos de procesamiento más
rápidos y contribuyentes
más satisfechos. Mejores prácticas para la automatización de
escalado. Estas son algunas de
las mejores prácticas que debe tener en cuenta a medida que escala la automatización en su
entorno de mainframe Primero, comience con pequeñas áreas
de alto impacto. Concéntrese en automatizar tareas como procesamiento
por lotes y el escalado de
recursos, lo que brindará ganancias rápidas En segundo lugar, pruebe
la automatización a fondo. Siempre pruebe la automatización en
un entorno de ensayo para asegurarse de que funciona como se esperaba sin
interrumpir las operaciones En tercer lugar, monitoree
el rendimiento de manera continua. Utiliza herramientas como
Prometheus y Grafana para monitorear el desempeño de tus
procesos automatizados en conclusiones clave de esta lección
incluyen la automatización de escalado en las operaciones de su mainframe lo que
le permite eliminar
más tareas manuales, mejorar la eficiencia
y reducir los errores Concéntrese en automatizar el
procesamiento por lotes, el monitoreo del sistema, escalado de
recursos
y las canalizaciones CICD para obtener los mayores beneficios Garantice la estabilidad del sistema
probando
minuciosamente la automatización y monitoreando
el rendimiento continuamente. Hagamos una actividad de aprendizaje. Identifique un área de sus operaciones de mainframe que podría beneficiarse de la automatización
ampliada Por ejemplo, procesamiento por lotes
o escalado de recursos. Cree un plan para
automatizar esta área, incluyendo las herramientas que
usaría y los procesos
que automatizaría. Comparta su plan en el foro de
discusión del curso y discuta cómo mejoraría la eficiencia y el rendimiento en
su entorno. ¿Cuál es el siguiente? En la siguiente lección, exploraremos cómo mantener los procesos de
automatización a
largo plazo. Aprenderá estrategias
para garantizar que sus esfuerzos de automatización sigan siendo efectivos a medida que evolucionan sus
sistemas y cómo monitorear y
mejorar
los procesos automatizados a lo largo del tiempo.
33. Lección 4: mantenimiento de la automatización en operaciones a largo plazo: Lección cuatro, que
implica la automatización en operaciones a largo plazo Bienvenido a la lección
cuatro del Módulo ocho. Enhorabuena. Has llegado a la lección final
de este módulo. Hasta ahora, ha aprendido a automatizar procesos clave en las operaciones de
su mainframe, garantizar el cumplimiento
y escalar la automatización en todo su entorno Ahora vamos a
hablar de algo que es tan importante como
implementar la automatización, lograrla a largo plazo. La automatización no es algo
que se establezca y se olvide. Si se dejan sin marcar, los procesos
automatizados
pueden quedar obsoletos, ineficientes o incluso
fallar En esta lección, nos
centraremos en cómo
garantizar que su automatización
siga siendo efectiva a lo largo del tiempo. Aprendes estrategias
para monitorear, adaptar y mejorar tus
esfuerzos de automatización para que puedan continuar entregando
valor en el futuro. Al final de esta lección, comprenderá las
siguientes estrategias
para mantener la automatización
en operaciones a largo plazo, cómo monitorear sus procesos
automatizados para garantizar que sigan siendo efectivos. Cómo adaptarse y
mejorar la automatización medida que evolucionan sus sistemas.
Empecemos. Por qué es fundamental mantener la
automatización. La automatización puede ser un
cambio de juego en términos de eficiencia, pero como cualquier otra cosa en
TI, necesita atención regular Imagine configurar un proceso de
automatización hoy solo para descubrir un año después que todavía está usando prácticas
desactualizadas o que no está optimizado para la carga
actual de su sistema. Mantener su automatización
actualizada y ajustada es crucial para garantizar que siempre obtenga el
mayor valor de ella. Un ejemplo, Imagine una gran institución
financiera que automatizó su
procesamiento por lotes hace cinco años. Los procesos automatizados
funcionan bien durante años, pero a medida que la compañía escaló
y agregó nuevos productos, esos mismos procesos comenzaron a
causar cuellos de botella El resultado de las ralentizaciones en las transacciones
críticas. Al revisar y
optimizar regularmente los procesos de automatización, la compañía podría haber
evitado estos problemas. Estrategias para el éxito de la
automatización a largo plazo. Para garantizar que sus esfuerzos de
automatización sigan siendo efectivos a
lo largo del tiempo, necesitará una combinación
de monitoreo, pruebas y
mejoras continuas. Aquí te explicamos cómo abordarlo. Seguimiento
y reporte periódicos. La automatización puede fallar silenciosamente. Es posible que los trabajos no se completen, los errores pueden pasar desapercibidos o el rendimiento podría degradarse
sin que te des cuenta Es por ello que el
monitoreo continuo es tan importante. ¿Qué monitorear? Métricas de rendimiento
como CPU, memoria y tiempos de finalización del trabajo, tasas de
fallas de trabajos automatizados. Uso de recursos,
especialmente durante horas
pico, herramientas a usar. Prom usa Grafana para tableros de monitoreo
en tiempo real. Splunk o pila elástica para agregación de registros
e informes Un ejemplo, un proveedor de
atención médica monitorea su sistema automatizado de procesamiento
por lotes para reclamos de seguros
usando Grafana Los paneles de control en tiempo real
les permiten detectar retrasos
en el procesamiento, lo que permite al equipo intervenir
antes de que los problemas afecten a los pacientes Revisar y ajustar scripts de
automatización. A medida que su sistema evoluciona,
los scripts y procesos que configura para automatización podrían
dejar de ser óptimos. Es importante revisar y ajustar estos
scripts regularmente. ¿Qué revisar? Es
posible que ya no se apliquen valores codificados. Por ejemplo,
horarios de trabajo específicos o límites de recursos. Revise los flujos de trabajo automatizados para cualquier dependencia manual
que pueda eliminarse Asegúrese de que sus
herramientas de automatización estén actualizadas a sus últimas versiones para beneficiarse de las nuevas funciones
y parches de seguridad. Un ejemplo, un banco minorista revisa
periódicamente su programación
automatizada para trabajos por lotes nocturnos Con el tiempo, notan que
ciertos trabajos ya no necesitan tanta potencia de procesamiento
debido a la optimización del sistema. Al ajustar la asignación de
recursos, ahorran costos y
reducen la carga del sistema. Pruebas
y validación continuas. Así como
prueba continuamente su código en busca de errores, también
debe probar sus procesos de
automatización para la eficiencia y confiabilidad. Las automatizaciones que alguna vez fueron óptimas pueden no programarse
bien a medida que el sistema crece o pueden
quedar obsoletas a medida introducen
nuevas tecnologías. Cómo realizar la prueba. Implemente pruebas unitarias para
sus scripts de automatización para validar que funcionan
como se espera después de los cambios. Ejecute pruebas de carga para garantizar que su automatización pueda manejar
mayores demandas del sistema. Pruebe periódicamente sus procesos de
reversión para asegurarse de que funcionen si falla
una implementación Por ejemplo, una empresa de logística
configura pruebas de carga para simular periodos de alto tráfico en una canalización CICD para aplicaciones de
mainframe Al probar la
tubería bajo tensión, descubren oportunidades
para optimizar el escalado de recursos, asegurando que su automatización funcione sin problemas
durante las horas pico. Mejora continua
a través de bucles de retroalimentación. La automatización debe ser vista como una parte viva y evolutiva de
sus operaciones de mainframe Utilice bucles de retroalimentación para
identificar áreas mejora y
refinar continuamente sus procesos. Crea un bucle de retroalimentación. Recopile comentarios de
sus herramientas de monitoreo, registros
del sistema e informes de
rendimiento. Involucre a su equipo
realizando retrospectivas periódicas para discutir cómo
funciona la automatización y dónde se pueden
realizar mejoras Implemente los cambios de
manera iterativa, asegurando que cada ajuste mejore la eficiencia
general del sistema Un ejemplo, una
empresa de telecomunicaciones realiza retrospectivas
trimestrales
con su equipo de operaciones para discutir sus procesos de
automatización Utilizan los comentarios
para
hacer ajustes en la escala de recursos
y la programación de trabajos, lo que lleva a un aumento del 15%
en la eficiencia del sistema. Automatización de monitoreo para mejora
continua. La clave del éxito a largo
plazo con automatización es el monitoreo
continuo. Aquí hay algunas
áreas específicas para vigilar el desempeño laboral
y las tasas de éxito. Lleve un registro de cuánto tiempo están
tomando los trabajos
automatizados y si se están
completando con éxito. Si los tiempos de finalización del trabajo
aumentan o las tasas de falla aumentan, puede
ser el momento de volver a optimizar. Monitoree los picos en el uso de la CPU o la memoria
durante la ejecución del trabajo. Configura alertas para fallas en el trabajo o tiempos de ejecución prolongados. Utilización de recursos. Aunque la automatización puede
ayudar a optimizar el uso de los recursos, aún
necesita monitorear cómo se utilizan
esos recursos a lo largo del tiempo. Si nota que
su sistema está constantemente por encima
o por debajo de la provisión, posible
que deba ajustar
sus políticas de escalado. Supervise el
escalado de recursos para asegurarse de
que se ajusta dinámicamente en
función de la demanda. Configura alertas para
sobreaprovisionamiento o utilización insuficiente
de recursos. Adaptar la automatización a las
nuevas tecnologías. A medida que
se introducen nuevas herramientas y tecnologías en
su entorno, deberá adaptar
sus
procesos de automatización en consecuencia. Evalúe regularmente si
existen nuevas herramientas de automatización que podrían mejorar su flujo de trabajo o hacer que sus operaciones sean
más eficientes. Manténgase al día con
la última versión de herramientas de automatización. Evalúe nuevas características e integraciones que podrían agilizar sus procesos de
automatización puntos clave de esta lección incluyen mantener la automatización
monitoreando,
probando y optimizando regularmente su proceso automatizado Configura el monitoreo continuo
con herramientas como Prometheus y Grafana para garantizar que tu automatización funcione sin problemas Revise y ajuste periódicamente sus
scripts de automatización para asegurarse que sigan siendo relevantes a medida que evolucionan
sus sistemas. Utilice bucles de retroalimentación para mejorar
continuamente la automatización involucrando a su equipo y monitoreando el rendimiento en
tiempo real. Hagamos una actividad de aprendizaje. Elija uno de los procesos
automatizados actuales y revise su desempeño
en los últimos seis meses. Identificar cualquier área donde se pueda optimizar el
proceso. Por ejemplo, fallas en el trabajo, rendimiento
lento o sobreaprovisionamiento de
recursos. Crea un plan para optimizar el proceso y compártelo
con tu equipo para recibir comentarios. Implementar los
cambios y monitorear los resultados
en las próximas semanas. Enhorabuena por
completar el curso. Has completado el curso, modernización de
mainframe
con dominio de DevOps Este es un
logro increíble y ahora tiene las habilidades y
los conocimientos necesarios para implementar la automatización
para pruebas, implementación y monitoreo en su entorno de mainframe
utilizando herramientas de DevOps ¿Cuál es el siguiente? Ahora que ya has
terminado este curso, es momento de poner en práctica lo que hemos
aprendido. Comience revisando sus operaciones actuales de
mainframe e identificando áreas donde puede automatizar o mejorar la automatización
existente Trabaje con su equipo para configurar paneles de
monitoreo y asegurarse que sus procesos de automatización estén optimizados para el éxito a
largo plazo Continúe su viaje en la modernización de
mainframe. Para mantener el impulso, considere inscribirse en los
siguientes cursos avanzados Uno, API y Microservicios, modernizando la aplicación mainframe Aprenda a aprovechar
las API y los microservicios para modernizar y ampliar
la funcionalidad de su aplicación de
mainframe heredada, haciéndolas más
escalables Dos, seguridad en mainframe
e integración en la nube. Explore las
preocupaciones de seguridad que surgen al conectar
mainframes a plataformas
en la nube y
conozca las mejores prácticas y soluciones para mitigar el riesgo en entornos de
mainframe de nube híbrida Estás en camino de
dominar la modernización del
sistema mainframe Sigue avanzando
y recuerda que la automatización es
solo el comienzo de tu viaje de modernización. Hay un sinfín de
oportunidades para mejorar y evolucionar tus sistemas. Di curiosidad, mantente innovador y nunca dejes de aprender. Buena suerte en tus próximos pasos y espero verte
en el próximo curso.