Transcrições
1. Apresentação: Bem-vindo à modernização do mainframe
com o DevOps Mastery. Implemente a automação para
testes, implantação e monitoramento em mainframes usando
princípios e ferramentas de DevOps Meu nome é Ricardo Nuke e sou seu instrutor neste curso Neste curso sobre automação de operações de
mainframe
usando ferramentas de DevOps, indivíduos com maior
probabilidade de se beneficiar são gerentes de sistemas de
mainframe, líderes de
operações, engenheiros de
DevOps que trabalham
com sistemas legados e diretores de infraestrutura de TI que os indivíduos com maior
probabilidade de se beneficiar são gerentes de sistemas de
mainframe, líderes de
operações, engenheiros de
DevOps que trabalham
com sistemas legados
e diretores de infraestrutura de TI que supervisionam ambientes de mainframe. Eles são
profissionais experientes que gerenciam a complexa
carga de trabalho crítica que os mainframes suportam, geralmente em setores
como finanças, governo, seguros
e telecomunicações Aqui estão alguns dos
desafios que eles enfrentam. Um, integrando ferramentas
modernas de DevOps. mainframes operam
tradicionalmente em ambientes
isolados
com ferramentas
diferentes das usadas para
sistemas distribuídos Os gerentes podem ter
dificuldade em
integrar perfeitamente as ferramentas do Devos,
como Jenkins, Ansible e Docker, Dois, resistência cultural. Muitas vezes, há resistência
de equipes e organizações que trabalham com processos legados há
décadas. Mudar de operações manuais para operações
automatizadas
exige uma mudança de mentalidade Três, complexidade do mainframe. Até mesmo os profissionais do SISD enfrentam desafios para lidar a complexidade dos sistemas de
mainframe, principalmente para equilibrar
estabilidade Quatro, experiência limitada
em conjuntos de ferramentas modernas. Muitos profissionais
conhecem
bem os mainframes , mas podem não ter
experiência com DevOps, ferramentas de
automação
ou fluxos de trabalho ágeis Cinco, conformidade e segurança. Garantir a conformidade
com as regulamentações, especialmente em
setores sensíveis, como o bancário, adotar novas práticas adiciona uma camada extra
de complexidade Aqui estão seus objetivos finais automação de tarefas repetitivas, automação de testes,
implantação e
monitoramento para reduzir erros
manuais e monitoramento para reduzir erros
manuais :
automação de tarefas repetitivas,
automação de testes,
implantação e
monitoramento para reduzir erros
manuais e melhorar a eficiência. Simplifique os fluxos de trabalho implementando práticas de DevOps para eliminar os silos e
criar fluxos de trabalho
mais fluidos e rápidos entre as etapas fluxos de trabalho
mais fluidos e rápidos Reduzindo o tempo de inatividade,
eles querem atingir quase zero tempo de inatividade para
seus aplicativos de missão crítica Modernizando as operações
sem riscos. Integrando
conjuntos de ferramentas modernos e
mantendo a confiabilidade e a
segurança dos
ambientes de mainframe e dos futuro,
garantindo que seus sistemas possam
evoluir com um ritmo acelerado de avanços de
TI
e , ao mesmo tempo, continuar a fornecer as principais funções de , ao mesmo tempo sistemas preparados para o futuro,
garantindo que seus sistemas possam
evoluir com um ritmo acelerado de avanços de
TI
e , ao mesmo tempo, continuar a fornecer as principais funções de negócios. O objetivo da
modernização do mainframe com o domínio do DevOps é
capacitar os gerentes de
sistemas de mainframe profissionais de TI com as habilidades, as
ferramentas
e o conhecimento
necessários para
automatizar
com sucesso automatizar Este curso permitirá que
os alunos implementem a automação para
testes, implantação
e monitoramento, melhorando a eficiência dos
sistemas, reduzindo erros e aprimorando colaboração entre as equipes de
mainframe e DevOps Ao final do curso,
os alunos serão capazes de
projetar e implementar fluxos de trabalho
automatizados para projetar e implementar fluxos de trabalho
automatizados ambientes de mainframe,
aproveitando as ferramentas de DevOps
líderes do setor, como Jenkins Crie e gerencie pipelines CICD para aplicativos de mainframe, garantindo integrações
contínuas Processos automatizados de teste, monitoramento e resposta a incidentes para obter maior confiabilidade,
escalabilidade e desempenho dos
sistemas escalabilidade e desempenho Mantenha a segurança e a conformidade em todo o processo de
automação, garantindo que
os padrões regulatórios sejam atendidos em setores como finanças, saúde e
telecomunicações Lidere a mudança organizacional
promovendo a adoção de metodologias
Devos em equipes de
mainframe
tradicionalmente isoladas, promovendo Para este curso, o
objetivo é equipar os alunos com
as habilidades práticas, o conhecimento aprofundado
e as habilidades técnicas
necessárias para automatizar suas operações de mainframe usando DevOps No final do curso,
os alunos serão capazes de dominar
as ferramentas de automação de
mainframe Os alunos aprenderão a usar ferramentas de
automação especialmente
projetadas para mainframes,
como IBM, Urban code Deploy, Zoe e BMC
Control M. Eles serão proficientes
no uso de Jenkins, Ansible e outras
ferramentas CICD para automatizar testes, M. Eles serão proficientes
no uso de Jenkins, Ansible e outras
ferramentas CICD para automatizar testes, implantação e ferramentas de
automação especialmente
projetadas para mainframes,
como IBM, Urban code Deploy,
Zoe e BMC
Control
M. Eles serão proficientes
no uso de Jenkins, Ansible e outras
ferramentas CICD para automatizar testes, implantação e monitoramento de aplicativos de mainframe. Segundo, construir pipelines CICD
para ambientes de mainframe. Os alunos ganharão a
capacidade de projetar, implementar e gerenciar integração
contínua, entrega
contínua
ou pipelines CICD personalizados para aplicativos de mainframe Eles serão capazes de automatizar
implantações para bases de código de
mainframe, integrando mainframes sua organização Três, automatizando os processos de
teste. Os alunos aprenderão
a automatizar
testes
funcionais e de regressão unitários funcionais e de regressão para
aplicativos de mainframe, garantindo a entrega consistente de código
sem erros Eles entenderão
como integrar estruturas de teste
automatizadas, como selênio para testes de interface do usuário ou J Unit para
testes unitários no fluxo de trabalho de desenvolvimento do mainframe Quatro, monitoramento eficiente
e resposta a incidentes. Os alunos adquirirão
o conhecimento para automatizar o monitoramento das operações do mainframe
usando ferramentas como Prometheus e o Grafana para
monitorar o desempenho e o tempo de
atividade do sistema e detectar possíveis problemas em tempo Eles saberão como configurar
fluxos de trabalho
automatizados de resposta a incidentes para garantir a
rápida resolução de problemas com o
mínimo de tempo de inatividade Cinco, roteiro
e orquestração. Os alunos se tornarão
proficientes em scripts para automação usando
linguagens como Rx, Python e JCL para
orquestrar fluxos de trabalho orquestrar Eles entenderão como usar esses scripts
para
automatizar tarefas repetitivas,
como agendamento de trabalhos, transferências de
arquivos e verificações de integridade
do sistema Seis, os princípios do DevOps
se aplicam aos mainframes. Os alunos
aprenderão os princípios básicos de DevOps, colaboração, feedback
contínuo, automação e iteração rápida, e como aplicá-los a ambientes tradicionalmente isolados Eles serão capazes de preencher
a lacuna
entre as equipes de mainframe
e as equipes de DevOps, criando uma cultura de
colaboração e inovação Sete, segurança e conformidade
na automação de mainframe. Os alunos entenderão como
manter a segurança e conformidade
regulatória ao automatizar os processos de mainframe, especialmente em
setores como finanças e saúde, onde a
proteção de dados Eles aprenderão a integrar verificações de segurança
automatizadas em seus pipelines do CICD para garantir a conformidade com
os padrões e regulamentações do setor Oito, superar a resistência
organizacional. Os alunos ganharão estratégias
para gerenciar mudanças e liderar suas equipes
no processo de
adoção da automação
e das ferramentas Eles saberão como superar a resistência
cultural à mudança
demonstrando os benefícios da automação e promovendo a
confiança nas Nove, otimizando os fluxos principais
da estrutura. Os alunos terão a capacidade de otimizar as
operações do mainframe, eliminando
processos manuais, reduzindo erros e melhorando o desempenho
do sistema Eles saberão como identificar
gargalos e
ineficiências em
seus
fluxos de trabalho de mainframe e seus
fluxos de trabalho de mainframe usar a automação para agilizar esses processos. Dez, integração com a nuvem híbrida. Os alunos obterão conhecimentos
básicos sobre como integrar
mainframes em arquiteturas de
nuvem híbrida usando as ferramentas da
Devo para automatizar interações entre ambientes de
nuvem e mainframes para transferência de
dados, gerenciamento de
aplicativos e gerenciamento de
aplicativos Ao final do
curso, os alunos terão as
habilidades abrangentes para automatizar
e otimizar as operações de
mainframe usando DeboVtols Eles
liderarão suas organizações com confiança na implementação de processos automatizados de
teste, implantação e monitoramento em mainframes,
garantindo segurança, confiabilidade e
integração
perfeita em ambientes de TI modernos Para obter a automação das operações de
mainframe usando as ferramentas da
Devo e implementar automação para
testes, implantação e monitoramento em mainframes, os alunos precisarão seguir
um processo de oito estágios Cada estágio se baseia
no anterior,
garantindo uma abordagem
sistemática
e segura automação em ambientes de
mainframe Etapa 1, entendendo as operações de
mainframe
e a integração com o DevOps O objetivo é obter uma compreensão fundamental das operações
de mainframe, dos fluxos de trabalho
atuais e de como princípios
de
DevOps podem As principais ações incluem revisar a
arquitetura atual do mainframe e os processos operacionais, identificar os principais pontos problemáticos e as áreas em que a automação
pode agregar valor Conheça os fundamentos
do DevOps e saiba como eles se aplicam especificamente aos ambientes de
mainframe Etapa dois, identificando oportunidades
e ferramentas de
automação. O objetivo é
identificar os processos dentro do ambiente de mainframe
que estão prontos para a automação e selecionar principais ações incluem mapear fluxos de trabalho
críticos
que podem ser automatizados, identificar e avaliar
ferramentas de automação, como Jenkins,
Ansible, IBM, Urban Co Deploy
e Zo, que são Selecione as ferramentas de
automação mais eficazes com base nas necessidades do sistema, requisitos do
setor e na infraestrutura
existente. Etapa três, construindo um
pipeline de CICD para mainframes. O objetivo é projetar e implementar uma
integração contínua, entrega
contínua
ou pipeline CICD para agilizar
implantações e atualizações. principais ações incluem
configurar o controle de versão para bases de código de
mainframe usando ferramentas como o Git para
colaboração Crie um pipeline de CICD que automatize o
processo de integração, teste e implantação alterações de
código Implemente estágios de pipeline para testes
automatizados, integração e uso do Jenkins ou de
outras plataformas de DevOps Estágio quatro, automatizando os processos de
teste. O objetivo é implementar estruturas de teste
automatizadas para
garantir testes consistentes
e confiáveis
em todos os aplicativos de mainframe principais ações incluem a
introdução de testes unitários, testes regressão e testes de
integração
por meio de ferramentas de automação
como J Unit e selenium Crie scripts de teste automatizados para os principais aplicativos de mainframe para garantir que eles passem nos casos de teste
predefinidos
após cada alteração de código Incorpore testes automatizados ao pipeline do CICD para detectar
erros antes da implantação Etapa cinco, automatizando os fluxos de trabalho de
implantação. O objetivo é agilizar e automatizar a implantação de aplicativos de mainframe
para eliminar intervenções
manuais
e principais ações incluem
o uso de ferramentas como IBM, Urban code Deploy
ou answerable para automatizar a implantação de código no ambiente de mainframe Automatize a promoção do código do desenvolvimento
à produção, garantindo um processo de lançamento suave e
consistente Estabeleça
mecanismos de reversão para automatizar recuperação em caso de
falhas na Etapa seis, automatizando o monitoramento
da resposta a um incidente. O objetivo é automatizar monitoramento
do sistema para
detectar problemas de desempenho, erros e
ameaças à segurança em tempo real As principais ações
incluem implementar ferramentas de monitoramento
automatizadas, como Prometheus e Grafana,
para monitorar a integridade, o
tempo de atividade e as métricas de desempenho do sistema, que geram alertas automatizados para notificar as equipes relevantes quando o desempenho
do sistema se desvia Automatize
os protocolos de resposta a incidentes para acionar fluxos de trabalho que resolvam problemas
sem intervenção humana Etapa sete, garantindo a
conformidade e a estabilidade da segurança. O objetivo é integrar as verificações
de segurança e conformidade em processos automatizados para garantir que os
requisitos regulatórios sejam atendidos. As ações incluem automatizar as verificações de
segurança no pipeline
do CICD
para verificar vulnerabilidades em aplicativos de
mainframe e garantir
a conformidade com os padrões do
setor, automatizando auditorias e verificações de alterações no código e Monitore e
teste continuamente a estabilidade do sistema para garantir que a automação não introduza novos riscos no ambiente de
mainframe E, finalmente, a oitava etapa, escalando e otimizando os
processos de automação O objetivo é refinar, escalar e otimizar os
fluxos de trabalho de automação à medida que as necessidades
crescem e mudam principais ações incluem a melhoria
contínua dos processos de
automação com base em feedback e métricas de
desempenho. Os
esforços de automação de escala para cobrir mais áreas das operações de mainframe,
como agendamento de tarefas, integração de dados e provisionamento de
infraestrutura Use insights do monitoramento
automatizado para otimizar ainda mais o desempenho
do sistema, reduzir custos e
melhorar a eficiência. Esses estágios
orientam os alunos por todo
o processo de automatização das operações de
mainframe usando ferramentas
desenvolvidas,
desde a compreensão de seus
ambientes existentes até a escalabilidade da
automação em vários processos Ao final, eles
terão implementado uma automação
robusta para
testes, implantação e monitoramento,
garantindo eficiência, segurança e confiabilidade
em seus sistemas de mainframe O curso é dividido em
oito módulos da seguinte forma. módulo um é a introdução
à integração entre mainframe e
Devo Este módulo fornece
uma visão geral da arquitetura de mainframe e dos princípios
fundamentais do DevOps Os alunos explorarão como as práticas de
DevOps
podem ser aplicadas a ambientes de
mainframe
tradicionalmente isolados
e os benefícios da automação O objetivo é que, ao
final do módulo, os alunos sejam capazes de
explicar os princípios fundamentais do DevOps e identificar como eles se aplicam aos ambientes de mainframe Módulo dois, identificando oportunidades
de automação
nas operações de mainframe Os alunos aprenderão a avaliar
seus fluxos de trabalho atuais, identificando processos manuais
que podem ser automatizados, como testes,
implantação e monitoramento Esse módulo ajuda a estabelecer as bases para identificar a automação
crítica Ao final do
módulo, você poderá avaliar seus fluxos de trabalho atuais de
mainframe e identificar pelo menos
três processos-chave que podem ser automatizados
para aumentar a eficiência Módulo três, ferramentas e tecnologias para automação de
mainframe Este módulo apresenta
as principais ferramentas para automatizar as operações de
mainframe,
incluindo Jenkins, Ansible IBM, Urban Co Deploy para automatizar as operações de
mainframe,
incluindo Jenkins, Ansible IBM, Urban Co Deploy e ZOE. Os alunos terão
experiência prática com essas ferramentas, entendendo como elas se
integram aos mainframes Ao final do
módulo, você
poderá selecionar e configurar pelo
menos duas ferramentas de desenvolvimento para começar a automatizar as operações do
mainframe Módulo quatro, construindo e gerenciando pipelines CICD
para mainframes Os alunos
mergulharão na mecânica de
criação e gerenciamento de pipelines
CICD. Eles aprenderão a automatizar fluxos de trabalho de integração de
código, testes e implantação, garantindo a aplicação perfeita das datas do mainframe Ao final do módulo, você
poderá projetar e implementar um pipeline CICD básico para aplicativos de mainframe, garantindo a
integração e entrega automatizadas do código Módulo cinco,
testes automatizados para aplicativos de mainframe Este módulo se concentra em automatizar a regressão unitária
e Os alunos usarão ferramentas como J Unit e Selenium para configurar estruturas de teste
automatizadas que
garantam qualidade consistente
em Ao final do módulo,
você poderá automatizar pelo menos dois
tipos de testes para aplicativos de mainframe usando teste
apropriadas. Módulo seis. Neste módulo, os alunos
aprenderão como automatizar o processo de
implantação aplicativos de
mainframe
usando ferramentas como Ansibl e Eles também estabelecerão mecanismos de
reversão e garantirão a
eficiência da implantação com risco mínimo Ao final do módulo, você poderá automatizar processo de implantação
do aplicativo de
mainframe, garantindo uma
implantação bem-sucedida com recursos de
reversão
em caso Módulo sete, monitoramento e automação de
resposta a incidentes. Os alunos explorarão como
implementar o monitoramento em tempo real e automatizar a resposta a incidentes usando ferramentas como Prometheus Esse módulo garante que os alunos
possam monitorar a integridade do sistema, receber alertas e
automatizar a resolução de problemas Ao final do
módulo, você
poderá implementar ferramentas de
monitoramento automatizadas, acompanhar o desempenho do sistema
e configurar alertas
e fluxos de trabalho de resposta a incidentes
para possíveis problemas Módulo oito,
segurança, conformidade e escalabilidade dos esforços de automação O módulo final
aborda como manter a segurança e a conformidade em
um ambiente automatizado. Os alunos aprenderão como
implementar verificações de
segurança automatizadas, garantir a conformidade com os padrões do
setor e escalar seus esforços de
automação em mais
operações de mainframe Ao final do módulo, você poderá integrar verificações de segurança
automatizadas em seu pipeline de CICD
e demonstrar conformidade com pelo menos
um padrão do setor Sem mais delongas, vamos
mergulhar no curso.
2. Aula 1: o que é DevOps?: Bem-vindo ao primeiro módulo de modernização do mainframe
com o DevOps Introdução à integração de mainframe
e DevOps. Neste módulo,
você aprenderá como princípios de
DevOps se integram às operações
de mainframe Exploraremos a seguir
os princípios fundamentais do DevOps, o papel dos mainframes
na TI moderna e como aplicar as práticas de
DevOps
para melhorar seus Primeira lição, o que é Devos? Bem-vindo à primeira lição
do módulo um. Nesta lição, abordaremos os princípios fundamentais
do Devos e como o DevOps transforma as práticas
tradicionais Ao final desta lição, você entenderá como o DevOps
promove a colaboração, automação e a entrega
contínua,
e como esses princípios se aplicam
aos ambientes de mainframe O que é DevOps? Antes de entrarmos em como o Devos transforma as operações de
mainframe, vamos primeiro entender o
que realmente é o DevOps O termo DevOps é
uma combinação de desenvolvimento, que é Deb, e
operações, que é Ele representa um movimento cultural e técnico que
visa melhorar a colaboração entre desenvolvedores de
software e equipes de operações de TI. O objetivo é fornecer software
de alta qualidade com mais rapidez
e eficiência. Princípios de DevOps. DevOps é baseado em
três princípios fundamentais:
colaboração, automação e entrega contínua.
Vamos detalhar isso. Colaboração. Em ambientes de TI
tradicionais, as equipes de
desenvolvimento e operações trabalham em silos Os desenvolvedores escrevem o código, o
entregam às equipes de
operações e depois cruzam os dedos, esperando que tudo
funcione na produção. Quando isso não acontece, e convenhamos , as coisas quebram o tempo todo. Ambas as equipes apontam o
dedo uma para a outra. É como assistir a uma partida
ruim de tênis. Mas em vez de bater
uma bola para frente e para trás, a culpa
é que está
voando pela rede DevOps elimina
essa
mentalidade de nós versus eles ao promover a
colaboração entre as duas equipes Desenvolvedores e operações trabalham juntos durante
todo o ciclo de vida de um produto de software,
desde o planejamento e a
codificação até o teste, a
implantação e a manutenção Eles compartilham responsabilidades,
ferramentas e conhecimento. No mundo do DevOps,
todos fazem
parte da mesma equipe
trabalhando em prol de um objetivo comum, entrega
mais rápida de software
confiável Por exemplo, em um ambiente de
mainframe, desenvolvedores e operações
podem colaborar na
automação da implantação
de aplicativos cobol Em vez de esperar
dias ou semanas para que as operações realizassem manualmente
a implantação, as equipes poderiam trabalhar juntas para criar scripts e automatizar o processo,
reduzindo o tempo
e os erros de implantação. Automação. Um dos maiores pontos
problemáticos no ambiente de TI
tradicional
são os processos manuais. Pense na tarefa repetitiva em seu ambiente de mainframe,
testando um novo código bal, testando um novo código bal, implantando aplicativos e
monitorando a ajuda do sistema Cada uma dessas tarefas, quando executada manualmente, consome tempo
e está sujeita a erros. O DevOps enfatiza a
automação para resolver isso. Ao automatizar tarefas repetitivas,
como testes, implantação
e monitoramento, o DevOps permite que as equipes se concentrem em A automação também garante que os processos sejam consistentes
e confiáveis. Chega de surpresas noturnas
quando você está se esforçando para corrigir um bug porque alguém
esqueceu de marcar Imagine automatizar
a implantação de um novo aplicativo
em seu Em vez de configurar
tudo manualmente e
cruzar os dedos, você aperta um botão e seu
pipeline CICD cuida do resto teste, a implantação e o
monitoramento acontecem automaticamente, e você recebe notificações se algo der errado,
com o seu nicho, certo? Entrega contínua.
A entrega contínua é o ingrediente secreto que permite que as equipes de
DevOps implantem
software com mais rapidez Com a entrega contínua, as alterações de
código são automaticamente
testadas e preparadas ou liberadas para produção. Em um pipeline de
DevOv bem implementado, cada alteração no
código é
validada automaticamente e pode ser implantada na produção
a qualquer momento Em um ambiente tradicional de
mainframe, enviar um novo código para
produção pode levar semanas ou até meses
devido a testes manuais, aprovações e processos complexos Com a entrega contínua, você automatiza todas as etapas entre escrever o código
e implantá-lo, garantindo que seu software esteja sempre pronto para Por exemplo,
digamos que você esteja trabalhando em um aplicativo de paralelepípedo para
uma instituição financeira Normalmente, você
precisaria passar por verificações manuais
rigorosas antes de
implantar qualquer atualização Mas com a entrega contínua, você pode configurar o
teste automatizado para verificar seus códigos, funcionalidade, segurança e desempenho
sempre que fizer uma alteração. Quando estiver pronto, seu pipeline implanta
automaticamente as alterações O resultado: atualizações mais rápidas, menos erros e clientes
mais satisfeitos Como esse salto transforma as práticas
tradicionais de TI. Agora que você entende os princípios
fundamentais do DevOps, vamos ver como ele transforma as práticas
tradicionais de TI, especialmente em ambientes de mainframe Primeiro, de processos manuais a automatizados, mais rápidos e menos
propensos a erros. ambientes tradicionais de mainframe
dependem muito da intervenção manual, seja na
implantação manual de aplicativos, teste
manual do código ou no monitoramento
manual do sistema Isso é lento e
pode levar a erros, especialmente quando as equipes
estão sob pressão. DevOps muda isso
introduzindo a automação
em cada etapa Vamos usar o
teste automatizado como exemplo. Em um ambiente tradicional de
mainframe, depois que os desenvolvedores escrevem o código
, pode levar dias ou até semanas para testar
tudo manualmente Com o DevOps, você pode integrar scripts de
teste automatizados que verificam
imediatamente se
há erros no novo código no
momento em que ele é enviado Isso permite um
feedback mais rápido e correções mais rápidas. Dois, colaboração
e comunicação aprimoradas. Em um ambiente isolado, é comum haver
falhas de comunicação entre as equipes Os desenvolvedores não entendem
as necessidades operacionais e as operações podem não entender as complexidades do código Isso leva a
atritos e atrasos. DevOps melhora a colaboração ao trazer todos para a mesa Em uma cultura de DevOps, tanto o desenvolvimento quanto as operações trabalham juntos em metas compartilhadas Isso significa que sua
equipe de desenvolvimento de
mainframe e suas equipes de operações estão trabalhando em sincronia, criando um fluxo de trabalho mais suave, lançamentos
mais rápidos e menos surpresas de
última hora Três ciclos de
feedback contínuos. DevOps incentiva ciclos de
feedback contínuos que ajudam
as equipes a identificar problemas e
otimizar seus processos Por exemplo, se uma
implantação falhar, o sistema fornecerá feedback
imediato, permitindo que a equipe resolva
o problema rapidamente. Isso contrasta com os métodos
tradicionais em que os problemas só podem surgir durante as verificações
manuais ou após atrasos
significativos Em um ambiente de mainframe, esse ciclo de feedback pode
ser crucial para detectar problemas de
desempenho ou vulnerabilidades de
segurança
logo no início,
reduzindo o tempo de inatividade e As principais conclusões
desta lição incluem DevOps
sobre colaboração, reunindo equipes de desenvolvimento
e operação para eliminar silos
e trabalhar
em prol trabalhar automação é a
espinha dorsal do DevOps, ajudando a eliminar
erros manuais e simplificar processos
repetitivos, como entrega contínua garante que seu código esteja sempre
pronto para ser publicado, permitindo atualizações mais rápidas e melhor confiabilidade do sistema. Vamos fazer uma atividade de aprendizado. Reserve um momento para
pensar em seu próprio ambiente de
mainframe. Quais são as tarefas mais
repetitivas que poderiam se
beneficiar da automação Liste duas tarefas e considere
como os princípios de DevOps como colaboração ou automação podem ajudar a melhorar
esses processos Compartilhe suas respostas no fórum de discussão
do curso e discutiremos alguns exemplos reais de como DevOps transformou os ambientes de
mainframe O que vem a seguir? Agora que
abordamos o básico
sobre o que é o Dvovss e como ele
transforma as práticas de TI, você pode estar se perguntando: onde os mainframes se
encaixam em tudo isso? Afinal, os mainframes são a espinha dorsal de setores
como finanças e saúde, mas são um pouco diferentes
dos sistemas de TI modernos Na próxima lição, os
mainframes do ecossistema de TI moderno
abordarão o papel dos mainframes no
mundo atual e explorarão
como as operações de mainframe diferem
dos Prepare-se para ver como os mainframes ainda
estão no centro
de setores essenciais e como estão evoluindo
com a tecnologia moderna.
3. Aula 2: mainframes no ecossistema de TI moderno: Lição dois, mainframes
no ecossistema de TI moderno. Bem vindo de volta.
Na primeira lição, abordamos os fundamentos
do DevOps, colaboração,
automação e entrega
contínua, e como esses princípios transformam as práticas tradicionais de
TI Agora, vamos mergulhar no cerne
da sua
especialidade, os mainframes Esta lição ajudará você a
entender as funções nos setores
modernos e como suas operações
diferem dos sistemas distribuídos. Pronto? Vamos começar. Mainframes, as potências
das indústrias modernas. Quando pensamos em tecnologia
de ponta, os mainframes podem não
ser a primeira coisa que vem à mente.
Mas aqui está o segredo. mainframes
ainda são a espinha dorsal de muitos setores essenciais, desde processamento de milhões de transações
financeiras a cada segundo até a garantia da segurança dos dados dos
pacientes mainframes mantêm as rodas
girando nos bastidores Mainframes nos principais setores. Os mainframes existem há
décadas e não
vão a lugar nenhum tão cedo.
Vamos dar uma olhada no porquê. Mainframes em finanças, as transações de
passes
no mundo. Imagine isso. Toda vez que alguém
rouba um cartão de crédito, um mainframe está nos bastidores
processando essas transações
em milissegundos Se você está comprando
mantimentos ou comprando um café, o setor financeiro
depende de mainframes para lidar com milhões de transações por
segundo de segundo Um fato é que 92
dos 100 maiores bancos globais ainda
dependem de mainframes. Por quê? Porque nenhum outro
sistema pode lidar com o mesmo volume com o
mesmo nível de confiabilidade. Mainframes na área da saúde,
proteja os dados dos pacientes 24 horas por dia, sete dias por semana Agora imagine que você está
em um hospital. mainframes são usados para armazenar e gerenciar grandes quantidades
de dados de pacientes, registros
médicos,
pedidos de seguro e muito mais Na área da saúde, a segurança e o
tempo de atividade não são negociáveis. Os mainframes garantem que os dados
do paciente estejam acessíveis, seguros e nunca sejam comprometidos Com a crescente pressão
sobre o sistema de saúde, os mainframes dão suporte à infraestrutura
digital que mantém tudo
funcionando sem problemas Mainframes em
comunicações de contagem, mantendo você conectado Toda vez que você envia uma
mensagem de texto, faz uma ligação telefônica ou usa dados, um mainframe está processando essa
comunicação O setor de comunicações usa mainframes para gerenciar dados de
clientes, faturamento e operações de rede
em grande escala Imagine o grande número de pessoas usando
telefones celulares simultaneamente Sem mainframes, a infraestrutura de
telecomunicações entraria em colapso
sob a pressão Por que os mainframes continuam sendo essenciais
no cenário atual de TI? Por que as empresas continuam
usando mainframes nessa área de nuvem
nesta era de computação em nuvem
e microsserviços Aqui estão os três grandes motivos. Um, confiabilidade e tempo de atividade. Os mainframes são conhecidos por
sua confiabilidade lendária. Alguns sistemas possuem
99,999% de tempo de atividade, ou
seja, menos de 5 minutos de inatividade Por ano. Imagine administrar uma plataforma bancária on-line e seu sistema ficar pronto
por alguns minutos. Os clientes não ficariam
muito felizes, não é? Os mainframes oferecem estabilidade
incomparável, é por isso
que setores
como finanças e saúde confiam a eles
suas aplicações mais críticas Dois, poder de processamento. Preciso calcular números grandes. mainframes ainda são as máquinas
mais poderosas quando se trata de processamento de dados de alto
volume Eles podem lidar com milhões
de transações e cálculos em grande escala
simultaneamente, e fazem isso com mais rapidez e eficiência do que sistemas
distribuídos Isso os torna ideais para processar tarefas como transações com cartão de
crédito, reclamações de
seguros e
até mesmo logística complexa. Três, segurança. Não vamos esquecer a segurança. mainframes são construídos com recursos de segurança
robustos
desde o início. Em setores em que a
proteção de dados é essencial, como saúde,
governo e finanças, mainframes fornecem a
segurança integrada necessária
para se proteger contra violações e garantir a
conformidade com
regulamentações como
HIPAA e regulamentações como
HIPAA Como as operações de mainframe
diferem dos sistemas distribuídos. Agora que estabelecemos por que os mainframes são tão importantes, vamos explorar como
as operações de mainframe diferem dos sistemas
distribuídos modernos
dos quais ouvimos falar hoje em Primeiro, arquitetura centralizada versus
arquitetura
distribuída Os mainframes são construídos em torno
da arquitetura centralizada. Isso significa que tudo, os dados, o aplicativo e o poder
de processamento estão alojados em um grande sistema É como um
supercomputador gigante que gerencia tudo
em um único lugar Ele tem controle centralizado. Os mainframes permitem o gerenciamento
centralizado
de todas as operações, facilitando o
monitoramento e a Isso permite eficiência. Como tudo
está em um só lugar, transferência
de dados é mais rápida e os processos podem ser
rigorosamente controlados. Por outro lado, os
sistemas distribuídos distribuem os dados e o processamento em
vários servidores ou máquinas, geralmente localizados em locais
diferentes. Isso fornece escalabilidade, mas também introduz complexidade. Imagine tentar gerenciar centenas de servidores em
diferentes data centers. Parece um
pesadelo lógico, não é? Processamento em lote versus processamento em tempo
real. Os mainframes se destacam no processamento em
lote, onde grandes volumes de transações
estão envolvidos Pense nisso como lavar roupa em vez de lavar uma
peça de roupa vez e esperar
até ter roupas sujas
suficientes para
encher a máquina de lavar. Isso é perfeito para tarefas
como executar a folha de pagamento ou processar uma noite de transações com cartão
de crédito Os sistemas distribuídos, por outro lado, são construídos
para processamento em tempo real. Esses sistemas lidam com as
solicitações à medida que elas chegam, geralmente uma de cada vez. Embora isso seja ótimo para aplicativos web
dinâmicos, nem sempre
é ideal para processamento de dados de
alto volume que precisa ser
feito em lotes Em terceiro lugar, estabilidade
versus flexibilidade. Uma das principais diferenças
entre mainframes e sistemas
distribuídos
é o equilíbrio entre estabilidade e flexibilidade Os mainframes têm tudo a
ver com estabilidade. Eles foram projetados para executar aplicativos de
missão crítica que não podem suportar nenhum tempo de inatividade Quando um sistema está instalado e funcionando, ele normalmente é otimizado para máxima estabilidade
e mudanças mínimas. Os sistemas distribuídos
oferecem mais flexibilidade, permitindo que os desenvolvedores escalem e implantem novos serviços rapidamente. No entanto, eles geralmente sacrificam
algum nível de estabilidade devido à complexidade de gerenciar muitos
servidores e serviços diferentes. Segurança incorporada
versus adicional. Os mainframes têm recursos de
segurança integrados que
foram aprimorados ao longo de décadas Da criptografia de hardware
ao controle de acesso, os mainframes são seguros por design Por outro lado,
os sistemas distribuídos geralmente
dependem de ferramentas de segurança de terceiros para gerenciar coisas como criptografia de
dados, firewalls e controles de acesso Isso torna a segurança
mais complexa e difícil de manter em ambientes
distribuídos. As principais conclusões
desta lição incluem mainframes são a espinha dorsal
de setores como finanças,
saúde e
telecomunicações, lidando com transações críticas e processamento Os mainframes oferecem e combinam
confiabilidade, poder de processamento e segurança, o que
os torna essenciais para operações
de alto risco As operações de mainframe diferem dos sistemas
distribuídos em
termos de arquitetura, recursos de processamento em
lote, estabilidade e segurança integrada Vamos fazer uma atividade de aprendizado. Pense na
dependência de sua organização em mainframes. Como a natureza
simplificada do
seu
ambiente de mainframe oferece vantagens sobre os sistemas
distribuídos em termos de confiabilidade
e segurança Identifique uma área
em que a estabilidade do seu mainframe é fundamental
para suas operações comerciais Compartilhe suas ideias nos fóruns de
discussão e
exploraremos mais
exemplos do mundo real em nossa próxima sessão. O que vem a seguir? Agora você tem uma compreensão sólida
de como os mainframes se encaixam no ecossistema de TI moderno e como suas operações
diferem dos sistemas distribuídos Mas você ainda pode
estar se perguntando: como o DevOps se
encaixa em tudo isso Em nossa próxima lição,
o caso do DevOps em mainframes abordará
por que o DevOps é crucial para modernizar sistemas
legados e como a adaptação do DevOps pode
trazer uma implantação mais rápida, melhor colaboração
e maior em mainframes abordará
por que o DevOps
é crucial para modernizar sistemas
legados
e como a adaptação do DevOps pode
trazer uma implantação mais rápida,
melhor colaboração
e maior eficiência ao seu ambiente de mainframe. Você não gostaria
de perder isso.
4. Aula 3: o caso de DevOps em Mainframes: Apresento três, o caso dos
desenvolvedores em mainframes. Bem vindo de volta. Em
nossa última lição, exploramos o papel dos mainframes em setores
como finanças, saúde e
telecomunicações e por que eles continuam sendo tão essenciais
no cenário atual de TI Agora é hora de falar sobre algo que
provavelmente está em sua mente,
DevOps e, mais especificamente, por que DevOps é crucial para modernizar seu É aí
que as coisas ficam empolgantes porque você verá como
os mesmos princípios, impulsionando a agilidade em ambientes de
nuvem podem ser aplicados aos mainframes Pronto? Vamos embora. Por que o DevOps é crucial para
modernizar sistemas legados. Vamos esclarecer uma coisa. Só porque um sistema
é um sistema legado não significa que ele esteja
desatualizado ou seja irrelevante Os mainframes são mais cruciais do que
nunca, mas aqui está o problema. A forma como
os gerenciamos precisa evoluir. Entre em Devos. Implantação mais rápida,
a necessidade de velocidade. Imagine que você esteja executando um aplicativo financeiro
essencial em um mainframe. Um bug aparece. Tradicionalmente, pode
levar semanas ou até meses, passar por todo o
ciclo de encontrar o bug, manter uma correção,
testá-la e implantá-la No mundo acelerado de hoje, isso não é rápido o suficiente Os clientes esperam soluções imediatas e, se você não conseguir
entregá-las, você ouvirá falar sobre isso. DevOps permite implantações
mais rápidas automatizando grande parte
do processo O teste automatizado
detecta bugs mais cedo. A integração contínua
garante que cada alteração de código esteja
pronta para produção. entrega contínua significa que você pode enviar atualizações
sempre que precisar, não apenas durante as janelas de
lançamento programadas. Em vez de
esperar pelos ciclos de aprovação, suas equipes podem agir rapidamente
lançando novos recursos e
correções com confiança Essa velocidade é o que
mantém seus sistemas e sua empresa
competitivos. Um exemplo. Pense na Amazon, uma
gigante do comércio eletrônico. Mesmo que não estejam
usando mainframes, eles implantam novos códigos a cada
11,6 segundos, em média. Agora imagine se você pudesse trazer até mesmo uma fração dessa agilidade para seu ambiente de mainframe O que você poderia fazer se sua equipe pudesse
enviar atualizações
sob demanda, em vez de esperar
pelo lento processamento manual? Colaboração,
quebrando os silos. Se você trabalha em um
ambiente de mainframe há algum tempo, provavelmente já viu
essas equipes de desenvolvimento e operações
trabalhando em silos, geralmente com pouca comunicação Os desenvolvedores jogam o código
por cima da cerca para as operações e depois, bem, para o caos. Essa mão levantada geralmente
causa atrasos, mal-entendidos e muitas vezes apontar o dedo
quando as coisas DevOps quebra os silos ao incentivar a colaboração
entre a equipe de desenvolvimento
e operações Em vez de operar como
dois mundos separados, essas equipes trabalham
juntas desde o início. Isso significa que os desenvolvedores têm uma compreensão mais clara do
desempenho de seu código na produção e as equipes de
operações
analisam o processo mais cedo,
reduzindo as surpresas Foi aqui que a mágica aconteceu. Ao trabalhar em conjunto,
as equipes podem resolver os problemas antes que eles
aconteçam, em vez esperar até o
dia da implantação para perceber que uma determinada data codificada vai
atrapalhar o sistema. As equipes de
DevOps abordam
esses problemas com As equipes de
DevOps abordam
esses É uma abordagem mais proativa. Vamos dar um exemplo.
Digamos que você esteja trabalhando em um aplicativo essencial para
uma grande seguradora. A
equipe de desenvolvimento está trabalhando em um novo recurso para agilizar o processamento de
solicitações, mas não percebe que uma
alteração específica no código
diminuirá as interações do
banco de dados do sistema Com o DevOps,
as duas equipes trabalham juntas, possíveis problemas de desempenho
como esse são identificados e corrigidos antes de
se tornarem problemas que
afetem o cliente Automação, liberando
tempo para inovação. Agora, vamos falar
sobre automação. Se você está cansado de processos
manuais
, ocupe horas do seu
dia, isso é para você DevOps enfatiza a automação em todas as etapas, testes,
implantação e monitoramento Essa automação libera um tempo
valioso para suas equipes, permitindo que elas se concentrem na
inovação em vez de em tarefas tediosas Por exemplo, testes automatizados significam que toda vez que
um novo código é enviado, ele é automaticamente
verificado quanto a problemas. As implantações automatizadas
reduzem o risco de erros decorrentes da intervenção
manual monitoramento automatizado
alerta você sobre problemas em tempo
real antes que eles se
transformem em incidentes graves Sejamos sinceros, os processos manuais
são propensos a erros e lentos. A automação não
apenas reduz os erros, ela acelera
todo o fluxo de trabalho, permitindo que você
responda aos problemas com mais rapidez e forneça novos
recursos com mais frequência Vamos dar um exemplo.
Imagine automatizar a implantação de uma
atualização em seu mainframe Em vez de passar por vários portões de aprovação e
esperar por verificações manuais, a atualização é automaticamente testada, implantada e monitorada Se algo der errado, o sistema aciona um alerta e até reverte a
atualização, se necessário Esse nível de automação garante confiabilidade e
permite que sua equipe se concentre em tarefas mais críticas. O DevOps alinha os mainframes
com a TI moderna. Um dos maiores equívocos
sobre o DevOvs é que
ele é apenas para sistemas modernos baseados
em nuvem Isso não é verdade. Na verdade,
os princípios do DevOps podem ser aplicados a qualquer sistema,
incluindo mainframes Ao adaptar o DevOps ao
seu ambiente de mainframe, você alinha suas operações
às práticas modernas de TI, garantindo que seus
sistemas legados não estejam apenas sobrevivendo, prosperando no mundo Para organizações que
dependem muito de mainframes, incluir o
DevOps garante que você não fique para trás à medida que o resto do mundo
de TI evolui Trata-se de garantir que seu sistema permaneça
relevante e competitivo. Por exemplo, considere
um banco global executando
sistemas financeiros essenciais em mainframes Ao adotar o DevOps,
eles podem reduzir o tempo
de
implantação de semanas para horas, garantindo que seu sistema
permaneça seguro, rápido
e confiável, assim como os sistemas distribuídos
modernos
que eles também operam que eles também Principais benefícios da adoção do DevOps
no ambiente de mainframe. Para recapitular, aqui estão
os principais benefícios que você verá ao adotar DevOps em seu ambiente de
mainframe Primeiro, implantação mais rápida. Com a automação e a entrega
contínua, você reduzirá o
tempo de implantação de semanas para horas. Segundo, melhore a colaboração. DevOps promove a
colaboração entre as equipes de
desenvolvimento e
operações, resultando em menos
gargalos Três, automação. Automatizar
tarefas repetitivas libera tempo, reduz erros e permite que
sua equipe se concentre na
inovação ou no alinhamento
com a inovação ou no alinhamento A adoção do DevOps alinha
suas operações de mainframe às práticas modernas de
TI, garantindo relevância
e competitividade a longo prazo Vamos fazer uma atividade de aprendizado. Pense nos processos
atuais em seu ambiente de mainframe. Quais são as duas áreas
em que a automação pode causar o maior impacto na
velocidade ou na colaboração? Identifique um processo manual
que possa ser automatizado. Considere como uma
colaboração aprimorada entre suas equipes de desenvolvimento e
operações aceleraria suas implantações. Compartilhe suas respostas
no fórum de discussão do curso e veremos como seus colegas
estão aproveitando DevOps para
modernizar O que vem a seguir? Agora que defendemos o Devos
em ambientes de mainframe, você pode estar se perguntando:
quais são os desafios? Claro, Devo parece ótimo, mas adaptá-lo em um
ambiente legado pode ser complicado Em nossa próxima lição, desafios da integração do DevOps
com mainframes, exploraremos os desafios culturais
e técnicos que
você pode enfrentar ao levar o DevOps ao Também falaremos sobre como superar
a resistência
à mudança e garantir que sua
transição seja tranquila.
5. Aula 4: desafios da integração de DevOps com Mainframes: Lição quatro, desafios da
integração do DevOps
com mainframes Bem-vindos de volta, pessoal. Até agora, abordamos os
conceitos básicos do DevOps É importante para modernizar os ambientes de
mainframe
e os benefícios que isso traz, como implantação
mais rápida, colaboração
aprimorada
e maior automação Parece ótimo, certo?
Mas, sejamos honestos, implementar o DevOps é
sempre fácil,
especialmente em
ambientes legados, como mainframes Hoje,
vamos falar sério sobre
os desafios
culturais e técnicos que advêm da integração do
Devops às suas operações de
mainframe Obviamente, também abordaremos
como superá-los. Porque, afinal de contas, nenhum desafio é grande demais quando você
tem a abordagem certa. Por que a integração do Devos pode ser um desafio no ambiente de
mainframe mainframes não são apenas algumas relíquias de
TI escondidas no canto Eles são a espinha dorsal das operações de missão crítica
para muitos setores Mas a realidade é que eles
geralmente estão profundamente enraizados em processos
legados que existem
há décadas A ideia de introduzir Devops baseado em
velocidade, agilidade e entrega contínua
pode ser como pedir um maratonista que corra
com um peso de 20 libras nas com um peso de 20 É difícil, mas
não é impossível. Desafio cultural, que
sempre tenhamos feito isso dessa
forma, mentalidade. Vamos começar com o elefante na sala,
a resistência cultural Os mainframes
existem há muito tempo, assim como as pessoas
que os operam. provável que sua equipe esteja acostumada a certas
maneiras de fazer as coisas. Se você já
ouviu alguém dizer que sempre fizemos dessa maneira, você sabe exatamente o que quero dizer. Medo da mudança.
A mudança pode ser assustadora, especialmente quando você usa os mesmos
processos há anos O medo de que a automação possa
levar ao deslocamento de empregos ou que possa prejudicar a estabilidade
do sistema é real Silos entre as equipes. Em muitos ambientes de mainframe, as equipes de
desenvolvimento e operações trabalham em silos há anos Devos pede que eles
colaborem e compartilhem
responsabilidades, algo que pode parecer
desconfortável ou até ameaçador
para equipes acostumadas com suas próprias maneiras
de fazer Complexidade percebida do DevOps. Para muitos, o DevOps está associado a tecnologias nativas de
nuvem de ponta, e alguns podem pensar que
isso não se aplica a mainframes ou é muito
complicado para nossos sistemas Como superar a resistência
cultural, educação e treinamento. A chave para superar o
medo é o conhecimento, oferecendo
sessões de treinamento para ensinar as equipes sobre os
benefícios do Devos e
como ele complementa as operações
tradicionais
e como ele complementa as operações
tradicionais transforma Trata-se de mostrar que o
Devos não está substituindo empregos, mas os aprimorando.
Mostre, não conte. Em vez de falar sobre o
quão bom é Devos, mostre à equipe um pequeno sucesso Comece com um projeto piloto, talvez automatizando um processo
repetitivo simples e
demonstre como ele melhora a eficiência sem Promova uma cultura colaborativa. A Devo se esforça em ambientes em
que as equipes colaboram. Elimine os silos envolvendo desenvolvedores
e equipes de
operações
logo no início das discussões crie equipes multifuncionais que trabalhem juntas
desde o início Um exemplo. Em uma grande instituição
financeira, a equipe de mainframe
resistiu à automação porque achava que
isso interromperia seus A equipe de operações estava acostumada a gerenciar manualmente
as implantações com controle
rígido, e
a ideia de desistir disso foi
recebida com ceticismo Foi só quando
perceberam como automação poderia
liberar tempo para tarefas
mais estratégicas
sem
tirar o controle que eles
começaram a adotá-la. Desafios técnicos,
integrando ferramentas
modernas com sistemas
legados Digamos que você tenha todo mundo a
bordo culturalmente. O próximo obstáculo é o lado
técnico das coisas. Os mainframes, por design, são
complexos e altamente especializados. Integrar ferramentas
DevOp modernas nesse ambiente pode ser como tentar encaixar um
pino quadrado em um orifício redondo Problemas de compatibilidade de ferramentas. Muitas ferramentas de DevOps,
como Jenkins ou Ansible, são criadas pensando em ambientes
nativos da nuvem Fazer com que eles joguem bem com mainframes pode ser complicado Criação de scripts e automação. Os mainframes geralmente usam linguagens
exclusivas e ferramentas de
script baixas,
como Coball e JCL,
enquanto as ferramentas Devos são construídas com base em
Python, enquanto as ferramentas Devos são construídas com base em Python Integrar os
ambientes de script sem introduzir bugs ou ineficiências
pode ser Dependências complexas. Os aplicativos de mainframe geralmente fazem parte de um sistema
interconectado maior Uma pequena mudança em
uma área pode ter efeitos em
cascata em
toda a infraestrutura Garantir que a
automação do DevOps não introduza problemas imprevistos
requer Como superar os desafios
técnicos. Comece aos poucos e aumente a
confiança. Em vez de automatizar
tudo de uma vez, comece com processos de baixo risco Desenvolva gradualmente seus testes de estratégia de
automação ao longo do caminho para garantir a compatibilidade entre as ferramentas de DevOps
e os sistemas de mainframe Use ferramentas híbridas como o ZOE. Ferramentas como a Zoe preenchem a
lacuna entre mainframes e práticas
modernas de DevOps fornecendo uma interface de CLI e API
para o mainframe, permitindo que você conecte
ferramentas como Jenkins e
Ansibl sem reconstruir toda a Ansibl Colabore com especialistas em
mainframe. Reúna seus especialistas em mainframe
e engenheiros
de DevOps desde cedo para
superar os obstáculos técnicos Ao treinar equipes de treinamento cruzado, você cria um
ambiente mais integrado, onde tanto os
sistemas antigos quanto os modernos podem prosperar Por exemplo, em uma empresa de
telecomunicações, a equipe de mainframe teve dificuldade em integrar o Jenkins
ao pipeline do CICD porque
os scripts de construção estavam em
Cobo e Depois de muitas tentativas e erros, eles finalmente conseguiram fazer com que
funcionasse usando o Zoe CLI, que lhes permitiu conectar ferramentas
modernas de DevOps com Superando a resistência à
mudança em ambientes legados. O maior desafio de todos pode ser simplesmente a
resistência à mudança. Sejamos sinceros, os humanos
são criaturas de hábitos e, quando esses hábitos
funcionam há décadas, a ideia de fazer algo
novo pode parecer avassaladora Você pode encontrar membros da equipe que dizem que, se não está quebrado, não conserte e
são céticos qualquer coisa que pareça inovação
desnecessária Aversão ao risco. Os quadros principais
são essenciais para a missão. Tempo de inatividade ou bugs no sistema podem resultar em grandes perdas
financeiras Compreensivelmente, muitas equipes são altamente avessas ao risco quando se trata introduzir novas práticas ou automatizar Mentalidades legadas. Muitas pessoas ainda pensam que
os mainframes estão separados do mundo dos desenvolvedores, das
nuvens e Eles podem ver a
adoção de desenvolvedores como uma mudança radical em
vez de uma evolução natural Como superar a resistência
à mudança. Comece com o porquê. As pessoas são mais propensas
a abraçar a mudança quando entendem
por que ela é necessária. Mostre à equipe os benefícios
potenciais, atualizações
mais rápidas, menos erros e mais tempo para o trabalho
estratégico. Crie confiança lentamente. Implemente o DevOps em etapas, comece com pequenas vitórias, talvez automatizando testes ou monitoramento antes de realizar implantações em grande escala À medida que as equipes perceberem os benefícios, elas estarão mais abertas à
escalabilidade das práticas de DevOps Forneça suporte contínuo. mudança não acontece da noite para o dia, forneça
treinamento e suporte contínuos para ajudar as equipes a se sentirem confiantes
nos novos processos. Deixe-os saber que fazem
parte da jornada, não estão apenas recebendo
um novo conjunto de regras Por exemplo, como prestadora de serviços de
saúde, a liderança de TI
queria introduzir práticas de
DevOps para melhorar
a velocidade das implantações No entanto, a equipe
responsável pelos sistemas de mainframe resistiu, temendo que a automação
reduzisse seu controle
e levasse a erros Por meio de um gerenciamento cuidadoso de
mudanças e começando com projetos de
baixo risco, eles demonstraram
que o DevOps poderia ser adotado sem
introduzir novos riscos, acabando ganhando a adesão da equipe As principais conclusões
desta lição incluem que a resistência
cultural costuma ser o maior obstáculo
na adoção do Devos em ambientes Supere isso com educação, pequenas vitórias e colaboração. Desafios técnicos, como compatibilidade de
ferramentas e dependências
complexas, podem ser
resolvidos começando aos poucos, usando ferramentas híbridas e promovendo a colaboração entre
equipes A resistência à mudança é natural
em um ambiente legado, mas começando com Y e construindo confiança por meio da implementação
gradual, as equipes podem se adaptar às novas
práticas ao longo do tempo. Vamos fazer uma atividade de aprendizado. Pense
nos desafios do seu próprio ambiente. Identifique uma mudança cultural e um
desafio técnico que sua equipe pode enfrentar ao adotar o divórcio Compartilhe uma solução que você possa usar para enfrentar cada desafio
no fórum de discussão do curso. O que vem a seguir? Agora que você entende os desafios e
como superá-los, é hora de colocar a mão na massa. Em nosso próximo módulo, começaremos com a primeira lição, mapeando os fluxos de trabalho atuais do
mainframe Analisaremos como analisar seus
processos manuais existentes, como testes, implantações e agendamento de tarefas, e identificaremos onde a automação
pode causar o maior impacto Prepare-se para
mergulhar profundamente em seus fluxos de trabalho e descobrir como você pode começar a
automatizar a eficiência da
6. Aula 1: mapeando fluxos de trabalho atuais de mainframe: Bem-vindo ao módulo dois da modernização do mainframe
com o DevOps Identificação de
oportunidades de automação nas operações de mainframe Neste módulo, abordaremos o seguinte mapeamento dos fluxos de trabalho
atuais em seu ambiente de mainframe Identificar processos de alto
impacto que são
candidatos perfeitos para automação, priorizando iniciativas de
automação com base nas necessidades de negócios Ao final do
módulo, você
estará preparado para tomar decisões
informadas sobre onde concentrar
seus esforços de automação para obter o máximo impacto. Primeira lição, mapeando os fluxos de trabalho atuais do mainframe.
Bem vindo de volta. No módulo anterior, abordamos alguns dos
desafios que você pode
enfrentar ao integrar o DevOps com mainframes, a resistência
cultural, os obstáculos
técnicos abordamos alguns dos
desafios que você pode
enfrentar ao integrar o
DevOps com mainframes, a resistência
cultural, os obstáculos
técnicos e a superação de mentalidades antigas. Agora que você tem uma ideia
de quais são esses desafios, é hora de colocar um
pouco mais de mãos à obra. Nesta lição, vamos nos
concentrar em mapear seus fluxos de trabalho
atuais de mainframe Essa é uma
primeira etapa importante identificar quais processos
estão prontos para a automação Afinal, você não pode melhorar o que não entende
completamente. Vamos nos aprofundar e
explorar como analisar seus processos manuais e criar um mapa claro de suas operações. Por que mapear fluxos de trabalho
é essencial. Antes de entrarmos
no âmago da questão, vamos responder a uma pergunta simples Por que mapear o
fluxo de trabalho é tão importante? Bem, imagine isso. Seu ambiente de mainframe é
como uma máquina bem lubrificada, mas as peças estão
funcionando há décadas Todo mundo sabe o que fazer, mas ninguém para realmente
documentar como as coisas acontecem. É aí que entramos. mapeamento de fluxos de trabalho ajuda você
a identificar como as coisas
são realmente feitas, não apenas como elas
devem ser feitas Segundo, identifique gargalos e ineficiências. Três, destaque as tarefas manuais
que são candidatas perfeitas para automação e quatro processos
padronizados Todos estão na
mesma página e você tem uma base para
fazer melhorias. O que focar em testes, implantações e agendamento de trabalhos Quando falamos sobre mapeamento
de fluxo em ambientes de mainframe, há três grandes
áreas que
fornecerão mais
valor quando automatizadas O primeiro é testar. O teste manual pode ser
demorado e propenso a erros. Analisamos como você pode
automatizar essa tarefa. Segundo, implantações,
implantação manual de aplicativos de mainframe Isso é década de 1990. A automação pode agilizar esse
processo e reduzir os riscos. Três, agendamento de trabalho. mainframes são poderosos quando se
trata de processamento em lote, mas o agendamento manual de tarefas pode ser ineficiente e Vamos detalhar cada um deles. A busca por tarefas manuais. O teste manual é um
candidato perfeito para automação. Em muitos ambientes de mainframe, os desenvolvedores
testam manualmente o código, que pode ser entediante
e propenso Os testes automatizados não apenas
garantem a consistência, mas também liberam tempo para que sua equipe se concentre em tarefas mais estratégicas Perguntas a serem feitas ao
mapear fluxos de trabalho de teste. Quais tipos de testes estão
sendo executados manualmente? Testes unitários,
testes de regressão, testes funcionais. Com que frequência fazemos esse
teste e por quanto tempo eles duram? Quais ferramentas, se houver, estão
sendo usadas para testes? Há alguma parte
do processo de teste que frequentemente causa
gargalos Vamos dar uma olhada em um exemplo. Imagine que você é responsável por manter um
aplicativo de cobal para um banco Sempre que um novo
recurso é adicionado, a
equipe de operações executa manualmente uma série de testes para
garantir que nada seja interrompido. Esses testes são executados
várias vezes, levando horas ou até
dias para serem concluídos. Ao automatizar esses testes, você pode reduzir o tempo
gasto em tarefas repetitivas, garantir maior precisão e lançar
suas atualizações Implantações, tornando-as perfeitas. Implantar código em um mainframe nem sempre Muitas vezes, isso é feito manualmente envolvendo várias
etapas e pessoas, o que deixa espaço
para erros humanos. O mapeamento do processo de
implantação ajudará você a identificar onde mais tempo e
esforço estão sendo gastos e onde a automação
pode salvar o dia Perguntas a serem feitas ao
mapear implantações. Como o código é movido do
desenvolvimento para a produção? Quais intervenções manuais
são necessárias? Por exemplo, aprovações, aprovações ou
criação manual de scripts? Quanto tempo o processo
leva do início ao fim? O que acontece quando
algo dá errado? Como lidamos com as reversões? Por exemplo, digamos que você esteja executando um
processo de folha de pagamento em lote em um mainframe Sempre que há
uma atualização de código, ela precisa ser
implantada manualmente Muitas vezes, tarde da noite, quando
há menos tráfego, sua equipe passa horas
checando o código três vezes para
garantir que nada seja quebrado Ao automatizar o processo de
implantação, você reduz os erros e
acelera o tempo
necessário para colocar novos recursos
em produção,
ao mesmo tempo em que dá à sua equipe
mais tempo para se concentrar em outras prioridades e chegar em
casa em um horário razoável Agendamento de trabalhos, encontrando
as tarefas repetitivas. As molduras principais se destacam no processamento
em lote. Mas se você está
agendando trabalhos manualmente, está perdendo uma grande
oportunidade de melhoria agendamento de trabalhos é repetitivo por natureza, perfeito para automação Perguntas a serem feitas ao
mapear o agendamento de trabalhos. Quais trabalhos são agendados
manualmente e com que frequência? Há alguma dependência
entre os trabalhos? Por exemplo, o trabalho A deve ser concluído
antes que o trabalho B possa começar. O que acontece se um trabalho falhar? Existe um processo manual
para reiniciá-lo? Existem padrões de tarefas
repetitivas que
poderiam ser simplificados Por exemplo, imagine seus processos de
mainframe, transações financeiras
diárias da noite para A equipe passa uma
parte do dia configurando os trabalhos para a noite seguinte,
verificando
as dependências
e
intervindo manualmente se algo falhar Ao mapear esses processos, você pode encontrar
oportunidades para automatizar o agendamento de
trabalhos e monitorar automaticamente
as falhas Ferramentas para mapeamento
e documentação do fluxo de trabalho. Tudo bem. Identificamos as principais áreas em que a automação pode causar impacto nos testes, implantações e no agendamento de trabalhos Mas como você documenta e mapeia esses processos de forma eficaz? Vamos dar uma olhada em algumas
ferramentas que podem ajudar. O primeiro é o gráfico lúcido ou
qualquer ferramenta visual de fluxo de trabalho. Lucid Chart é uma ferramenta
fácil de usar que permite criar
diagramas visuais do seu fluxo de trabalho Se você é
uma pessoa mais visual, é perfeita para definir
cada etapa de seus processos atuais e
identificar gargalos Além disso, é colaborativo
para que os membros da equipe possam fornecer informações.
Como o usamos? Primeiro, crie um
fluxograma do seu fluxo de trabalho de teste, implantação ou
agendamento, depois destaque as tarefas manuais
e os pontos de decisão e use isso como base para identificar áreas que
poderiam ser automatizadas O segundo é o Zoe CLI ou interface de linha de
comando. ZoE é uma
estrutura de código aberto que
permite que você interaja com seu mainframe de
uma forma mais moderna Você pode usá-lo para extrair
dados sobre status de tarefas, fluxos de trabalho e desempenho
do sistema, que ajuda a documentar
suas Como o usamos?
Use o Zoe CLI para extrair dados do
seu mainframe, documentando quanto tempo os trabalhos demoram e
identificando onde ocorrem Automatize tarefas repetitivas de linha de
comando para ter uma visão melhor de onde a intervenção
manual é necessária Terceiro, confluência ou
SharePoint para documentação. Depois de mapear
seus fluxos de trabalho, você precisará
documentá-los para uso futuro Confluence ou o SharePoint
são ótimas ferramentas para armazenar e compartilhar documentação em O Confluence ou o SharePoint
são ótimas ferramentas para armazenar
e compartilhar documentação em
sua equipe. Como os usamos? Armazene diagramas de fluxo de trabalho e documentação
detalhada
sobre processos manuais Incentive os membros da equipe
a colaborar em atualizações ou melhorias
nesses fluxos de trabalho As principais conclusões desta lição
incluem mapear
fluxos
de trabalho, que é crucial para entender
onde
existem processos manuais e identificar Concentre-se em três
áreas principais: testes, implantações e agendamento de trabalhos, que geralmente são repetitivas
e Use ferramentas como Lucid
Chart, Zoe CLI e Confluence para documentar seus fluxos de trabalho Vamos fazer uma atividade de aprendizado. Pense em um processo em
seu ambiente de mainframe, seja teste,
implantação ou agendamento de tarefas Mapeie as etapas
desse processo. Onde estão as tarefas manuais? Quais ferramentas você poderia usar para ajudar a documentar e
analisar esse processo? Compartilhe suas ideias no fórum de discussão do
curso e exploraremos
juntos alguns exemplos do mundo
real . O que vem a seguir? Agora que você começou a
mapear seus fluxos de trabalho, é hora de analisar onde você deve concentrar seus esforços de
automação Na próxima lição, a identificação oportunidades de automação de
alto impacto
abordará os critérios para escolher
processos a serem automatizados, com foco na frequência,
complexidade e impacto nos negócios
7. Aula 2: identificando oportunidades de automação de alto impacto: Lição dois, identificando oportunidades de automação de
alto impacto. Bem-vindos de volta, pessoal. Agora que você mapeou seus fluxos de trabalho
atuais, é hora de arregaçar as mangas
e se aprofundar na
próxima etapa, identificando oportunidades de automação de alto impacto A chave para o sucesso aqui é escolher os
processos certos para automatizar Nem toda tarefa manual
precisa de automação. Algumas tarefas proporcionarão um retorno sobre o
investimento muito maior do que outras. Nesta lição,
vamos explorar
os critérios para selecionar
quais processos automatizar, focando em três grandes fatores:
frequência, propensão a erros e repetitividade Também falaremos sobre
como priorizar as iniciativas de
automação com base
em seu impacto nos negócios Não se preocupe. Vou me
certificar de que incluamos algumas amostras do mundo real você
possa se relacionar com
o que estamos discutindo. Por que priorizar a
automação é fundamental. Sejamos honestos. Você não pode
automatizar tudo de uma vez Roma não foi construída em um dia e seu
ambiente de mainframe de automação também não será Se você tentar automatizar
cada processo de uma só vez,
sobrecarregará sua equipe,
ultrapassará seu orçamento e provavelmente acabará com mais
dores de cabeça do que soluções A chave aqui é a priorização. Quando você se concentra em oportunidades de alto
impacto, obtém o
melhor retorno
possível, ROI
mais rápido, menos
erros manuais e equipes mais felizes O truque é saber quais
processos são direcionados primeiro. Critérios para escolher
processos a serem automatizados. Vamos começar explorando três critérios principais para escolher
processos a serem automatizados Essas são as áreas
em que a automação
fornecerá os maiores benefícios e liberará mais recursos. Pronto? Aqui vamos nós. Frequência. Com
que frequência o processo acontece? Uma das primeiras
perguntas a fazer é: com que
frequência esse
processo ocorre? Se um processo
acontece apenas uma vez por ano, provavelmente não
é uma
alta prioridade para automação, a menos que seja extremamente demorado ou
propenso a erros. No entanto, se uma tarefa acontece todos os dias ou várias
vezes por semana, isso é um grande sinal que a automação pode causar
um impacto significativo. Trabalhos diários ou semanais. Processos como a execução de trabalhos em lotes
noturnos ou relatórios financeiros
semanais são os principais candidatos à automação Quanto mais vezes
algo acontece, mais tempo você
economiza ao automatizá-la. processos mensais,
até mesmo processos mensais como folha de pagamento ou relatórios de fim de pena considerar processos mensais,
até mesmo processos mensais,
como folha de pagamento ou relatórios de fim de
mês, para automação, se consumirem um esforço manual
significativo Vejamos um exemplo. Digamos que sua equipe execute trabalhos em
lotes noturnos para processar transações
financeiras Todas as noites, a equipe de operações passa uma hora
configurando o trabalho manualmente, garantindo que todas as dependências estejam em vigor e monitorando falhas
no trabalho São 30 horas por mês
gastas em uma tarefa repetitiva. Automatizar esse processo pode
economizar mais de 360 horas por ano. Agora, essa é uma oportunidade de
automação de alto impacto. Propenso a erros é o processo
propenso a erros humanos. A seguir, tendência a erros. Se um processo envolve etapas
complexas ou
requer precisão, ele é um candidato perfeito
para automação. Os humanos são ótimos, mas não
somos perfeitos. Os processos manuais geralmente são
onde os erros se encaixam. Tarefa complexa com várias etapas. Se um processo tiver várias etapas em que a
intervenção humana é necessária, especialmente se essas etapas precisarem ocorrer em
uma determinada ordem, há um
risco maior de erros. Tarefas sensíveis ao tempo. Processos que são
urgentes como implantar um toque
crítico de segurança, deixam pouco espaço para erros Automatizar essa tarefa garante que elas sejam feitas
corretamente e no prazo Por exemplo, imagine que você esteja implantando
manualmente as atualizações do CBL nosso
ambiente de produção O processo envolve
copiar arquivos, executar testes, coordenar
com outras equipes e aprovar cada etapa Se alguém pular uma
etapa ou cometer um erro de digitação, as consequências podem ser
graves e caras automação desse fluxo de trabalho remove o elemento humano das partes
mais propensas a erros, garantindo que a implantação ocorra sempre sem falhas Repetitividade é o
processo altamente repetitivo. Por fim, considere o quão
repetitivo é o processo. Se você ou sua equipe
estão realizando a mesma série de etapas
repetidamente, essa é uma área privilegiada
para automação. A repetição leva à fadiga e a fadiga leva a erros Por que não deixar a automação lidar com trabalho
litigioso enquanto sua equipe se concentra em projetos mais
estratégicos Teste manual repetitivo. Executar o mesmo
conjunto de testes
sempre que houver uma
alteração no código, de forma automatizada. Agendamento e monitoramento de trabalhos, agendamento
e monitoramento
manual trabalhos todos os dias, automatizados Por exemplo, sua equipe
executa o mesmo lote de testes sempre que uma alteração é feita em seu aplicativo de
mainframe É a mesma série de etapas, dia após dia. Ao automatizar esse teste, você está liberando horas
de trabalho manual todas as semanas e reduzindo o risco de
perder um caso de teste crucial Priorizando iniciativas de
automação com base no impacto nos negócios Agora que você sabe como
identificar os melhores
processos para automatizar, o próximo passo é
priorizá-los Nem todos os esforços de automação
são criados da mesma forma. Alguns terão um impacto
comercial muito maior do que outros, e é nesses que você
deve se concentrar primeiro. Concentre-se na economia de custos. Uma das formas mais óbvias de
medir o impacto nos negócios
é a economia de custos. Se automatizar um processo economiza uma quantidade
significativa de tempo para sua equipe, isso é uma redução direta de custos Nesse caso, tempo
realmente é dinheiro. Veja as horas manuais
gastas em cada tarefa. Estime quanto tempo a
automação economizará. Em seguida, calcule a
possível economia de custos com base no número de
horas economizadas por semana, mês ou ano. Vamos
dar um exemplo. Digamos que sua equipe
passe 10 horas por semana testando manualmente os aplicativos de
mainframe Ao automatizar esse processo, você libera essas 10 horas São 40 horas por mês
ou 480 horas por ano, tempo que pode ser gasto em iniciativas
mais estratégicas ou até mesmo evitar custos com horas extras Considere a redução do risco. A automação não economiza
apenas tempo. Também pode ajudar a reduzir o risco. Os processos manuais estão
sujeitos a erros humanos, o que pode levar a erros
dispendiosos, tempo de
inatividade do sistema ou problemas de
conformidade Ao automatizar o processo, você reduz o risco
desses erros e seu impacto
potencial Identifique processos de alto risco nos quais erros podem
causar tempo de inatividade, perda de
dados ou
vulnerabilidades de segurança Priorize a automação
desses processos para reduzir
riscos e melhorar a confiabilidade .
Vamos dar um exemplo. Considere uma empresa processando transações com cartão de
crédito. Um erro no
processo de implantação pode causar tempo de inatividade ou processamento incorreto de
transações levando a perdas financeiras
e insatisfação do cliente automação desse processo de
implantação reduz
significativamente
o risco de tempo de inatividade, garantindo que as transações sejam processadas corretamente e Maximize o valor estratégico. A automação também pode ajudar a
liberar valor estratégico liberando sua equipe para se concentrar em trabalhos de maior impacto Quando sua equipe não está
atolada em tarefas repetitivas, ela tem mais tempo para
trabalhar em inovação, melhorias no sistema ou projetos de
maior valor que impulsionam seus negócios Identifique áreas em que a
automação pode liberar o tempo da sua equipe para inovação ou solução de
problemas críticos. Concentre-se em projetos de automação que se alinhem às metas estratégicas da sua
empresa Por exemplo, uma
equipe de mainframe passa 15 horas por
semana monitorando os cronogramas de trabalho e
reiniciando manualmente Depois de automatizar esse processo, eles liberam essas
horas para se concentrarem em melhorar o desempenho do sistema e implementar novos recursos, o que agrega mais
valor aos negócios principais conclusões desta lição incluem o foco em tarefas repetitivas, propensas a
erros e de alta frequência tarefas repetitivas, propensas a
erros e para maximizar o
impacto da automação Priorize
iniciativas de automação que proporcionem economias significativas de
custos, reduzam riscos e liberem valor
estratégico Automatizar os processos certos
primeiro ajuda você a obter ROI
mais rápido e prepara o terreno para
esforços de automação mais ambiciosos no futuro. Vamos fazer uma atividade de aprendizado. Pense nos fluxos de trabalho que você
mapeou na lição anterior. Identifique uma tarefa de alta frequência, uma propensa a erros e uma tarefa repetitiva que
se beneficiaria da automação Classifique-os com base no impacto nos
negócios. Qual processo
você automatiza primeiro? Compartilhe sua classificação e raciocínio no fórum de discussão do curso O que vem a seguir? Agora que identificamos quais
processos automatizar, é hora de avaliar se seus sistemas e sua equipe estão
prontos para a automação Na próxima lição, avaliando a prontidão da
automação, veremos como determinar quais sistemas legados
são adequados para automação e como avaliar lacunas de habilidades de
sua equipe
para garantir o sucesso
8. Aula 3: prontidão para automação assídua: Três lição três, avaliando a prontidão da
automação. Bem vindo de volta. Em
nossa última lição, falamos sobre como identificar oportunidades de automação de
alto impacto. Esses processos que
são repetitivos, propensos a
erros e
acontecem com frequência Agora que você tem sua lista
de candidatos à automação, é hora de responder a
uma pergunta importante. Você está pronto para a automação? Você pode estar pensando, é
claro, que estamos prontos. Vamos começar a automatizar,
mas espere. Assim como você não
pularia em uma piscina sem
saber o quão profunda ela é, você não deve
mergulhar na automação sem primeiro avaliar
sua prontidão Nesta lição, abordaremos
como determinar quais dos seus sistemas legados
são adequados para automação e como avaliar as lacunas de habilidades da
sua equipe. Pense nisso como uma base para
o sucesso, porque quando você
sabe para o que está pronto, suas iniciativas de automação têm muito mais chances de sucesso. Por que avaliar a
prontidão da automação é importante. Imagine isso. Você está animado para começar a automatizar seus processos de teste
e implantação Você pega o fluxo de trabalho, aplica algumas ferramentas de DevOps e ele trava e queima Por quê? Porque talvez o sistema não
estivesse equipado para automação ou talvez sua equipe não
tivesse as habilidades certas para
gerenciar as novas ferramentas. A prontidão para automação significa garantir que você tenha a infraestrutura e
as habilidades certas antes de começar É a diferença entre se
preparar para o sucesso a longo prazo e
cair em frustrações
e Primeiro passo, determinar
quais processos
e sistemas legados são adequados
para automação. Nem todo sistema ou processo
é adequado para automação
logo que sai do jogo. Os sistemas legados, em particular, vêm com seu próprio
conjunto de peculiaridades e complexidades que tornam Como você descobre quais sistemas estão
prontos para a automação? Avaliação da estabilidade
de sistemas legados. Uma das primeiras
coisas a considerar é a estabilidade de
seus sistemas legados. Se você estiver lidando com
um mainframe propenso a falhas ou paradas
frequentes, talvez
ele ainda não esteja pronto para a
automação A automação funciona melhor em ambientes
confiáveis e estáveis. Perguntas a serem feitas a si mesmo: o sistema que você
deseja automatizar
é confiável ou ele passa por períodos de inatividade com
frequência Com que frequência você se depara com manutenção
não planejada ou problemas
inesperados? Um exemplo. Digamos que você esteja
executando um
aplicativo de folha de pagamento em um mainframe Se esse sistema estiver propenso a
erros ou falhas frequentes, automatizar o agendamento de trabalhos
pode apenas agravar o pode Primeiro, você precisa garantir
a estabilidade do sistema antes de
introduzir qualquer automação. Complexidade do fluxo de trabalho. Em seguida, veja a
complexidade do fluxo de trabalho. Processos complexos com várias dependências
podem tornar a automação mais difícil de implementar e mais propensa a problemas se
algo der errado A automação brilha quando os processos são simples
e Concentre-se primeiro em fluxos de trabalho
mais simples. Perguntas a serem consideradas. O fluxo de trabalho tem
várias dependências que podem complicar Quão bem documentados estão os processos manuais
atuais? Vamos dar uma olhada em um exemplo. Se seu fluxo de trabalho envolve várias equipes
coordenando aprovações, entregas
manuais e scripts
complexos escritos em uma mistura de Cobol, JCL e rex, talvez
não seja o melhor ponto não seja o Em vez disso, considere
primeiro
automatizar esferas de
processos menores e
mais independentes, como executar lotes
noturnos ou testar scripts Compatibilidade de ferramentas existentes.
Vamos parar com as ferramentas. Se seus
sistemas legados não se
integram facilmente às ferramentas de
automação modernas, como Jenkins, Ansible ou Zoe, isso é
um sinal de que talvez você precise
fazer um Perguntas a serem feitas nossos sistemas legados se integram
bem às ferramentas modernas de DevOps Já estamos usando
ferramentas como Zoe CLI ou JCL que podem atuar como uma ponte
entre o antigo e o novo Por exemplo, se você estiver
usando uma ferramenta como a Zoe, que fornece uma interface
moderna para interagir com mainframes, você já está em boa
forma para começar a automatizar No entanto, se sua configuração
atual exigir scripts
personalizados apenas para
realizar tarefas básicas, talvez
você precise passar
algum tempo modernizando suas ferramentas antes de
mergulhar na automação Etapa dois, avaliar a
prontidão da equipe e as lacunas de habilidades. Agora que você avaliou a
prontidão de seus sistemas, é hora de voltar o
foco para sua equipe Mesmo as melhores
ferramentas de automação não ajudarão se sua equipe não tiver as habilidades ou a confiança para
usá-las de forma eficaz. Identificar
habilidades de automação em sua equipe. A automação introduz novas ferramentas, novas linguagens de programação
e novos fluxos de trabalho Os membros da sua equipe
têm as habilidades necessárias para trabalhar com
essas tecnologias? Perguntas a serem feitas: nossas equipes de
desenvolvedores e operações sabem como usar ferramentas de
automação modernas como Jenkins, Ansible e Zoe Temos experiência com linguagens de
script
como Python, Groovy ou Bash
, ou confiamos
principalmente em linguagens mais antigas, como Cobol confiamos
principalmente Vamos dar uma olhada em um exemplo. Se sua equipe está
confortável com o COBOL, mas tem pouca experiência
com ferramentas mais novas, como o Ansible,
ela pode enfrentar uma curva de aprendizado
acentuada mas tem pouca experiência
com ferramentas mais novas, como o Ansible,
ela pode enfrentar uma curva de aprendizado
acentuada ao introduzir a automação. Fornecer treinamento
e aprimoramento nessas ferramentas será
crucial para seu sucesso Entendendo a resistência
organizacional. Lembre-se de que, no Módulo 1, quando falamos sobre desafios
culturais, vale a pena revisitá-lo aqui Mesmo que sua equipe
tenha as habilidades, ela ainda pode resistir à adoção automação se não
entender totalmente seu valor ou, pior se temer que ela
substitua as funções Perguntas a serem feitas. resistência à mudança
dentro da equipe? Comunicamos claramente
os benefícios da automação, como redução do trabalho manual, eficiência
e maior
foco em tarefas de alto valor Vamos dar uma olhada em um exemplo. Em um grande provedor de serviços de saúde, a equipe de TI
hesitou em automatizar a implantação
manual porque temia perder o controle sobre Depois de aprender sobre
como a automação poderia melhorar a confiabilidade e evitar o estresse da implantação
noturna, eles se tornaram mais abertos
à adoção de novas ferramentas Preenchendo lacunas de habilidades por meio
de treinamento e suporte. Se você identificou lacunas
no conjunto de habilidades da sua equipe, não se preocupe, é
totalmente normal. A solução é
treinamento e suporte. Fornecer
à sua equipe os recursos necessários para aprender novas
ferramentas e processos contribuirá muito para sucesso da
automação.
Perguntas a serem feitas. Que treinamento
precisamos oferecer para que
nossa equipe se familiarize com as
novas ferramentas de automação? Como podemos apoiar nossa equipe na curva
de aprendizado, garantindo que eles se sintam confiantes no gerenciamento dos novos processos? Por exemplo, em uma instituição
financeira, a equipe de operações
recebeu treinamento de Jenkins, incluindo workshops práticos e orientação de engenheiros de DevOps mais
experientes Essa abordagem
os ajudou a
fazer a transição gradual para o gerenciamento de implantações
automatizadas, melhorando a confiança da
equipe e a confiabilidade
de seus processos As principais conclusões desta lição
incluem que a estabilidade
do sistema é crucial para o sucesso da automação Comece com sistemas estáveis
e confiáveis. Concentre-se em
fluxos de trabalho mais simples e
bem documentados antes de passar
para processos mais complexos Avalie as lacunas de
habilidades da sua equipe e forneça treinamento e suporte
para preencher essas lacunas. Enfrente qualquer resistência cultural
à automação educando a equipe sobre seus benefícios e oferecendo garantias
sobre seu papel Vamos fazer uma atividade de aprendizado. Pense nos
sistemas e na equipe atuais. Identifique um
processo legado que seja adequado para automação com base em sua
estabilidade e simplicidade. Avalie as habilidades da sua equipe. Existe uma lacuna entre sua experiência atual e o que é necessário para a automação? Compartilhe suas ideias no fórum de discussão do
curso e vamos discutir como preencher as
lacunas. O que vem a seguir? Agora que você sabe como
avaliar sua prontidão
para a automação, é hora de ver como
tudo se encaixa
no mundo real Na próxima lição, um estudo iniciativas
bem-sucedidas de
automação de mainframe, veremos exemplos reais
de empresas que automatizaram com sucesso
suas operações de mainframe Você aprenderá com
as experiências deles e descobrirá as
principais lições que podem ajudar a orientar sua própria jornada de
automação.
9. Aula 4: estudo de caso: iniciativas de automação de mainframe de sucesso: Lição quatro, estudo do Taste, iniciativas
bem-sucedidas de
automação de mainframe Bem-vindos de volta, pessoal. Até agora, exploramos como identificar oportunidades de
automação, como priorizá-las e como avaliar se
seus sistemas e equipes
estão prontos para seus sistemas e equipes
estão prontos Agora é hora de
dar um passo atrás e ver como isso aconteceu em
outras organizações. Na lição de hoje,
veremos exemplos
reais
de empresas que automatizaram com sucesso
suas operações de mainframe Ao aprender com suas jornadas, tanto com os sucessos
quanto com os desafios, você obterá
informações valiosas que podem orientar suas próprias iniciativas de
automação Vamos nos aprofundar nos estudos de
caso e ver quais lições
podemos aprender. Primeiro estudo de caso, uma
jornada de bancos globais para automatizar as implantações de
COBOL Primeiro, vamos falar sobre um dos
maiores desafios de
muitas organizações que executam
mainframes, as implantações da Cobal Esse banco global
executa aplicativos financeiros
essenciais em mainframes há décadas, mas seu
processo de implantação foi manual, lento e propenso a erros Isso soa
familiar para alguém? O problema é que as implantações manuais de
cobal demoravam horas e geralmente
ocorriam tarde da noite para minimizar o impacto no cliente Havia várias
portas de aprovação e cada etapa exigia
intervenção manual, desde a
cópia de arquivos até a execução de testes. O risco de
erro humano era alto e procedimentos de
reversão
eram complicados se algo desse errado Diluição: o banco
decidiu introduzir o Jenkins como sua ferramenta de pipeline do
CICD para automatizar o processo Eles começaram pequenos, automatizando
apenas a fase de testes. Jenkins executava automaticamente o teste de
regressão sempre que uma
nova alteração de código fosse enviada Quando a equipe se sentiu confortável, eles expandiram a automação para incluir compilações e implantações, permitindo que a Jenkins cuidasse de todo
o pipeline todo
o Com a ajuda do Zoe CLI, eles integraram o Jenkins com
seu ambiente de mainframe, permitindo uma interação perfeita entre Os resultados e os tempos de implantação foram reduzidos de
horas para minutos. A taxa de erro caiu
drasticamente, pois Jenkins garantiu que todas as etapas fossem
executadas A equipe não
precisava mais ficar acordada até tarde para
supervisionar manualmente a implantação, o que significava funcionários mais felizes e um melhor equilíbrio entre vida profissional e Estudo de caso dois, uma iniciativa de
agendamento automatizado de tarefas da Telecom Giants Vejamos outro exemplo do
setor de telecomunicações Essa empresa estava lidando
com grandes volumes de dados de clientes e o processamento
noturno de tarefas em lotes era um grande processo de agendamento era manual
e trabalhoso, e qualquer falha na
cadeia causava atrasos nos processos de cobrança e atendimento ao cliente O problema era que a
equipe precisava
programar e monitorar manualmente centenas
de trabalhos em lotes todas as noites. Se um trabalho falhava, muitas vezes passava despercebido até
a manhã seguinte, causando um efeito cascata que atrasava trabalhos
posteriores e A recuperação dessas falhas exigiu intervenção manual, causando ainda mais atrasos
e frustrando Com a solução, a empresa decidiu implementar o
BMC Control, uma ferramenta de agendamento
e monitoramento que poderia automatizar todo
o processo O controle foi configurado para programar e
executar
automaticamente o trabalho noturno em lotes
com base em critérios predefinidos Incluía monitoramento em tempo real e detecção automática de falhas, o que significa que, se um trabalho falhasse, o sistema acionaria alertas e
tentaria automaticamente reexecutar o trabalho. A equipe foi treinada
na nova ferramenta e a colaboração
multifuncional entre TI e operações
ajudou a garantir uma adoção tranquila. Os resultados e as falhas de trabalho foram detectados e
resolvidos em tempo real, reduzindo atrasos e melhorando o tempo de atividade
geral do sistema A intervenção manual
foi reduzida em 80%, permitindo que a equipe se concentrasse em tarefas
mais estratégicas do que
no combate a incêndios. satisfação do cliente
aumentou devido
à maior confiabilidade dos processos de cobrança e a eficiência
geral disparou Um estudo três, um
profissional de saúde
testando o sucesso da automação. No setor de saúde, a precisão
dos dados e o
tempo de atividade do sistema são essenciais Esse provedor de serviços de saúde tinha um sistema de mainframe complexo executando vários aplicativos de
dados de pacientes processo de teste era basicamente manual e, toda vez
que faziam uma atualização, a equipe passava dias executando testes para garantir que
nada fosse quebrado. O processo era lento
e às vezes
surgiam erros , causando problemas nos relatórios
de dados do paciente O problema é que o teste manual era um processo demorado muitas vezes levando vários
dias para ser concluído. O risco de
erro humano fazia
com que ,
ocasionalmente, bugs entrassem em produção, causando atrasos no
processamento de dados de pacientes e em pedidos de seguro A equipe de testes estava sobrecarregada, gastando mais tempo em tarefas
repetitivas e menos em melhorias estratégicas.
A solução. O
provedor de serviços de saúde implementou código
IBM Urban para automatizar
o processo de teste código urbano permitiu que eles
automatizassem testes unitários, testes de
integração
e testes de regressão, garantindo que cada atualização fosse totalmente verificada antes de
ser lançada Eles conseguiram configurar notificações
automatizadas
se algum teste
falhasse, permitindo que a equipe reagisse
rapidamente e resolvesse problemas. Eles conseguiram executar testes continuamente, mesmo fora do
horário de expediente, garantindo que os testes não prejudicassem
o desenvolvimento. Os resultados e o tempo de teste foram
reduzidos de dias para horas, permitindo que
a equipe enviasse atualizações com
mais rapidez e confiança. O número de bugs
que chegaram à produção diminuiu significativamente, melhorando a confiabilidade
do sistema. A equipe de testes
conseguiu mudar o
foco para tarefas de maior valor agregado, melhorando o desempenho geral
do sistema. Principais lições aprendidas com esses estudos de caso do mundo
real. Como vimos
nesses exemplos,
automatizar as
operações de mainframe pode oferecer alguns benefícios sérios, mas requer
planejamento e execução cuidadosos Aqui estão as principais
lições que podemos
tirar dessas iniciativas do
mundo real. Primeiro, comece pequeno e escale. Comece automatizando uma parte do processo, como testar
,
e expanda a partir daí Não tente automatizar
tudo de uma vez, ou você pode acabar sobrecarregado Integre ferramentas antigas
e modernas. Ferramentas como o ZoE Control A e o código urbano podem
atuar como pontes entre seus sistemas de mainframe
e as ferramentas modernas Não hesite em usá-los. Três, treine e
capacite sua equipe. A automação bem-sucedida não tem
a ver apenas com tecnologia,
mas com pessoas. Garanta que sua equipe esteja treinada e confiante
com as novas ferramentas. Ou o monitoramento em tempo real é fundamental. Automação sem monitoramento
é como voar às cegas. Ferramentas que fornecem alertas em tempo
real e respostas
automatizadas
ajudam você a detectar e corrigir problemas antes que eles
afetem os clientes. Vamos fazer uma atividade de aprendizado. Reflita sobre os estudos de caso que
acabamos de analisar. Identifique um processo em sua própria organização que você acredita que poderia
se beneficiar da automação. É uma implantação paralela, um
processo de agendamento de tarefas, Compartilhe seu exemplo
no fórum de discussão e explique como a automação
pode melhorar a eficiência, reduzir erros e liberar o tempo da sua equipe para um trabalho
mais estratégico. O que vem a seguir? Agora que você já
viu o que é possível, é hora de usar
as ferramentas que fazem a
automação acontecer. No próximo módulo, abordaremos as
ferramentas e
tecnologias específicas que você pode usar para automatizar suas operações de
mainframe De Jemkins a Zoe and Control, abordaremos como cada ferramenta se encaixa no cenário de DevOps
10. Aula 1: introdução às ferramentas de automação para mainframes: Módulo três, ferramentas e tecnologias para automação de
mainframe No módulo três, você aprende
sobre as principais ferramentas de automação para mainframes e como cada ferramenta se encaixa no cenário de Devos e
automação Ao final deste módulo, você saberá como escolher
as ferramentas certas para automatizar
suas operações de mainframe Primeira lição, introdução às ferramentas
de automação para mainframes Bem-vindo ao módulo três. Até agora, falamos sobre o porquê
e o quê da automação, por que ela é importante e quais processos você
deve se concentrar. Agora é hora de ser prático
e explorar como. Nesta lição,
apresentaremos principais ferramentas que ajudarão
você a automatizar suas operações de
mainframe Esteja você implantando aplicativos
cobal, executando tarefas ou
agendando Existem ferramentas que
podem lidar com tudo isso. Hoje, abordaremos Jenkins, Ansible Zoe, IBM, Urban code e BMC Control M
e mostraremos como cada um se encaixa no cenário de DevOps
e automação Você ainda não precisa ser
um especialista em ferramentas, mas ao final desta lição, você terá uma forte
noção de quais ferramentas fazem o quê e estará pronto para
começar a implementá-las. Vamos começar.
Por que as ferramentas de automação são essenciais para as operações de
mainframe mainframes são a espinha dorsal de setores
essenciais, do
setor bancário ao setor de saúde, mas as operações tradicionais de
mainframe podem ser lentas, manuais Insira as ferramentas de automação. Eles estão aqui para
simplificar seus fluxos de trabalho, reduzir o erro humano e
acelerar os ciclos de entrega Essas ferramentas permitem
automatizar tarefas repetitivas, como testes, implantação e agendamento de trabalhos Integre sistemas de mainframe
com práticas modernas de debo, trazendo agilidade ao seu ambiente
legado e monitore e responda
aos problemas em tempo real,
melhorando o tempo de atividade Agora, vamos detalhar as principais ferramentas com as quais você
trabalhará. Jenkins, a ferramenta GT para CICD. Vamos
começar com Jenkins. Você provavelmente já
ouviu falar disso, e há uma boa
razão para isso. Jenkins é o padrão do
setor para integração
contínua, distribuição contínua e entrega
contínua ou CICD O que Jenkins faz? Jenkins automatiza todo o pipeline de
construção, teste e implantação, tornando-o um
participante importante no Para mainframes, o Jenkins pode
automatizar implantações de código Cobalt, BL one
ou assembler, assim como lida com aplicativos nativos da nuvem modernos. Com plug-ins e integração
para ferramentas como o Zoe CLI, Jenkins pode interagir com sistemas de
mainframe tão facilmente
quanto com o ambiente em nuvem Vamos dar um exemplo.
Imagine que sua equipe esteja implantando uma atualização cobol Em vez de
criar, testar
e implantar manualmente o código, o Jenkins pode automatizar cada
etapa Os desenvolvedores confirmam o código, o
Jenkins o cria, executa testes automatizados
e o implanta
sem que ninguém precise
intervir manualmente Automatizando a configuração
e o provisionamento. seguir, vamos falar
sobre o responsavel, que é particularmente
útil para automatizar gerenciamento de
configurações e Em outras palavras, os responsáveis garantem que seus sistemas
estejam configurados exatamente da maneira que deveriam ser automaticamente. O que
o responsável faz Answerable
permite automatizar tarefas
repetitivas, como
configurar ambientes, configurar sistemas e implantar aplicativos Para mainframes, o responsable pode automatizar as alterações de
configuração, garantindo que seu ambiente
permaneça consistente Ele usa
arquivos Yamal simples chamados playbooks para definir tarefas de automação que facilitam a
gravação e a manutenção Por exemplo, digamos que você esteja implementando
um novo aplicativo em vários ambientes, cada um com configurações ligeiramente
diferentes Em vez de
configurar manualmente cada ambiente, você pode criar um manual
responsável que configure todos os
ambientes de forma idêntica, garantindo a consistência Zoe, preenchendo a lacuna
entre os mainframes
e Agora, vamos nos aprofundar na Zoe, que
foi projetada especificamente para
ajudar a modernizar ambientes de
mainframe Zoe é uma
estrutura de código aberto que fornece uma interface moderna para interagir com mainframes, facilitando a
integração com ferramentas como Jenkins, O que Zoe faz? O Zoe CLI permite que você interaja com mainframes usando ferramentas de linha de
comando conhecidas, facilitando a vida dos engenheiros de
DevOps que talvez não estejam familiarizados com linguagens de
mainframe APIs Zoe permitem que você integre mainframes com aplicativos
modernos e Ele atua como uma ponte
entre o velho mundo dos mainframes e o
novo mundo dos Devos Por exemplo, imagine que
sua equipe esteja trabalhando tanto em
aplicativos nativos da nuvem quanto em sistemas de mainframe Ao usar o Zoe CLI, seus engenheiros podem gerenciar fluxos de trabalho de
mainframe
usando os mesmos comandos usados em seus projetos de
nuvem, simplificando processos Código IBM Urban, orquestrando implementações de
mainframe. Em seguida, temos o IBM
Urban Code, especializado em automação de
implantação e orquestração de lançamentos É particularmente útil
quando você precisa gerenciar implantações
complexas que abrangem vários sistemas,
incluindo mainframes O que o código IBM Urban faz? código urbano automatiza os processos de
implantação, garantindo que o novo
código seja implantado na produção sem intervenção
manual Ele suporta ambientes distribuídos
e de mainframe, tornando-o ideal para infraestruturas
híbridas O código urbano também fornece recursos de
reversão. Portanto, se algo der errado, você poderá facilmente voltar ao
estado estável anterior Por exemplo, se você estiver
implantando uma atualização que afeta
seu sistema de mainframe e seus aplicativos
baseados em nuvem, código
urbano pode orquestrar toda
a implantação, garantindo que
tudo aconteça na ordem certa com
o
mínimo BMC Control M, automatizando o
agendamento e o monitoramento de tarefas. Por último, mas não menos importante, vamos falar sobre o BMC Control M, uma ferramenta que se destaca no agendamento de tarefas e
na automação do fluxo de trabalho Se seu ambiente de mainframe
executa muitos trabalhos em lotes, especialmente aqueles que são
essenciais para suas operações, controle M é um divisor O que o BMC Control M faz? O Control M automatiza
o agendamento e a execução de trabalhos em lotes
em seu mainframe Ele fornece monitoramento
em tempo real, para que você saiba
exatamente o que está acontecendo com cada trabalho e possa
resolver rapidamente quaisquer problemas que surjam. O Control M se integra ao ambiente de TI
moderno, permitindo que você gerencie
suas tarefas de mainframe
junto com suas tarefas de nuvem e sistemas
distribuídos Por exemplo, digamos que você gerencie um trabalho em lotes noturno que processa transações
financeiras Com o Control M, você pode programar esse trabalho para ser
executado automaticamente, monitorá-lo em tempo real e ser notificado se
algo der errado. Se um trabalho falhar, o Control
M pode
testá-lo automaticamente ou acionar um alerta,
garantindo o mínimo de tempo de inatividade Como essas ferramentas se encaixam
no cenário de DevOps e
automação Neste ponto, você pode
estar pensando: Ok, essas ferramentas parecem ótimas, mas como elas se encaixam?
Vamos detalhar isso. Jenkins
gerencia o pipeline do CICD, garantindo que o código seja criado, testado e
implantado O Ansible gerencia a configuração
do seu sistema, garantindo que cada ambiente
seja configurado ZoE fornece uma interface
moderna para conectar mainframes com o resto da sua cadeia de ferramentas
de DevOps código IBM Urban orquestra implementações
complexas, garantindo que elas
ocorram sem problemas em ambientes de mainframe
e distribuídos mainframe
e O PMC Control M automatiza o agendamento e o monitoramento
de trabalhos em lotes críticos Cada uma dessas ferramentas desempenha um papel
único, mas, juntas, elas formam uma estratégia abrangente de
automação para seu ambiente de mainframe As principais conclusões desta lição
incluem Jem kins, sua
ferramenta
preferida para CICD,
automatizando compilações, testes e
implantações para mainframe e implantações O Ansible ajuda no gerenciamento de
configurações, garantindo a consistência
em todos Zoe atua como uma ponte entre mainframes e ferramentas
modernas de DevOps, facilitando gerenciamento de sistemas legados
com código IBM Urban é ideal para gerenciar implementações complexas
em ambientes híbridos. BMC Control se destaca no agendamento de
trabalhos e no monitoramento em tempo
real, garantindo que seus trabalhos em lotes sejam
executados sem problemas Vamos fazer uma atividade de aprendizado. Escolha uma das ferramentas que
discutimos sobre Jenkins, Ansible Zoe, Urban
code Reflita sobre como a
ferramenta pode melhorar um processo manual atual
em sua organização. Por exemplo,
automatizar implantações ou gerenciar configurações ou agendar trabalhos. Compartilhe suas ideias
no fórum de discussão e explique por que você acha que essa ferramenta seria uma
boa opção para sua equipe. O que vem a seguir? Agora que você tem uma compreensão sólida
das ferramentas disponíveis, é hora de se aprofundar. Em nossa próxima lição,
exploraremos Jenkins e como configurá-lo para integração
e entrega
contínuas ou CICD em ambientes de mainframe
11. Aula 2: Jenkins para CI/CD em Mainframes: Lição dois, Jenkins para
CICD em mainframes. Bem-vindo à lição
dois do módulo três. Se você está se
sentindo um pouco
excluído de toda a revolução do
CICD, porque ela trabalhou
com mainframes, lição de
hoje mostrará como
você pode trazer
a mesma eficiência, velocidade e automação para
suas operações de mainframe Vamos nos concentrar no Jenkins,
a ferramenta mais usada para integração
contínua e entrega
contínua ou CICD e, especificamente, em
como ela pode ser configurada
para funcionar com
bases de código de mainframe, como Cobol
e para funcionar com
bases de código de mainframe, como Cobol Eu sei, mainframes e CICD podem parecer dois mundos
completamente diferentes, mas confie em mim, não são Ao final desta lição, você verá como o Jenkins pode simplificar seus fluxos de trabalho de
mainframe, assim como acontece com o ambiente nativo Como sempre,
incluirei muitos exemplos do mundo
real para
mostrar exatamente como isso funciona. Vamos mergulhar. Por que o CICD
é importante para mainframes Antes de entrarmos na configuração
técnica do Jenkins, vamos abordar rapidamente por que CICD é importante
para Tradicionalmente, o
desenvolvimento e
as operações do mainframe seguem
um
modelo em cascata , em que o código passa por longos estágios manuais de desenvolvimento, teste
e implantação Isso leva a ciclos de
lançamento mais longos, taxas de erro
mais altas e
muito trabalho manual. Com Jenkins e CICD, automação reduz o
risco de erro humano Lançamentos mais
rápidos significam entrega mais rápida de recursos e atualizações Você pode detectar bugs mais cedo por meio testes
automáticos logo
após a confirmação do código. Os sistemas de mainframe e
distribuídos podem ser gerenciados dentro
do mesmo pipeline, finalmente
quebrando esses silos Se você está implantando aplicativos
móveis ou integrando seu mainframe
com serviços em nuvem, CICD traz agilidade Primeiro passo, configurando o
Jenkins para mainframe CICD. Em primeiro lugar,
se você ainda não tem a configuração do Jenkins, é
relativamente simples Jenkins é de código aberto e pode ser instalado em
várias plataformas, incluindo Linux,
Windows e macOS Como estamos trabalhando em um ambiente de
mainframe, provavelmente
instalaremos o Jenkins em um servidor Linux ou Windows e configuraremos para interagir
com seus sistemas de mainframe Para instalar o Jenkins, baixe o Jenkins no site
oficial, que é Jenkins Siga o
guia de instalação da sua plataforma. Depois de instalado, você acessará Jenkins por meio de uma interface web em HTTP CenLaaS Local
Host Cullen 80 80 Por exemplo, digamos que sua empresa esteja
usando o Jenkins para aplicativos baseados em
nuvem
e agora você queira integrá-lo às
suas operações de mainframe Você instalaria o Jenkins em um servidor dedicado,
Linux ou Windows, e começaria a
configurá-lo para se comunicar com os sistemas de mainframe
usando plug-ins Agora que o Jenkins está instalado, vamos continuar
configurando-o para as especificações de mainframe Pronto para uso, o Jenkins não tem suporte integrado para
mainframe, mas existem alguns plug-ins
excelentes que possibilitam a integração Dois plug-ins principais que você
deseja instalar
são o plug-in Jenkins Pipeline Isso permite que você crie scripts de
pipeline para
automatizar seus fluxos de trabalho, desde a criação do código
até o teste e a implantação
dele e do plug-in Zoe CLI Esse plug-in permite que o Jenkins interaja com conjuntos de dados de
mainframe, trabalhos e muito mais usando É crucial para unir ferramentas
modernas de DevOps e ambientes de
mainframe Depois de instalar esses plug-ins, você configurará o script do
pipeline para criar e implantar
seu código de mainframe Para aplicativos cobal, isso
pode envolver a chamada de scripts da JCL ou da linguagem de controle de
tarefas ou envio de tarefas
de mainframe diretamente Você também pode configurar unidade e testes de
regressão para serem executados automaticamente após cada
confirmação. Vamos dar um exemplo. Imagine que você está trabalhando
com um aplicativo da Cobal que precisa ser implantado na
produção todo mês Em vez de fazer isso manualmente, enviar trabalhos, executar testes
e aguardar feedback, e aguardar feedback, você pode configurar o Jenkins
para automatizar O pipeline pode
incluir etapas para criar o código,
executar testes unitários, executar trabalhos em lotes
e, finalmente implantar o código, tudo
com o clique de um botão Etapa 2: criar e integrar bases de
código de mainframe com Aqui, automatizamos
o processo de construção. Agora, vamos falar sobre a criação de código de
mainframe no Jenkins. Assim como o Jenkins
automatiza as faturas de aplicativos Java ou Python, ele pode automatizar o processo de
criação para Cobol, PL one Você precisará configurar
seu pipeline Jenkins
para interagir com
seu sistema de compilação, que pode envolver a compilação programas
CBL ou o empacotamento
deles Aqui está um exemplo seria o
estágio de construção como seria o
estágio de construção em um script de
pipeline do Jenkins Aqui está o exemplo completo. Este exemplo usa o Zoe CLI
para carregar o código-fonte em
um conjunto de dados de mainframe
e, em seguida, envia
uma tarefa JCL para um conjunto de dados de mainframe
e, em seguida, envia uma tarefa JCL Em seguida, fazemos os testes e a integração
contínua. Depois que a compilação for automatizada, você deverá introduzir testes
automatizados
em seu pipeline. Isso pode envolver testes unitários, testando pequenos trechos de código para garantir que
funcionem conforme o esperado. Testes de integração, garantindo que os diferentes componentes de seus aplicativos de mainframe funcionem juntos, e testes de regressão, garantindo que novas alterações não tenham quebrado nada
no código existente Você pode configurar o
Jenkins para executar esse teste automaticamente sempre que um
novo código for confirmado, garantindo que os bugs
sejam detectados precocemente Por exemplo, digamos que
sua aplicação de cobal tenha muita lógica
crítica de negócios que não pode se dar ao luxo de ser quebrada Ao integrar
testes automatizados ao Jenkins, você pode detectar problemas antes que
eles cheguem Jenkins compilará
automaticamente o código, executará testes unitários e gerará relatórios de teste
para sua equipe revisar, tudo antes que alguém
revise o código manualmente Etapa três, implantando aplicativos de mainframe
com O estágio final em seu
pipeline de CICD é a implantação. É aqui que Jenkins
realmente brilha. Ele pode implantar automaticamente código de
mainframe em ambientes de produção
ou de preparação, reduzindo
drasticamente a quantidade
de trabalho manual envolvido Automatizando implantações de Cobol PLO
. Usando uma combinação de
Zoe CLI e JCL Scripts, Jenkins pode implantar seus aplicativos Cobol Você pode configurar o pipeline para enviar
trabalhos de mainframe que lidem com a implantação e até mesmo
configurar procedimentos de reversão
caso algo Aqui está um exemplo
de como você pode configurar um
estágio de implantação no Jenkins Verificações
e monitoramento pós-implantação. Depois que a implantação for concluída, Jenkins poderá ser configurado para
executar verificações pós-implantação Essas verificações podem incluir validação de que o
aplicativo está sendo executado conforme esperado ou até mesmo o acionamento de alertas de monitoramento se
algo der errado Por exemplo, uma instituição
financeira pode usar o Jenkins para implantar atualizações
mensais da CBL. Jenkins envia os trabalhos JCL
necessários para implantar o código na produção,
executa testes pós-implantação para garantir que tudo esteja funcionando e notifica a equipe se
houver algum problema Se uma falha for detectada, Jenkins pode até mesmo reverter
a implantação automaticamente As principais conclusões
desta lição incluem Jenkins é uma ferramenta poderosa para levar o CICD aos ambientes de
mainframe,
automatizando tudo
, automatizando tudo que o
Jenkins é uma ferramenta poderosa para
levar o CICD aos ambientes de
mainframe,
automatizando tudo
, desde compilações até testes e implantações. Você pode integrar o Jenkins
ao seu mainframe usando o Zoe CLI e
os plug-ins Jenkins,
permitindo que ele envie trabalhos, permitindo que ele envie trabalhos, gerencie conjuntos de dados e implante Testes automatizados, como testes unitários, integração ou de
regressão garantem que os bugs sejam detectados precocemente, melhorando a confiabilidade
de suas implantações As verificações e o
monitoramento pós-implantação ajudam a garantir que seus aplicativos de mainframe funcionem sem problemas após cada Vamos fazer uma atividade de aprendizado. Configure um pipeline
Jenkins simples que carrega um arquivo em um
conjunto de dados de mainframe usando o Zoe CLI. Tente configurar o
pipeline para
enviar automaticamente uma tarefa JCL que
compila um programa de cobalto Compartilhe sua experiência no fórum de discussão do
curso, incluindo quaisquer desafios ou descobertas que
você tenha encontrado O que vem a seguir? Agora
que você sabe como configurar
o Jenkins
para mainframes CICD, hora Na próxima lição,
abordaremos como usar o Sibyl para automatizar implantações de infraestrutura e aplicativos
12. Aula 3: Ansible para automação de mainframe: Lição três, ansibl para automação mainframe.
Bem vindo de volta. Na lição anterior,
exploramos como o Jenkins
pode revolucionar suas operações de mainframe
automatizando automatizando Agora, estamos
mergulhando em uma ferramenta que desempenha um papel crucial na automação da
infraestrutura. Símbolo. Se você já
desejou que a configuração e manutenção de
ambientes de mainframe
fossem tão simples quanto
na nuvem,
então o answerable é
a Hoje, exploraremos como usar
o responsable para automatizar implantações
de infraestrutura e aplicativos Também explicaremos
como configurar manuais
responsáveis para ambientes de
mainframe, tornando o
gerenciamento de sua infraestrutura mais fácil, rápido e Vamos começar
e não se preocupe. Vou guiá-lo
passo a passo com alguns exemplos do mundo real
para manter as coisas práticas. Por que responder é um divisor de águas na automação de
mainframe Ao ouvir a
palavra automação, você pode pensar imediatamente em pipelines de implantação ou testes Mas e a
infraestrutura em si? Se você estiver
configurando ambientes manualmente, gerenciando aplicativos ou lidando com
tarefas repetitivas do sistema em seu mainframe, provavelmente
está
perdendo um tempo precioso e deixando espaço
para erros humanos O Ansible pode mudar tudo isso. Veja por que o answerable é uma ferramenta poderosa para automação de
mainframe É sem agentes,
o que significa que você não precisa instalar software em
todas as máquinas que gerencia. Isso é especialmente útil em
ambientes complexos de mainframe. Ele usa
arquivos Yamal simples chamados playbooks, que são fáceis de
ler e manter Responsável é declarativo. Você descreve o estado desejado
de sua infraestrutura ou aplicativos e o responsável
descobre como chegar lá Ele pode automatizar tudo, desde o provisionamento da infraestrutura
até as
implantações de aplicativos e a configuração
do sistema, tornando-o uma ferramenta perfeita
para Vamos dar um exemplo. Imagine
que você é responsável por gerenciar a infraestrutura um mainframe que executa aplicativos
bancários essenciais Sempre que
lançamos uma atualização, você precisa configurar manualmente
vários ambientes. Esse processo pode levar horas e qualquer erro pode causar
atrasos ou erros Ao escrever um
manual responsável, você pode automatizar toda
a configuração, garantindo que cada
ambiente seja configurado corretamente todas as vezes
com apenas Primeiro passo, configurar o responsável
pela automação do mainframe. Instalando o responsable.
Em primeiro lugar, você precisará
instalar o answerable Como o responsável não é um agente, você só precisa
instalá-lo no nó de controle, que pode ser uma máquina Linux
ou macOS que gerenciará seu Depois de instalado, o
nó de controle se comunica com seu mainframe via SSH ou
outras Para instalar o answerable, execute o comando a seguir
em seu nó de controle Depois de instalado, você pode começar a
criar playbooks que definem como gerenciar e configurar sua infraestrutura de mainframe Um exemplo. Digamos que
você acabou de configurar um novo
servidor de mainframe e precisa
configurá-lo para o aplicativo bancário da sua
organização Em vez de
se conectar manualmente
ao servidor e executar scripts, você instala o answerable
em um nó de controle, escreve um manual e o usa para configurar o
servidor em minutos Conectando o responsável
ao mainframe. Agora que o answerable
está instalado, a próxima etapa é
conectá-lo ao seu mainframe Ansib gerencia sistemas SSH e, para
ambientes de mainframe, você pode usar o Zoe CLI, via
SSH e, para
ambientes de mainframe,
você pode usar o Zoe CLI,
que abordaremos posteriormente para
facilitar a comunicação entre Veja como você
configuraria o acesso SSH ao seu mainframe
a partir do seu nó de controle
responsável Primeiro, você gera uma
chave SSH no seu nó de controle. Em seguida, você copia a chave pública
para o seu servidor de mainframe. Finalmente, você testa
a conexão. Estabelece a base para que os responsáveis gerenciem e
configurem seu sistema de mainframe Etapa 2: automatizar a infraestrutura de mainframe
com manuais responsáveis Agora, vamos para a parte divertida. Escrevendo manuais. Os playbooks são uma forma responsável de definir
tarefas e configurações Cada manual é escrito com amor, tornando-o legível por humanos
e fácil de manter Vamos escrever um manual básico. Há um exemplo de um
manual simples que configura um ambiente de mainframe criando
conjuntos de dados e
definindo conjuntos Este manual faz duas coisas. Ele cria um conjunto de dados
sequencial em seu mainframe para armazenar o código-fonte de
cobal Em seguida, ele atribui
as permissões apropriadas a esse conjunto de dados. Executando o manual.
Para executar o manual, basta usar o comando a
seguir Ansibl então executará
a tarefa no manual, garantindo que seu ambiente de
mainframe seja configurado de acordo com Por exemplo,
digamos que você esteja preparando um ambiente para um
novo aplicativo cobol que está prestes a ser lançado Em vez de criar
conjuntos de dados manualmente e atribuir
permissões, você pode automatizar todo o
processo com um manual, garantindo consistência e A terceira etapa, automatizando as implantações de aplicativos de mainframe Responsável não é apenas
para infraestrutura. Ele também pode lidar com implantações de
aplicativos. Isso significa que você pode
automatizar o processo de
implantação de aplicativos de mainframe,
como Cobol ou PL one, seja movendo código para produção ou Automatizando a
implantação de aplicativos com o Responsable. Aqui está um exemplo de um manual responsável que
implanta um Este manual faz duas coisas. Primeiro, ele carrega o código das lojas
Cobble em um conjunto
de dados no Em seguida, ele envia um trabalho JCL para
compilar e executar o programa. Automatizando reversões e atualizações
. O CBL também pode automatizar reversões se algo der errado
durante a implantação Ao adicionar condições
aos seus playbooks, você pode especificar procedimentos de
reversão ou mecanismos de tratamento de erros, garantindo que suas implantações
sejam Aqui está um exemplo.
Imagine que você está implantando uma atualização cobal em
seu aplicativo bancário, mas durante a implantação,
algo dá errado AnswerBL detecta a falha, aciona
automaticamente
o processo de reversão e garante que o sistema seja
restaurado ao estado anterior, tudo sem intervenção O AnswerBL detecta a falha, aciona
automaticamente
o processo de reversão
e garante que o sistema seja
restaurado ao estado anterior, tudo sem intervenção manual. As principais conclusões
desta lição incluem. Answerable é uma
ferramenta poderosa para automatizar infraestrutura
e implantações
de infraestrutura
e
aplicativos Os playbooks permitem que você defina as configurações desejadas e estados do
aplicativo em
um formato Yamal simples Responsável é a lista de agentes, o que significa que você não
precisa instalar nenhum software nos sistemas de mainframe
gerenciados Você pode automatizar tudo, desde a
configuração de conjuntos de dados até a
implantação de aplicativos, garantindo a consistência e
reduzindo o erro Vamos fazer uma atividade de aprendizado. Escreva um
manual simples e responsável que crie um conjunto de dados em seu mainframe
e carregue um arquivo nele. Execute o manual a partir do seu nó de controle
responsável e verifique se o conjunto de dados e o arquivo foram Compartilhe sua experiência e quaisquer desafios que você
encontrou
no fórum de discussão de força. O que vem a seguir? Na próxima etapa, exploraremos o ZoeI, uma ferramenta
de código aberto essencial para integrar mainframes com fluxos de trabalho
modernos Em nossa próxima lição, veremos como o Zoe CLI e as APIs do
Zoe
podem automatizar fluxos de trabalho e levar
os princípios podem automatizar fluxos de trabalho e levar veremos como o Zoe CLI e as APIs do
Zoe
podem automatizar fluxos de trabalho e levar
os princípios de DevOps aos ambientes de mainframe.
13. Aula 4: Zowe para integração de DevOps de Mainframe: Lição quatro, Zoe para integração de DevOps em
mainframe. Bem vindo de volta. Se você está acompanhando nossa jornada pela automação de mainframes, provavelmente está começando a ver o potencial empolgante de
integrar
os princípios de DevOps mundo
dos Até agora, exploramos o
Jenkins e o Ansible. Mas hoje, estamos nos concentrando em uma ferramenta essencial que
preenche a lacuna
entre os sistemas de mainframe legados e as práticas modernas de DevOps Zoe. Nesta lição, vamos nos aprofundar estrutura de código aberto da
ZoeI
que está ajudando a modernizar mainframes,
tornando-os mais acessíveis e fáceis de
integrar à cadeia de ferramentas de DevOps Ao final desta lição,
você entenderá o papel que a Zoe desempenha na automação de
fluxos de trabalho e como
usar a CLI e
as APIs da Zoe para usar a CLI e
as APIs da Zoe desempenha na automação de
fluxos de trabalho e como
usar a CLI e
as APIs da Zoe para simplificar as operações do mainframe. Vamos começar, não se preocupe. Vamos
detalhá-lo passo a passo. Você será uma Zoe P em pouco tempo. O que é Zoe e por que isso
importa? Vamos começar com o
básico. O que é Zoe Zoe é uma estrutura de código aberto projetada especificamente para
modernizar mainframes Isso ajuda a preencher a lacuna entre o ecossistema tradicional de
mainframe e as ferramentas e práticas modernas, especialmente no mundo do DevOps Essencialmente, o Zoe oferece aos desenvolvedores e administradores de
sistemas acesso
mais fácil
ao mainframe usando ferramentas e interfaces com as quais eles
já estão familiarizados Aqui está o que Zoe faz por você. Primeiro,
interface de linha de comando ou CLI. O Zoe CLI permite que você interaja com
os recursos do
mainframe com comandos simples de linha de comando Você pode gerenciar
conjuntos de dados, enviar trabalhos e trabalhar com arquivos da
mesma forma que faria em um sistema baseado em Linux ou em
nuvem Em segundo lugar, as APIs. Zoee fornece APIs REST para acessar
aplicativos e serviços de mainframe, facilitando a integração de
mainframes em um fluxo de trabalho mainframes em Em terceiro lugar, a interface de usuário moderna. Zoe também inclui uma interface baseada na
web, que oferece uma forma gráfica mais
intuitiva interagir com seu sistema de
mainframe Vamos dar um exemplo. Imagine que você é um
engenheiro da Dabo que precisa interagir com sistemas e mainframes
baseados em nuvem No passado, talvez você precisasse
aprender e manipular diferentes
ferramentas e idiomas Com o Zoe, agora você pode usar ferramentas
conhecidas, como comandos de
CLI e APIs para gerenciar seus
sistemas de mainframe com a mesma facilidade com que
gerencia Chega de alternar entre ecossistemas
completamente diferentes Zoe simplifica tudo. Primeiro passo, instalando
e configurando o Zoe CLI. Agora que sabemos o que é Zoe, vamos entrar na CLI da Zoe, que é a principal
forma de interagirmos com mainframes em Instalando o Zoe CLI. Você pode instalar o Zoe CLI em qualquer sistema que não suporte Js Veja como
colocá-lo em funcionamento. Primeiro, você instala o Node dot JS em seu nó de controle,
se ainda não o tiver. Em seguida, execute o
comando a seguir para instalar o Zoe CLI. Depois de instalado, você
precisará configurar o Zoe CLI para se conectar ao
seu sistema de mainframe Configurando o Zoe CLI. Para configurar o Zoe CLI, você precisa configurar seu perfil de conexão de
mainframe Isso mostra à Zoe como
se conectar ao seu mainframe, incluindo credenciais
e Aqui está um exemplo de
como configurá-lo. Esse comando cria um perfil de painel de
mainframe com nome de perfil que inclui suas informações de
conexão, facilitando a execução futuros comandos do Zoe sem Vamos dar um exemplo. Digamos que você esteja gerenciando um grande ambiente de
mainframe para um profissional de saúde Depois que o Zoe CLI estiver instalado
e configurado, você poderá usar comandos simples
para interagir com conjuntos de dados, enviar trabalhos e
gerenciar arquivos do
seu modo de controle
sem precisar
fazer login para fazer login no mainframe manualmente Essa configuração acelera seus fluxos de trabalho e facilita muito a
automação Etapa dois, usando o Zoe CLI para
automatizar os fluxos de trabalho do mainframe. Depois que o Zoe SLI estiver configurado, hora de começar a
usá-lo para automatizar fluxos É aqui que a mágica acontece. ZoEE permite que você gerencie
conjuntos de dados, envie trabalhos e interaja com
seu sistema de mainframe usando comandos com os quais você
provavelmente já está familiarizado Gerenciando conjuntos de dados com o Zoe CLI. O Zoe CLI torna os conjuntos de dados de mainframe tão simples quanto gerenciar arquivos
em Há um exemplo de
como listar todos os conjuntos de dados. Você também pode fazer upload de
arquivos para conjuntos de dados, facilitando a transferência código ou dados para seu mainframe Enviando vagas com Zoe ALI. Automatizar o envio de trabalhos é um divisor de águas para
o fluxo de trabalho do DevOps Com o Zoe CLI, você pode enviar trabalhos
JCL a partir do seu
código de comando e acompanhar Você pode até mesmo verificar o
status de um trabalho e recuperar sua saída emitindo um comando
Zoe jobs view Por exemplo, digamos que
sua equipe precise
executar um trabalho em lotes todas as noites para processar
transações financeiras. Em vez de fazer login manualmente no mainframe e
enviar o trabalho, você pode automatizar todo o
processo usando o O trabalho pode ser agendado
e enviado a partir de um pipeline do Jenkins, tornando o processo simples
e livre de erros Etapa três, integrando o Zoe
às ferramentas de DevOps usando APIs. Embora o Zoe CLI seja ótimo para interações de linha de
comando, as APIs
do Zoe abrem ainda
mais possibilidades permitir que outras ferramentas do DevOp
interajam programaticamente com seu interajam Usando as APIs do Zoe para automação. APIs West da Zoe permitem que
você integre operações de
mainframe em
seus pipelines de DevOps,
esteja você usando Jenkins, esteja você usando Jenkins As APIs West da Zoe permitem que
você integre operações de
mainframe em
seus pipelines de DevOps,
esteja você usando Jenkins, ansibl ou outra ferramenta. Por exemplo, você pode usar a API da Zoe para automatizar a seguinte tarefa,
recuperando informações
do conjunto de dados, enviando trabalhos em lotes,
consultando status de trabalhos e recuperando resultados de trabalhos Aqui está um exemplo de como chamar
uma API Zoe para enviar um
trabalho a partir de um banco do DevOp. Integração com Jenkins e sb. Como as APIs do Zoe são repousantes, você pode
integrá-las facilmente aos pipelines do Jenkins e aos manuais responsáveis para ampliar seus fluxos de
trabalho de automação Por exemplo, no Jenkins, você pode criar um estágio
em seu pipeline que envia um trabalho para o
mainframe usando a API Zoe Vamos dar um exemplo.
Em um ambiente de DevOps, sua equipe pode já estar usando o Jenkins para integração contínua Ao integrar as APIs do Zoe
ao seu pipeline do Jenkins, você pode automatizar todo o
processo, desde a confirmação do código até a implantação no mainframe e a execução do teste pós-implantação você pode automatizar todo o
processo, desde a confirmação do código
até a implantação no mainframe e a execução do teste pós-implantação. Dessa forma, você insere o
mainframe no pipeline
moderno do CICD, quebrando os silos
entre os sistemas antigos e As principais conclusões
desta lição incluem Zoe,
uma
estrutura de código aberto que preenche a lacuna entre mainframes
e ferramentas modernas Zoe CLI permite que você interaja com
os recursos do
mainframe usando comandos de linha de comando
familiares, simplificando o gerenciamento de conjuntos de dados e o envio de trabalhos. APIs Zoe permitem a integração
com outras ferramentas de DevOps, como Jenkins e Ansible, trazendo
mainframes para fluxos de trabalho de automação As APIs Zoe permitem a integração
com outras ferramentas de DevOps, como
Jenkins e Ansible, trazendo
mainframes para fluxos de trabalho de automação modernos. Zoe torna a
automação de mainframe acessível, derrubando
barreiras tradicionais e integrando sistemas
legados ao ecossistema mais amplo de DevOps Vamos fazer uma atividade de aprendizado. Instale o Zoe SLI em
seu nó de controle. Configure um
perfil de mainframe e use Zoe Sale para carregar um arquivo em um conjunto de dados
e enviar um Compartilhe sua experiência e quaisquer desafios que você
encontrou
no fórum de discussão do curso. O que vem a seguir? Na próxima etapa, vamos nos
aprofundar nos pipelines do CICD
para Em nosso próximo módulo, você aprenderá a projetar um pipeline CICD especificamente adaptado para o
ambiente de mainframe e exploraremos
os principais componentes que tornam o
pipeline bem-sucedido
14. Aula 1: como criar um pipeline de CI/CD para Mainframes: Módulo quatro, construindo e gerenciando pipelines CICD
para mainframes Neste módulo, você
aprenderá a projetar, criar e gerenciar pipelines CICD especificamente personalizados para ambientes de
mainframe As diferenças entre o CICD
para sistemas distribuídos e mainframes e como superar os desafios exclusivos enfrentados
na automação de mainframes Ao final deste módulo, você poderá integrar o CICD
às suas
operações de mainframe para ciclos de desenvolvimento
e implantação
mais rápidos e confiáveis Primeira lição, projetando um
pipeline CICD para mainframes. Bem-vindo ao Módulo quatro. Se você está
acompanhando nossos módulos anteriores, aprendeu a usar
várias
ferramentas de automação, como Jenkins,
Ansible e Zoe, para modernizar Agora é hora de mergulhar
em algo que pode transformar todo o seu processo de
desenvolvimento. Pipelines CICD para mainframes. Na lição de hoje, vamos nos
concentrar em como projetar um pipeline CICD que funcione
especificamente para mainframes Você provavelmente já ouviu falar
muito sobre o CICD no contexto de aplicativos
nativos em nuvem, mas os mainframes têm seus
próprios desafios Não se preocupe,
detalharemos os principais componentes e mostraremos como criar um
pipeline que garanta velocidade, confiabilidade e eficiência
para implantações de mainframe Ao final desta lição, você saberá como criar um pipeline de CICD que
integre controle de origem, testes
automatizados e implantação
contínua, tudo sob medida para ambientes de
mainframe Vamos começar. Por que CICD para mainframes. Você pode estar se perguntando
por que os mainframes, esses 30 sistemas de longa duração precisam do mesmo equipamento
CICD que os aplicativos em nuvem A verdade é que os mainframes
geralmente abrigam aplicativos de missão
crítica, mas seus ciclos tradicionais de
desenvolvimento são lentos e manuais Insira o CICD. CICD, abreviação de integração
contínua e entrega contínua,
é uma prática em que as alterações de
código são automaticamente
testadas e implantadas na produção em incrementos menores e
mais frequentes Para mainframes, a
implementação do CICD significa ciclos de
entrega mais rápidos, mesmo para CBL e
PL com base em um código Segundo, reduza o risco devido aos
testes e à implantação automatizados. Três, simplifique os fluxos de trabalho que eliminam as transferências manuais entre
as equipes desenvolvimento, testes Vamos dar um exemplo. Imagine que você está trabalhando em um aplicativo financeiro que lida com milhões de transações
diárias. Sem o CICD, o lançamento de
atualizações é lento e requer várias aprovações testes manuais Mas com o CICD, você pode automatizar os
testes e a implantação, garantindo que as mudanças
sejam entregues mais rapidamente e com maior confiança,
sem interromper Componentes-chave de um
pipeline CICD para mainframes. Vamos detalhar os
principais componentes de um pipeline CICD para mainframes Embora os
princípios básicos sejam os
mesmos dos sistemas distribuídos, há algumas diferenças
importantes exploraremos à medida que avançarmos. Primeiro, o controle da fonte. O pipeline começa com o controle de
origem, onde todo o seu código é armazenado,
rastreado e gerenciado. Nos fluxos de trabalho modernos do CICD, Git é a
ferramenta mais popular para controle de origem, mas também existem outros sistemas de controle de
versão usados em mainframes A chave é ter um sistema que os desenvolvedores
possam colaborar, ramificar e mesclar
alterações de código Em um contexto de mainframe, o sistema de controle de origem armazenará código
escrito em cobble,
PLI, JCL e Integrar isso com as ferramentas modernas da
Devo é crucial. Em segundo lugar, testes automatizados. Depois que o código é confirmado, a próxima etapa é o teste
automatizado. O teste é essencial
para detectar erros precocemente e
com mainframes Isso é especialmente importante
porque você geralmente lida com bases de código legadas que precisam permanecer teste automatizado para
mainframes pode incluir um teste de unidade para verificar funções individuais
ou partes do código Dois,
testes de regressão para garantir que novo código não quebre a funcionalidade
existente, três, teste de
integração para verificar o novo código se integra
bem com outros sistemas, seja no
mainframe ou na nuvem Em terceiro lugar, integração contínua. integração contínua
ou CI garante que,
sempre que um desenvolvedor envia
código para o repositório, ele seja
criado e testado automaticamente Para mainframes, a CI normalmente
envolve a compilação de código Cobol ou PLO e a execução testes
automatizados por meio de
uma ferramenta como Jenkins A principal diferença aqui é que a CI do mainframe
envolve o envio trabalhos
JCL para executar os
processos de construção e teste no mainframe,
enquanto os sistemas distribuídos podem usar A quarta é a implantação contínua. O estágio final é a implantação
contínua ou CD, que o pipeline implanta
automaticamente compilações
bem-sucedidas em ambientes de produção
ou de Para mainframes, a implantação
pode envolver a execução trabalhos
JCL que lidam com a
implantação de código compilado, a
atualização de conjuntos de dados ou
a execução de trabalhos em lote É importante saber que aprovações
manuais
ainda podem ser necessárias para aplicativos essenciais de
mainframe, mas o CICD pode automatizar grande parte
do processo de implantação,
reduzindo erros e
acelerando a reduzindo erros e Vamos dar um exemplo
do mundo real. Digamos que sua equipe esteja
trabalhando em uma atualização de um aplicativo cobal que executa o sistema de folha de pagamento de
um banco Usando um pipeline do CICD, o desenvolvedor compromete
suas alterações para doar Jenkins executa testes unitários
e de regressão
e, se tudo for aprovado, as alterações
serão automaticamente implantadas um ambiente
de teste
para testes adicionais Todo o processo acontece em minutos, em vez das horas
ou dias que costumava levar. Diferenças entre o CICD para sistemas
distribuídos
e mainframes Embora a estrutura geral
de um pipeline CICD seja semelhante tanto para
sistemas distribuídos quanto para mainframes, há
diferenças importantes a serem consideradas
ao projetar um
pipeline para Primeiro, crie processos. Em sistemas distribuídos, o processo de compilação geralmente
envolve a compilação código em tempo real
em um servidor de compilação Para mainframes,
o processo de construção normalmente envolve o envio trabalhos
JCL que compilam o código cobol ou PL one Você precisará integrar
ferramentas como os plug-ins Zoe CLI ou Jenkins para enviar
e rastrear esses Dois, código legado. Os mainframes geralmente executam
bases de código antigas, e a introdução do CICD pode ser um desafio quando você está
lidando com sistemas legados É fundamental garantir que novos processos automatizados
não quebrem o código existente. teste de regressão automatizado
é fundamental para garantir que novas alterações não afetem a estabilidade do aplicativo
antigo Três, ambientes de implantação. Em sistemas distribuídos, implantação pode
significar enviar o código para um ambiente em contêineres ou uma plataforma em nuvem,
como AWS Em mainframes, a implantação
geralmente significa atualizar conjuntos de dados, executar trabalhos em lotes
ou enviar scripts
JCL para acionar vários processos Ferramentas de implantação automatizada,
como o IBM Urban code ou BMC Control M, podem ajudar a gerenciar esses processos complexos de
implantação de mainframe Projetando seu pipeline
CICD de mainframe. Agora que você entende os
componentes e as diferenças, vamos ver
como você pode projetar um pipeline CICD para seu ambiente de
mainframe Aqui está um exemplo, fluxo de
tubulação. Primeiro, o controle da fonte. Os desenvolvedores enviam o código Cobalt ou
PLO para um repositório Git. Em seguida, processo de construção. Jenkins calcula uma tarefa da JCL para compilar o código
no mainframe Em seguida, vem o teste automatizado. Os testes unitários são executados para validar componentes
individuais, os testes de
regressão são executados para
garantir que a estabilidade do código
legado e os testes de
integração verifiquem a compatibilidade
com outros Em seguida, da implantação à preparação. Se todos os testes forem aprovados, Jenkins implantará o código um ambiente de teste no
mainframe, fazendo testes adicionais E depois da aprovação manual, que é opcional para aplicativos
essenciais, uma etapa de aprovação manual pode ser necessária antes da
implantação na produção Por fim, a implantação da produção. O código testado é implantado
automaticamente na
produção por meio de JCL Jobs ou outros processos de implantação de mainframe As principais conclusões
desta lição incluem que o CICD para
mainframes integra práticas
modernas de desenvolvimento, como integração
contínua e automatizados Os principais componentes de um
pipeline de CICD são controle de origem, testes
automatizados, integração
contínua e implantação contínua Os
desafios específicos do mainframe incluem lidar com tarefas de JCL para compilações, trabalhar com bases de código legadas
e gerenciar ambientes de implantação complexos Ferramentas como Jenkins, Zoe
e IBM Urban code ajudam a automatizar esses
processos Vamos fazer uma atividade de aprendizado. Identifique um
aplicativo de mainframe em sua organização que possa se beneficiar de um pipeline de CICD. Descreva as etapas necessárias
para
automatizar , por exemplo, criar, testar implantações e criar um fluxograma básico do design do
seu pipeline Compartilhe o design do seu pipeline
no fórum de discussão do curso
e explique por que você escolheu essa abordagem. O que vem a seguir? A seguir, vamos nos aprofundar no
controle de versão do código de mainframe Na próxima lição,
exploraremos como configurar o Git ou outro sistema de
controle de versão para código de
mainframe e
as melhores práticas para ramificar, mesclar
15. Aula 2: como configurar o controle de versão para código de mainframe: Lição dois. Configurando o controle de
reversão
para o código do mainframe Bem-vindo de volta ao Módulo quatro. Agora que você
aprendeu a projetar um pipeline CICD para mainframes, é hora de se concentrar
na base de
qualquer pipeline CICD,
o controle de qualquer pipeline CICD,
o controle É aqui que
começa a jornada do seu código. Veremos como gerenciar o código de
mainframe usando ferramentas como o Git e discutiremos as
melhores práticas para ramificar, mesclar Embora o controle de versão possa parecer simples para sistemas
distribuídos, gerenciar o código de mainframe em um ambiente DevOps traz seus próprios desafios Ao final desta lição, você terá as habilidades
para gerenciar com eficiência o código do
mainframe usando práticas modernas de controle de
versão Vamos mergulhar. Por que o controle de
versão é essencial para o DevOps de
mainframe controle de versão é a espinha dorsal do desenvolvimento colaborativo Ele permite que vários desenvolvedores trabalhem em diferentes partes
do código simultaneamente, sem pisar nos pés uns dos outros Mas não se
trata apenas de colaboração. Trata-se de monitorar as mudanças, garantir a responsabilidade
e facilitar as reversões
se as coisas derem Para mainframes, o controle de versão
é fundamental porque, primeiro, as bases de código
legadas geralmente contêm centenas de
milhares de linhas de código cobal, PL one ou JCL que
precisam ser Segundo,
os aplicativos de mainframe geralmente são essenciais,
portanto, erros ou bugs podem
ter consequências graves Três, com o controle de versão,
você pode acompanhar as alterações, ver quem fez quais alterações
e quando, além de
reverter facilmente para
as versões anteriores, se necessário Vamos dar um exemplo.
Imagine que você está gerenciando um grande
sistema de folha de pagamento escrito em COBOL Sem
controle de versão, é difícil
rastrear as alterações feitas por
vários desenvolvedores. Um desenvolvedor pode
introduzir um bug
na lógica de cálculo de impostos, enquanto outro adiciona um novo
recurso para pagamento de horas extras Com o controle de versão, você pode revisar o histórico de
cada alteração, isolar problemas e
até mesmo desfazer alterações sem precisar juntar
o código manualmente Escolhendo o sistema de
controle de versão certo para mainframes. Hum, embora existam vários
sistemas de controle de versão disponíveis, ele é de longe o mais popular
nas práticas modernas de DevOps Ele é distribuído, o que
significa que cada desenvolvedor tem uma cópia completa
do histórico do projeto,
facilitando a colaboração. Além disso, ele se integra perfeitamente ferramentas do CICD Dito isso, existem
alternativas como IBM Rational Team Concert, RTC
ou Endeavor, que são frequentemente usadas em Mas seu amplo
uso, flexibilidade e integração com ferramentas
modernas de DevOps tornam uma escolha atraente Configurando o Git para código de
mainframe. Veja como você pode configurar Git para gerenciar o código do mainframe Primeiro, instale o Gill. Git está disponível
para todas as plataformas, incluindo Windows,
macOS e Linux Segundo, inicialize um repositório
Git. Crie um novo repositório Git para começar a reverter seu código de mainframe. Em seguida, clone um repositório
existente. Se sua organização
já usa o Git, você pode clonar um clone
existente do Git Organizando o
código do mainframe no GIP. Você pode se perguntar:
como faço para organizar um código
Cobb JCL e PL
em um repositório Git É semelhante à forma como você
organizaria o código em
outras linguagens. Você cria um diretório chamado SRCLacoblas armazena
o código-fonte Cobal Sources
PL armazena o código-fonte PL one e a fonte JCL principal
para armazenar scripts JCL Organizar seu
código por idioma ou função ajuda a manter as coisas
organizadas e fáceis de navegar Essas são práticas para ramificar, mesclar e confirmar o código do mainframe. Uma das melhores maneiras de usar o GIP ou qualquer sistema de controle de versão de
forma eficaz requer o conhecimento algumas das melhores práticas para gerenciar ramificações, mesclagens e Os mainframes geralmente têm bases de código
grandes e complexas, por isso é importante ser
metódico ao Estratégias de ramificação
para código de mainframe. Uma das maiores
vantagens do Git é a capacidade de
usar ramificações As ramificações permitem que você trabalhe
em recursos ou correções isoladamente sem afetar
a base de código principal até que esteja pronto para
mesclar suas alterações Ramificação de recursos,
crie uma nova ramificação
para cada recurso ou correção de bug Isso permite que você trabalhe
independentemente da ramificação principal, geralmente chamada de master ou main, até que o recurso
esteja pronto para ser lançado. Libere a ramificação. Depois que um
recurso é concluído e testado, ele pode ser mesclado em
uma ramificação lançada Isso garante que somente código totalmente
testado e estável entre em produção.
Vamos dar um exemplo. Você está trabalhando em um novo recurso de cálculo de
impostos para um aplicativo cobol Em vez de fazer alterações
diretamente na ramificação principal, você cria uma nova ramificação de recursos. Isso permite que você experimente e
teste as alterações
com segurança sem afetar
o resto do sistema. Quando o recurso estiver pronto, você o mescla novamente na ramificação
principal após
passar no teste automatizado Mesclando o código do mainframe. Depois de trabalhar em uma ramificação, você precisará
mesclar suas alterações novamente na base de código principal É aqui que as coisas
podem ficar complicadas. Como as bases de código de mainframe geralmente
são grandes e complexas, fusões podem gerar conflitos se vários desenvolvedores estiverem trabalhando no mesmo arquivo
ou região de Para minimizar o conflito,
comprometa-se com frequência. Pequenos commits frequentes
facilitam o rastreamento de mudanças
e a resolução de conflitos Base R antes da fusão. Isso atualiza sua
filial com a ramificação principal
antes da fusão, reduzindo a chance de conflito Comprometendo as melhores práticas. A chave para um controle de
versão eficaz é uma boa higiene de comprometimento. Aqui estão algumas dicas para tornar
seus commits significativos e fáceis de gerenciar.
Comprometa-se com frequência. Não espere até
terminar um recurso inteiro. Comprometa pequenos trechos
de código com frequência. Isso facilita o rastreamento de
alterações e a identificação de bugs. Use mensagens descritivas de confirmação. Uma mensagem de confirmação como
Tix Bug não ajuda. Em vez disso, use
mensagens detalhadas, como lógica de cálculo de impostos
atualizada para contabilizar as alterações nos impostos
estaduais. Evite enviar
arquivos grandes desnecessariamente. Os ambientes de mainframe
geralmente usam grandes conjuntos de dados. Evitar a confirmação de conjuntos de dados ou arquivos
binários pode tornar seu repositório mais
lento Como o controle de versão se
encaixa em seu pipeline de CICD. O controle de versão
desempenha um papel crucial em seu pipeline de CICD Veja como começar, a integração do
controle de origem. Sempre que um desenvolvedor
envia um código para obter, ele aciona o Para mainframes, isso pode significar iniciar trabalhos da JCL para
compilar cobalto compilar cobalto Dois, gerenciamento da filial. Os recursos são desenvolvidos em ramificações de
recursos e testados em ramificações intermediárias antes de serem incorporados ao ramo de
produção principal Três, testes automatizados. Quando o código é mesclado
na ramificação principal, o Jenkins pode
acionar automaticamente testes unitários e de regressão para
garantir que Vamos dar um exemplo. Sua equipe gerencia um aplicativo
bancário baseado em CBL Toda vez que um desenvolvedor
envia um código para obter, Jenkins obtém as alterações mais recentes
e aciona uma série
de testes automatizados, incluindo teste unitário para o código CBL e teste de integração
para trabalhos em lote
da JCL Se algum teste falhar, Jenkins notifica o
desenvolvedor,
permitindo que ele corrija o problema antes que
ele chegue principais conclusões desta lição
incluem que o controle de versão é essencial para rastrear alterações, colaborar com
outros desenvolvedores e garantir a estabilidade do código em Use o Git para gerenciar o
código do mainframe e organizar os códigos cobal, JCL e PL one de
forma eficaz em seu repositório As melhores práticas da Palo
para ramificação, fusão e comprometimento para evitar
conflitos e garantir a integração perfeita das alterações de código O controle de versão
se integra perfeitamente ao seu pipeline de CICD, permitindo que você
automatize os testes e a implantação sempre Vamos fazer uma atividade de aprendizado. Crie um novo repositório Git
ou envie um existente
para seu código de mainframe Pratique configurar filiais, fazer confirmações e
mesclar alterações Compartilhe sua experiência
com gerenciamento de filiais e resolução de conflitos
no fórum de discussão do curso. O que vem a seguir? Próxima etapa. Na próxima lição,
exploraremos como integrar testes
automatizados em seus pipelines do CICD para garantir a qualidade
do código e detectar bugs no início do processo de
desenvolvimento Analisaremos
as melhores práticas para incorporar e integração de
unidades testes de
regressão e integração de
unidades em ambientes de
mainframe
16. Aula 3: como integrar testes automatizados em pipelines de CI/CD: Lição três, integrando testes
automatizados aos pipelines do CICD. Bem-vindo de volta ao Módulo quatro. Até agora, abordamos o
projeto de um pipeline CICD para mainframes e a configuração do controle de versão para gerenciar
seu código de mainframe Agora é hora de abordar
um aspecto crucial de qualquer pipeline moderno, o teste
automatizado. Na lição de hoje, vamos nos
aprofundar em como
integrar testes automatizados em cada estágio do seu pipeline de
CICD Os testes garantem que
seu código seja estável, confiável e livre de bugs antes mesmo de
chegar à produção. Exploraremos como incorporar diferentes tipos de
teste, unidade, regressão integração para que
suas bases de código de cobalto, JCL
e PL One possam lidar com mudanças
contínuas Ao final desta lição, você poderá criar uma estratégia de
teste que garanta a qualidade
do código e se integre
perfeitamente ao seu pipeline de CICD. Vamos começar.
Por que os testes automatizados são cruciais para mainframes teste automatizado
é a rede de segurança que detecta erros antes que
eles cheguem à produção Para mainframes, que geralmente lidam com cargas de trabalho de missão
crítica, erros podem levar a um dispendioso
tempo de inatividade ou perda teste automatizado
minimiza esse risco ao verificar
continuamente
a integridade do seu código
sempre que ele é alterado Veja por que os testes automatizados
são essenciais para mainframes. Um, consistência. Os testes automatizados são executados
sempre da mesma forma , reduzindo os erros
humanos. Segundo, o teste de velocidade
pode ser acionado imediatamente após a confirmação do
código , fornecendo feedback
instantâneo. Três, confiabilidade. O teste antes da
implantação garante que as alterações no código não
quebrem o sistema. Vamos dar um exemplo. Imagine que você está trabalhando em um
aplicativo bancário de cobalto que lida com milhares de
transações por minuto Um único bug na lógica de processamento
de pagamentos pode atrapalhar todo o sistema Com os testes automatizados, você
pode verificar
se todas as alterações, sejam elas grandes ou pequenas, funcionam conforme o esperado sem comprometer a
integridade do sistema Tipos de
testes automatizados para mainframes. Os testes automatizados em mainframes geralmente se dividem em
três categorias: teste
unitário, teste de regressão
e teste de integração Cada um deles tem um propósito diferente,
mas, quando combinados, formam uma estratégia de
teste sólida que
garante que tanto o
código novo quanto o antigo funcionem corretamente. Teste unitário. Os testes unitários são os alicerces
dos testes automatizados. Esses testes verificam partes
individuais do código, como o programa COO ou uma
única tarefa JCL, para garantir
que funcionem
corretamente de forma isolada. O que testar? Programas de carvão, sub-rotinas L
one, etapas de trabalho
específicas no Ferramentas para usar o IBM Rational test ou o servidor de teste
corporativo micro focus. Vejamos um exemplo. Você está desenvolvendo
um novo recurso para um programa COBOL que
calcula o pagamento de horas extras Você escreve um teste unitário para verificar se o cálculo está correto
para várias entradas, horas
regulares e horas extras O teste unitário garante que,
mesmo que outras partes
do código mudem, a lógica de cálculo de horas extras ainda
funcionará corretamente Teste de regressão.
O teste de regressão garante que o novo código não quebre a
funcionalidade existente Isso é particularmente
importante em ambientes de
mainframe em
que o código legado pode estar em
vigor há décadas Toda vez que você
altera o sistema, você precisa verificar se a funcionalidade crítica
mais antiga
ainda funciona conforme o esperado. O que testar? Lógica comercial crítica
que não mudou, mas pode ser afetada
pelo novo código. Ferramentas para usar, Jenkins
com trabalhos com script, IBM Rational Test Workbench.
Vamos dar um exemplo. Você atualizou um programa COBOL para adicionar um novo cálculo de imposto Antes de enviar o
código para produção, você executa um conjunto de testes de
regressão para garantir que os cálculos da
folha de pagamento,
que não são afetados pela atualização, ainda funcionem
corretamente Qualquer falha no
teste de regressão alertará você sobre áreas em que o novo código pode ter introduzido erros involuntariamente Teste de integração.
Os testes de integração verificam se diferentes componentes do seu sistema funcionam juntos. Em ambientes de mainframe,
isso pode significar testar como uma tarefa do JCL
Batch interage com um programa Cobalt ou como seus
aplicativos de mainframe testar como uma tarefa do JCL
Batch interage
com um programa Cobalt ou como
seus
aplicativos de mainframe se integram aos sistemas baseados em nuvem. O que testar? Interfaces entre aplicativos de
mainframe e
outros sistemas, como bancos de dados, serviços
em nuvem
ou APIs externas Ferramentas para usar o Zoe CLI para interagir com sistemas de mainframe ou o Jenkins Vamos dar um exemplo.
Seu aplicativo de mainframe precisa trocar dados com
um serviço baseado em nuvem Você configura um
teste de integração para garantir que os dados sejam transferidos corretamente entre os dois ambientes. Esse teste é executado
automaticamente sempre que uma nova atualização é feita no mainframe
ou no sistema em nuvem, reduzindo o risco de
problemas de integração na produção Incorporando testes automatizados
no pipeline do CICD. Agora que você sabe o que testar, vamos ver como integrar testes
automatizados em
seu pipeline de CICD Os testes automatizados devem ser acionados automaticamente
em diferentes estágios
do pipeline para fornecer feedback aos desenvolvedores com
antecedência e frequência. Adicionar testes de unidade
ao processo de construção. teste unitário deve ser
a primeira linha de defesa em seu pipeline de CICD Quando um desenvolvedor envia
código para o repositório Git, o Jenkins ou sua ferramenta de CI
preferida devem
acionar automaticamente Fluxo de tubulação. Primeiro, o
desenvolvedor envia o código para dar Em seguida, Jenkins obtém
as alterações mais recentes e executa testes unitários Em terceiro lugar, se o teste unitário for aprovado,
o pipeline continuará. Caso contrário, a tubulação é
interrompida e o desenvolvedor é
notificado da falha. Teste de regressão
antes da implantação. Os testes de regressão são essenciais
para manter a estabilidade. Isso deve ser executado
após o teste de unidade e antes da implantação para
preparação ou produção execução do teste de regressão garante que nenhum recurso existente quebrado pelas novas
alterações. Fluxo de tubulação. Depois que os testes unitários são aprovados, Jenkins aciona um conjunto
de testes de regressão Em seguida, o pipeline prossegue para o estágio de implantação somente se
todos os testes de regressão Automatizando testes de integração
no ambiente de preparação. Depois que o código estiver no ambiente
de teste, é hora de executar testes de
integração para garantir que tudo
funcione corretamente em conjunto Teste de integração, verifique
como seus aplicativos Cobalt, JCL e outros aplicativos de mainframe interagem com sistemas ou serviços externos Fluxo de tubulação. Depois que os testes de
regressão são aprovados, o código é implantado
no ambiente de Os testes de integração são acionados automaticamente,
garantindo que os
aplicativos do mainframe interajam corretamente com outros sistemas Se todos os testes forem aprovados, o código estará pronto para implantação em
produção.
Vamos dar um exemplo. Digamos que você esteja atualizando um programa COBOL que
processa pedidos de clientes Os testes unitários verificam
a lógica do programa. Os testes de regressão garantem que recursos
anteriores, por exemplo, o processamento de
pagamentos, ainda funcionem, e
os testes de integração garantem que o programa possa se comunicar com um sistema de inventário baseado em nuvem Todos esses testes são automatizados e executados dentro do pipeline do
CICD, reduzindo o risco de erros
quando o código é publicado. Garantindo a qualidade do código
com testes contínuos. teste contínuo
é a prática de testar o código em cada
estágio do pipeline, não apenas no final. Essa abordagem garante
que os bugs sejam detectados precocemente, quando é mais fácil
e barato corrigi-los. Para mainframes, o teste
contínuo é especialmente importante
porque os riscos são maiores Os aplicativos de mainframe geralmente oferecem suporte a operações
comerciais críticas Testes contínuos
em cada estágio. Durante o desenvolvimento,
os desenvolvedores escrevem testes
unitários para novos códigos e
os executam localmente antes
de confirmar as alterações Durante a integração, os testes
automatizados são acionados depois que o código é
mesclado na ramificação principal Durante a implantação,
os testes são executados
no ambiente de preparação antes o código seja implantado Vejamos um exemplo. Você é responsável
por manter um sistema de
contabilidade baseado em paralelepípedos Toda vez que um desenvolvedor
envia um código, Jenkins aciona uma série de testes de regressão
unitária Essa estratégia de teste contínuo garante que, independentemente de
quantas mudanças sejam feitas, o sistema permaneça estável e confiável durante
todo o ciclo de desenvolvimento. As principais conclusões
desta lição incluem que testes
automatizados são essenciais para
garantir
a qualidade do código em ambientes de
mainframe Ele ajuda a detectar bugs precocemente e reduz o risco de
erros dispendiosos na produção Incorpore testes unitários, testes de
regressão e testes de integração em seu pipeline CICD para
verificar o código em cada estágio O teste contínuo
garante que o código seja testado em todas as etapas, do desenvolvimento à produção, melhorando a estabilidade
e reduzindo os riscos. Vamos fazer uma atividade de aprendizado. Identifique um aplicativo crítico de cobol ou JCL em
sua organização Crie uma estratégia de
teste automatizada que inclua testes unitários, regressão e testes de
integração Compartilhe sua estratégia de teste
no primeiro fórum de discussão e discuta como ela se encaixa em
seu pipeline de CICD O que vem a seguir? Na próxima lição, exploraremos a implantação
contínua para aplicativos de mainframe Você aprenderá a automatizar processo de implantação
usando
o Jenkins e
outras ferramentas e descobrirá estratégias para implantar com segurança as alterações no código do
mainframe
17. Aula 4: implantação contínua para aplicativos de mainframe: Lição quatro, implantação
contínua para aplicativos de mainframe. Bem-vindo de volta ao Módulo quatro. Em nossas aulas anteriores, abordamos os fundamentos do
projeto de tubulações CICD, configuração do controle de ressão e incorporação de testes automatizados
ao processo Agora vamos nos aprofundar em um dos
aspectos mais críticos do DevOps, implantação
contínua ou o CD
para aplicativos de mainframe Nesta lição,
exploraremos como
automatizar o
processo de implantação usando ferramentas como Jenkins e estratégias
para garantir que implantações em mainframes
sejam seguras e Implantar alterações em
mainframes pode não ser tão simples quanto enviar código
para um ambiente de Isso requer cautela extra, testes
rigorosos e orquestração
cuidadosa Ao final desta lição, você entenderá como
configurar implantações automatizadas para aplicativos de
mainframe
e implementar as
melhores práticas para
implantar atualizações com segurança Vamos começar. O que é implantação
contínua
e por que ela é importante? implantação contínua ou CD é o processo de implantação
automática de novo código na produção depois passar por todas as fases de teste
necessárias Em um pipeline de CICD ideal, código flui perfeitamente do
desenvolvimento para o teste e, em seguida, para a produção sem exigir intervenção
manual Os benefícios do CD são numerosos. Lançamentos mais rápidos, o código pode ser implantado com rapidez
e frequência consistentes e
automatizadas garantem que
todas as implantações sigam o mesmo processo reduzindo o risco de erros Confiança. Como o código
passou por todos os estágios de teste, há um alto nível
de confiança de que ele funcionará conforme o
esperado na produção. Para mainframes, a
implantação de alterações de código tem sido historicamente um processo manual, lento e de alto risco implantação contínua
traz automação e confiabilidade,
reduzindo o tempo de implantação
e minimizando os erros humanos Vamos dar um exemplo. Imagine que você está trabalhando em uma instituição financeira
e sua equipe precisa fazer uma pequena atualização aplicativo CBL que
lida com
o processamento de empréstimos Sem o CID, esse seria um processo manual
envolvendo aprovações, agendamento e o risco de
erros durante a Com a implantação contínua,
a atualização pode ser
implementada automaticamente com segurança depois de passar em todos os testes, economizando tempo e
evitando o tempo de inatividade Automatizando o
processo de implantação com o Jenkins. A primeira etapa para alcançar a implantação
contínua é
automatizar o próprio
processo de implantação Para mainframes,
ferramentas como Jenkins podem ser usadas para gerenciar e
automatizar Configurando o Jenkins para implantações de
mainframe. Jenkins pode automatizar muitas das O Jenkins pode automatizar muitas das etapas envolvidas nas implantações de
mainframe,
como enviar trabalhos, como enviar trabalhos, mover arquivos entre conjuntos Aqui está um exemplo básico de um pipeline do Jenkins para
implantar um aplicativo CBL Nesse pipeline,
o estágio de construção compila o código CBL
usando uma tarefa JCL O estágio de teste
executa testes para garantir que o código
funcione conforme o esperado. Por fim, o
estágio de implantação carrega o código compilado no conjunto de dados de produção e
envia um JCL para conjunto de dados de produção e
envia um JCL Vamos dar um exemplo.
Sua equipe precisa atualizar um programa COBOL que
gerencia os cálculos da folha de pagamento Ao configurar um pipeline
Jenkins, você pode automatizar todo o
processo, desde a compilação código CBL até
a execução de testes
e a implantação do programa atualizado na Cada implantação segue
as mesmas etapas, reduzindo o risco de erros. Integrando Jenkins com Zoe
para automação de mainframe. Uma das melhores maneiras de
automatizar tarefas de mainframe no Jenkins é usando Zoe CLI permite que o Jenkins interaja com conjuntos de dados de
mainframe, envie trabalhos e
recupere saídas para comandos Os principais comandos da CLI do Zoe que você usará para automação de implantações
incluem Envie um trabalho da JCL e faça upload de
um arquivo em um conjunto de dados. Usando esses comandos, o
Jenkins pode
automatizar totalmente a implantação de aplicativos de
mainframe, garantindo que as implantações
ocorram de forma rápida, consistente e Estratégias para implantar com segurança as alterações no código do
mainframe. Os mainframes geralmente lidam com cargas de trabalho de
missão crítica, por isso é essencial
implantar as mudanças implantação contínua
em mainframes
precisa ser abordada com
estratégias adicionais para mitigar os riscos Implantações escalonadas. Uma abordagem para
reduzir o risco é
implantar alterações de código
em estágios escalonados Começando com
sistemas ou conjuntos de dados menos críticos e implementando gradualmente as mudanças nos mais
críticos. Isso lhe dá a
oportunidade de detectar problemas antecedência, antes que eles afetem áreas
de alta prioridade. Por exemplo, primeiro estágio, implante em um
ambiente de desenvolvimento para testes iniciais. Etapa dois, implante em um ambiente de teste para
simular as condições do mundo real. Etapa três, implante
na produção, começando com trabalhos não críticos e terminando com tarefas de alta
prioridade. Vamos dar um exemplo.
Um banco atualiza seus sistemas de mainframe para introduzir uma nova lógica de
cálculo de impostos Em vez de enviar a atualização
para todos os sistemas de uma só vez, a equipe primeiro implanta a atualização em um
subconjunto do sistema
responsável por gerenciar a folha de pagamento um pequeno Depois que a equipe verifica se
a atualização funciona corretamente, ela passa a
implantar a alteração em todo o sistema Aprovações manuais para mudanças
críticas. Embora a implantação contínua tenha como objetivo eliminar as etapas manuais, talvez
você ainda queira incluir portas de aprovação
manual para
determinadas implantações críticas Isso é especialmente
útil na implantação em ambientes
de
produção em que o tempo de atividade
e a precisão são cruciais e a precisão são No Jenkins, você pode configurar etapas de aprovação
manual ou implantações
de produção que exigem a aprovação de um
administrador antes que a implantação continue Por exemplo, um programa
COBOL crítico que processa milhões
de transações por dia está programado
para uma grande atualização Embora o código seja aprovado em
todos os testes automatizados, a equipe decide incluir uma
etapa de aprovação manual no Jenkins Um desenvolvedor líder
analisa os resultados, aprova a implantação e o novo código é automaticamente
implantado Mecanismos de reversão. Mesmo com testes automatizados,
as coisas podem dar errado. implementação de
mecanismos de reversão em sua estratégia de
implantação contínua garante que, se uma implantação
falhar ou causar problemas, você possa reverter rapidamente para
um estado estável anterior As principais estratégias de reversão
incluem conjuntos de dados de controle de versão. Mantenha várias versões
de conjuntos de dados essenciais, para que você possa facilmente reverter
para a versão anterior Automatizando as etapas de reversão,
crie
etapas automatizadas no Jenkins que desfazem as alterações enviando tarefas de
reversão da JCL ou restaurando conjuntos reversão Por exemplo, sua equipe
envia uma nova atualização para
um trabalho da JCL responsável pela
geração de relatórios financeiros Logo após a implantação, os usuários notam discrepâncias
na saída do relatório Jenkins
aciona automaticamente uma reversão,
revertendo o sistema para a versão estável
anterior
da tarefa JCL revertendo o sistema para a versão estável
anterior
da tarefa estável
anterior
da O problema foi corrigido
e a equipe pode investigar o problema
sem afetar os usuários As principais conclusões desta lição
incluem
a implantação contínua que
automatiza o processo de implantação ,
reduzindo erros e acelerando os
lançamentos de
aplicativos reduzindo erros e acelerando lançamentos Ferramentas como Jenkins e Zoe
CLI permitem automatizar
implantações a partir da
compilação de código executando trabalhos Use estratégias como implantações
escalonadas, aprovações
manuais e mecanismos de
reversão para
implantar com segurança as alterações aprovações
manuais e mecanismos de
reversão implantar com segurança Vamos fazer uma atividade de aprendizado. Configure um pipeline Jenkins
para um aplicativo de mainframe, automatizando o processo de
implantação usando o Zoe CLI Crie uma estratégia de
implantação escalonada para implantar com segurança
o aplicativo diferentes ambientes,
como desenvolvimento, preparação e produção Compartilhe seu pipeline e sua estratégia de
implantação no fórum de discussão do curso. O que vem a seguir? No próximo módulo, vamos nos concentrar na automação de
testes para aplicativos de mainframe Você aprende por que os testes automatizados são essenciais para manter confiabilidade
do sistema e
abordaremos vários
tipos de testes, como testes unitários, de
regressão, de integração
e de desempenho
18. Aula 1: a importância dos testes automatizados em Mainframes: Módulo cinco,
testes automatizados para aplicativos de mainframe Neste módulo,
exploraremos o seguinte
por que a automação de testes é essencial para aplicativos de mainframe Como garantir a confiabilidade do sistema e reduzir os erros por meio de
diferentes tipos de testes. Ferramentas e estratégias
para integrar testes
automatizados em
seu pipeline de CICD. Ao final deste módulo, você estará equipado para
projetar e implementar uma
estratégia de teste automatizada que melhora a
confiabilidade e o desempenho de seus mainframes Primeira lição: a importância dos testes automatizados
em mainframes Bem-vindo ao Módulo 5. Se você está
acompanhando os módulos anteriores, viu como
podemos agilizar processos de
desenvolvimento e implantação com os pipelines do CICD. Agora é hora de abordar um
dos elementos mais importantes garantir
a confiabilidade do sistema. Isso é teste automatizado. Nesta lição,
vamos explorar por que a automação de testes é
essencial para aplicativos de mainframe mainframes normalmente executam sistemas de
missão crítica
que exigem confiabilidade, segurança e alta disponibilidade Ao implementar testes
automatizados, você não apenas reduz
o risco de erros, mas também acelera
o processo de teste e melhora a qualidade do código. Ao final desta lição, você entenderá os
diferentes tipos de
testes, incluindo testes unitários, testes de regressão, testes de
integração e testes de
desempenho, e por que eles são cruciais para aplicativos de
mainframe Vamos começar.
Por que os testes automatizados são essenciais para mainframes Os mainframes geralmente
lidam com sistemas complexos que estão
em execução há décadas Esses sistemas podem ter
milhões de linhas de código e estão profundamente
integrados aos processos de negócios. Isso torna o teste
extremamente importante, mas fazê-lo
manualmente não é apenas demorado, mas
propenso a erros. É aí que entram
os testes automatizados. Veja por que os testes automatizados
são essenciais para mainframes. Primeiro, confiabilidade. Os mainframes geralmente oferecem suporte a serviços
essenciais como sistemas bancários, de saúde
ou governamentais, nos quais tempo de inatividade ou os bugs podem causar interrupções
significativas Os testes automatizados garantem resultados
consistentes e confiáveis sempre que o código é
alterado. Dois, velocidade. teste manual pode levar horas, se não dias, especialmente para
grandes aplicativos de mainframe Os testes automatizados são executados
rapidamente, geralmente em minutos, permitindo ciclos de
desenvolvimento mais rápidos. Três, escalabilidade. À medida que os aplicativos de mainframe crescem
, aumenta também a complexidade
dos testes Os testes automatizados podem ser
executados em paralelo, cobrindo uma grande variedade de casos de teste que seriam impossíveis de
realizar manualmente. Pois, reduza o erro humano. Os testadores manuais podem perder coisas. Os testes automatizados não. Depois de configurados,
os testes automatizados são precisos e confiáveis. Um exemplo. Digamos que você esteja mantendo um
aplicativo financeiro baseado em CVL que lida com milhares
de transações diárias Um único bug nesse sistema
pode atrasar os pagamentos, gerando repercussões dispendiosas
para Teste e verifique automaticamente se há problemas sempre que
o código é alterado, garantindo estabilidade e
confiança em cada implantação. Tipos de
testes automatizados para mainframes. Agora que entendemos
por que os testes são essenciais, vamos nos aprofundar nos tipos de teste que você deseja automatizar Cada tipo de teste
tem uma função exclusiva garantir que seus
aplicativos de mainframe sejam confiáveis, desempenho e estejam livres de bugs Teste unitário. O teste unitário se concentra em testar
componentes individuais do seu aplicativo, seja uma função,
um programa CBO
ou um script JCL Esses testes validam que
as menores partes do seu aplicativo se comportem isoladamente
conforme o esperado O que envolve testar uma única função ou programa
para a saída de entrada esperada. O objetivo é detectar bugs antes que eles se propaguem
pelo sistema Vamos dar um exemplo. Estamos trabalhando em um programa COBOL que calcula os impostos sobre a folha de pagamento Um teste unitário para verificar se
o programa
calcula corretamente as deduções fiscais
com base em vários valores de entrada,
por exemplo, salários
e Isso garante que seus cálculos de
folha de pagamento sejam precisos antes de
integrá-los ao sistema maior Teste de regressão. Quando você
faz alterações em seu código, como você garante que seus recursos
existentes ainda funcionem? É aqui que o
teste de regressão entra em ação. Os testes de regressão são
projetados para detectar bugs introduzidos por um novo código que podem quebrar funcionalidades
antigas O que envolve testar recursos
e funcionalidades
existentes para garantir que eles ainda
funcionem após as alterações no código. Objetivo de evitar que o código
recém-introduzido quebre o código estável
existente. Vamos dar um exemplo. Você adicionou um novo recurso a um sistema de relatórios financeiros. Antes de implantar as alterações, teste de
regressão
garante que recursos como saldo da conta, histórico de
transações e relatórios ainda funcionem conforme o esperado.
Teste de integração. Os aplicativos de mainframe
raramente existem isoladamente. Eles geralmente interagem
com bancos de dados, outros programas ou sistemas
externos. teste de integração garante que todas essas peças
funcionem juntas sem problemas. O que envolve testar
como diferentes partes do sistema interagem entre
si , desde o código do mainframe
até os serviços externos Objetivo: garantir que
as integrações entre módulos ou serviços funcionem corretamente e não
causem erros inesperados Um exemplo, um aplicativo bancário
baseado em casal recupera informações do cliente
de um sistema baseado em nuvem Os testes de integração garantem que a conexão entre
o mainframe e o serviço de nuvem esteja
funcionando corretamente e que os dados corretos estejam sendo passados entre os dois sistemas Teste de desempenho.
O desempenho é tudo em um ambiente de
mainframe de alta demanda teste de desempenho verifica como seu aplicativo se comporta
sob carga pesada, garantindo que ele possa escalar
e lidar com o
tráfego de seleção sem diminuir a velocidade ou travar
. O que envolve simular
grandes volumes de transações, usuários ou dados para ver como o sistema
funciona sob estresse O objetivo é garantir que seu
aplicativo tenha um bom desempenho, mesmo sob carga máxima, e
identificar quaisquer gargalos Por exemplo, você está gerenciando um sistema de
processamento de sinistros de seguros. Durante o período de pico
após uma grande tempestade, você espera uma enxurrada de reivindicações Os testes de desempenho
simulam esse cenário, garantindo que o sistema possa
lidar com grandes volumes de processamento de solicitações sem
travar ou Incorporando testes
automatizados ao pipeline do CICD, testes
automatizados devem ser parte
integrante do
pipeline do CICD, sendo executados automaticamente em
etapas Ao integrar os testes
em todas as etapas, você pode detectar bugs logo no início e evitar surpresas quando o
código chegar Veja como você pode integrar diferentes testes em
seu pipeline de CICD Primeiro, os testes unitários são executados imediatamente após o código ser
confirmado no repositório. Segundo, os testes de regressão são
executados após os testes unitários, garantindo que novas alterações não interrompam a
funcionalidade existente Em terceiro lugar, os testes de integração são executados depois que o código é implantado
em um ambiente de
teste, testando as interações
entre os componentes Quatro, os testes de desempenho
são executados periodicamente ou antes dos principais lançamentos para garantir que o sistema possa
lidar com altas cargas. principais conclusões desta lição incluem que testes automatizados são essenciais para manter a confiabilidade
do sistema e reduzir erros em aplicativos de
mainframe Os quatro principais tipos de testes
automatizados são testes unitários, que se concentram em
componentes individuais, testes de regressão, que garantem que novas
alterações não interrompam recursos
existentes, testes de
integração, que testam como diferentes
sistemas interagem, e testes de desempenho, que
testam o
desempenho do sistema sob carga A integração de
testes automatizados em seu pipeline de CICD garante feedback
contínuo, reduzindo o risco de bugs
chegarem à produção Vamos fazer uma atividade de aprendizado. Identifique um aplicativo de missão
crítica em sua organização e determine quais tipos de teste
automatizado seriam
os mais benéficos. Desenvolva uma
estratégia básica de teste que inclua testes unitários, regressão, de integração
e de desempenho Compartilhe sua estratégia de teste
no fórum de discussão do curso e explique como você a
incorporaria ao
pipeline do City ICAD. O que vem a seguir? Na próxima lição, abordaremos as ferramentas
que podem ajudar a tornar os testes automatizados uma realidade para
aplicativos de mainframe Abordaremos ferramentas populares
como J Unit para testes unitários, selênio para testes de interface e como integrar
essas ferramentas a ambientes de
mainframe
19. Aula 2: ferramentas para automatizar testes de mainframe: Lição dois, ferramentas para
automatizar testes de mainframe. Bem-vindo de volta ao Módulo 5. Na lição anterior,
exploramos por que os testes
automatizados são essenciais para mainframes e os diferentes tipos de
testes que precisamos implementar Agora é hora de levar esse
conhecimento para o próximo nível e explorar as ferramentas que possibilitam os testes automatizados. Talvez você esteja familiarizado
com algumas
dessas ferramentas de ambientes que não são de
mainframe, mas hoje vamos nos concentrar em como integrá-las
aos sistemas de
mainframe Ao final desta
lição, você terá uma sólida compreensão das ferramentas de teste, como a
unidade J para testes unitários,
selênio, para testes de interface
do usuário e outras,
e como aplicá-las para automatizar os testes Vamos mergulhar. Por que usar ferramentas
de teste para mainframes Os aplicativos de mainframe
geralmente lidam com operações de
missão crítica e são executados
em bases de código antigas,
como CBL e PLO. Testar esses sistemas manualmente não
é apenas tedioso,
mas propenso a erros É aí que entra a
automação, permitindo que executemos testes
consistentes em uma grande base de código para garantir que todo o
sistema seja coberto,
não apenas
componentes isolados, e, terceiro, economize tempo automatizando tarefas de teste
repetitivas para que
os desenvolvedores possam se concentrar em corrigir bugs e Vamos dar um exemplo.
Imagine que você está trabalhando em um banco onde o mainframe processa milhões de
transações diariamente introdução de um bug
no sistema pode interromper os serviços ou
até mesmo causar perdas financeiras As ferramentas de teste automatizadas podem ajudá-lo a identificar
rapidamente os problemas
antes que eles cheguem à produção, garantindo que o sistema
permaneça confiável. Ferramentas de teste eletrônico para automação de
mainframe. Vamos examinar algumas das ferramentas mais comuns para automatizar
os testes de
mainframe, além de seus casos de uso e como
elas se
integram aos seus casos de uso e como elas se
integram A primeira é a unidade J para testes
unitários para mainframes. J Unit é um
dos frameworks mais usados para testes unitários em aplicativos
Java Mas você sabia que ele também pode ser adaptado para testar o código do mainframe Embora o Cobol e o JCL
não sejam escritos em Java, você ainda pode usar o J
Unit para acionar testes em aplicativos de mainframe,
integrando-os middleware
ou wrappers que conectam seu você ainda pode usar o J
Unit para acionar testes
em aplicativos de mainframe,
integrando-os a middleware
ou wrappers que
conectam seu
ambiente de mainframe às ferramentas modernas de DevOps. Para que serve? A
unidade J é usada para testar componentes
ou funções
individuais
isoladamente para garantir
que funcionem conforme o esperado. Integração. Você pode usar ferramentas como o Zoe CLI para
acionar o teste JUnit
no mainframe ou desenvolver um
wrapper que permita
executar testes JUnit que simulam chamadas sub-rotineiras executar testes JUnit Vamos dar um exemplo.
Você está gerenciando um sistema de folha de pagamento
escrito em COBOL, mas quer garantir seu novo
recurso de cálculo de horas extras funcione perfeitamente Ao configurar uma estrutura baseada em
unidades J, você pode automatizar o teste
dessa função
simulando execuções de trabalhos em COBOL
e validando Teste de soma ou interface do usuário. Embora o selênio seja
usado principalmente para testar aplicativos
da Web, ele também é uma ferramenta fantástica
para testar a interface do usuário ou
a interface de
usuário de aplicativos que interagem
com sistemas de mainframe, como webends que interface com programas de mainframe de back-end Para que serve? O Selenium
automatiza os testes baseados em navegador, garantindo que as UIs se comportem conforme esperado quando interagem
com Integração. Se você
tiver uma interface de usuário ou um painel baseado na Web que interaja com o
sistema mainframe, por exemplo, uma interface de
processamento de sinistros de seguros, você pode automatizar os testes
usando o Selenium para garantir que a experiência do usuário final Por exemplo, você trabalha para uma empresa de varejo que tem um portal da web para
processamento de pedidos, que se conecta ao mainframe
para gerenciamento de inventário Usando o Selenium, você pode automatizar os testes para verificar se
os usuários podem fazer pedidos,
verificar o inventário e receber
confirmações, verificar o inventário e receber tudo Micro foco para testes unitários de
cobalto. teste unitário de microfoco foi projetado especificamente para aplicações Cobol e mainframe Ele se integra diretamente aos ambientes de desenvolvimento do
Cobble e permite que você execute testes unitários no Coblde da mesma forma que faria com
qualquer linguagem de programação moderna.
Para que serve? Testar o COBOL programa
todas as rotinas diretamente, garantindo que elas funcionem conforme o esperado Integração, a Microfocus
fornece uma plataforma que integra ao seu ambiente de
mainframe e aos pipelines do Devos, facilitando a
configuração de testes automatizados no Jenkins ou em Por exemplo, você está
encarregado de atualizar um sistema de processamento de empréstimos
baseado em CBL Com a micro focus, você pode escrever testes
automatizados para garantir que o novo algoritmo de
aprovação de empréstimos funcione em diferentes
cenários e integrar esses testes ao seu
pipeline para detectar bugs mais cedo. IBM Rational test Workbench ou
testes abrangentes para mainframes O IBM Rational Test Workbench é uma solução completa que
suporta testes unitários, testes regressão e testes desempenho para aplicativos de
mainframe Ele também se integra
perfeitamente ao Jenkins e ao Zoe para automatizar os testes
em todo o pipeline Para que serve? Testes abrangentes para aplicativos de
mainframe, incluindo testes de carga, testes
funcionais e
testes de integração. Integração. O IBM Rational test Workbench se conecta diretamente ao
seu mainframe e pode automatizar testes em
diferentes estágios do processo de desenvolvimento, desde
o teste
unitário até o teste de desempenho em
todo o sistema Por exemplo, você está gerenciando um sistema de
processamento de pedidos de assistência médica que é fundamental para garantir que os pacientes
recebam atendimento oportuno. O IBM Rational test
Workbench permite
automatizar testes para
programas CBL, trabalhos em lotes e até mesmo sistemas externos que interagem com
seu mainframe, garantindo que tudo funcione
conforme Integrando ferramentas de teste
em ambientes de mainframe. Agora que conhecemos as ferramentas, vamos ver como
integrá-las ao seu ambiente de
mainframe As ferramentas de teste não
operam isoladamente. Eles precisam fazer parte de um pipeline da Devo para
serem realmente eficazes. Primeiro, use o Jenkins
para automação. Falamos sobre Jenkins em aulas
anteriores como a
espinha dorsal de seu pipeline de CICD Jenkins pode automatizar a
execução de testes em todo o sistema usando as
ferramentas que acabamos Veja como
seria a aparência de um pipeline típico do
Jenkins com
testes integrados Primeiro, confirme o código. Um desenvolvedor envia o
código de capa para o repositório. Em seguida, teste unitário. Jenkins aciona o microfoco ou unidade
J para executar
testes unitários no novo código Em seguida, teste de regressão. Jenkins executa o IBM
Rational Test Work Bench para verificar se os
recursos existentes não estão quebrados Depois disso, é o teste de
integração. Jenkins automatiza o
selênio para verificar se a WUI
interage corretamente com o Por fim, o teste de desempenho. Quando tudo estiver estável, Jenkins aciona um teste de
desempenho usando IBM Workbench para
simular O segundo é o Zoe CLI para interações de
mainframe. Se você estiver trabalhando com soluções de código
aberto, Zoe CLI pode ajudá-lo a integrar
ferramentas Devo modernas, como Jenkins, J Unit e selenium, Zoe permite que você interaja com
conjuntos de dados, envie trabalhos e recupere resultados
do mainframe, tornando-o um participante fundamental na automação As principais conclusões
desta lição incluem que o J Unit é uma ótima ferramenta
para automatizar testes unitários,
mesmo em
ambientes de mainframe,
simulando mesmo em
ambientes de mainframe,
simulando simulando Selenium permite
automatizar os testes de interface do usuário, garantindo que os aplicativos
front-end funcionem perfeitamente com teste unitário da Micro Focus
é personalizado para COBOL e fornece uma plataforma poderosa para testar diretamente o
código do mainframe O IBM Rational Test Workbench é uma ferramenta completa
que automatiza regressão
funcional e os testes de
desempenho para mainframes que se
integram Use o Jenkins e o Zoe CLI para
automatizar os processos de teste e integrar essas ferramentas à sua
estratégia de DevOp de mainframe Vamos fazer uma atividade de aprendizado. Escolha um aplicativo de mainframe
em seu ambiente e decida qual ferramenta de teste
atenderia melhor às suas necessidades, seja ela J unit, selenium, micro focus ou IBM
Rational test Crie um
pipeline de testes básico usando o Jenkins que incorpore pelo
menos duas das ferramentas que discutimos Compartilhe o design do seu pipeline
no fórum de discussão do curso
e explique sua escolha de ferramentas. O que vem a seguir? Na próxima lição,
vamos nos
aprofundar na automação de
testes unitários para código de mainframe Veremos como escrever e executar
testes de unidade automatizados para Cobol ou outras linguagens de mainframe e as
melhores práticas para garantir que a qualidade
do seu código permaneça alta
20. Aula 3: automatizando testes de unidade para código de mainframe: Lição três, automatizando
testes unitários para código de mainframe. Bem-vindo à lição
três do módulo cinco. Já abordamos
por que os testes automatizados são cruciais e exploramos algumas ferramentas para automatizar o Agora é hora de se
aprofundar em um dos tipos mais
fundamentais de teste, o teste
unitário, focando
especificamente
no código de mainframe, como Cobol, BL one ou Nesta lição,
aprenderemos como escrever e executar
testes unitários automatizados para código de mainframe Analisamos as melhores práticas para garantir
código de alta qualidade e exploramos como teste
unitário pode ser
uma ferramenta poderosa para detectar erros no início
do ciclo de desenvolvimento. Ao final desta lição, você poderá projetar e
automatizar testes unitários
com confiança para seus aplicativos de
mainframe, garantindo que seu código seja
sólido antes de passar
para a próxima etapa Vamos começar. O que é teste
unitário e por que
é importante? teste unitário é o
processo de testar componentes
ou funções
individuais de um programa isoladamente. O objetivo é garantir que cada pequena
parte testável do código ou unidade funcione conforme esperado antes de
integrá-la a outros componentes Os testes unitários fornecem uma
rede de segurança durante o desenvolvimento identificando bugs
logo antes que eles se tornem problemas em todo o
sistema. Para aplicativos de mainframe, o teste
unitário é especialmente importante porque, por
um lado, sistemas legados Os mainframes geralmente
executam códigos que estão em
produção há décadas É crucial testar rigorosamente
os novos componentes para garantir que eles não
interrompam os sistemas existentes. Dois, lógica complexa. Muitos aplicativos de mainframe lidam com lógica comercial complexa, cálculos
financeiros
ou processamento de dados Testar essas unidades isoladamente
ajuda a garantir a precisão. Três, detecção precoce de bugs. Os testes unitários detectam bugs antes que eles se tornem profundamente
incorporados ao sistema, tornando-os mais fáceis
e baratos de corrigir. Vamos dar um exemplo. Imagine que você esteja trabalhando em um aplicativo de cobalto que processa pagamentos de
empréstimos de clientes Se um bug na lógica de
cálculo do pagamento passar despercebido, isso pode levar a cálculos de
juros incorretos causando grandes problemas financeiros Uma captura de
teste de unidade bem projetada detectaria esse bug mais cedo, permitindo que você o corrija antes que ele
afete os clientes. Guia passo a passo para escrever testes unitários
para código de mainframe Agora que sabemos por que o
teste unitário é essencial, vamos entrar em
detalhes sobre como escrever e automatizar
testes unitários para código de mainframe Vamos nos concentrar no cobol
nesta lição, mas os princípios também podem ser aplicados a outras
linguagens de mainframe Primeiro passo, divida o código
em unidades testáveis. A primeira etapa para escrever um teste
unitário é identificar as menores partes da funcionalidade que podem
ser testadas de forma independente. Em cobol, isso pode ser um programa,
parágrafo ou sub-rotina individual Por exemplo, se você tiver um programa cobol que
calcula impostos, você pode isolar a lógica de
cálculo de impostos como uma Aqui está um exemplo de sub-rotina CBL
para cálculo de impostos. Essa sub-rotina
recebe um salário e
uma alíquota de imposto como entrada e
calcula o valor do imposto É um candidato perfeito
para o teste unitário. Etapa dois, escreva o teste unitário. Agora, vamos escrever um
teste unitário para validar se a lógica de cálculo
do imposto funciona conforme o esperado Você deve testar
diferentes valores salariais, alíquotas de impostos e casos extremos. Por exemplo, o que acontece
quando o salário é zero? Usando o
teste de unidade de microfoco para cobol, você pode escrever um caso
de teste como esse Aqui, estamos definindo
o salário em
50.000 e a alíquota de imposto em 15% O teste unitário afirma que o valor correto do imposto,
7.500, é calculado Etapa três, teste automatizado. O verdadeiro poder do teste unitário
vem quando ele é automatizado. Em vez de executar
esse teste manualmente toda vez
que você atualiza o programa, você pode configurar seu pipeline
CICD para executar teste de
unidade automaticamente
sempre que o código for confirmado Dessa forma, você saberá instantaneamente se alguma alteração interrompe
a funcionalidade. Usando o Jenkins para automatizar o teste unitário
de
paralelepípedos, o processo é mais ou
menos assim Primeiro, o desenvolvedor omite uma
alteração na base de código Cobol. Segundo, o Jenkins aciona
automaticamente um trabalho para executar todos os testes unitários, incluindo o teste de cálculo de impostos E três, se os testes passarem,
o pipeline prossegue. Se eles falharem, Jenkins notifica a equipe para que
o problema possa ser Essa automação economiza tempo e reduz o risco de erros
entrarem na produção Melhores práticas para
testes unitários de código de mainframe. Agora que vimos como
escrever um teste unitário automatizado, vamos ver algumas práticas
recomendadas para garantir que seus testes unitários sejam
eficazes e sustentáveis Primeiro, escreva testes claros
e concisos. Cada teste unitário deve se concentrar em testar uma
parte específica da funcionalidade. Se o teste for muito amplo, pode ser mais difícil identificar o que deu errado
quando um teste falha. Por exemplo, um teste deve validar um
único cálculo ou uma condição única ou específica em vez de tentar testar
várias coisas ao mesmo Aqui vai uma dica. Use nomes
descritivos para seus casos de teste,
como calcular imposto, sublinhar com
entradas válidas ou calcular imposto,
sublinhado, sublinhado Está claro o que cada
teste está verificando. Em segundo lugar, teste casos extremos. Certifique-se de que o
teste de unidade cubra
casos extremos , como valores zero
ou negativos, valores entrada
máximos e mínimos. Entrada inesperada, por exemplo, caracteres
não numéricos em um
campo que espera um número Ao cobrir esses casos, você pode detectar bugs que podem não aparecer em cenários típicos. Em terceiro lugar, mantenha os testes independentes. Cada teste deve ser executado
independentemente dos outros. Isso significa que o teste
não deve depender de nenhum estado externo. Por exemplo, o resultado de um teste
anterior para passar. Se um teste falhar, ele não deve criar uma cascata
de falhas em outros testes Ou faça testes com frequência. A beleza dos testes
unitários automatizados é que eles podem ser
executados sempre que necessário. Em um pipeline de
CICD bem construído, testes devem ser executados
sempre que o código for confirmado, para que você receba
feedback imediato sobre quaisquer problemas Isso facilita
a correção de bugs assim que eles são introduzidos, em
vez de dias ou semanas depois. As principais conclusões
desta lição incluem. O teste unitário é essencial
para detectar bugs precocemente, especialmente em
ambientes de mainframe em que lógica de negócios
complexa
precisa ser validada Ao escrever testes unitários, concentre-se em pequenos
componentes testáveis e cubra uma ampla variedade de cenários
, incluindo casos extremos automação dos testes unitários em seu pipeline do
CICD garante que testes sejam executados de forma consistente e forneçam
feedback imediato sobre melhores práticas incluem
escrever testes de foco claro, cobrir casos extremos e manter os testes independentes uns
dos outros. Vamos fazer uma atividade de aprendizado. Escolha um programa cobol ou JCL
em sua organização e identifique uma pequena
funcionalidade que possa
ser testada de funcionalidade que possa
ser testada Escreva um teste unitário para
essa funcionalidade, abrangendo casos típicos
e extremos. Configure um pipeline Jenkins
ou use um existente para
automatizar a execução
desse teste de unidade sempre que
o código for atualizado O que vem a seguir? Na próxima lição, passaremos ao teste de
regressão Outro aspecto crucial para
garantir a qualidade do código. Exploraremos como configurar um teste de regressão
automatizado que garanta que novas alterações de código não interrompam funcionalidade
existente
e como
integrá-las ao seu pipeline de CICD.
21. Aula 4: implementando testes de regressão automatizados: Lição quatro, implementando testes de regressão
automatizados. Bem-vindo à lição
quatro, módulo cinco. Na lição anterior,
exploramos como escrever e executar
testes de unidade automatizados para código de mainframe Agora é hora de expandir nossa estratégia de testes
implementando testes de
regressão automatizados teste de regressão garante
que novas alterações seu código não interrompam a funcionalidade
existente, uma etapa crucial para manter a integridade de
sistemas grandes e complexos, como mainframes Nesta lição, abordaremos
o seguinte: como configurar o teste de regressão para proteger seus aplicativos de
mainframe Por que o teste de regressão é essencial para detectar efeitos colaterais
indesejados Como integrar o teste de
regressão em seu pipeline do CICD para
tornar o teste um processo automatizado e
contínuo Ao final desta lição, você poderá implementar uma
estratégia de teste de regressão que protege seus aplicativos de mainframe do risco de alterações no código.
Vamos começar. O que é teste de regressão
e por que você precisa dele? teste de regressão é
o processo de testar a funcionalidade
existente para garantir que ela não tenha sido quebrada
por novas alterações no código O objetivo é detectar efeitos
colaterais inesperados que possam causar erros em partes
do sistema que não foram modificadas
diretamente. Para mainframes, o teste de
regressão é fundamental devido ao
seguinte Um, sistemas legados. Os aplicativos de mainframe geralmente são altamente interconectados com
dependências complexas Alterar uma parte
do código pode ter
consequências indesejadas em outros lugares Dois, estabilidade a longo prazo. Muitos sistemas de mainframe executam códigos que estão em
produção há décadas Os sistemas precisam ser estáveis e o
teste de regressão garante que novos recursos ou correções de erros não
desestabilizem Três, aplicativos de missão
crítica. mainframes são usados em setores como bancos, saúde
e governo Um pequeno bug pode ter consequências
enormes Manter a confiabilidade
é essencial. Vamos dar um exemplo. Digamos que você esteja atualizando um aplicativo CBL que processa
pedidos de empréstimo para um banco Você adiciona um novo
recurso para calcular as taxas de
juros com base em
uma fórmula diferente. Sem o teste de regressão, você pode ter inadvertidamente quebrado a lógica de aprovação de empréstimos existente causando problemas para os usuários teste de regressão detectaria esse problema antes que ele
atingisse a produção Guia passo a passo para
configurar o teste de regressão automatizado Agora que entendemos por que teste de
regressão é importante, vamos ver como
configurá-lo em um ambiente de
mainframe Percorreremos
as etapas para criar testes de regressão
eficazes e automatizá-los em
seu pipeline de CICD Primeiro passo: identificar a
funcionalidade crítica a ser testada. A primeira etapa na configuração teste de
regressão é identificar os principais recursos do seu aplicativo de
mainframe que sempre devem funcionar Essas são as funções que, se quebradas,
causariam mais interrupções. Por exemplo, em um aplicativo
bancário, isso pode incluir a seguinte lógica de processamento de
empréstimos, cálculos de
pagamento ou verificações de saldo
da conta. Depois de identificar as principais áreas, você pode criar uma
suíte de testes focada na verificação dessas funções
após cada alteração de código Escreva casos de teste de regressão. Em seguida, você precisa escrever casos de
teste
para cada funcionalidade. Os testes Tse devem
abranger casos de uso típicos e casos extremos para garantir que sistema funcione sob uma
variedade de condições O objetivo é detectar quaisquer alterações não intencionais
causadas por um novo código Por exemplo, típico
de um caso típico, cliente solicita um empréstimo e o sistema calcula seu pagamento
mensal corretamente No caso extremo, o cliente solicita um empréstimo com
saldo negativo e o sistema
trata corretamente o erro
sem travar Aqui está um exemplo
de um caso de teste. É um programa de
processamento de empréstimos da CBL. Esse teste garante que a lógica de aprovação do
empréstimo calcule o
pagamento mensal correto de um empréstimo de $10.000 a uma taxa de juros de
5% Etapa três, automatize os testes de
regressão. Agora que você escreveu
seu teste de regressão, é hora de automatizá-lo automação garante
que os testes executados sempre que o código for alterado, fornecendo
feedback imediato sobre se o novo código violou alguma funcionalidade
existente. Usando o Jenkins para automatizar o teste de
regressão, o fluxo de trabalho pode ter essa
aparência Primeiro, um desenvolvedor permite uma alteração de código no repositório Em seguida, o Jenkins aciona
automaticamente do teste de regressão Se todos os testes forem aprovados, o pipeline prosseguirá
com a implantação Se algum teste falhar, Jenkins interrompe o processo
e alerta a equipe Automatizar os testes de regressão
dessa forma garante
que nenhuma alteração no código chegue à produção sem ser exaustivamente testada quanto a
possíveis efeitos colaterais Etapa quatro, integre o teste de
regressão em seu pipeline de CICD. Para máxima eficiência, o teste de
regressão deve ser totalmente
integrado ao seu pipeline CICD. Isso significa que eles são executados
automaticamente como parte
do processo de desenvolvimento junto com testes
unitários e testes de
integração. Aqui está um
teste típico de regressão de
pipeline CICD teste típico de regressão de
pipeline Um, confirmação de código. Um desenvolvedor envia o código
para o repositório principal. Em seguida, testes unitários. Jenkins executa um teste
de unidade automatizado para verificar se
os componentes individuais funcionam conforme o esperado Terceiro, testes de regressão. Jenkins executa o conjunto de
testes de regressão para garantir que a alteração do código não tenha quebrado
nenhuma funcionalidade existente Em seguida, testes de integração. Jenkins testa como o novo código interage com outros
sistemas ou componentes E, finalmente, implantação. Se todos os testes forem aprovados, o código será implantado na
produção Ao integrar o
teste de regressão ao pipeline, você garante que o teste
seja contínuo e ocorra automaticamente
em todas as etapas
do ciclo de desenvolvimento Melhores práticas para testes de
regressão eficazes. Para tirar o máximo proveito do
seu teste de regressão, siga as melhores práticas Primeiro, priorize áreas de alto risco. Nem todas as partes do
seu aplicativo exigem o mesmo
nível de teste. Concentre seus
testes de regressão nas áreas mais críticas para
a operação do sistema Para mainframes, isso pode incluir cálculos financeiros, processamento de
transações
ou testes de integridade de dados Segundo, mantenha sua suíte de testes. À medida que seu aplicativo evolui, suíte de testes de
regressão
também deve Atualize regularmente
seus testes para cobrir novos recursos e garantir que eles reflitam o
estado atual do sistema. Remova testes obsoletos
que não se aplicam mais. Em terceiro lugar, execute testes com frequência. Quanto mais vezes você executar
o teste de regressão, mais cedo poderá
detectar e corrigir problemas Ao automatizar seus testes e integrá-los ao pipeline do CICD, você pode garantir que eles sejam executados
sempre que o código for confirmado, reduzindo o risco de Quarto, use
dados reais para testes. Sempre que possível, use dados do mundo
real em
seu teste de regressão Isso garante que os testes sejam tão realistas quanto possível e que seu sistema se comporte corretamente em ambientes de produção As principais conclusões desta lição
incluem que o teste
de regressão é essencial para garantir que novas alterações no código não interrompam a funcionalidade
existente, especialmente em sistemas de mainframe complexos Automatize os testes de regressão
e integre-os ao seu pipeline de CICD para garantir que os testes sejam
contínuos e eficientes melhores práticas incluem
priorizar áreas de alto risco, manter sua suíte de testes, executar testes com frequência
e usar dados reais Vamos fazer uma atividade de aprendizado. Identifique um recurso de missão
crítica em um de seus
aplicativos de mainframe que
sempre deve ser testado em regressão
após qualquer alteração no código Escreva um teste de regressão para esse recurso abrangendo casos
típicos e extremos Teste automatizado usando Jenkins ou outra ferramenta CICD e compartilhe sua configuração no fórum de discussão do
curso O que vem a seguir? No próximo módulo, passaremos à automatização de
implantações para aplicativos de mainframe. Você aprende a usar ferramentas
como o Ansib IBM Urban Code ou BMC Control para agilizar o processo de implantação e
garantir implementações tranquilas e garantir implementações tranquilas
22. Aula 1: automatizando implantações de aplicativos de mainframe: Módulo seis, simplificando a
implantação com automação. Neste módulo,
exploraremos o seguinte: como automatizar a implantação de
aplicativos de mainframe usando ferramentas como
answerable, IBM Urban code e PMC Control M. Melhores práticas para garantir implantações
confiáveis em sistemas de missão crítica, como implementar mecanismos de
reversão para recuperação rápida Ao final deste módulo, você terá o conhecimento
e as ferramentas para automatizar seu processo de implantação, reduzindo tempo de inatividade e
aumentando Primeira lição, automatizando as implantações de aplicativos de mainframe
. Bem-vindo à primeira
lição do módulo seis. Até agora,
exploramos o poder da
automação, dos testes
e dos processos CICD. Agora é hora de
focar em uma fase crítica na implantação do
ciclo de vida do software. Nesta lição,
vamos nos
aprofundar na automação das implantações de aplicativos de mainframe Exploraremos ferramentas como
Ansib, IBM Urban code e VMC Control M e aprenderemos como elas
simplificam
e automatizam
as implantações, garantindo velocidade e as implantações, garantindo velocidade e confiabilidade Ao final desta lição, você entenderá o seguinte: como automatizar implantações em seu sistema
de formulários principal As melhores práticas para garantir que as
implantações sejam fáceis, livres
de erros e reproduzíveis Como a automação reduz a intervenção
manual e garante
resultados consistentes. Vamos começar. Por que automatizar as implantações de mainframe
? A implantação de aplicativos
em mainframes sempre
foi um processo
manual e complexo Essa abordagem manual pode levar a erros, atrasos e
inconsistências,
principalmente em
ambientes em que o
tempo de inatividade ou os erros podem causar grandes interrupções, como erros, atrasos e
inconsistências,
principalmente em
ambientes em que o
tempo de inatividade ou os erros podem
causar grandes interrupções, como
sistemas bancários ou de saúde. É aqui que a automação entra
em cena para resolver esses problemas. A automatização das implantações de mainframe oferece vários benefícios. Primeiro, consistência. As implantações automatizadas
sempre
seguem as mesmas etapas , reduzindo o erro humano Em segundo lugar, a velocidade, uma tarefa que antes levava horas, agora pode ser
concluída em minutos. Em terceiro lugar, redução do tempo de inatividade. Implantações automatizadas
minimizam o tempo de inatividade, um fator crítico para sistemas de
missão crítica Quarto, escalabilidade. A automação permite que você implante em vários
ambientes em grande escala, esteja você gerenciando
um único mainframe ou uma frota de servidores.
Vamos dar um exemplo. Imagine trabalhar em um grande banco onde novos patches de segurança precisam ser implantados em
vários sistemas de mainframe em diferentes regiões Fazer isso manualmente
pode ser lento e arriscado. automação do
processo de implantação garante que patches sejam aplicados de
forma consistente e rápida, reduzindo o risco de vulnerabilidades de
segurança e Escolhendo a ferramenta certa
para automação de implantação. Há várias ferramentas poderosas disponíveis para automatizar implantações de
mainframe Cada um tem seus próprios pontos fortes dependendo do ambiente
e dos requisitos Vamos explorar três opções
populares: Ansibo, IBM Urban code
e BMC Responsável. O Answerable é uma ferramenta de
automação de código aberto que pode ser usada para gerenciar tarefas de
implantação em diferentes ambientes,
incluindo mainframes É conhecido por sua simplicidade e arquitetura sem agentes. Os principais recursos incluem menos agentes. O AnsiBL não exige a instalação de
agentes em seu mainframe, reduzindo a sobrecarga.
Manuais Você define
tarefas de implantação em playbooks, arquivos Yamal
simples que são
fáceis de escrever e entender Escalabilidade. O Answerable
pode gerenciar implantações em centenas de sistemas
simultaneamente. Como funciona. Você escreve um
manual responsável que descreve
as etapas de implantação,
como copiar arquivos, enviar trabalhos ou executar
comandos O Ansib então executa essa
etapa na ordem correta, garantindo que a implantação seja
consistente em todos os sistemas Aqui está um exemplo de um manual para implantar um aplicativo de
cobot Implantação da IBM Urban Co. O IBM Urban Co Deploy é uma ferramenta
poderosa projetada especificamente para
automatizar implementações
em ambientes corporativos complexos É amplamente utilizado para implantações de
mainframe em setores como bancos,
telecomunicações Os principais recursos incluem modelos de implantação
visual. Você pode criar modelos visuais
do seu processo de implantação, facilitando o
gerenciamento de fluxos de trabalho complexos Gerenciamento de ambiente O código
urbano permite que você implante em vários
ambientes, como desenvolvimento, preparação e produção,
em um único fluxo de trabalho Integração, ele se integra
a outras ferramentas, como Jenkins e Ansible, fornecendo flexibilidade em Como funciona. O
código urbano automatiza implantação executando processos
definidos , como transferência de arquivos, execução de trabalhos JCL e Ele oferece
opções de reversão caso algo dê errado,
garantindo implantações seguras Exemplo de cenário:
você está implantando um novo recurso para um sistema de processamento de
sinistros de seguros código urbano automatiza
a transferência do novo código para o mainframe, envia as tarefas necessárias
e verifica se o recurso
está funcionando corretamente
antes de movê-lo para a está funcionando corretamente
antes O código urbano automatiza
a transferência
do novo código para o mainframe,
envia as tarefas necessárias
e verifica se o recurso
está funcionando corretamente
antes de movê-lo para a produção.
Controle. BMC Control M é
outra ferramenta popular para gerenciar cargas de trabalho em lote
e automatizar Ele foi projetado para ambientes
complexos e oferece suporte à integração
com sistemas de mainframe Os principais recursos incluem
um agendamento abrangente. O controle é excelente no gerenciamento de agendamentos
complexos de trabalhos em diferentes
ambientes. Automação do trabalho. Ele automatiza todo o ciclo de vida do
trabalho, da execução ao monitoramento.
Gerenciamento de lotes. Ideal para gerenciar cargas de trabalho
em lotes, que são comuns em ambientes de
mainframe Como funciona, o Patrol M
permite automatizar os processos de execução
e implantação de trabalhos Você pode definir dependências
entre trabalhos e garantir que as tarefas sejam executadas
na ordem correta Ele também oferece monitoramento
em tempo real, para que você possa ver exatamente onde sua implantação
está a qualquer momento. Exemplo de cenário:
você está implantando um
processo em lote atualizado para lidar com transações
noturnas
para um banco global Control M automatiza a
execução desse processo, garantindo que ele seja executado
no prazo e concluído com êxito, além de
alertá-lo se surgir algum problema Melhores práticas para automatizar implantações de
mainframe. Agora que
abordamos as ferramentas, vamos falar sobre as melhores práticas para automatizar implantações de
mainframe Essas práticas
ajudarão a garantir que suas implantações sejam fáceis,
confiáveis e reproduzíveis Primeiro, use o controle de versão
para scripts de implantação. Assim como no código do aplicativo, seus scripts de implantação
devem ser armazenados em um
sistema de controle de versão como o Git Isso permite que você acompanhe as alterações em seu processo de
implantação, colabore com
outros membros da equipe e reverta para as versões
anteriores se algo der errado Por exemplo, imagine que você acabou atualizar um script de implantação para adicionar um novo recurso de segurança. Mais tarde, você descobre que essa alteração interrompeu o processo de
implantação. Ao ter sua
versão do script no Gib, você pode reverter rapidamente para a versão de trabalho
anterior Em segundo lugar, implemente um tratamento
robusto de erros. As coisas nem sempre
saem conforme o planejado, especialmente em ambientes complexos de
mainframe. Certifique-se de que sua
automação de implantação inclua tratamento de
erros para detectar
e gerenciar falhas. Por exemplo, se uma tarefa da JCL falhar, o processo de implantação deverá
ser capaz de registrar o erro, notificar a equipe e, potencialmente,
reverter as alterações Em terceiro lugar, teste na preparação
antes da produção. Nunca implante diretamente produção sem testar
em um ambiente de preparação. Isso ajuda você a detectar quaisquer
problemas com antecedência e a garantir que o processo de implantação seja
tranquilo antes de afetar os usuários. Quatro mecanismos de
reversão automatizados. A automação da implantação não
consiste apenas em colocar o código ativo. Também se trata de reverter
quando algo dá errado. Certifique-se de que seu
processo de automação inclua mecanismos de reversão
automatizados que possam
reverter rapidamente para uma versão
estável anterior se uma principais conclusões
desta lição incluem automatizar implantações,
reduzir a intervenção manual, minimizar erros e acelerar lançamento de sistemas de missão
crítica Ferramentas como NCB, IBM Urban code e BMC Control são opções
poderosas para automatizar e BMC Control são opções
poderosas para automatizar
implementações em ambientes de mainframe. Siga as melhores práticas, como
usar ambientes de controle de versão , tratamento de
erros e
preparação para garantir que as implantações
sejam fáceis e confiáveis Vamos fazer uma atividade de aprendizado. Escolha uma das ferramentas
que discutimos sobre respondíveis, IBM Urban Code ou o BMC Control M, e escreva um processo de
implantação simples para um aplicativo de mainframe Implemente o processo em um ambiente de teste e teste a implantação para garantir que
ela funcione sem problemas Compartilhe sua experiência no fórum de discussão do
curso, explicando todos os desafios que você encontrou e como
resolvê-los. O que vem a seguir? Na próxima lição, discutiremos como implementar mecanismos de
reversão e recuperação
para implantação automatizada Você aprenderá a lidar com falhas de
implantação e garantir uma recuperação rápida
com o mínimo de tempo de inatividade
23. Aula 2: criando mecanismos de rollback e recobrimento: Lição dois, criando mecanismos de reversão
e recuperação. Bem-vindo à lição
dois do módulo seis. Em nossa lição anterior, exploramos como automatizar mainframe Mas o que acontece quando
as coisas não saem como planejado. Nesta lição, vamos nos concentrar em um aspecto crucial dos mecanismos de automação,
reversão e
recuperação da
implantação reversão e
recuperação As implantações não são infalíveis
e, quando algo dá errado, você precisa encontrar uma maneira de voltar
rapidamente para um estado estável, minimizando o tempo de inatividade Ao final desta lição, você saberá como
fazer o seguinte. Implemente processos de
reversão automatizados em caso de falha Garanta um tempo mínimo de inatividade
e uma recuperação rápida durante problemas de implantação Use estratégias do mundo real para se preparar para falhas inesperadas
de implantação. Vamos começar e
aprender como garantir que suas implantações
não sejam apenas rápidas, mas seguras Por que os
mecanismos de reversão e recuperação são importantes? Implantar a produção de código é sempre uma operação de alto risco, especialmente em ambientes de missão crítica,
como mainframes, onde a falha na implantação
pode interromper os serviços bancários, saúde Embora busquemos implantações
tranquilas, as coisas podem dar errado e podem dar errado. Os bugs desaparecem, os sistemas
se comportam de forma inesperada ou as configurações podem
não estar Com nossa estratégia de reversão, você se esforça para
resolver o problema manualmente Isso pode levar a um tempo de inatividade
prolongado, frustração dos usuários e a possíveis
danos ao sistema Ao implementar mecanismos automatizados de reversão e
recuperação, você garante que, quando surgir
um problema, você possa
reverter rápida
e automaticamente para um bom estado conhecido Vamos dar um exemplo. Digamos que você esteja implantando
um novo recurso para lidar com pedidos de empréstimo
em um sistema bancário Tudo parece
bem nos testes. Mas, uma vez em produção, o sistema começa a calcular mal as taxas de juros para
determinados tipos de empréstimos Em vez de se esforçar para corrigi-lo ao vivo e permitir que os usuários
encontrem o bug, um processo de reversão automatizado pode detectar a falha e
restaurar a versão
estável anterior
antes que ela afete os antes Identificação de
pontos-chave para reversão. A primeira etapa na implementação de
um mecanismo de reversão é entender o que
deve acionar uma Isso envolve a identificação de
pontos-chave
no processo de implantação em que algo pode
falhar ou dar errado. reversão deve ser acionada quando qualquer uma dessas
condições for Falhas no código. O código
recém-implantado tem bugs ou
erros
críticos. Falhas no trabalho. Um trabalho em lotes, um script JCL ou processo
automatizado não são
concluídos conforme o esperado Degradação do desempenho do sistema. O sistema fica mais lento ou
começa a gerar erros
devido a integração de carga A nova implantação
não interage bem com outros
sistemas ou serviços. Quando algum desses problemas surgir, o mecanismo de reversão
deve ser ativado para restaurar a versão estável anterior
do código ou
da configuração do sistema Por exemplo, você implanta um novo módulo COBOL
que deveria
calcular bônus para funcionários,
mas após a implantação, percebe que os
trabalhos de folha de pagamento estão Isso desencadearia uma reversão
automática, restaurando a versão
anterior do sistema de folha de pagamento para
que os funcionários continuassem recebendo Implementando a
reversão automatizada com ferramentas. Há várias
ferramentas disponíveis que podem automatizar o processo de
reversão Vamos ver como o código
IBM Urban e o controle
BMC, responsáveis, código
IBM Urban e podem ajudar a automatizar reversões Reverter com responsável. Answerable permite que você
defina tarefas de reversão
em seus manuais Essas tarefas podem reverter arquivos, configurações ou sistemas para nossa versão anterior. Como funciona. Se uma tarefa de implantação falhar, o responsável poderá acionar um processo de reversão
predefinido Você pode definir etapas como
reverter o código, restaurar arquivos de um backup ou reimplantar uma Aqui está um exemplo de
manual para reversão. Neste manual, o
responsável verifica erros e
reverte automaticamente se algo der errado Reverta com o IBM
Urban code Deploy. O IBM Urban cod Deploye
suporta a reversão
automatizada permitindo que você configure processos de reversão em caso de falha Ele se integra aos
pipelines do CICD para reverter para a última implantação
da tabela
se um última implantação
da tabela
se um erro for detectado.
Como funciona. código urbano rastreia
cada implantação Voltar para uma versão
anterior é tão simples quanto executar
um plano de reversão,
que pode restaurar arquivos, que pode restaurar arquivos, configurações ou Cenário de exemplo. Durante a implantação de
um novo recurso, um script que atualiza o esquema do
banco de dados falha código urbano detecta
a falha e reverte
automaticamente o sistema para o último estado estável, garantindo que não haja
interrupção no serviço. Reversão com o BMC
Control M. O BMC Control M lida com a reversão automatizando
a restauração lida com a reversão automatizando
a restauração de tarefas e configurações em lote. Se uma tarefa falhar, o
Control M poderá executar processos
de reversão para restaurar o estado anterior
do sistema. Como funciona. O Control M permite programar trabalhos de
reversão que são acionados quando determinadas condições são atendidas, como uma falha de trabalho ou erro
durante um processo em lote Exemplo de cenário: um processo
em lote que processa essa transação do cliente
falha no meio do processo. Control M detecta o problema e
reverte automaticamente o sistema para o último lote concluído garantindo que nenhuma
transação do cliente seja perdida Melhores práticas para
reversão e recuperação. Ao configurar mecanismos de
reversão, há várias
práticas recomendadas que você deve seguir para garantir
que funcionem Primeiro, certifique-se de que as reversões
sejam reversíveis. Sempre garanta que qualquer reversão implementada possa
ser facilmente Em alguns casos, uma reversão pode corrigir um problema, mas
criar outro,
portanto, você deve ter a
capacidade de reaplicar a implantação original
depois de resolver
o Em segundo lugar, teste os procedimentos de
reversão. Não basta ter um plano de
reversão em vigor. Você precisa testá-lo regularmente para garantir que funcione conforme o esperado. Simule falhas de implantação
em um ambiente de teste e verifique se o processo
de reversão restaura o verifique se o processo
de reversão restaura o sistema corretamente. Em terceiro lugar, automatize as reversões
para os principais cenários. Automatize as reversões para os cenários
mais críticos como falhas de trabalho, erros
críticos no aplicativo ou degradação
do desempenho do sistema Isso garante que
seu sistema se recupere rapidamente sem a necessidade de intervenção
manual Quatro, monitore as métricas
de implantação. Configure ferramentas de monitoramento para
monitorar o desempenho da implantação e acionar
automaticamente os procedimentos de
reversão
quando os principais limites forem ultrapassados Isso pode incluir tempos de
resposta, taxas
de erro ou apenas o sistema. As principais conclusões desta lição
incluem que mecanismos
de reversão são essenciais para minimizar o tempo de inatividade e garantir Automatize as reversões usando
ferramentas como o answerable, o
IBM Urban code ou o BMC Control M
para voltar aos estados
estáveis anteriores quando surgirem problemas de implantação IBM Urban code ou o BMC Control M para voltar aos estados
estáveis anteriores quando surgirem . Siga as melhores práticas, como garantir que as reversões
sejam reversíveis, testar os procedimentos
e automatizar as
reversões para os principais pontos de falha reversões Vamos fazer uma atividade de aprendizado. Escolha uma
ferramenta de implantação, responsável, IBM Urban Code ou BNC Control e configure um processo de
reversão automatizado
para um aplicativo para Simule uma falha de implantação em um ambiente de teste e teste seu mecanismo de reversão
para garantir Compartilhe sua experiência no fórum de discussão do
curso, incluindo todos os desafios que você encontrou e como
você os superou O que vem a seguir? Na próxima lição, vamos nos concentrar em monitorar e gerenciar
implantações automatizadas Você aprenderá a usar ferramentas para monitorar o processo de
implantação, gerenciar registros e garantir que tudo
corra bem em tempo real
24. Aula 3: monitorando e gerenciando implantações automatizadas: Lição três, monitoramento e gerenciamento de
implantações automatizadas Bem-vindo à lição
três do Módulo seis. Já abordamos
como automatizar implantações e criar mecanismos de
reversão Agora é hora de
focar em como monitorar e gerenciar
implantações automatizadas de forma eficaz. A automação simplifica
as implantações, mas é fundamental
monitorar esses processos para monitorar esses processos para garantir que tudo corra bem Nesta lição, você
aprenderá como rastrear
suas implantações, gerenciar registros e detectar quaisquer problemas antes
que eles se tornem problemas Exploraremos ferramentas
que ajudam você a olho na ajuda de implantação, garantindo um ciclo de lançamento tranquilo. Ao final desta lição, você entenderá
o seguinte: como monitorar
implantações em tempo real As melhores ferramentas e
técnicas para
rastrear o status e os registros de implantação. Como solucionar problemas e
resolvê-los rapidamente durante a implantação Vamos mergulhar no mundo do
monitoramento e do gerenciamento de implantações
automatizadas Por que monitorar
implantações automatizadas é fundamental. Imagine que você acabou de iniciar uma implantação automatizada em
um sistema de missão crítica Tudo parece
estar funcionando bem. Até que, de repente, o
sistema fica mais lento, o trabalho começa a falhar e os
erros são relatados Sem o monitoramento adequado, talvez
você nem saiba que algo deu errado
até que seja tarde demais. monitoramento de suas
implantações fornece informações
em tempo
real sobre o seguinte Falha no sucesso da implantação. As novas atualizações estão
funcionando conforme o esperado? Métricas de desempenho. O sistema está lidando com as novas mudanças sem degradar
o desempenho Rastreamento de erros. algum aviso ou erro
que precise de atenção Em ambientes de mainframe onde tempo de inatividade ou os erros
podem ser caros, monitoramento é sua Ele fornece a visibilidade de que você
precisa para responder rapidamente aos problemas antes que eles afetem seus usuários ou processos
de negócios. Vejamos um exemplo. Você trabalha para um
banco global e acaba implantar um novo recurso que automatiza a
detecção pontual em tempo real Se a implantação
encontrar problemas,
por exemplo, tempos de resposta lentos ou processamento incorreto de
dados, o sistema de monitoramento poderá
sinalizar esses problemas com antecedência, permitindo que você
reverta ou corrija o problema antes que ele afete as transações do
cliente Escolhendo as ferramentas
de monitoramento certas. Há várias
ferramentas disponíveis para monitorar implantações de
mainframe, e a correta
depende do seu ambiente, das ferramentas de
implantação e das necessidades de
monitoramento Aqui estão algumas das opções mais
usadas. IBM Omega moon para
monitoramento de mainframes. O IBM Zima Omega moon é uma ferramenta de monitoramento amplamente usada projetada
especificamente
para mainframes Ele fornece monitoramento de
desempenho em tempo real, recursos
de solução e registros detalhados das atividades do
sistema. principais recursos incluem que ele monitora a
integridade do sistema em tempo real, fornecendo informações sobre
o uso do CPE, memória e as operações de E/S Ele rastreia o status do trabalho e alerta você sobre falhas
ou problemas de desempenho. Ele fornece registros históricos para analisar implantações
anteriores Exemplo, use. Depois de implantar um novo recurso em um sistema de
gerenciamento de saúde, a Omegamon monitora o
desempenho para garantir que os registros dos
pacientes sejam processados
rapidamente e sem erros Se o desempenho
começar a diminuir, Omegamon alertará você, permitindo que você tome medidas
imediatas Splunk para análise de
gerenciamento de registros. Splunk é uma
ferramenta popular para coletar, pesquisar e analisar
registros de diferentes sistemas É amplamente usado para agregação de
registros, facilitando o rastreamento de eventos e erros em todo
o ambiente principais recursos incluem coleta e agregação de registros de aplicativos de
mainframe, trabalhos
em lotes e
processos de implantação Fornece painéis visuais para monitorar as principais métricas e eventos Permite a pesquisa e
análise de registros em tempo real para
detectar problemas precocemente. Exemplo de uso. Durante a implantação de um trabalho
em lote, Splunk coleta registros de
vários estágios do processo Se um trabalho específico falhar, alertas e registros do
Splunk ajudarão você a
identificar rapidamente o problema, seja um problema de configuração ou um
erro do sistema Jenkins para monitoramento de
tubulações CICD. Se você estiver usando o Jenkins
para seus pipelines do CICD, ele vem com recursos integrados de monitoramento
e alerta Jenkins pode monitorar os estágios
de implantação, os resultados dos
testes e a ajuda
geral na criação principais recursos incluem que ele fornece feedback em tempo
real sobre estágios
de implantação
e a conclusão do trabalho. Ele alerta você sobre
falhas nas implantações ou problemas no pipeline Ele se integra a
outras ferramentas, como Prometheus e Grafana, para monitoramento e visualização avançados.
Exemplo de uso. Ao implantar um
aplicativo CBL via Jenkins, o sistema monitora cada estágio, compilação de
código, teste,
implantação e produção, se alguma Isso ajuda você a resolver problemas imediatamente e a manter a
tubulação funcionando sem problemas. Registros de rastreamento de
sucesso ou falha. Os registros são seus melhores
amigos quando se trata de entender o que
aconteceu durante uma implantação. Os registros fornecem
informações detalhadas sobre o que funcionou, o que falhou e por quê. Mas gerenciar registros de forma eficaz
exige uma estratégia. Veja como abordar o gerenciamento de
registros durante a implantação
automatizada. Primeiro, centralize seus registros. Certifique-se de que todos os registros, sejam eles do mainframe, trabalhos
em lote ou sistemas externos estejam centralizados em um único local Isso permite que você os
pesquise facilmente, encontre padrões e
resolva problemas mais rapidez. Ferramentas que você pode usar. Use ferramentas como o Sprumk ou o help stack para agregar registros Em segundo lugar, use
análise de registros e alertas. Simplesmente ter registros não é suficiente. Você precisa analisá-los para obter informações
significativas e
configurar alertas para que determinados limites
ou erros sejam Por exemplo, você pode configurar alertas para as
seguintes falhas de trabalho, alto uso da CPU ou da memória, erros ou avisos
nos registros do aplicativo Em terceiro lugar, monitore
as principais métricas nos registros. Concentre-se nas métricas que mais
importam para sua implantação. Isso pode incluir tempos
de conclusão do trabalho. Um trabalho demorando mais do que
o esperado? Taxas de erro. Alguns códigos de erro
aparecem com mais frequência
após a implantação? Desempenho do sistema. Como o tempo de resposta do sistema
mudou após a implantação? Monitoramento de implantação em tempo real. monitoramento em tempo real
permite que você detecte e resolva problemas
antes que eles se agravem Vamos dar uma olhada em como o monitoramento em
tempo real funciona na prática. Primeiro, configure alertas
e limites. Ferramentas de monitoramento como
IBM Z, Omega moon, Jenkins ou Splunk permitem que você configure limites
para Por exemplo, você pode
definir um limite para uso do
CP durante uma implantação e, se esse limite
for excedido, o sistema o
alertará Segundo, use painéis para obter informações em tempo
real. Os painéis fornecem uma visão rápida da integridade de suas
implantações Ferramentas como o Grafana ou o
Splunk permitem que você crie painéis
visuais que
exibem métricas importantes como taxas de sucesso, trabalhos não implantados,
métricas de desempenho
do sistema, como uso e memória da CPU,
além de registros e erros Em terceiro lugar, monitore as dependências. As implantações de mainframe geralmente envolvem vários sistemas
interconectados monitoramento em tempo real
permite que você acompanhe como as mudanças em uma parte
do sistema afetam outras. Por exemplo, uma
implantação que atualiza um aplicativo financeiro pode afetar a
execução de trabalhos em lotes em paralelo. O monitoramento dessas dependências ajuda a evitar falhas na patinação. Melhores práticas para monitorar implantações
automatizadas. Para garantir que suas
implantações sejam bem monitoradas e que quaisquer
problemas sejam detectados precocemente, siga estas melhores práticas Um, conjunto de alertas
para métricas críticas. Certifique-se de ter alertas definidos para métricas importantes,
como sucesso no trabalho, taxas de
falha,
desempenho do sistema e registros de erros. Esses alertas devem ser acionados imediatamente se
algo der errado, permitindo um tempo de resposta rápido. Em segundo lugar, use painéis
para obter informações rápidas. Painéis Os painéis oferecem visibilidade em tempo
real do
status de suas Use ferramentas como os painéis Grafana, Splunk ou Jenkins para monitorar as implantações
à medida que elas acontecem Três, agregue os registros
e configure a análise dos registros. Registros centralizados em
todos os seus sistemas usando ferramentas como Splunk ou SAC Certifique-se de que os registros sejam analisados
para obter informações importantes e configure alertas para mensagens de erro
comuns ou problemas de desempenho Quatro, monitore todos
os ambientes. Não monitore apenas a produção. Configure o monitoramento em
todos os ambientes, incluindo desenvolvimento
e preparação Isso ajuda você a
detectar problemas precocemente e garante implantações de
produção mais As principais conclusões desta
lição incluíram o monitoramento de implantações
automatizadas para
garantir que quaisquer problemas sejam detectados precocemente, evitando
tempo de inatividade Ferramentas como IBMZ,
Omega Mon, Splunk e Jenkins fornecem rastreamento em tempo
real, gerenciamento de
registros e alertas e Jenkins fornecem rastreamento em tempo
real, gerenciamento de
registros e alertas
para métricas críticas de implantação. Use painéis para
obter uma visão rápida de
sua célula de implantação e
configurar alertas para os principais pontos de
falha Vamos fazer uma atividade de aprendizado. Escolha uma ferramenta de monitoramento, IBM Z Omegamon Splunk ou Jenkins, e configure monitoramento em tempo
real para Configure alertas para
métricas importantes, como sucesso no trabalho, redução nas taxas de falha,
desempenho do sistema e registros de erros Compartilhe sua experiência no fórum de discussão do
curso e descreva como você gerencia os registros e monitora o processo de
implantação. O que vem a seguir? Na próxima lição, abordaremos
estratégias de implantação, como implantações
canárias e implantações em azul esverdeado,
que reduzem o risco
durante as que reduzem o risco Você aprenderá a implementar
essas estratégias em mainframes para garantir implementações
suaves e de baixo risco
25. Aula 4: estratégias de implantação: Canário, Azul-Verde e Mais: Lição quatro, estratégias de
implantação, Cary, azul verde e muito mais Bem-vindo à lição
quatro do módulo seis. Até agora, abordamos como
automatizar implantações, lidar com reversões e monitorar
seus processos de implantação Agora é hora de falar sobre estratégias de
implantação
que reduzem os riscos e garantem atualizações sem problemas. Nesta lição, você aprenderá como as diferentes
estratégias de implantação
ajudam a implementar
mudanças com mais segurança, minimizando o tempo de inatividade e
o risco de Vamos nos concentrar em duas estratégias
populares, Canara e implantações em
azul e verde Ambos foram projetados para proteger seu sistema
liberando alterações gradualmente, facilitando a detecção e a resolução de problemas antes que eles
afetem toda a base de usuários Ao final desta lição, você entenderá
como implementar canary e blue green estratégias de
implantação
canary e blue green
em mainframes Os benefícios dessas estratégias para reduzir o risco
durante as atualizações. Práticas recomendadas para escolher a estratégia certa
para seu ambiente. Vamos nos aprofundar e explorar como essas
estratégias de implantação podem tornar suas atualizações mais
confiáveis e livres de estresse. Por que
as estratégias de implantação são importantes. Antes de entrarmos nos detalhes
das implantações
canary e blue
green, vamos falar sobre por que as
estratégias de implantação Imagine que você está trabalhando para uma grande
seguradora e precisa
implantar um novo recurso que mude a forma como as
reclamações dos clientes são processadas. Se você simplesmente colocar essas
atualizações no ar de uma só vez, geralmente chamada de
implantação de um grande banco , e
algo der errado, todo
o sistema de sinistros poderá falhar,
interrompendo milhares de transações de clientes Em vez disso, e se pudéssemos
lançar a atualização para um pequeno subconjunto de usuários, pressionar para
observar seu desempenho
e, em seguida,
distribuí-la gradualmente para todos os outros? Essa é a essência das implantações em canário
e azul esverdeado. Eles ajudam você a reduzir o risco lançando atualizações em partes menores e
mais gerenciáveis, garantindo que, se
algo der errado, o Agora, vamos detalhar essas
estratégias com mais detalhes. Implantações em Canary. Uma implantação canária é uma
estratégia em que você implanta uma nova versão do
seu aplicativo para um pequeno subconjunto de usuários,
o canário, antes de
liberá-la gradualmente para o
resto da sua base de O termo vem da
antiga prática de enviar canários
às minas de carvão para detectar gases perigosos Se algo desse
errado com o canário, os mineiros saberiam evacuar Em implantações canárias, se algo der errado
com uma nova atualização, apenas uma pequena porcentagem
de usuários é afetada, permitindo que você
interrompa
ou reverta a implantação antes que
ela Como as implantações canárias
funcionam em mainframes? Em um ambiente de mainframe, as implantações canárias podem ser usadas para lançar
atualizações para trabalhos incorretos, código de
aplicativo ou Veja como isso pode
funcionar. Primeiro, você atualiza um programa CBL que
calcula os prêmios de seguro Então, em vez de implantar a
nova versão para todos os usuários, você a libera para 10% do
seu ambiente de produção Você monitora como esse
grupo é afetado. Se tudo funcionar conforme o esperado, você lança a atualização
para mais 20% e assim por diante. Se o sistema detectar erros,
por exemplo, cálculos de
prêmios incorretos, você interrompe a implantação,
investiga o problema e o corrige ou
volta para a Por exemplo, você está implantando um novo recurso para o sistema de
processamento de sinistros em uma seguradora Primeiro, você o
libera para um pequeno grupo de funcionários que registram
reclamações internamente Depois de uma semana sem problemas, você estende a versão
para usuários externos em uma região antes de finalmente
lançá-la em todo o país Benefícios das implantações de canários. Reduza o risco, apenas um pequeno grupo de usuários está exposto
a possíveis problemas. Reversão anterior. Se
algo der errado, você poderá
interromper rapidamente a implantação ou reverter para a versão
anterior. implantação gradual permite que
você observe o desempenho da atualização em condições reais
antes da implantação completa Implantações em azul e verde. Uma implantação azul esverdeada
é uma estratégia em que você tem dois ambientes de
produção idênticos, um azul, que é
a versão atual, e um verde, que
é a nova versão. Você implanta a nova
versão verde um ambiente separado enquanto mantém a
versão antiga azul ativa. Quando tiver certeza de que a
nova versão funciona corretamente, você alterna o tráfego
de azul para verde. Se algo der errado, você pode facilmente
voltar para o azul. Como as implantações Blue Green
funcionam no mainframe? Em um ambiente de mainframe, as implantações
azul-esverdeadas
permitem alternar com segurança entre
versões de trabalhos em lote,
bancos de dados ou
código de aplicativo sem Veja como funciona. Primeiro, você tem dois ambientes idênticos, azul, que é o sistema
atual, e verde, que é
o sistema atualizado. Você implanta o novo programa
Cobalt ou JCL no ambiente verde
e
executa testes para garantir que ele funcione
conforme o Quando tiver certeza de que a
nova versão está estável, você muda todos os tráfegos ou
trabalhos para o ambiente verde Se surgir algum problema, basta voltar para o ambiente azul sem tempo
de inatividade Por exemplo, você está atualizando um sistema de folha de pagamento
para um banco global Você implanta a nova tarefa de processamento da
folha de pagamento no ambiente verde e a
testa com dados não críticos Depois de verificar se funciona, você move todas as
transações da folha de pagamento para o ambiente verde Se surgir um problema, você pode voltar instantaneamente para
o ambiente azul para manter a
folha de pagamento funcionando sem problemas Benefícios das
implantações azul-esverdeadas, zero tempo de inatividade. alternância entre
ambientes é perfeita, para que os usuários nunca tenham
tempo de inatividade durante É reversão. Se a
nova versão falhar, você poderá
voltar imediatamente para a versão antiga. Isolamento. A nova versão
é totalmente isolada, portanto, os testes podem ocorrer
sem afetar os usuários. Outras estratégias de implantação. Embora as
implantações canary e blue green sejam as mais comuns, aqui estão algumas outras
estratégias que podem ser úteis
dependendo do seu ambiente A primeira são as implantações
contínuas. Em uma implantação contínua, você atualiza uma partição de servidor ou
mainframe por vez Isso permite que você
substitua gradualmente a versão
antiga pela nova,
minimizando os riscos e
evitando a necessidade duplicar ambientes,
como em azul Dois, teste AB. Um teste B permite que você
execute duas versões do aplicativo
simultaneamente com diferentes grupos de usuários. Isso é ideal para
testar novos recursos ou experiências de
usuário antes de
se comprometer com uma implementação completa Escolhendo a estratégia
de implantação correta. Como você escolhe a estratégia de implantação
certa para seu ambiente de mainframe implantação do Canary é
melhor quando você deseja implantar atualizações
gradualmente
e monitorar o desempenho Você está lidando com sistemas de
missão crítica nos quais falhas podem ter consequências
significativas. azul esverdeado é ideal quando você não
precisa de tempo de inatividade durante as implantações e deseja a capacidade de
reverter instantaneamente se
algo der errado As implantações contínuas são ótimas para ambientes em que
as restrições de recursos
dificultam a duplicação de
sistemas inteiros e sistemas atualizações
graduais são mais seguras do que implantar
tudo de uma vez teste A/B funciona bem quando
você está experimentando novos recursos ou
otimizações e quer compará-los com a versão
antiga antes de se
comprometer Melhores práticas para implantações
seguras. Para garantir que seu
processo de implantação ocorra sem problemas, siga as melhores práticas Primeiro, monitore cada
estágio da implantação. Use ferramentas de monitoramento
como IBMZ Omega moon ou Splunk para monitorar o desempenho e a experiência
do usuário em
cada estágio Se algo der errado, o quanto antes e ajuste
sua estratégia de lançamento. Segundo, use mecanismos de
reversão automatizados. Se você estiver usando a implantação canária,
azul, verde ou
contínua, configure processos automatizados que possam reverter rapidamente para
a versão anterior
se surgirem problemas Três, teste primeiro em um
ambiente de teste. Antes de implantar na produção, sempre teste novas versões
em um ambiente de teste que imite sua
configuração de produção o máximo possível. Isso ajuda a esboçar problemas
antes que eles afetem os usuários. principais conclusões
desta lição incluem as implantações canárias
lançam atualizações para um pequeno subconjunto de usuários por pessoa, reduzindo os riscos e permitindo As implantações azul-esverdeadas alternam entre dois
ambientes idênticos, permitindo
implantações sem tempo de inatividade e Use implantações contínuas
ou testes A/B para implementações graduais ou ao experimentar novos recursos. Monitore todo o processo e garanta que os
mecanismos de reversão automática estejam em vigor Vamos fazer uma atividade de aprendizado. Escolha uma estratégia de implantação, Canary ou azul esverdeado, e aplique-a a uma simples atualização do
mainframe Por exemplo,
programa Oval ou trabalho JCL. Simule o processo
de implantação em um ambiente de preparação e monitore quaisquer erros
ou problemas de desempenho Compartilhe sua experiência no fórum de discussão
do curso, explicando como a estratégia ajuda você a reduzir os
riscos durante a atualização. O que vem a seguir? No próximo módulo, exploraremos o
monitoramento automatizado para mainframes Você aprenderá por que a
automação do monitoramento é crucial
para detectar problemas em tempo real e as melhores
ferramentas para monitorar o desempenho do
mainframe
26. Aula 1: introdução ao monitoramento automatizado para mainframes: Bem-vindo ao Módulo sete, monitoramento e automação de
resposta a incidentes. Neste módulo, você
aprenderá a fazer o seguinte. Automatize o monitoramento
de mainframes para detectar problemas em tempo real Configure alertas para
problemas e falhas de desempenho. Automatize a
resposta a incidentes para resolver problemas com mais rapidez e
reduzir o tempo de inatividade Ao final deste módulo, você poderá monitorar,
gerenciar e responder
com eficácia a gerenciar e responder quaisquer incidentes do sistema antes
que eles se tornem críticos Primeira lição, introdução ao monitoramento
automatizado
para mainframes Bem-vindo ao Módulo sete. Neste módulo,
exploraremos como monitorar de perto seus sistemas de
mainframe usando o monitoramento automatizado O monitoramento automatizado permite que você detecte problemas em tempo real, garantindo que possíveis
problemas sejam detectados precocemente e tratados antes
que causem interrupções Nesta primeira lição, vamos nos concentrar em por que monitoramento
automatizado
é tão crucial para as operações de
mainframe e explorar ferramentas que você pode usar,
como
o Prometheus Grafana e o IBM Omega moon, para
monitorar o desempenho
e manter a integridade monitorar o desempenho Ao final desta lição, você entenderá a importância
do monitoramento em tempo real para detectar problemas de
desempenho do sistema As principais ferramentas disponíveis
para monitorar mainframes. Como essas ferramentas
ajudam você a manter disponibilidade, o desempenho
e a confiabilidade em seu ambiente de mainframe Vamos começar e
examinar mais de perto
como o monitoramento automatizado mantém seus sistemas de mainframe
funcionando sem problemas Por que o monitoramento automatizado
é crucial para mainframes. Os sistemas de mainframe geralmente são a espinha dorsal de
setores críticos, como bancos, saúde e serviços
governamentais Nesses ambientes, tempo de inatividade ou as falhas do sistema
podem ser catastróficas, causando perda de receita, problemas de
conformidade e
prejudicando Embora o monitoramento manual
seja coisa do passado, os mainframes modernos de
hoje
exigem
ferramentas de monitoramento automatizadas que forneçam informações em tempo
real sobre o desempenho
do sistema Por que exatamente o
monitoramento automatizado é tão importante? Vamos detalhar isso. Detectando
problemas em tempo real. O monitoramento automatizado fornece feedback instantâneo sobre a integridade do seu sistema. Em vez de
esperar que um administrador perceba um problema
ou examine os registros, as ferramentas
automatizadas detectam
problemas em tempo real, desde picos de uso da CPU até vazamentos de
memória e
falhas Por exemplo, imagine que você esteja gerenciando um mainframe para
um grande banco de varejo Durante o horário de pico, o
trabalho em lotes responsável pelo processamento
da transação
começa a falhar devido a restrições de recursos Com o monitoramento automatizado, você recebe um alerta no momento em que
o trabalho começa a falhar, permitindo corrigir o problema antes que os clientes
sejam afetados. Reduzindo a intervenção manual.
Sejamos honestos. Monitorar manualmente o
desempenho do mainframe é entediante, demorado e
propenso a erros humanos monitoramento automatizado
elimina a
necessidade de supervisão humana constante, liberando sua equipe para
se concentrar em tarefas mais valiosas Em vez de examinar manualmente os registros de
desempenho, o sistema
rastreia automaticamente as métricas e envia alertas quando
algo precisa Evitando tempos de inatividade dispendiosos. O tempo de inatividade é caro Seja um
sistema bancário que fica off-line durante o dia de pagamento ou uma plataforma de assistência médica falhando no
meio da noite, cada minuto de inatividade custa dinheiro e As ferramentas de monitoramento automatizadas detectam problemas antes que eles aumentem, permitindo uma resolução mais rápida e evitando interrupções no sistema Aprimorando o desempenho
e a confiabilidade do sistema. O monitoramento automatizado não detecta
apenas problemas. Ele ajuda você a otimizar
o desempenho do seu sistema. Ao
monitorar continuamente as principais métricas como uso da CPU, consumo de
memória e taxa de transferência de E/S, você pode identificar ineficiências
e gargalos, tornando seus Ferramentas para monitorar o desempenho
do mainframe. Agora que sabemos por que o
monitoramento automatizado é essencial, vamos falar sobre as ferramentas
que fazem isso acontecer. Há várias ferramentas poderosas que você pode usar para
monitorar a integridade de
seus sistemas de mainframe e detectar problemas antes que eles
afetem as operações O primeiro é o IBM Omegamon. O IBM Omegamon é uma ferramenta líder para monitorar ambientes de
mainframe Ele fornece informações em
tempo real o desempenho de
seus sistemas ZOS,
rastreando tudo, desde a utilização da CPU desempenho do trabalho
e
as cargas de trabalho do sistema principais recursos incluem monitoramento em tempo
real, visibilidade instantânea do desempenho da CPU, memória, disco e
rede Dados históricos, acompanhe tendências de desempenho de longo
prazo e identifique padrões ao longo do tempo. Alertas detalhados,
configure alertas para principais métricas de desempenho, como falhas de
trabalho ou esgotamento de
recursos do sistema Por exemplo, depois de implantar um novo recurso em um sistema bancário
baseado em mainframe, a
Omega monitora
o desempenho do sistema para garantir que as
velocidades de processamento de transações Se o sistema detectar tempos de transação
mais lentos
ou restrições de recursos,
um alerta será acionado, permitindo uma O segundo é Prometheus. O Prometheus é uma ferramenta de monitoramento de
código aberto, amplamente usada em ambientes
nativos arados, mas também pode ser
aplicada O Prometheus é excelente na
coleta de dados de séries temporais, permitindo que você acompanhe as métricas
do sistema ao longo tempo e crie
painéis personalizados Os principais recursos incluem coleta de
métricas. O Prometheus coleta métricas de
várias fontes e as armazena em um banco de dados de
séries Conjunto de regras de alertas personalizados para acionar alertas quando
determinadas métricas atingem um limite crítico Integrações. O Prometheus
se integra a outras ferramentas, como Rafana, para visualizar
dados, e o gerenciador de alertas Por exemplo, você está monitorando
a utilização da CPU de um sistema de mainframe que lida com transações com
cartão de crédito O Prometheus coleta
métricas de CPU a cada 5 segundos. E se o uso da CPU exceder
90% ou mais de 10 minutos, um alerta será acionado para
notificar a equipe de operações. O terceiro é o Grafana. Grafana é uma poderosa ferramenta de código
aberto para criar painéis visuais para
monitorar o desempenho do sistema Ele se integra a várias fontes de
dados, como Prometheus, influx DV e Elastic Search,
permitindo que você visualize e monitore dados históricos e monitore principais recursos incluem painéis
personalizáveis, criação de
visualizações personalizadas para monitorar a Os principais recursos incluem painéis
personalizáveis,
criação de
visualizações personalizadas para monitorar a métrica principal.
Dados em tempo real. Exiba métricas em tempo real, incluindo carga de CPU, uso de
memória e taxas de sucesso de trabalhos em lotes. Alertas, integre-se
aos sistemas de alerta para notificar as equipes quando determinados
limites forem Por exemplo, em uma grande instituição
financeira, Grafana é usado para criar
um painel em tempo real que exibe
métricas do sistema , como tempos de
processamento de transações, taxas de sucesso no
trabalho e utilização de recursos
do sistema A equipe pode identificar rapidamente degradação do
desempenho e
agir antes que ela
afete os clientes Principais métricas a serem monitoradas. Ao monitorar o desempenho da
manutenção, há várias métricas importantes que sempre
devem ser monitoradas O primeiro é o uso da CPU. alto uso da CPU pode levar a um desempenho
mais lento e
aumentar as taxas de falha no trabalho monitoramento do uso da CPU
permite que você identifique gargalos de
desempenho
e garanta que cargas de trabalho
críticas recebam
os O segundo é o uso da memória. Vazamentos de memória ou
consumo excessivo de memória podem causar
falhas ou lentidão no sistema Fique de olho no uso da memória, especialmente durante os tempos de
processamento do PIC. O terceiro é o desempenho de E/S. Os sistemas de mainframe geralmente
lidam com grandes volumes de dados e o desempenho de
E/S é fundamental para garantir um processamento de dados rápido e
confiável Monitore a E/S do disco e
da rede para detectar lentidão ou gargalos na
transferência de dados A quarta é a taxa de sucesso do
trabalho em lotes. Os trabalhos em lote são uma parte essencial das operações do mainframe
e as falhas podem ter
consequências generalizadas monitoramento das taxas de
sucesso do trabalho ajuda
você a detectar problemas com
antecedência e garante que trabalhos essenciais, como processamento de
favores ou
liquidação de transações , sejam concluídos a tempo. Minhas melhores práticas para monitoramento
automatizado. Primeiro, defina limites
para alertas. Não monitore apenas passivamente. Defina limites de alerta
para métricas críticas. Por exemplo, acione
um alerta se o uso da CPU exceder 90% por
mais de 10 minutos ou se um trabalho em lote importante falhar. Em segundo lugar, use painéis
para obter informações rápidas. Crie painéis
com ferramentas como Rafana para ter
uma visão em tempo real da integridade do
seu sistema Os painéis permitem que você
identifique problemas rapidamente e
tome decisões informadas em um piscar de olhos Em terceiro lugar, monitore todos os sistemas. Não monitore apenas seu ambiente
de produção. monitore métricas em
ambientes de desenvolvimento e preparação, para que você possa detectar
possíveis problemas Também monitore métricas em
ambientes de desenvolvimento
e preparação,
para que você possa detectar
possíveis problemas
antes que eles cheguem à produção As principais conclusões
desta lição incluem monitoramento
automatizado é essencial
para detectar problemas em tempo
real e evitar tempos de inatividade
dispendiosos em tempo
real e evitar tempos inatividade
dispendiosos Ferramentas como IBM OmegamonPMETHES e Grafana fornecem
recursos poderosos de monitoramento e e Grafana fornecem
recursos poderosos de monitoramento e alerta. Sempre acompanhe métricas
como uso da CPU, memória, desempenho de
E/S e taxas de sucesso de
trabalhos em lote para garantir o desempenho
ideal do sistema. Vamos fazer uma atividade de aprendizado. Escolha uma
ferramenta de monitoramento, IBM Omegamon, Prometheus ou Grafana, e
configure-a para rastrear as principais métricas Por exemplo, o uso da CPU ou as taxas de sucesso de trabalhos
em lotes. Configure pelo menos um alerta
para uma métrica crítica. Por exemplo,
uso de CPU superior a 90%. Compartilhe sua experiência no fórum de discussão do
curso e explique como o monitoramento automatizado ajuda a evitar problemas no sistema. O que vem a seguir? Na próxima lição, abordaremos a configuração de
alertas e notificações. Você aprenderá a configurar alertas
automatizados para problemas de desempenho
do sistema e a
notificar sua equipe quando ocorrerem incidentes
críticos
27. Aula 2: como configurar alertas e notificações: Lição dois, configurar
alertas e notificações. Bem-vindo à
segunda lição do Módulo sete. Agora estamos migrando do monitoramento
automatizado para os alertas e notificações Monitorar sozinho não é suficiente. De que adianta saber
sobre um problema se ninguém é informado
a tempo de agir? É aí que os alertas
e notificações automatizados entram em ação. Nesta lição, explicaremos como
configurar alertas
automatizados para problemas de desempenho
do sistema
e erros críticos. Vamos nos concentrar em ferramentas como
o Prometheus alert Manager, que notificam suas equipes no
momento em que algo dá errado, permitindo uma resposta rápida
aos incidentes do sistema Ao final desta lição, você entenderá
como automatizar
alertas para problemas do sistema com
base em limites predefinidos, como usar o Prometheus
alert Manager e
outras ferramentas para notificar Práticas recomendadas para gerenciar alertas para evitar a fadiga dos alertas. Vamos
começar garantindo que sua equipe nunca mais perca um alerta
importante. Por que alertas e
notificações são essenciais. Monitorar métricas e
registros é importante, mas você pode passar o dia todo
examinando os painéis, na esperança de detectar problemas
antes que eles se tornem É por isso que você precisa que alertas
automatizados sejam notificados no
momento em que algo excede os limites críticos,
permitindo uma resposta
rápida e eficiente a
incidentes Vamos dar um exemplo.
Imagine que você esteja gerenciando um sistema de mainframe para uma grande
organização de assistência médica É meio da
noite e o uso da CPU começa a aumentar, causando atrasos
no processamento dos dados do paciente Sem alertas, ninguém fica ciente do problema
até que seja tarde demais. Mas com a configuração automática de alertas, sua equipe é notificada
imediatamente e o problema é resolvido antes
que ele afete o atendimento ao paciente. Os alertas são seu sistema de
alerta antecipado. Eles garantem que os problemas
não escapem. Configurando alertas para problemas
de desempenho do sistema. A primeira etapa para automatizar sua resposta a incidentes é configurar alertas para
as métricas corretas Os alertas podem ser acionados por
fatores como alto uso da CPU, vazamentos de
memória, falhas em
trabalhos em lote ou erros do sistema Veja como abordar a
configuração de alertas. Primeiro, identifique
métricas críticas para monitorar. Você precisa decidir
quais métricas são mais importantes para o desempenho do seu
sistema. Métricas comuns para
configurar alertas. Métricas comuns configuram alertas
para incluir o uso da CPU. Alerta se o uso da CPU exceder um determinado limite
por um longo período Por exemplo, mais de 90%
ou mais de 10 minutos. Uso de memória, configure um
alerta se o uso de memória exceder 80% ou se houver vazamentos de
memória ao longo do tempo Correção de falhas no trabalho. Alertas mais rápidos quando os
principais trabalhos em lote não são concluídos ou excedem
o tempo de execução esperado Desempenho de E/S, alerta se E/S do
disco ou da rede ficar significativamente
lento, o que pode indicar gargalos Vejamos um exemplo. Em um sistema de mainframe que gerencia transações
financeiras, talvez
você queira monitorar trabalhos
em lotes que
processam pagamentos Um alerta pode ser configurado para ser
acionado se um trabalho for executado mais de 20% a mais do que o normal ou se um trabalho
falhar completamente. Segundo, defina limites
para alertas. Depois de identificar
a matriz, você precisa definir limites limite é o ponto em que sua
ferramenta de monitoramento deve acionar um alerta. Melhor prática. Comece com
limites conservadores para evitar sobrecarregar sua
equipe com muitos alertas. Com o tempo, ajuste
o limite à medida que você aprende mais sobre o comportamento do seu
sistema Por exemplo, para um sistema de
processamento de pagamentos, defina um alerta se o
trabalho em lote falhar ou se o uso da CPU exceder 85% por
mais de 10 minutos durante o horário de pico de processamento. Escolha as ferramentas de alerta do Shore. Em seguida, selecione a ferramenta para
gerenciar e enviar alertas. Uma opção popular para infraestrutura
moderna é o
prometheus alert Manager Mas outras ferramentas
como NCJospjerjt ou IBMZomegaMN IBMZomegaMN também podem ser apropriadas dependendo do seu ambiente. Usando o Prometheus Alert
Manager para notificações. O Prometheus Alert Manager
é uma ferramenta amplamente usada que funciona perfeitamente com o
Prometheus para lidar com Ele permite definir regras de
alerta, gerenciar alertas e encaminhá-los para diferentes canais de
comunicação, como e-mail, slack ou pager duty Primeiro, definir
regras de alerta em um Prometheus. gerenciador de alertas de pressão
permite que você configure regras
de alerta que definem quando um alerta deve
ser acionado As regras de alerta especificam
a métrica a ser observada, o limite para
acionar o alerta e quaisquer condições adicionais Vejamos um exemplo de
uma regra de alerta que é acionada quando uso do
sono é de 90% por
mais de 10 minutos Esse alerta
notificará a equipe quando o uso da CPU permanecer em torno de
90% por 10 minutos, dando tempo para responder
antes que o sistema falhe. Configurando o gerenciador de alertas
para rotear notificações. Depois que um alerta é acionado, você precisa decidir como e para
onde o alerta será enviado. gerenciador de alertas do Prometheus
permite rotear alertas para destinos diferentes com
base na gravidade
e no tipo de Por exemplo,
alertas críticos, por exemplo, sistema inativo, seriam encaminhados para o pager duty para atenção
imediata Alertas de aviso, por exemplo, alto uso de CP podem ser enviados para o Slack ou por e-mail para
a equipe monitorar Vamos dar uma olhada em um exemplo de
configuração para enviar alertas
críticos para o pager duty e outros menos críticos para o Slack. Essa configuração garante que problemas
críticos cheguem diretamente ao serviço de
pager, enquanto alertas
menos graves são enviados ao Slack
para conscientizar a equipe Evitando a fadiga alerta. Um dos desafios
de configurar alertas é o risco
de fadiga dos alertas, quando a equipe recebe
tantos alertas que deixa de prestar
atenção a eles. Para evitar isso, é importante gerenciar
os alertas com cuidado. Ajuste seus alertas. Certifique-se de que seus alertas sejam significativos
e acionáveis alerta só deve ser acionado quando algo realmente precisa de atenção. Por exemplo, não
defina um alerta de uso da CPU que aumente
brevemente e depois se estabilize Você deseja ser
notificado somente quando uso
da CPU estiver consistentemente alto. Use agrupamentos de alertas. Use o agrupamento de alertas para combinar alertas
semelhantes em uma
única notificação Por exemplo, se
vários trabalhos em lotes falharem ao mesmo tempo, envie um único alerta resumindo as falhas em vez de
enviar um alerta para cada trabalho Priorize os alertas por gravidade. Nem todos os alertas são iguais. Certifique-se de priorizar os
alertas por gravidade. Uma falha no processamento de transações com cartão
de crédito é fundamental, enquanto um breve aumento no uso
da cidade pode apenas
justificar Use ferramentas como o
gerenciador de alertas para rotear alertas
de alta severidade
de forma diferente dos de baixa severidade. Melhores práticas para gerenciamento de
alertas. Para garantir que seu
sistema de alerta funcione de forma eficaz, siga estas melhores práticas Primeiro, teste alertas regularmente. Teste regularmente seu sistema
de alertas para garantir que os alertas sejam acionados corretamente
e que as notificações sejam encaminhadas para
as equipes certas Simule falhas do sistema em um ambiente de teste para
ver como os alertas se comportam Segundo, estabeleça um protocolo de
resposta claro. Os alertas só são úteis
se levarem à ação. Certifique-se de que sua equipe saiba o que fazer quando um alerta
é acionado. Crie um manual de
resposta a incidentes que descreva a etapa a ser tomada para
diferentes tipos de alertas Três, monitore e
ajuste o ruído de alerta. Muitos alarmes falsos ou alertas de
baixa prioridade podem
causar fadiga nos alertas Revise regularmente suas configurações de
alerta e ajuste o limite conforme
necessário para reduzir o ruído As principais conclusões
desta lição incluem alertas automatizados que são essenciais para detectar
e responder rapidamente aos Use ferramentas como o Prometheus
alert Manager para criar regras de
alerta e
rotear notificações para sua equipe com
base na gravidade do alerta Evite o cansaço dos alertas
ajustando os limites dos alertas, agrupando os alertas e priorizando as Vamos fazer uma atividade de aprendizado. Configure um sistema de alerta usando o gerenciador de alertas
Prometheus ou
outra ferramenta de Configure alertas para
pelo menos duas métricas críticas, por exemplo, uso de CP
e taxas de falha no trabalho. Compartilhe sua experiência no fórum de discussão do
curso, incluindo como você configura alertas e
notificações roteadas para sua equipe. O que vem a seguir? Na próxima lição,
exploraremos automação dos fluxos de trabalho de
resposta a incidentes Você aprende como implementar respostas
automatizadas a incidentes, como reiniciar serviços ou escalar recursos, e como criar manuais
de
resposta a incidentes para comuns
28. Aula 3: automatizando fluxos de trabalho de resposta a incidentes: Lição três, automatizando fluxos de trabalho de resposta a
incidentes. Bem-vindo à lição
três do Módulo sete. Até agora, abordamos a
configuração, o monitoramento e os alertas. Mas o que acontece depois que
um alerta é acionado? Nesta lição, vamos nos concentrar em automatizar fluxos de trabalho de
resposta a incidentes Automatizar suas respostas
pode ajudar a resolver problemas rapidamente sem precisar de intervenções
manuais para cada alerta Ao final desta lição, você entenderá como
implementar respostas
automatizadas a incidentes, como
reiniciar serviços
ou escalar recursos,
como reiniciar serviços
ou escalar recursos, criar manuais de
resposta a incidentes para problemas comuns do sistema e as melhores práticas
para configurar fluxos de trabalho que
economizem o tempo da sua equipe
e economizem o tempo da sua equipe Vamos começar mergulhando poder de automatizar
as respostas a
incidentes Por que automatizar a
resposta a incidentes é importante. Imagine isso. São 3:00 da manhã e seu
sistema está sob carga pesada. Um alerta é acionado
porque o uso da CPU está atingindo 95% e
as tarefas estão começando a falhar Sem automação, alguém
da sua equipe precisa acordar, fazer login e começar a
solucionar problemas para reiniciar os serviços ou
escalar os recursos. Com fluxos de trabalho automatizados de
resposta a incidentes, o sistema pode lidar com o problema automaticamente, dando tranquilidade à
sua equipe Veja por que automatizar as
respostas a incidentes é crucial. Resolução mais rápida. As respostas automatizadas
resolvem os problemas
assim que são detectados,
minimizando o tempo de inatividade Confiabilidade de 24 por sete. Os incidentes podem ser
tratados a qualquer hora do
dia ou da noite, sem depender Reduza a carga de trabalho manual. A automação libera
sua equipe para se concentrar em melhorias
estratégicas em vez de
combater incidentes do dia a dia Vamos dar uma olhada em um exemplo. Digamos que você esteja executando um sistema de folha de pagamento baseado em
mainframe para uma empresa global Durante o pico de desempenho durante os horários de pico de processamento, o uso de
recursos aumenta Em vez de esperar pela
intervenção manual para adicionar recursos, um fluxo de trabalho automatizado aumenta
a CPU ou reinicializa os serviços, garantindo que a folha de pagamento funcione sem
problemas, sem atrasos Implementando respostas
automatizadas. Os fluxos de trabalho automatizados de
resposta a incidentes podem lidar com uma ampla
variedade de tarefas, desde reiniciar serviços até escalar recursos ou até mesmo
reverter uma implantação Vamos detalhar algumas das
principais respostas automatizadas que são comuns em ambientes de
mainframe. Um,
reiniciando automaticamente os serviços. Às vezes, a
solução mais simples é
reiniciar um serviço que
, portanto, deixa de responder Isso pode ser configurado como uma ação
automatizada em resposta a uma condição específica do sistema,
como alto uso de tomografia computadorizada, relaxamentos de
memória ou trabalhos com falha Por exemplo, um
sistema de processamento de trabalhos em
lote baseado em paralelepípedos trava repentinamente Em vez de esperar que alguém reinicie manualmente o serviço, ferramenta de monitoramento
detecta
o problema e reinicia
automaticamente o serviço, minimizando o Segundo, escalar recursos. Para sistemas que
experimentam um aumento no uso, é
essencial escalar automaticamente
os recursos Fluxos de trabalho automatizados podem ser
configurados para alocar mais CPU, memória ou E/S quando necessário e liberar esses recursos
quando o sistema Por exemplo, durante o processamento no final
do mês, o uso de recursos do sistema aumenta devido ao aumento do volume de
transações O sistema detecta o aumento e
dimensiona automaticamente os recursos, garantindo que o sistema permaneça estável sem intervenção
manual Três, reverter implantações
com falha. Nem toda implantação
ocorre conforme o planejado. Em caso de falha na implantação, uma resposta automática pode reverter o sistema para
o estado estável anterior. Isso minimiza o risco de falhas na
produção e ajuda a manter os
serviços essenciais para os negócios funcionando Por exemplo, você
envia uma atualização para
um sistema de mainframe que
introduz um problema que afeta o processamento de dados O fluxo de trabalho automatizado
detecta o erro, calcula uma reversão para
a versão anterior e envia uma notificação à equipe para analisar e
investigar
o Criação de manuais de
resposta a incidentes. As respostas automatizadas a incidentes são tão eficazes quanto os
fluxos de trabalho que você projeta Uma ótima maneira de organizar suas respostas é por meio de manuais de resposta a
incidentes, conjuntos
predefinidos de ações a serem tomadas para
tipos específicos de O que é um manual de
resposta a incidentes? Um
manual de resposta a incidentes é essencialmente um modelo para lidar com problemas
comuns do sistema Ele descreve um conjunto de ações
automatizadas e etapas
manuais que precisam ser tomadas quando ocorre um
incidente específico Esses manuais ajudam a
garantir uma abordagem consistente e eficiente para
resolver problemas. Componentes de um manual. Um bom manual deve
incluir a descrição do incidente. O que aciona a resposta? Por exemplo, CPU
superior a 90% ou 10 minutos. Ações automatizadas. O que deve ser feito
automaticamente? Por exemplo, reinicie serviços ou escale recursos. Ações manuais. Se o problema persistir,
o que uma equipe deve fazer? Por exemplo, encaminhe
para engenheiros. Notificações, quem
precisa ser informado e como? Por exemplo, notificação por e-mail ou Slack para
a equipe de operações Exemplo de manual
para alto uso da CPU. Incidente. O uso da CPU
excede 90% por 15 minutos. As ações automatizadas incluem
escalar os recursos da CPU em 20%. Reinicie todos os serviços que
pararam de responder. As ações manuais incluem: se a CPU permanecer alta após 30 minutos, encaminhe para as
equipes de DevOps para investigação Analise os registros para identificar
a causa raiz,
por exemplo, um trabalho em lotes com defeito Notificações, envie
uma mensagem do Slack para o engenheiro de plantão Envie um e-mail para a equipe com detalhes
do incidente e das ações tomadas. Automatizando fluxos de trabalho com ferramentas. Há várias
ferramentas que você pode usar para implementar fluxos de trabalho automatizados de
resposta a incidentes Aqui estão algumas das ferramentas mais
usadas. O primeiro é o IBM Omegamon. Para ambientes de mainframe, o
IBMZ Omegamon oferece recursos abrangentes oferece recursos abrangentes de monitoramento e automação. Você pode configurar
respostas automatizadas para alertas e
incidentes do sistema , como reiniciar trabalhos ou realocar O segundo é responsável. Answerable é uma ferramenta de
automação poderosa que permite definir respostas
automatizadas
por meio de manuais Ele pode lidar com tarefas
como reinicializações de serviços, escalabilidade
de recursos e reversões de
aplicativos Por exemplo, use um manual
responsável para reiniciar
automaticamente um serviço quando o uso da memória
exceder o limite Answerable também pode ser integrado a ferramentas de
monitoramento como o
Prometheus para acionar
fluxos de trabalho específicos com Prometheus para acionar
fluxos de trabalho específicos O terceiro é o pager Jut. O Pager jut é uma ferramenta de
gerenciamento de incidentes que se integra ao seu sistema de
monitoramento para acionar Quando um alerta é acionado, pager Jut pode automatizar ações como ampliar
recursos ou reiniciar serviços,
além de notificar Melhores práticas para automatizar a resposta a
incidentes. Primeiro, teste os fluxos de trabalho regularmente. Não espere por um incidente real para testar seus fluxos de trabalho
automatizados Configure simulações regulares para garantir que
seus fluxos de trabalho funcionem corretamente e que as respostas sejam
acionadas conforme Segundo, priorize incidentes
críticos. Nem todos os incidentes
são criados da mesma forma. Certifique-se de priorizar suas respostas
automatizadas para problemas
críticos que podem causar grandes períodos de inatividade
ou Problemas não críticos
ainda podem exigir
intervenção manual. Três,
melhore continuamente os manuais. À medida que seu sistema evolui, seus manuais de
resposta a incidentes
também devem Revise e atualize regularmente seus manuais para refletir
novas configurações do sistema, aplicativos e mudanças
operacionais principais conclusões desta lição
incluem a automatização de respostas a
incidentes que permite resolver
problemas mais rapidamente sem intervenção
manual, Use ferramentas como IBM, Omega Mon, ansib ou pager ut para implementar fluxos de trabalho que reiniciam serviços
automaticamente, estabilizam Crie manuais de
resposta a incidentes que descrevam as etapas a serem tomadas
durante incidentes específicos, garantindo uma abordagem consistente
e eficiente para Vamos fazer uma atividade de aprendizado. Crie um manual de
resposta a incidentes para um problema comum em seu ambiente de
mainframe Por exemplo, uso do CP
ou falha no trabalho. Inclua ações automatizadas, por exemplo, reinicialização dos
serviços e uma etapa manual. Por exemplo, notifique
o engenheiro de plantão. Compartilhe seu manual
no fórum de
discussão do curso e
explique como você planeja implementá-lo com a ferramenta de resposta a incidentes de
sua escolha Por exemplo, IBMZ Omega
moon ou answerable. O que vem a seguir?
Na próxima lição, exploraremos estudos de caso
do mundo real sobre
sistemas
automatizados de monitoramento e resposta a
incidentes em ação. Você aprenderá como as empresas
implementaram com sucesso esses sistemas para reduzir o tempo de inatividade e melhorar a confiabilidade
do sistema
29. Aula 4: estudos de caso em monitoramento automatizado e resposta a incidentes: Lição quatro, estudos de caso e monitoramento
automatizado
e resposta a incidentes. Bem-vindo à lição
quatro do módulo sete. Falamos sobre como configurar o monitoramento
automatizado, criar alertas e implementar fluxos de trabalho de resposta a
incidentes Mas como essas estratégias
funcionam no mundo real? Hoje, analisamos estudos de
caso de empresas
que
implementaram com sucesso o
monitoramento automatizado e resposta a
incidentes em seu ambiente de
mainframe Esses exemplos do mundo real
demonstrarão como a automação
pode reduzir o tempo de inatividade, melhorar a confiabilidade do sistema e liberar sua equipe para tarefas
mais estratégicas Ao final desta lição, você entenderá como
organizações reais usaram monitoramento
automatizado
e a resposta
a incidentes para resolver os principais desafios
operacionais. Os benefícios que eles obtiveram
, como resolução mais rápida de
incidentes, redução do tempo de inatividade e
maior eficiência do sistema Informações práticas que você pode aplicar em seu próprio ambiente de
mainframe. Vamos mergulhar nessas histórias de
sucesso e descobrir o que é possível quando automação é
implementada de forma eficiente. primeiro estudo, uma
instituição financeira global reduz o tempo de inatividade
com monitoramento automatizado Vamos começar com uma instituição
financeira global que depende muito de sistemas de
mainframe para processamento de transações Eles lidam com milhões de
transações por dia e qualquer tempo de inatividade pode resultar em perdas
significativas e danos à
reputação Antes de implementar a automação, eles enfrentam vários desafios. Desafio. A equipe
se esforçou para monitorar manualmente
o alto volume de tarefas
e transações em lotes Isso geralmente levava a atrasos na detecção de
incidentes, causando um tempo de inatividade prolongado
durante os horários de pico. Solução. A empresa implantou IBMZ Omega moon para implementar monitoramento em tempo
real e alertas
automatizados para uso da CPU, consumo de
memória e Resposta automatizada. Quando o pico de uso do CP ou o trabalho
em lote começaram a falhar, escalonamento
automatizado
de recursos e reinicialização do
serviço foram
acionados sem
intervenção manual Como resultado, o tempo de
inatividade foi reduzido em 40%. Como o sistema automatizado detectou e respondeu aos
incidentes em segundos, a equipe agora podia se concentrar em otimizar o desempenho e lidar com problemas complexos do sistema, sabendo que os incidentes
crutin eram tratados Página 2 do estudo, prestador de serviços de
saúde, melhorando a confiabilidade do sistema
com a automação de incidentes Um grande
prestador de serviços de saúde precisava garantir disponibilidade
24 horas por dia, sete dias por semana, para
seus sistemas de mainframe, que lidam com
dados confidenciais de pacientes e processam solicitações médicas Com
requisitos rígidos de conformidade e cargas de trabalho críticas, tempo de inatividade não era uma opção Desafio. Antes da automação,
incidentes como alto uso de memória ou tempos limite do
banco de dados exigiam intervenção manual, que às vezes levava horas, especialmente
fora dos horários de pico Solução: eles implementaram
o Prometheus para monitoramento, junto com o pager duty para
acionar fluxos de trabalho automatizados de resposta a incidentes Eles também criaram manuais de
resposta a incidentes para lidar com problemas comuns, como reinicializações de
serviços e escalonamento de
recursos Resposta automatizada. O manual para alto uso de memória acionou
automaticamente ansibl para escalar os recursos de memória e reiniciar os serviços sem
qualquer intervenção humana Como resultado, o tempo de
resposta a incidentes caiu de horas para
apenas alguns minutos. confiabilidade do sistema
melhorou significativamente e a equipe conseguiu
atender aos rígidos
requisitos de conformidade com monitoramento em tempo real
e resolução de incidentes. O profissional de saúde
ganhou mais confiança na capacidade de
seu sistema de lidar com dados
críticos 24 por dia, sete dias por semana. Um estudo três, agência governamental automatizando reversões
para evitar perda Uma agência governamental que administra uma
plataforma crítica que enfrenta o público enfrenta problemas com falhas nas implantações, o que levou à corrupção de dados
e interrupções no serviço Seu sistema de mainframe processava grande quantidade de informações
confidenciais diariamente e uma falha na
implantação poderia resultar em problemas significativos de confiança
pública O desafio: implantações malsucedidas causam falhas no sistema
e corrupção de dados reversão manual dessas
implantações levou horas, afetando a disponibilidade
dos serviços públicos solução, eles implementaram um
sistema de reversão automatizado usando manuais
responsáveis e
Git Se uma implantação falhar, o sistema
reverteria automaticamente para
a versão estável anterior,
garantindo a continuidade a resposta automatizada, o sistema detectou falhas de
implantação por meio de alertas promissores e
imediatamente acionou uma
reversão via respondível,
restaurando o sistema ao estado anterior imediatamente acionou uma
reversão via respondível, à Como resultado, a agência
reduziu o tempo necessário para a reversão de
4 horas para 10 minutos Não houve mais casos
de interrupções prolongadas devido a falhas de
implantação
e a integridade dos dados foi mantida
durante cada atualização confiança da atualização no
sistema foi restaurada quando os usuários experimentaram o mínimo
de interrupção do serviço Page estuda quatro recursos de
escalabilidade de bancos de varejo durante alto tráfego plataforma
bancária on-line de um banco de varejo experimentou picos de tráfego durante o dia de pagamento, com milhares de usuários acessando a
plataforma simultaneamente O sistema precisava ser escalado
para atender a essa demanda, mas o dimensionamento manual dos recursos era ineficiente e
propenso a atrasos O desafio: picos de tráfego, lentidão do sistema de
custos
e interrupções ocasionais. As equipes de identificação do banco
se esforçaram para acompanhar o escalonamento
manual de recursos, resultando experiência
ruim do usuário em
momentos críticos Na solução, o banco
implantou o prometheus e drafana para monitorar os padrões de
tráfego
e a utilização
de recursos Quando o tráfego aumenta, uma resposta
automatizada escalaria recursos de
CPU e memória com
base em limites predefinidos resposta automatizada e
os playbooks do
ansible acionavam
automaticamente recursos
adicionais durante os horários de pico
e os reduziam
durante o período de
baixo tráfego,
otimizando o otimizando Como resultado, o banco reduziu a lentidão
do sistema em 50%, levando a uma maior satisfação
do cliente A automação economizou para a equipe de ID várias horas de
trabalho manual por semana e escalonamento se tornou uma
resposta automática e um processo automatizado contínuo Análise passo a passo do sucesso. Vamos resumir os elementos
comuns que tornaram esses
estudos de caso bem-sucedidos Uma delas, ferramentas de monitoramento. As empresas usam ferramentas
como IBMZ Omega Mon, Romitius e Gropana para configurar monitoramento em tempo
real das
principais métricas, como CPU,
memória, memória Dois, respostas automáticas. Usando ferramentas como o answerable
e o pager, as empresas Juty
automatizaram as principais respostas a incidentes como escalar recursos, reiniciar serviços Três, manuais de incidentes. Os manuais predefinidos de resposta a incidentes permitem que as equipes criem fluxos de trabalho consistentes e
repetíveis para incidentes comuns, melhorando o tempo de resposta Ou notificações e alertas
eram enviados por meio do Slack, e-mail ou pager duty, garantindo que as equipes certas
estivessem sempre Melhores práticas para implementar monitoramento
e resposta
automatizados. Se você está
pensando em implementar monitoramento
automatizado
e resposta a incidentes, aqui estão algumas das melhores práticas. Primeiro, comece aos poucos. Automatize tarefas simples, como reinicializações de
serviços ou escalonamento de
recursos primeiro, gradualmente crie fluxos de trabalho
mais complexos, como reversões
automatizadas Em segundo lugar, use painéis. Implemente
painéis visuais com ferramentas como Rafana para que você possa monitorar
facilmente a
integridade do sistema em um Em terceiro lugar, teste sua automação. Teste regularmente seus fluxos de trabalho
automatizados em um ambiente de preparação para garantir que tudo funcione conforme esperado quando
ocorre um incidente na produção Ou refine com o tempo. Revise e ajuste seus manuais de
incidentes regularmente para refletir
as mudanças em seus sistemas, cargas de trabalho ou requisitos de negócios principais conclusões desta lição
incluem exemplos reais que
demonstram o poder do monitoramento
automatizado e da resposta a
incidentes em ambientes de monitoramento
automatizado e da resposta a
incidentes em mainframe,
levando a uma resolução
mais rápida e
a resolução
mais rápida e Ferramentas como IBMZ,
OmegamonPMTHes, Grafana
e answerable podem ajudar a automatizar
respostas a incidentes, e answerable podem ajudar a automatizar como escalar recursos, reiniciar serviços ou reverter implantações com falhas. implementação de manuais de
resposta a incidentes garante uma abordagem consistente
para lidar com incidentes, melhorando a confiabilidade do sistema
e a eficiência da equipe Vamos fazer uma atividade de aprendizado. Reflita sobre um
dos estudos de caso discutidos nesta lição. Como você poderia aplicar
uma estratégia semelhante em seu próprio ambiente? Identifique um problema comum que seu
sistema enfrenta, por exemplo, picos
gráficos ou falhas de trabalho
em lotes e
descreva um fluxo de trabalho de
resposta automatizado Compartilhe suas ideias no fórum de discussão
do curso
e discuta como você
implementaria a automação para reduzir o tempo de inatividade ou melhorar a confiabilidade O que vem a seguir? No próximo módulo, exploraremos a segurança e conformidade na automação de
mainframe Você aprende como integrar verificações de segurança
automatizadas
em seus pipelines do CICD para garantir a conformidade com os padrões do
setor e proteger seus sistemas
30. Aula 1: automatizando verificações de segurança em pipelines de CI/CD: Módulo oito, conformidade
de segurança e escalabilidade dos esforços de automação Neste módulo, você
aprenderá a fazer o seguinte. Automatize as verificações de segurança
em seu pipeline de CICD. Garanta a conformidade com os padrões
do setor, como PCI DSS, HIPAA Amplie seus esforços de automação enquanto mantém a
segurança e a conformidade. Ao final deste módulo, você entenderá como criar uma estrutura de automação segura, compatível e
escalável Primeira lição, automatizando as
verificações de segurança nos pipelines do CICD. Bem-vindo à primeira lição
do Módulo oito. A segurança é a principal
prioridade de qualquer sistema, mas é especialmente crítica em ambientes como mainframes Onde dados confidenciais e aplicativos de
missão crítica estão em jogo. Nesta lição, vamos nos
concentrar em como
automatizar as verificações de segurança
em seu pipeline de CICD, garantindo que a segurança
não seja uma reflexão tardia, mas integrada em todas as etapas do processo de desenvolvimento e
implantação Ao final desta lição, você entenderá a importância de
automatizar
as verificações de segurança como
parte do processo CICD e como usar ferramentas como análise
estática de código e verificação de
vulnerabilidades para
identificar problemas de segurança Como integrar a segurança
em todas as etapas do pipeline
do CICD sem
diminuir seus fluxos de trabalho Vamos começar e tornar sua segurança tão automatizada
quanto o resto do seu sistema. Por que automatizar as verificações de segurança? A segurança é uma
daquelas coisas que é fácil ignorar até que
algo dê errado, então é tarde demais. Tradicionalmente, as
verificações de segurança eram feitas manualmente após a
escrita do código ou antes da implantação, o que não apenas
retardava o processo de lançamento, mas também permitia que as vulnerabilidades
escapassem Ao automatizar essas verificações, você pode detectar problemas precocemente, evitar violações e manter um ambiente seguro sem
diminuir Vamos dar um exemplo.
Imagine que você está administrando um sistema financeiro que processa milhões
de transações. Até mesmo uma pequena vulnerabilidade
pode ser explorada para roubar dados confidenciais
ou causar danos financeiros Ao automatizar as verificações de segurança
em seu pipeline de CICD, você pode identificar vulnerabilidades antes que elas cheguem à produção,
garantindo
a confiança
do cliente Verificações de segurança Es para automatizar. Existem vários tipos de verificações de
segurança que devem fazer parte de qualquer pipeline automatizado do
CICD Vamos dividi-los. Análise de
código estático ou SAST. análise estática de código
é um método de analisar seu código
sem executá-lo Ele examina a base de código em busca de vulnerabilidades de
segurança, problemas de qualidade de
código e possíveis barramentos que podem
levar a violações de segurança O que isso verifica?
A análise estática de código procura vulnerabilidades
como riscos de injeção de SQL, estouros de buffer, vulnerabilidades de
scripts pós-site
e credenciais codificadas e credenciais codificadas Por exemplo, em um aplicativo
COBOL, análise
estática pode detectar manuseio
inseguro de cadeias de caracteres que pode causar estouros de buffer, evitando Ferramenta para usar. Ferramentas como as marcas de verificação do
SonarQube ou o Veracode se integram seu pipeline do CICD
para
analisar automaticamente o código em busca de vulnerabilidades sempre Análise de dependências. Os aplicativos mãe geralmente
dependem de bibliotecas ou
pacotes de terceiros e cada dependência é um risco potencial de segurança escaneamento de dependências verifica as
dependências do seu projeto em busca de vulnerabilidades conhecidas.
O que isso verifica? varredura de dependências procura bibliotecas
desatualizadas ou
vulneráveis, patches de
segurança que
não foram aplicados e vulnerabilidades conhecidas
em códigos de terceiros Por exemplo, seu aplicativo de
mainframe pode depender de uma
biblioteca de terceiros para criptografia Se essa biblioteca tiver uma vulnerabilidade
conhecida, varredura de
dependências
alertará você para atualizá-la antes que ela
possa ser explorada Ferramenta para usar. Ferramentas como verificação de dependência do
SNIC OS ou o Black Doc podem escanear
dependências automaticamente, garantindo que você esteja usando versões ou
bibliotecas seguras e atualizadas Teste dinâmico de
segurança de aplicativos ou DAST. Diferentemente da análise de código estático e testes
dinâmicos
de segurança de aplicativos, DAST analisa um aplicativo em execução para
detectar vulnerabilidades Ele simula ataques contra o aplicativo para
encontrar problemas como configurações
inseguras ou O que isso verifica? O DAST procura vulnerabilidades no aplicativo em execução,
por exemplo, injeção de SQL
ou autenticação quebrada Configurações inseguras,
por exemplo, controles acesso
excessivamente permissivos de acesso
excessivamente permissivos e vulnerabilidades de tempo de execução. Por exemplo, executar
uma ferramenta DAST seu sistema
bancário baseado em mainframe pode detectar uma vulnerabilidade em que autenticação
do usuário
não está devidamente protegida, impedindo o acesso não autorizado
. Ferramenta para usar. Ferramentas como o OAS Zap ou o BRB Sweep realizam testes dinâmicos em
seus aplicativos em execução
como parte do pipeline Análise de vulnerabilidades. escaneamento de vulnerabilidades
se concentra na identificação pontos fracos em sua
infraestrutura como configurações incorretas, software
desatualizado
ou serviços expostos que poderiam ser
explorados O que isso verifica?
O escaneamento de vulnerabilidades procura portas abertas ou serviços
desnecessários
que exponham o sistema Configurações fracas,
por exemplo, senhas
fracas ou protocolos
inseguros, vulnerabilidades
não corrigidas Por exemplo, em um ambiente de
mainframe, verificação de
vulnerabilidades
pode detectar que determinados serviços estão
sendo executados em portas abertas que não precisam ser expostas ou que alguns sistemas não foram atualizados com os patches mais recentes Ferramenta para usar. Ferramentas como NSS, palace ou tenable
automatizam a infraestrutura, verificação de
vulnerabilidades e relatam possíveis Integrando a segurança
em seu pipeline de CICD. É importante
pensar na segurança como algo que está entrelaçado
em sua tubulação, não aparafusado na extremidade Veja como você pode
integrar as verificações de segurança em cada estágio
do processo CICD Um estágio de pré-confirmação, análise
estática de código. No estágio de pré-confirmação, ferramentas de análise de código
estático podem verificar o código à medida
que ele está sendo escrito. Os desenvolvedores recebem
feedback imediato sobre as vulnerabilidades, permitindo que eles corrijam problemas antes
mesmo de serem cometidos Ferramentas. O SonarQube pode
ser integrado aos editores de
código, sinalizando
problemas à medida que os desenvolvedores codificam, garantindo
práticas de codificação seguras desde Dois, estágio de construção, dependência
e análise estática. Durante a fase de criação, ferramentas de verificação de
dependências
podem verificar automaticamente se
há bibliotecas de
terceiros desatualizadas ou vulneráveis As ferramentas de análise estática também podem executar uma varredura mais abrangente
da base de código neste momento. Segundo, a verificação de dependências do SNAC OOS e a varredura de
dependências vulneráveis
durante o processo Três, estágio de teste, DAST e verificação de
vulnerabilidades. Quando o aplicativo é
executado em um ambiente de teste, as ferramentas do
DAST e
os scanners de vulnerabilidade podem ser usados para testar a segurança do aplicativo em condições reais Isso garante que
sempre que vulnerabilidades ou configurações incorretas de
infraestrutura sejam detectadas Dois, OAS Zap ou BRB Suite para testes
dinâmicos e verificação de vulnerabilidades de infraestrutura
ou NSS ou Ou estágio de implantação, monitoramento contínuo
da segurança. Após a implantação, use ferramentas contínuas de monitoramento de
segurança e garanta que nenhuma
vulnerabilidade introduzida no sistema Se alguma nova vulnerabilidade
for encontrada, ela poderá acionar alertas e até mesmo reverter implantações
, se necessário Ferramentas como o
CISDig secure podem fornecer monitoramento contínuo
do aplicativo implantado
e de seu ambiente Melhores práticas para
segurança automatizada em sistemas de controle de CI. Aqui estão algumas
práticas recomendadas para garantir que suas verificações de
segurança automatizadas funcionem sem problemas e não
criem gargalos Mude a segurança para a esquerda. Quanto mais cedo você detectar
vulnerabilidades, mais fácil será corrigi-las integração das verificações de segurança nos A integração das verificações de segurança nos estágios de pré-confirmação e construção
evita que as vulnerabilidades cheguem
a estágios
posteriores, nos quais as
correções são mais caras Automatize tudo. As verificações manuais de segurança estão sujeitas a
erros humanos e atrasos. Certifique-se de que todas as etapas
do seu pipeline, da análise de código à verificação de
vulnerabilidades,
sejam totalmente automatizadas. Monitore continuamente. A segurança não
para na implantação. Use
ferramentas de monitoramento contínuo para observar novas vulnerabilidades e
resolvê-las à medida que elas surgirem principais conclusões desta lição
incluem automatizar as verificações de segurança garantir que as vulnerabilidades
sejam detectadas e tratadas logo
no início do processo CICD,
reduzindo os riscos reduzindo Use ferramentas como o Sonar tube
para análise de código estático, SNIC para verificação de dependências, OAS Zap para testes dinâmicos
e NESIS para verificação de vulnerabilidades para verificações Integre as verificações de segurança em todas as etapas do pipeline desde a pré-confirmação até o monitoramento
pós-implantação , para obter
uma proteção abrangente. Vamos fazer uma atividade de aprendizado. Escolha uma ferramenta de segurança,
por exemplo, SonarQube, SNAP ou OAS Zap, e integre-a Execute uma verificação de segurança em um de seus aplicativos de
mainframe atuais e identifique quaisquer vulnerabilidades ou possíveis problemas de segurança Compartilhe sua experiência e os resultados no fórum de discussão do
curso, junto com todas as etapas que você tomou para resolver as
vulnerabilidades O que vem a seguir? Na próxima lição, abordaremos a automatização das verificações de conformidade para
garantir que seu sistema atenda aos padrões do setor, como
PCI DSS, HIPA Você aprende como gerar relatórios de conformidade
automatizados e garantir que seu ambiente de
mainframe permaneça em conformidade em todos os momentos
31. Aula 2: garantindo a conformidade com os padrões da indústria: Lição dois, garantindo a conformidade
com os padrões do setor. Bem-vindo à lição
dois do módulo oito. No mundo atual, a
conformidade com as regulamentações do setor não
é negociável, especialmente para
organizações que lidam com dados
confidenciais, como os saúde, finanças
ou governo Mas acompanhar constantemente os padrões de
conformidade como PCIDSS, HIPAA ou SOC pode ser
um grande desafio, especialmente quando as verificações manuais Nesta lição, vamos nos
concentrar em como
automatizar as verificações de conformidade
em seu pipeline de CICD. Ao final desta lição, você saberá como garantir que
seus sistemas permaneçam conformidade sem sacrificar a
agilidade Também exploraremos
como gerar relatórios de conformidade
automatizados que mantêm você pronto para auditorias e garantem
que você esteja sempre atualizado Vamos começar
entendendo por que automação de
conformidade
é importante e como ela pode transformar
suas operações. Por que automatizar as
verificações de conformidade é importante? Quando as organizações
gerenciam dados confidenciais, é fundamental que estejam em conformidade
com as regulamentações do setor. não conformidade pode
levar a multas pesadas, penalidades
legais e perda
de confiança com No entanto, a verificação manual da conformidade
durante cada versão pode retardar o desenvolvimento e
introduzir erros humanos. É aí que entra a
automação de conformidade. Ele permite que você verifique
continuamente os requisitos
regulatórios e
garanta que você atenda aos padrões sem
desacelerar suas operações Por exemplo, digamos que você administre uma plataforma de assistência médica
processando dados de pacientes
com os regulamentos da HIPAA em vigor Qualquer violação de segurança pode
resultar em Ao automatizar
as verificações de conformidade como parte de seu pipeline de CICD, você pode garantir que os protocolos de
segurança sejam aplicados e que cada versão atenda aos padrões
regulatórios sem precisar Os padrões do setor devem
ser cumpridos. Antes de nos aprofundarmos no como, vamos analisar rapidamente os
principais padrões do setor que a maioria das organizações
deve cumprir. O primeiro é o PCIDSS ou segurança de
dados do setor de cartões de
pagamento A quem se aplica. Uma empresa que processa, armazena ou transmite informações de cartão
de crédito Requisitos de conformidade. PCI DSS exige que as empresas
apliquem medidas de segurança,
como criptografia de dados, controle de
acesso e Por exemplo, se seu ambiente de
mainframe lida com transações com
cartão de crédito, PCIDSS exigirá
que você criptografe dados
confidenciais do titular do cartão e verifique
regularmente Dois, HIPAA ou Lei de Portabilidade
e Responsabilidade de Seguros de
Saúde Quem se aplica às
organizações da área da saúde ou a qualquer entidade que lida com informações de saúde
protegidas ou PHI Requisitos de conformidade. HIPAA exige controles rígidos sobre o acesso aos dados do paciente,
incluindo políticas de criptografia, auditoria e Por exemplo, se você estiver executando um
aplicativo de assistência médica em um mainframe, conformidade com a
HIPAA
significa que você precisa garantir que
os dados do paciente sejam criptografados, registrados e acessíveis somente Três, SOC da Lei
Sarbanes Oxley, que se aplica às
empresas públicas nos Estados Unidos, principalmente para garantir financeira Requisitos de conformidade, SOT exige que
os sistemas usados para relatórios
financeiros
tenham controles para garantir a precisão e a
segurança dos dados financeiros Esses sistemas devem manter trilhas
de auditoria e
garantir a integridade dos dados. Por exemplo, se sua empresa processa
demonstrações financeiras em mainframes, conformidade
fiscal significa
garantir que todas as alterações nos dados
financeiros sejam registradas,
auditadas Automatizando as verificações de conformidade
em seu pipeline de CICD. Agora que você está familiarizado
com os principais padrões, vamos falar sobre como
você pode automatizar verificações de
conformidade
em diferentes estágios do pipeline do CICD. Veja como você pode criar
conformidade em cada etapa. Primeiro, a etapa de pré-confirmação, as verificações de
código e configuração. Na fase de pré-confirmação, os desenvolvedores podem executar
ferramentas que impõem regras de
conformidade diretamente em seus arquivos de código e
configuração O que verificar? Garanta que padrões de
criptografia como o AES sejam aplicados Verifique se
dados confidenciais, por exemplo, números
de cartão de crédito ou informações
do paciente,
não estão codificados Valide as
políticas de controle de acesso em código. Ferramenta a ser usada, ferramentas como
OpenSCAP ou CIS CAT podem escanear o código em busca de
configurações incorretas ou violações das regras de conformidade antes Por exemplo, antes de enviar um
código que manipula os dados do paciente, um
aplicativo de assistência médica verifica a
conformidade com os requisitos do
HypaEncrption, garantindo que todos os arquivos de dados
confidenciais Segundo, estágio de construção,
teste de conformidade durante a construção. Durante a fase de construção, testes
automatizados podem
ser acionados para
garantir a conformidade com
várias regulamentações do setor. Essa etapa permite que você identifique problemas de
conformidade antes que o
aplicativo seja implantado. O que verificar? Verifique a criptografia de dados confidenciais em bancos de dados. Confirme se o registro está ativado para
transações confidenciais. Valide
trilhas de auditoria para verificar se as meias estão em conformidade HIPA. Ferramenta a ser usada. Ferramentas como o Hashi
Corps Sentinel ou o
chef Inspect inquilino forçam verificações de
conformidade automaticamente verificações de
conformidade Por exemplo, em um ambiente
financeiro, uma verificação de conformidade é executada
durante a construção para garantir que todas as
transações financeiras sejam registradas
adequadamente para atender aos requisitos de auditoria do
SOFS. Terceiro, o estágio de teste, validação dinâmica de
conformidade. No estágio de teste,
as ferramentas de conformidade podem
validar dinamicamente o
comportamento dos aplicativos em um ambiente de teste Isso envolve a simulação de operações
do mundo real para garantir que o aplicativo esteja seguindo as regras de
conformidade. O que verificar? Teste se dados confidenciais não podem ser acessados sem a autenticação
adequada. Valide se os registros de auditoria estão capturando todas as transações necessárias Garanta a conformidade com as políticas de controle de
acesso. Ferramenta a ser usada. O OAS, o Zap ou o Berk Suite
podem ser integrados ao seu pipeline de testes
para simular um imposto ou acesso
não autorizado e Um exemplo: um ambiente de teste
para um sistema de pagamento simula um cenário em que um usuário autorizado
tenta acessar dados criptografados do cartão
de crédito O sistema confirma que o
usuário não pode acessar os dados,
garantindo a conformidade com o PCI DSS Quatro, estágio de implantação, monitoramento
contínuo da conformidade. Após a implantação, as ferramentas de monitoramento
contínuo garantem que a conformidade seja
mantida na produção. Essas ferramentas verificam
configurações incorretas, vulnerabilidades
e
violações de controle de acesso que podem
levar à não conformidade O que verificar? Monitore os registros de
acesso para garantir que somente usuários
autorizados acessem dados confidenciais. Os patches de segurança verificados são aplicados regularmente. Verifique se há configurações incorretas
que possam violar os padrões de conformidade.
Ferramenta a ser usada. Ferramentas como o Qualis
ou o Tenable fornecem monitoramento
contínuo da conformidade e alertam você sobre quaisquer violações Por exemplo, em um ambiente de produção na área de
saúde, Qualis monitora a
falta de conformidade do sistema, garantindo que somente
funcionários autorizados acessem os dados
do paciente e
que funcionários autorizados acessem os dados
do paciente e os registros de auditoria Aqui estão as
ferramentas de conformidade para automação. OpenSCAP para automatizar a segurança e reforçar a conformidade da
configuração, Chief Inspect para verificar segurança e a conformidade
do sistema e Qualis para monitoramento contínuo
da conformidade e gerenciamento e reforçar a conformidade da
configuração,
Chief Inspect para verificar a segurança e a conformidade
do sistema e Qualis para monitoramento contínuo
da conformidade
e gerenciamento de vulnerabilidades. Geração de relatórios de
conformidade automatizados. Conformidade não se trata apenas de
aplicar medidas de segurança. Também se trata de
demonstrar que sua organização está
atendendo aos padrões do setor É aqui que entram os relatórios de
conformidade automatizados. Esses relatórios são
essenciais para auditorias e gerá-los manualmente
é uma tarefa demorada Ao automatizar os relatórios de
conformidade, você pode garantir que está
sempre pronto para uma auditoria sem compilar dados
manualmente Quais relatórios gerar? Para o PCI DSS, gere relatórios que mostrem práticas de
criptografia de dados, controles de registro de
acesso, registros de controle de
acesso e resultados de
verificação de vulnerabilidades Para o HIPA, crie relatórios
que documentem
políticas de criptografia, controle de
acesso
e retenção de dados para informações de
saúde protegidas ou PHI Para o SOC, gere relatórios de auditoria para rastrear alterações nos
dados financeiros, registrar o acesso e garantir a integridade
dos dados Ferramentas para relatórios automatizados. Splunk, o logaritmo e o
Elastic stack podem ser usados para
automatizar a geração de relatórios de
conformidade com base
nos registros de atividades do relatórios de
conformidade com base
nos registros de atividades Por exemplo, um banco de varejo usa Splunk para gerar relatórios mensais de conformidade com o
PCIDSS, detalhando a criptografia
dos dados do titular do cartão, registros de controle de
acesso e
quaisquer vulnerabilidades que foram verificadas e quaisquer vulnerabilidades Práticas recomendadas para
automatizar a conformidade. Primeiro, incorpore a conformidade
em todas as etapas. Não trate a conformidade como algo que você faz no
final do desenvolvimento, garanta que as
verificações de conformidade façam parte do seu pipeline de CICD
desde o início Segundo, atualize regularmente
suas regras de conformidade. Os padrões do setor, como PCI DSS e HIPA, estão Certifique-se de que suas verificações
automatizadas estejam atualizadas para refletir os requisitos
mais recentes. Três, gere
relatórios automaticamente. Use ferramentas para gerar relatórios de
conformidade
automaticamente para que sua organização
esteja sempre
pronta para a auditoria e possa demonstrar
conformidade a qualquer momento. As principais conclusões desta
lição incluem a automação das verificações de
conformidade para garantir que
seus sistemas atendam aos requisitos de PCIDSS, HIPAA Use ferramentas como OpenSCAP, HashiCorp Sentinel e Qualis para garantir a conformidade em cada estágio do seu pipeline de CICD. Gere relatórios de
conformidade automatizados para garantir que você esteja
sempre pronto para a auditoria e possa demonstrar facilmente que sua organização está
atendendo aos padrões do setor. Vamos fazer uma atividade de aprendizado. Escolha um padrão do setor sua organização
deve cumprir. Por exemplo, ECIDSS HIPA ou SOC. Configure uma verificação automatizada de
conformidade em seu pipeline do CICD usando uma ferramenta como o OpenSCAP
ou Gere um relatório de
conformidade automatizado e analise os resultados. Compartilhe sua experiência e quaisquer desafios enfrentados
no fórum de discussão do curso. O que vem a seguir? Na próxima lição, exploraremos como escalar a automação em suas operações de
mainframe Você aprende como expandir seus esforços de automação enquanto mantém a
estabilidade e o desempenho do sistema.
32. Aula 3: como dimensionar a automação em operações de mainframe: Lição três, escalando a automação em todas as operações do
mainframe Bem-vindo à lição
três do Módulo oito. Nas aulas anteriores, abordamos a automação das verificações de
segurança
e a garantia da conformidade
com os padrões do setor Agora estamos prontos para dar uma olhada
mais ampla na automação e em como escalá-la em todas suas
operações de mainframe Escalar a automação não significa
apenas adicionar mais ferramentas, mas expandir a automação de uma
forma estratégica que melhore a eficiência e,
ao mesmo tempo, mantenha estabilidade
e o desempenho
do sistema Ao final desta lição, você entenderá
o seguinte: como expandir a automação para cobrir mais áreas de suas operações de
mainframe Estratégias para manter a estabilidade
do sistema e, ao mesmo tempo,
aumentar a automação. Lições práticas de exemplos do mundo
real sobre como escalar sem
interromper processos críticos Vamos mergulhar no desafio de expandir a automação e
como fazer isso com sucesso. Por que escalar a automação? Já vimos
os benefícios de
automatizar partes de seu pipeline de CICD, verificações de
segurança e Então, por que parar aí? automação de escalabilidade
significa que você pode estender esses benefícios, como implantações
mais rápidas, menos erros e melhor gerenciamento de
recursos em mais áreas do seu ambiente de
mainframe O objetivo é eliminar tarefas
manuais repetitivas e permitir que sua equipe se
concentre em um trabalho mais estratégico Por exemplo, pense em uma grande instituição financeira administra sistemas
bancários essenciais. Eles podem já ter automatizado implantações para alguns aplicativos de
mainframe, mas escalar a automação para
lidar com processamento em lote, monitoramento
do sistema e escalabilidade de
recursos pode reduzir intervenção
manual e permitir que a organização responda
mais rapidamente às mais rapidamente Principais áreas para expandir a automação. Ao escalar a automação em suas principais operações de pagamento, você precisa procurar áreas que proporcionarão o
maior retorno em termos de eficiência,
confiabilidade Aqui estão algumas
áreas principais nas quais se concentrar. Automação do processamento em lote. Muitos ambientes de mainframe
dependem muito do processamento em lotes,
em que grandes volumes de dados são processados
em trabalhos agendados automatização desse processo
pode reduzir erros, garantir que os trabalhos sejam executados dentro do
prazo e ajustar
os recursos dinamicamente
com base na os recursos dinamicamente
com base O que automatizar?
Automatize o agendamento e a execução de trabalhos em lotes Use ferramentas como o BMC Control para monitorar e otimizar processos
em lote Aloque automaticamente
recursos adicionais, por exemplo,
memória e CPU, se um trabalho for
executado por mais tempo do que o esperado Por exemplo, um banco de varejo automatiza seus trabalhos em lotes noturnos
que processam transações que processam Ao automatizar a
alocação de recursos, eles evitam atrasos na conclusão do
trabalho e garantem que clientes possam acessar seus
saldos de conta atualizados Monitoramento automatizado do sistema. Depois que a automação for escalada
em várias operações, você precisará garantir que seus
sistemas funcionem sem problemas As ferramentas de monitoramento automatizado
ajudam você a monitorar o desempenho e a integridade do seu ambiente de mainframe.
O que automatizar Configure alertas automatizados para desempenho de CPU, memória e E/S. Monitore falhas de trabalho e
acione respostas automatizadas, por exemplo, reinicie
trabalhos ou escale recursos. Use o Prometheus e o Grafana para monitoramento em tempo
real e Por exemplo, em um ambiente de
assistência médica, as ferramentas
automatizadas de monitoramento detectam quando um trabalho em lote de processamento de pedidos de
seguro falha e
acionam automaticamente uma reinicialização, garantindo que não haja interrupção
no faturamento Dimensionamento de recursos.
Os sistemas de mainframe geralmente apresentam
picos de demanda, principalmente durante os horários de pico,
por exemplo, no processamento
financeiro no final do mês automatização do escalonamento de recursos
permite que seu sistema lide aumento da carga de trabalho sem provisionar
manualmente A automatização do escalonamento de recursos
permite que seu sistema lide com o
aumento da carga de trabalho sem provisionar
manualmente recursos adicionais.
O que automatizar Aloque automaticamente CPU
e memória
adicionais durante períodos
de alta demanda Diminua a escala dos recursos quando a carga de trabalho diminuir
para otimizar os custos Use sib para gerenciar a alocação
dinâmica de recursos com base em limites predefinidos Por exemplo, uma empresa de
telecomunicações automatiza o escalonamento de recursos
durante os horários de pico de uso, como o fim dos ciclos de
cobrança quando os clientes acessam suas contas Isso evita a
lentidão do sistema sem provisionar recursos em
excesso DevOps e expansão contínua
da integração. À medida que você escala a automação, é importante integrar ainda mais os princípios do
DevOps, como expandir seus pipelines de integração
contínua e
entrega contínua O que automatizar
Automatize os testes em cada estágio de desenvolvimento para cada aplicativo de mainframe Integre ferramentas adicionais,
como Jenkins, para expandir recursos do
CICD em todo
o seu portfólio de mainframe Implemente
reversões automatizadas em caso
de falha na implantação,
evitando Por exemplo, uma
empresa de logística expande seu pipeline de CICD para incluir todos os seus aplicativos de
mainframe, garantindo que os novos
recursos sejam testados e implantados automaticamente
com Lições sobre automação de escalabilidade. automação de escalabilidade não se
resume apenas à implementação de mais ferramentas Trata-se de escalar de forma inteligente. Aqui estão algumas
lições práticas que você deve ter em mente ao expandir a automação em suas
operações de mainframe Primeiro, priorize áreas de
alto impacto. Não tente automatizar
tudo de uma vez. Concentre-se nas áreas que
proporcionarão o maior
retorno sobre o investimento, como processamento em lote
e escalabilidade de recursos Geralmente, esses são os processos
mais demorados e propensos a erros
em ambientes de mainframe. Segundo, mantenha a estabilidade do sistema. À medida que você escala a automação, manter a
estabilidade do sistema é crucial. Sempre teste a automação em um ambiente de teste antes de implantá-la na produção Isso garante que os
scripts ou processos de automação não afetem negativamente o
desempenho do sistema. Aqui vai uma dica. Implemente
painéis de monitoramento e alertas em tempo real para que você possa acompanhar o impacto da automação na estabilidade do sistema Três, mantenha o elemento humano. Embora a automação possa
lidar com tarefas repetitivas, você ainda precisará de supervisão
humana para tomar decisões críticas Configure
alertas e respostas automatizados, mas garanta que sua equipe
permaneça informada sobre
grandes incidentes e mudanças no sistema ou no sistema Vejamos um exemplo,
uma agência governamental. Uma agência governamental
responsável pelo processamento da
declaração de impostos enfrentou
demandas crescentes durante a temporada fiscal, levando a frequentes
lentidões do sistema ou falhas Eles decidiram escalar a automação
nas seguintes áreas. Processamento em lote, automatização de trabalhos de processamento de
tarefas, redução de erros e garantia de conclusão em tempo hábil. redução de erros e garantia de conclusão em tempo hábil.
Dimensionamento de recursos Os recursos foram escalados
dinamicamente para lidar com o aumento das cargas de trabalho, evitando o tempo de inatividade durante Monitoramento automatizado. implementação do
monitoramento em tempo real permitiu que eles detectassem problemas com antecedência e
reiniciassem automaticamente os trabalhos com falha. O resultado foi uma
redução de 30% nas falhas de trabalho, tempos de processamento mais
rápidos e contribuintes
mais satisfeitos Práticas recomendadas para
escalar a automação. Aqui estão algumas
práticas recomendadas que você deve ter em mente ao escalar a automação em seu
ambiente de mainframe Primeiro, comece com pequenas áreas
de alto impacto. Concentre-se em automatizar tarefas como processamento
em lote e escalonamento
de recursos, o que proporcionará ganhos rápidos Em segundo lugar, teste a
automação minuciosamente. Sempre teste a automação em
um ambiente de teste para garantir que ela funcione conforme esperado sem
interromper Em terceiro lugar, monitore
o desempenho continuamente. Use ferramentas como
Prometheus e Grafana para monitorar o desempenho de seus
processos automatizados em principais conclusões desta lição
incluem a escalabilidade da automação
em suas operações de mainframe permitindo que você elimine
mais tarefas manuais,
melhore a eficiência Concentre-se em automatizar o
processamento em lote, o monitoramento do sistema, escalonamento de
recursos
e os pipelines do CICD para Garanta a estabilidade do sistema
testando
minuciosamente a automação e monitorando
o desempenho continuamente. Vamos fazer uma atividade de aprendizado. Identifique uma área de suas operações de mainframe que poderia se beneficiar da automação
expandida Por exemplo, processamento em lote
ou escalonamento de recursos. Crie um plano para
automatizar essa área, incluindo as ferramentas que você
usaria e os processos
que você automatizaria Compartilhe seu plano no fórum de
discussão do curso e discuta como ele melhoraria a eficiência e o desempenho em
seu ambiente. O que vem a seguir? Na próxima lição, exploraremos como manter os processos de
automação a
longo prazo. Você aprende estratégias
para garantir que seus esforços de automação permaneçam eficazes à medida que seus
sistemas evoluem e como monitorar e melhorar
os processos automatizados ao longo do tempo
33. Aula 4: mantendo a automação em operações de longo prazo: Lição quatro,
envolvendo automação em operações de longo prazo Bem-vindo à lição
quatro do Módulo oito. Parabéns. Você chegou à lição final
deste módulo. Até agora, você aprendeu como
automatizar os principais processos em
suas operações de mainframe, garantir a conformidade
e escalar a automação em todo o seu ambiente Agora vamos
falar sobre algo que é tão importante quanto
implementar a automação, mantê-la a longo prazo. A automação não é algo
que você define e esquece. Se não forem controlados, os processos
automatizados
podem se tornar desatualizados, ineficientes ou até mesmo
falhar completamente Nesta lição, vamos nos
concentrar em como
garantir que sua automação
permaneça eficaz ao longo do tempo. Você aprende estratégias
para monitorar, adaptar e melhorar seus
esforços de automação para que eles possam continuar a gerar valor
no futuro. Ao final desta lição, você entenderá
as seguintes estratégias
para manter a automação
em operações de longo prazo como monitorar seus processos
automatizados para garantir que eles permaneçam eficazes. Como adaptar e
melhorar a automação medida que seus sistemas evoluem.
Vamos começar. Por que manter a
automação é fundamental. A automação pode ser um
divisor de águas em termos de eficiência,
mas, como qualquer outra coisa em
TI, ela precisa de atenção regular Imagine configurar um processo de
automação hoje e descobrir um ano depois, que ele ainda está usando práticas
desatualizadas ou não está otimizado para a carga
atual do sistema. Manter sua automação
atualizada e ajustada é crucial para garantir que você sempre obtenha o
máximo valor dela Um exemplo, imagine uma grande instituição
financeira que automatizou seu
processamento em lotes há cinco anos. Os processos automatizados
funcionam bem por anos, mas à medida que a empresa expandia
e adicionava novos produtos, esses mesmos processos começaram a
causar gargalos O resultado é uma desaceleração nas transações
críticas. Ao revisar e
otimizar regularmente os processos de automação, a empresa poderia ter
evitado esses problemas Estratégias para o sucesso da
automação a longo prazo. Para garantir que seus esforços de
automação permaneçam eficazes ao longo do tempo, você precisará de uma combinação
de monitoramento, testes e
melhorias contínuas. Veja como abordar isso. Monitoramento
e relatórios regulares. A automação pode falhar silenciosamente. trabalhos podem não ser concluídos, os erros podem passar despercebidos ou o desempenho pode diminuir
sem que você perceba É por isso que o
monitoramento contínuo é tão importante. O que monitorar? Métricas de desempenho,
como CPU, memória e tempos de conclusão de tarefas, taxas de
falha de tarefas automatizadas. Uso de recursos,
especialmente nos horários de
pico, ferramentas a serem usadas. O Prom usa o Grafana para painéis de monitoramento
em tempo real. Splunk ou Elastic Stack para agregação
e geração de relatórios de registros Por exemplo, um
profissional de saúde monitora seu sistema automatizado de processamento
em lote para reclamações de seguros
usando o Grafana Painéis em tempo real permitem que eles identifiquem atrasos
no processamento, permitindo que a equipe intervenha
antes que os problemas Revise e ajuste os scripts de
automação. À medida que seu sistema evolui,
os scripts e processos que você configura para automação podem não ser
mais ideais É importante revisar e ajustar esses
scripts regularmente. O que avaliar? A verificação valores
codificados
pode não se aplicar mais Por exemplo,
cronogramas de trabalho específicos ou limites de recursos. Analise os fluxos de trabalho automatizados em busca quaisquer dependências manuais
que possam ser eliminadas Garanta que suas
ferramentas de automação estejam atualizadas para as versões mais recentes para se beneficiar dos novos recursos
e patches de segurança. Por exemplo, um banco de varejo revisa
periodicamente sua programação
automatizada para trabalhos em lotes noturnos Com o tempo, eles percebem que
determinados trabalhos não precisam mais tanta capacidade de processamento
devido à otimização do sistema. Ao ajustar a alocação
de recursos, eles economizam custos e
reduzem a carga do sistema Teste
e validação contínuos. Assim como você
testa continuamente seu código em busca de bugs, você também deve testar seus processos de
automação à eficiência e confiabilidade. Automações que antes eram ideais podem não ser
bem programadas à medida que o sistema cresce ou podem
ficar desatualizadas à medida que novas tecnologias são
introduzidas. Como testar. Implemente testes de unidade para
seus scripts de automação para validar se eles funcionam
conforme o esperado após as alterações Execute testes de carga para garantir que sua automação possa lidar com o
aumento das demandas do sistema. Teste periodicamente seus processos de
reversão para garantir que funcionem em caso
de falha na implantação Por exemplo, uma empresa de logística
configura testes de carga para simular períodos de alto tráfego em um pipeline CICD para aplicações de
mainframe Ao testar o
pipeline sob estresse, eles descobrem oportunidades de
otimizar o escalonamento de recursos, garantindo que sua automação funcione sem problemas
durante os horários de pico Melhoria contínua
por meio de ciclos de feedback. A automação deve ser vista como uma parte viva e em evolução de
suas operações de mainframe Use ciclos de feedback para
identificar áreas melhoria e
refinar continuamente Crie um ciclo de feedback. Colete feedback de
suas ferramentas de monitoramento, registros
do sistema e relatórios de
desempenho. Envolva sua equipe
conduzindo retrospectivas periódicas para discutir como a automação está funcionando e onde
melhorias podem ser feitas Implemente as mudanças de
forma iterativa, garantindo que cada ajuste melhore a eficiência
geral do sistema Por exemplo, uma
empresa de telecomunicações realiza retrospectivas
trimestrais
com sua equipe de operações
para discutir seus para discutir Eles usam o feedback
para fazer ajustes dimensionamento de recursos
e no agendamento de trabalhos, levando a um aumento de 15%
na eficiência do sistema Automação de monitoramento para melhoria
contínua. A chave para o sucesso a longo
prazo com automação é o monitoramento
contínuo. Aqui estão algumas
áreas específicas para ficar de olho no desempenho profissional
e nas taxas de sucesso. Acompanhe quanto tempo os trabalhos
automatizados estão demorando e se estão sendo
concluídos com sucesso. Se os tempos de conclusão do trabalho
aumentarem ou as taxas de falha aumentarem, talvez
seja hora de reotimizar. Monitore picos no uso da CPU
ou da memória
durante a execução do trabalho Configure alertas para falhas de trabalho ou tempos de execução prolongados. Utilização de recursos. Embora a automação possa
ajudar a otimizar o uso de recursos, você ainda precisa monitorar como esses recursos estão
sendo usados ao longo do tempo. Se você perceber que
seu sistema está constantemente acima
ou abaixo do provisionamento, talvez seja necessário ajustar
suas políticas de escalabilidade Monitore o
escalonamento de recursos para garantir que ele seja ajustado dinamicamente
com base na demanda Configure alertas para provisionamento
excessivo ou subutilização Adapte a automação às
novas tecnologias. À medida que novas ferramentas e tecnologias forem introduzidas em
seu ambiente, você precisará adaptar
seus
processos de automação adequadamente. Avalie regularmente se
há novas ferramentas de automação que poderiam melhorar seu fluxo de trabalho ou tornar suas operações
mais eficientes. Mantenha-se atualizado com
a versão mais recente das ferramentas de automação. Avalie novos recursos e integrações que poderiam agilizar seus
processos de automação principais conclusões desta lição incluem manter a automação
monitorando, testando e otimizando regularmente seu Configure o monitoramento contínuo
com ferramentas como Prometheus e Grafana para garantir que sua automação funcione sem problemas Revise e ajuste periodicamente seus
scripts de automação para garantir que eles permaneçam relevantes à medida que
seus sistemas evoluem. Use ciclos de feedback para melhorar
continuamente a automação envolvendo sua equipe e monitorando o desempenho em
tempo real Vamos fazer uma atividade de aprendizado. Escolha um dos processos
automatizados atuais e analise seu desempenho nos
últimos seis meses. Identifique todas as áreas em que o
processo possa ser otimizado. Por exemplo, falhas no trabalho, desempenho
lento ou provisionamento
excessivo de recursos Crie um plano para otimizar o processo e compartilhe-o
com sua equipe para obter feedback. Implemente as
mudanças e monitore os resultados nas próximas semanas. Parabéns por
concluir o curso. Você concluiu o curso, modernização do
mainframe
com domínio do DevOps Essa é uma
conquista incrível e agora você tem as habilidades e
o conhecimento para
implementar a automação
para testes, implantação e monitoramento em seu ambiente de mainframe
usando ferramentas de DevOps O que vem a seguir? Agora que você
terminou este curso, é hora de colocar em prática o que
aprendemos. Comece analisando suas operações atuais de
mainframe e identificando áreas nas quais você pode automatizar ou melhorar a Trabalhe com sua equipe para configurar painéis de
monitoramento e garantir que seus processos de automação sejam otimizados para o sucesso a
longo prazo Continue sua jornada na modernização
do mainframe. Para manter o ritmo, considere se matricular nos
seguintes cursos avançados Um, API e microsserviços, modernizando o aplicativo de mainframe Saiba como aproveitar
APIs e microsserviços para modernizar e ampliar
a funcionalidade de seu aplicativo de
mainframe legado, tornando-o mais Dois, segurança no mainframe
e integração na nuvem. Explore as
preocupações de segurança que surgem ao conectar
mainframes a plataformas de
nuvem e
conheça as melhores práticas e soluções para mitigar riscos em ambientes de
mainframe de nuvem híbrida Você está no caminho certo para
dominar a modernização do
sistema de mainframe Continue avançando
e lembre-se que a automação é
apenas o começo de sua jornada de modernização Há inúmeras
oportunidades para melhorar e evoluir seus sistemas Diga curioso, mantenha-se inovador e nunca pare de aprender. Boa sorte nas próximas etapas e espero ver você
no próximo curso.