Translate

Mostrar mensagens com a etiqueta Operação Mainframe. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Operação Mainframe. Mostrar todas as mensagens

segunda-feira, 17 de fevereiro de 2020

🔥💣 REXX + CICS: O “CENTRO DE COMANDO SECRETO” DO z/OS — 30 LABORATÓRIOS PRÁTICOS QUE TRANSFORMAM UM ANALISTA DE PRODUÇÃO EM UM MESTRE DA AUTOMAÇÃO MAINFRAME 💣🔥

 

Bellacosa Mainframe laboratorio pratico REXX e CICS

🔥💣 REXX + CICS: O “CENTRO DE COMANDO SECRETO” DO z/OS — 30 LABORATÓRIOS PRÁTICOS QUE TRANSFORMAM UM ANALISTA DE PRODUÇÃO EM UM MESTRE DA AUTOMAÇÃO MAINFRAME 💣🔥

☕ Introdução

Existe um momento na carreira de todo Analista de Produção Senior em Mainframe em que ele percebe uma verdade brutal:

“Quem domina automação no CICS deixa de apagar incêndio… e começa a controlar o incêndio antes dele nascer.”

E é exatamente aqui que entra o velho — porém absurdamente poderoso — REXX.

Enquanto muita gente ainda usa REXX apenas para pequenos scripts no TSO, os veteranos sabem:

🔥 REXX consegue:

  • conversar com CICS
  • operar consoles
  • controlar filas
  • monitorar transações
  • automatizar recovery
  • analisar dumps
  • integrar SDSF
  • conversar com DB2
  • chamar APIs
  • acionar comandos MVS
  • gerar alertas inteligentes

Tudo isso com poucas linhas.

Este laboratório foi pensado para:

  • Analistas de Produção Senior
  • Operadores avançados
  • Especialistas z/OS
  • Equipes de automação
  • Times de observabilidade mainframe

🚀 Estrutura do Laboratório

Cada caso possui:

✅ Objetivo
✅ Cenário real
✅ Passo a passo
✅ Código exemplo
✅ Dicas de produção
✅ Curiosidades Bellacosa Mainframe
✅ Solução operacional


🔥 LAB 01 — Consultando Status de Região CICS

🎯 Objetivo

Automatizar consulta de status da região CICS.


☕ Cenário Real

O operador precisa verificar:

  • se a região está ativa
  • número de tasks
  • uso de CPU
  • mensagens de erro

🚀 Passo a Passo

1. Criar EXEC REXX

ADDRESS SDSF

"ISFEXEC ST"

DO IX = 1 TO JNAME.0

IF POS("CICS", JNAME.IX) > 0 THEN
SAY JNAME.IX STATUS.IX

END

🔥 Resultado Esperado

CICSA ACTIVE
CICSB ACTIVE

💡 Dica Senior

Nunca dependa apenas de:

  • ping
  • VTAM
  • TCP/IP

Uma região pode responder rede e estar:

  • hung
  • loopando
  • sem dispatcher

☕ Curiosidade

Grandes bancos possuem robôs REXX monitorando CICS desde os anos 90.

Muita automação “moderna” apenas reinventou isso.


🔥 LAB 02 — Derrubando Transações Presas

🎯 Objetivo

Cancelar transações em loop.


🚀 Comando CICS

CEMT SET TASK(12345) PURGE

🚀 Automação REXX

ADDRESS TSO

TASK = 12345

CMD = "F CICSPROD,CEMT SET TASK("TASK") PURGE"

"CONSOLE "CMD

💡 Dica Senior

Sempre validar:

  • tempo de execução
  • CPU
  • enqueue
  • wait type

antes de purgar.


🔥 LAB 03 — Monitorando Número de Tasks

ADDRESS SDSF

"ISFEXEC ST"

TOTAL = 0

DO I = 1 TO JNAME.0

IF POS("CICS",JNAME.I) > 0 THEN
TOTAL = TOTAL + 1

END

SAY "REGIOES CICS:",TOTAL

🔥 LAB 04 — Detectando Região Travada

🎯 Estratégia

Comparar:

  • CPU baixa
  • tasks altas
  • ausência de logs

🚀 Exemplo

IF CPU < 1 & TASKS > 500 THEN
SAY "POSSIVEL HANG"

🔥 LAB 05 — Automatizando CEMT INQ TASK

ADDRESS TSO

"CONSOLE F CICSPROD,CEMT INQ TASK"

🔥 LAB 06 — Restart Automático de Região CICS

🚨 Cenário

Região caiu inesperadamente.


🚀 Fluxo

  1. Detecta DOWN
  2. Verifica horário permitido
  3. Sobe região
  4. Valida startup
  5. Gera alerta

🚀 Exemplo

"START CICSPRD"

🔥 LAB 07 — Verificando SOS (Short On Storage)

IF POS("SOS",MSG) > 0 THEN
SAY "ALERTA CRITICO"

🔥 LAB 08 — Ler JESMSGLG Automaticamente

ADDRESS SDSF
"ISFEXEC ST"

SAY "LENDO JESMSGLG..."

🔥 LAB 09 — Detectar Abend AEI9

IF POS("AEI9",LINHA) > 0 THEN
SAY "TRANSACAO INVALIDA"

🔥 LAB 10 — Automação de CEDF

🎯 Objetivo

Automatizar tracing de transações.


"CONSOLE F CICSPROD,CEDF TRANS(PGMA)"

🔥 LAB 11 — Monitor de Deadlocks

IF POS("DEADLOCK",MSG) > 0 THEN
SAY "DB2 DEADLOCK DETECTADO"

🔥 LAB 12 — Captura Automática de Dumps

"CONSOLE DUMP COMM=(CICSABEND)"

🔥 LAB 13 — Monitorando VSAM Locks

IF POS("ENQUEUE",MSG) > 0 THEN
SAY "LOCK VSAM"

🔥 LAB 14 — Robô de Health Check CICS

Checklist

✅ Tasks
✅ Storage
✅ CPU
✅ MQ
✅ DB2
✅ VTAM


🔥 LAB 15 — Integração REXX + SDSF + CICS

ADDRESS SDSF
"ISFEXEC DA"

🔥 LAB 16 — Restart Inteligente Pós-Abend

Estratégia

Nunca restartar:

  • em loop
  • acima de X falhas
  • fora da janela

🔥 LAB 17 — Monitorando Transações Long Running

IF TEMPO > 300 THEN
SAY "TRANSACAO SUSPEITA"

🔥 LAB 18 — Gerando Alertas Operacionais

SAY "ENVIANDO ALERTA PARA NOC"

🔥 LAB 19 — Detectando Storage Violation

IF POS("ASRA",MSG) > 0 THEN
SAY "POSSIVEL STORAGE VIOLATION"

🔥 LAB 20 — Operando CICS Pelo Console MVS

"CONSOLE F CICSPROD,CEMT INQ SYS"

🔥 LAB 21 — Monitorando MQ no CICS

IF POS("MQ",MSG) > 0 THEN
SAY "MQ ISSUE"

🔥 LAB 22 — Auditoria de Comandos Operacionais

QUEUE USERID DATE TIME CMD

🔥 LAB 23 — Detectando Loops de CPU

IF CPU > 90 THEN
SAY "LOOP CPU"

🔥 LAB 24 — Shutdown Controlado

"CONSOLE F CICSPROD,CEMT P SHUT"

🔥 LAB 25 — Coleta Automática de Estatísticas

SAY "GERANDO RELATORIO"

🔥 LAB 26 — Integração com DB2

ADDRESS DSNREXX

🔥 LAB 27 — Automação de Recovery

Fluxo

  1. Detecta erro
  2. Coleta dump
  3. Reinicia recurso
  4. Valida aplicação

🔥 LAB 28 — Detectando Flood de Tasks

IF TASKS > 5000 THEN
SAY "FLOOD DETECTADO"

🔥 LAB 29 — Operação Multi-CICS

DO FOREVER

Monitorando dezenas de regiões simultaneamente.


🔥 LAB 30 — Central de Automação Mainframe

🎯 Objetivo Final

Construir:

  • console inteligente
  • monitor operacional
  • auto recovery
  • observabilidade
  • automação enterprise

Tudo em REXX.


🚀 Arquitetura Recomendada

REXX
├── SDSF
├── CONSOLE
├── CICS
├── DB2
├── MQ
├── JES2
├── VTAM
└── SYSLOG

☕ Dicas de Ouro de Produção Senior

🔥 Nunca automatize sem rollback

Toda automação precisa:

  • validação
  • fallback
  • retry
  • logging
  • auditoria

🔥 REXX pode derrubar um banco inteiro

Um EXEC mal feito:

  • purga task errada
  • derruba região
  • gera storm de comandos

Produção não perdoa.


🔥 Monitore antes de agir

Senior não automatiza “ação”.

Senior automatiza:

  • decisão
  • contexto
  • diagnóstico

💣 Curiosidades Bellacosa Mainframe

☕ O REXX virou “DevOps” antes do DevOps existir

Muito antes de:

  • Ansible
  • Terraform
  • Kubernetes
  • Jenkins

o mainframe já fazia:

  • automação
  • self-healing
  • orchestration
  • monitoramento inteligente

com:

  • REXX
  • NetView
  • OPS/MVS
  • System Automation

🚀 Missão Final do Curso

Ao terminar estes 30 laboratórios você será capaz de:

✅ Automatizar CICS
✅ Criar robôs operacionais
✅ Detectar incidentes automaticamente
✅ Fazer self-healing
✅ Integrar múltiplos subsistemas
✅ Construir observabilidade real no z/OS
✅ Reduzir MTTR
✅ Operar ambientes enterprise críticos


🔥 Frase Final Bellacosa Mainframe

“No mundo distribuído o operador reage ao problema.

No Mainframe automatizado o problema já foi resolvido antes do telefone tocar.” 🚀☕

 

terça-feira, 16 de janeiro de 2007

O que é JES2?

 

Bellacosa Mainframe e o que é jes2

O que é JES2?

Quando alguém começa a estudar mainframe, rapidamente encontra nomes como:

  • JOB;

  • spool;

  • batch;

  • SDSF;

  • JES2.

E logo surge a pergunta:

Quem controla os JOBs no z/OS?

A resposta normalmente é:

JES2

Ele é um dos componentes mais importantes do ambiente mainframe.


O que significa JES2?

JES2 significa:

Job Entry Subsystem 2

Em português:

Subsistema de Entrada de Jobs


Definição simples

O JES2 é o componente do z/OS responsável por:

  • receber JOBs;

  • controlar execução batch;

  • gerenciar spool;

  • controlar impressões;

  • organizar filas de processamento.


Uma analogia fácil

Imagine um grande aeroporto.

Existem:

  • aviões;

  • filas;

  • pistas;

  • autorização de decolagem;

  • controle de tráfego.

O JES2 funciona como:

a torre de controle dos JOBs do mainframe.

Ele decide:

  • quem entra;

  • quem espera;

  • quem executa;

  • quem terminou.


O que é um JOB?

JOB é um processamento batch.

Exemplo:

  • folha salarial;

  • fechamento bancário;

  • relatórios;

  • backup;

  • processamento financeiro.


O que o JES2 faz?


1. Recebe JOBs

Quando o usuário executa:

SUBMIT

o JOB vai para o JES2.


2. Coloca em fila

O JES2 organiza:

  • prioridade;

  • classe;

  • recursos;

  • ordem de execução.


3. Controla spool

Armazena:

  • SYSOUT;

  • logs;

  • relatórios;

  • mensagens.


4. Inicia execução

Quando recursos ficam disponíveis:
o JES2 libera o JOB.


5. Finaliza processamento

Depois:

  • guarda saída;

  • libera recursos;

  • mantém logs.


O que é spool?

Spool significa:

Simultaneous Peripheral Operations Online

É uma área temporária onde ficam:

  • saídas;

  • relatórios;

  • SYSOUT;

  • mensagens batch.


Analogia simples

Imagine:

uma fila de impressão gigante.

O JES2 organiza tudo antes da saída final.


Fluxo simplificado do JES2

USUÁRIO
   ↓
SUBMIT
   ↓
JES2
   ↓
FILA
   ↓
EXECUÇÃO
   ↓
SPOOL
   ↓
OUTPUT

O JES2 executa o JOB?

Não diretamente.

Quem executa é:

o initiator.

O JES2:

  • controla;

  • agenda;

  • organiza.


O que é initiator?

Processo que executa JOBs batch.

O JES2 entrega JOBs para ele.


O que é classe no JES2?

Os JOBs podem possuir:

  • classes;

  • prioridades;

  • políticas.

Exemplo:

//JOBNAME JOB CLASS=A

Isso ajuda o sistema a organizar workload

Por exemplo:

  • jobs rápidos;

  • jobs pesados;

  • produção;

  • testes.


O que é SYSOUT?

Saída gerada pelo JOB.

Exemplo:

  • relatórios;

  • mensagens;

  • logs COBOL.


Onde visualizar JOBs?

Principalmente via:

SDSF


Painéis famosos do SDSF


ST

Status dos JOBs.


DA

Jobs ativos.


O

Output.


H

Held output.


Como um JOB entra no JES2?

Exemplo simples:

//MEUJOB JOB ...
//STEP1 EXEC PGM=IEFBR14

Usuário executa:

SUBMIT

O JES2 recebe o JOB.


O que é HOLD?

JOB fica parado aguardando liberação.


O que é CANCEL?

Cancela JOB.


O que é purge?

Remove JOB do spool.


O que é output class?

Classe da saída SYSOUT.

Exemplo:

//SYSOUT=A

O JES2 controla impressoras?

Historicamente:
sim.

Hoje também controla:

  • saída eletrônica;

  • spool digital;

  • relatórios.


JES2 vs JES3

Existem dois grandes subsistemas históricos:


JES2

Mais popular.

Mais simples e distribuído.


JES3

Controle mais centralizado.

Hoje JES2 domina a maioria dos ambientes.


O JES2 ainda é usado?

Muito.

Principalmente em:

  • bancos;

  • seguradoras;

  • governos;

  • processamento financeiro.


Curiosidades incríveis

1. O JES2 existe há décadas

E continua essencial.


2. Bilhões de JOBs passam pelo JES2

Todos os anos.


3. Grande parte do sistema financeiro depende dele

Principalmente batch noturno.


4. O spool é uma das áreas mais críticas do z/OS

Sem spool o batch praticamente para.


O que iniciantes costumam confundir?


1. Pensar que JES2 executa programas diretamente

Quem executa é o initiator.


2. Confundir JES2 com SDSF

JES2 = subsistema
SDSF = interface de monitoramento.


3. Ignorar classes

Elas afetam:

  • prioridade;

  • execução;

  • workload.


4. Confundir spool com dataset comum

Spool possui gerenciamento especial.


Como o JES2 aparece no dia a dia?

Praticamente em tudo:

  • COBOL;

  • batch;

  • SORT;

  • backups;

  • DB2;

  • relatórios;

  • automação.


Mensagens famosas do JES2


$HASP

Prefixo clássico do JES2.

Exemplo:

$HASP373 JOB STARTED

$HASP395

JOB finalizado.


Essas mensagens são lendárias no mundo mainframe


Por que aprender JES2?

Porque ele é:

o coração do processamento batch do z/OS.

Quem entende JES2 entende:

  • batch;

  • spool;

  • execução de JOBs;

  • operação mainframe.


Resumo rápido

ConceitoSignificado
JES2Gerenciador de JOBs
JOBProcessamento batch
SpoolÁrea de saída temporária
SYSOUTSaída do JOB
InitiatorExecuta JOB
SDSFInterface de monitoramento
CLASSPrioridade/categoria

Conclusão

O JES2 é um dos componentes mais importantes do z/OS.

Ele funciona como a central de controle do processamento batch, organizando JOBs, spool, filas e execução dentro do ambiente mainframe IBM Z.

Mesmo após décadas de existência, continua sendo peça fundamental da computação corporativa moderna.

quinta-feira, 4 de janeiro de 2007

O que é terminal 3270?

Bellacosa Mainframe o que é um terminal 3270


O que é terminal 3270?

Quando alguém vê uma tela de mainframe pela primeira vez, normalmente encontra algo parecido com isto:

=== TSO/ISPF ===

OPTION ===>

1 VIEW
2 EDIT
3 UTILITIES
4 FOREGROUND

Sem mouse.
Sem janelas modernas.
Sem ícones coloridos.

Apenas uma tela textual.

Esse ambiente clássico é acessado através do famoso:

Terminal 3270

Ele é uma das tecnologias mais icônicas da história do mainframe.


Definição simples

O terminal 3270 é um tipo de interface usada para acessar sistemas mainframe IBM.

Ele permite:

  • navegar no z/OS;

  • executar comandos;

  • editar arquivos;

  • monitorar jobs;

  • acessar aplicações corporativas.

É a “porta de entrada” do usuário no ambiente mainframe.


Uma analogia fácil

Imagine o terminal 3270 como:

o painel de controle de uma nave espacial.

Ele não foi criado para ser bonito.

Foi criado para ser:

  • rápido;

  • eficiente;

  • estável;

  • extremamente produtivo.


Origem do 3270

O IBM 3270 surgiu nos anos 1970.

Na época, empresas precisavam que milhares de usuários acessassem sistemas centrais simultaneamente.

A IBM criou então uma família de terminais especializados para trabalhar com mainframes.

Eles ficaram famosos pelas:

  • telas monocromáticas;

  • texto verde;

  • alta velocidade;

  • baixo consumo de rede.


O famoso “green screen”

Muita gente associa mainframe à:

tela verde

Isso aconteceu porque muitos terminais antigos utilizavam monitores verdes monocromáticos.

Hoje:

  • existem emuladores modernos;

  • interfaces coloridas;

  • acesso web;

  • clients gráficos.

Mas o apelido “green screen” continua extremamente famoso.


O terminal 3270 é um computador?

Originalmente, os primeiros modelos eram terminais físicos dedicados.

Hoje normalmente usamos:

emuladores 3270

São programas instalados no computador.

Exemplos:

  • IBM Personal Communications;

  • x3270;

  • wc3270;

  • Rocket BlueZone;

  • TN3270 clients.

Eles simulam o comportamento do terminal clássico.


Como funciona um terminal 3270?

O usuário:

  1. abre o emulador;

  2. conecta ao mainframe;

  3. faz login;

  4. acessa aplicações.

O terminal conversa diretamente com o z/OS.


O que torna o 3270 diferente?

Ele não funciona exatamente como um terminal Linux comum.

O modelo 3270 é:

orientado a telas

Isso significa:

  • o mainframe envia uma tela inteira;

  • o usuário preenche campos;

  • os dados retornam ao sistema.

Isso reduz tráfego e melhora desempenho.


Exemplo simples

Imagine uma tela bancária:

CONTA: ________
AGÊNCIA: ______
VALOR: ________

O operador preenche:

  • os campos;

  • pressiona ENTER;

  • a tela inteira é processada.


O teclado 3270 é famoso

Os teclados 3270 possuem teclas especiais muito importantes.


ENTER

Processa informações da tela.

No 3270:
ENTER é extremamente importante.


PF Keys

As famosas:

  • PF1;

  • PF2;

  • PF3;

  • PF12;
    etc.

Funcionam como atalhos.


PF3

Uma das mais famosas.

Normalmente significa:

  • voltar;

  • sair;

  • retornar.

Muitos iniciantes usam PF3 centenas de vezes por dia.


CLEAR

Limpa a tela.


PA Keys

Teclas especiais de atenção do sistema.


O que é TSO?

Um dos ambientes acessados pelo 3270.

TSO significa:

Time Sharing Option

Permite usuários trabalharem interativamente no z/OS.


O que é ISPF?

O ambiente mais famoso dentro do 3270.

ISPF significa:

Interactive System Productivity Facility

É uma interface textual usada para:

  • editar datasets;

  • navegar em bibliotecas;

  • submeter jobs;

  • administrar ambientes.


O terminal 3270 ainda é usado?

Sim.
Muito.

Principalmente em:

  • bancos;

  • seguradoras;

  • governo;

  • processamento financeiro;

  • operações críticas.

Porque ele continua sendo:

  • rápido;

  • leve;

  • eficiente;

  • confiável.


Vantagens do 3270

1. Velocidade

Operadores experientes trabalham extremamente rápido.


2. Baixo consumo de rede

O protocolo foi otimizado para eficiência.


3. Alta estabilidade

Ideal para ambientes críticos.


4. Produtividade

Usuários experientes navegam sem mouse.


Desvantagens para iniciantes

1. Interface intimidadora

Quem vem de Windows pode estranhar bastante.


2. Muitos atalhos

PF keys assustam no começo.


3. Navegação diferente

O ENTER do 3270 não funciona igual aplicações comuns.


Curiosidades incríveis

1. O 3270 influenciou a computação corporativa

Muitos conceitos de terminal vieram dele.


2. Ainda existem milhões de sessões 3270 no mundo

Principalmente em ambientes financeiros.


3. Usuários experientes digitam absurdamente rápido

Muitos operadores quase não usam mouse.


4. O protocolo era extremamente avançado para a época

Ele economizava banda quando redes eram lentas e caras.


Como o 3270 se conecta hoje?

Hoje normalmente via:

  • TCP/IP;

  • TN3270;

  • VPN;

  • redes corporativas.


O 3270 é seguro?

Pode ser extremamente seguro quando integrado com:

  • RACF;

  • criptografia;

  • autenticação corporativa;

  • MFA.


Existe interface moderna no mainframe?

Sim.

Hoje existem:

  • interfaces web;

  • APIs REST;

  • dashboards;

  • DevOps;

  • ferramentas gráficas.

Mas o 3270 continua sendo muito usado pela:

  • velocidade;

  • eficiência;

  • tradição operacional.


Erros comuns de iniciantes

“É tecnologia ultrapassada”

Na verdade, ele continua extremamente eficiente.


“Só existe tela verde”

Hoje há emuladores modernos e interfaces avançadas.


“Mainframe não usa rede moderna”

Atualmente o 3270 opera sobre redes TCP/IP normalmente.


Por que aprender 3270?

Porque ele continua sendo:

  • base operacional do z/OS;

  • porta de entrada do mainframe;

  • ambiente central de administração.

Quem aprende 3270 entende melhor:

  • operação;

  • navegação;

  • produtividade mainframe.


Conclusão

O terminal 3270 é uma das interfaces mais icônicas da computação corporativa.

Criado para eficiência e estabilidade, ele continua sendo utilizado em ambientes críticos do mundo inteiro.

Mesmo décadas após seu surgimento, o 3270 ainda representa a conexão entre operadores, desenvolvedores e os sistemas que sustentam bancos, governos e grandes corporações.