Mostrar mensagens com a etiqueta csi. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta csi. Mostrar todas as mensagens

quinta-feira, 4 de novembro de 2010

🧠 SMP/E for z/OS – Uma Revisão

 

Bellacosa Mainframe apresenta um review smp/e 

🧠 SMP/E for z/OS – Uma Revisão

Revisão definitiva (com cheiro de fita, CSI alinhado e café frio ☕)

Se você acha que SMP/E é complicado, relaxa: ele só é honesto.
Honesto no sentido de que reflete exatamente a complexidade do z/OS — sem abstrações mágicas, sem “next, next, finish”.

SMP/E não é só uma ferramenta.
É memória histórica, controle cirúrgico e disciplina operacional.

Vamos revisar The Network do SMP/E for z/OS Workshop no melhor estilo Bellacosa Mainframe: com contexto, visão sistêmica e alguns easter eggs que só quem já brigou com um CSI entende 😉


🏛️ Antes do SMP/E: quando tudo era fita, suor e coragem

Nos anos 70, o mundo era simples — e perigoso.

  • O sistema vinha em DLIB tapes

  • O SYSGEN tinha Stage 1 e Stage 2

  • O programador montava tudo na unha

  • E manutenção?
    👉 Manual. Muito manual.

Resultado?

  • Instabilidade

  • Erros humanos

  • Sistemas que “funcionavam… até não funcionarem”

💾 Easter egg #1:

Quem nunca teve medo de rodar um IEP_COPY no volume errado… não viveu essa época.


🧬 A chegada do SMP (e depois SMP/E)

Nos anos 80, a IBM fez algo revolucionário:
automatizou o que não podia mais depender da memória humana.

Nascia o SMP, que depois evoluiu para SMP/E (System Modification Program / Extended).

Agora o sistema tinha:

  • Global Zone → cérebro

  • Target Zone → sistema em execução

  • Distribution Zone (DLIB) → fonte da verdade

Tudo documentado.
Tudo rastreável.
Tudo auditável.


🧠 O conceito-chave: CSI (Consolidated Software Inventory)

O CSI é o coração do SMP/E.

Ele responde perguntas críticas como:

  • O que está instalado?

  • Onde está?

  • Como foi construído?

  • Quem depende de quem?

Zonas:

  • Global Zone
    Índice mestre + opções de controle

  • Target Zone
    Reflete o que está rodando

  • Distribution Zone
    Reflete o que foi entregue

📌 Regra de ouro:

SMP/E não adivinha. Ele só faz exatamente o que o CSI diz.


📦 Tudo em SMP/E é SYSMOD

Não existe exceção.
Se entrou no SMP/E, virou SYSMOD.

Tipos clássicos:

  • FUNCTION → produto novo

  • PTF → serviço preventivo

  • APAR → correção corretiva

  • USERMOD → customização local (o famoso “aqui a gente fez diferente”)

Todos eles têm:

  • MCS (++ statements) → inteligência

  • Modification Text → o código

💾 Easter egg #2:

Viu ++HOLD? Pare. Respire. Leia o PSP antes de qualquer APPLY.


🔁 O fluxo eterno do SMP/E

O ciclo que nunca muda:

  1. RECEIVE

    • Entra no SMPPTS

    • Atualiza Global Zone

    • Nada muda no sistema ainda

  2. APPLY

    • Atualiza Target Libraries

    • Sistema pode ser testado

    • Ainda reversível

  3. RESTORE

    • Volta ao último nível aceito

    • Usa DLIB como fonte

    • Seu botão de “desfazer”

  4. ACCEPT

    • Atualiza DLIB

    • Ponto sem volta

    • Agora é história oficial

💣 Easter egg #3:

ACCEPT em produção sem teste é um pedido formal de incidente grave.


🌐 The Network: quando o SMP/E ganhou internet

Chegamos ao ponto alto do módulo: entrega eletrônica.

Com Shopz / JustShopz, tudo mudou:

  • Menos fita

  • Mais automação

  • Menos transporte físico

  • Mais rastreabilidade

Opções modernas:

  • ServerPac → replace completo

  • CBPDO → produto ou serviço incremental

  • Internet Delivery

    • RECEIVE FROMNETWORK

    • RECEIVE FROMNTS

    • RECEIVE ORDER

📦 Tudo chegando direto no HFS/zFS, validado por hash, protegido por certificado X.509.

🔐 Easter egg #4:

Se o RACDCERT não reconhece seu certificado, o SMP/E também não vai.


🧾 Shopz, pedidos e abas que importam

Depois de submeter o pedido:

  • Ele aparece como Open

  • Depois Submitted ou Order Center

  • E você acompanha em:
    👉 In Progress

Quando muda para Download
🎉 chegou a hora.

📬 E-mail da IBM
🔗 Link direto
⏳ 14 dias de validade


🧠 SMP/E moderno não é só manutenção

Hoje o SMP/E também:

  • Ordena PTF automaticamente

  • Agenda serviço

  • Controla origem dos fixes (SourceID)

  • Centraliza histórico

Tudo isso com:

  • RECEIVE ORDER

  • ORDER Management (Option 7)

  • Java ou ICSF

  • FTPS + Hash SHA-1


🧪 Planejamento: onde bons sysprogs se diferenciam

Antes de qualquer INSTALL:

  • Clone do sistema

  • Program Directory

  • PSP Buckets

  • Espaço em Target, DLIB e SMP/E datasets

  • IVP depois

  • Testes reais

  • Migração controlada

🧠 Easter egg final:

O melhor sysprog não é o que instala rápido.
É o que dorme tranquilo depois do IPL.


🏁 Conclusão

SMP/E não é moda.
Não é hype.
Não é simples.

Ele é engenharia de software em estado puro, aplicada a um dos ambientes mais críticos do planeta.

E se você chegou até aqui entendendo tudo isso…
👉 Parabéns: você fala fluentemente Mainframe.


quarta-feira, 17 de março de 2010

SMP/E Workshop – CSI (Consolidated Software Inventory) sem Medo

 

Bellacosa Mainframe apresenta SMP/E CSI

SMP/E Workshop – CSI (Consolidated Software Inventory) sem Medo

"Se o z/OS é uma cidade, o CSI é o cartório, o mapa urbano, o histórico de obras e o código de posturas… tudo junto."
Estilo Bellacosa Mainframe ☕🖥️


📌 O que é o CSI (Consolidated Software Inventory)?

O CSI é o coração do SMP/E. Sem ele, o SMP/E não sabe:

  • onde instalar código

  • qual versão está ativa

  • quem substituiu quem

  • o que pode ou não ser aplicado

👉 Nada de código executável vive no CSI.
O CSI é metadados, não binários.

Ele descreve como o sistema foi construído e qual o nível de serviço de cada elemento.


🧠 Por que o CSI é essencial?

Imagine um z/OS com:

  • centenas de bibliotecas

  • milhares de módulos

  • décadas de PTFs, APARs e USERMODs

Sem um banco de controle confiável:

🚨 módulo no lugar errado = abend
🚨 load module mal linkado = IPL problem
🚨 manutenção fora de ordem = rollback impossível

👉 O CSI garante ordem no caos.


🧩 Estrutura do CSI – Zonas

O CSI é dividido em zonas, cada uma com uma função clara:

🌍 Global Zone

  • Índice mestre do SMP/E

  • Controla o que foi recebido

  • Aponta para todas as outras zonas

Funções-chave:

  • lista de FMIDs

  • controle de opções

  • vínculo entre Target ↔ Distribution

📌 O nome sempre é GLOBAL (não negocia!)


🎯 Target Zone (TZONE)

Descreve:

  • bibliotecas executáveis

  • módulos em uso

  • status de APPLY

Aqui o SMP/E sabe:

  • o que está rodando no sistema

  • nível de serviço ativo


📦 Distribution Zone (DZONE)

Descreve:

  • bibliotecas de distribuição (DLIB)

  • código mestre

  • status de ACCEPT

É a fonte da verdade para RESTORE.


🗂️ CSI como VSAM KSDS

Cada zona pode residir em:

  • um KSDS próprio (recomendado)

  • ou um único CSI compartilhado (não recomendado)

Boas práticas Bellacosa:

✔ Um KSDS por zona
✔ Zona no mesmo volume das bibliotecas
✔ LLQ sempre CSI
✔ HLQ em user catalog, não no master


🌱 Priming do CSI – GIMZPOOL

Antes de usar uma zona, ela precisa ser semeada:

  • Macro: GIMZPOOL

  • Copiado via IDCAMS REPRO

  • Fonte: SYS1.MACLIB

Sem isso?

🚫 SMP/E nem conversa com a zona.


🧱 Entradas do CSI – a alma do inventário

O CSI é composto por entries, agrupadas em 4 categorias:

1️⃣ Control

Controlam como o SMP/E trabalha:

  • GLOBAL definition entry

  • OPTIONS

  • UTILITY

  • DDDEF

  • FMIDSET / ZONESET

👉 Criadas manualmente (UCLIN ou diálogos)


2️⃣ Status

Controlam estado dos SYSMODs:

  • SYSMOD entry

  • HOLDDATA

Criadas quando:

  • RECEIVE

  • APPLY

  • ACCEPT


3️⃣ Content

Descrevem o que existe nas bibliotecas:

  • MOD

  • MAC

  • SRC

  • DATA

  • HFS

  • JAR

Aqui vivem:

  • FMID

  • RMID

  • UMID


4️⃣ Structure

Descrevem como tudo se combina:

  • LMOD

  • ASSEM

  • DLIB

📌 LMOD só existe no Target Zone


🔎 FMID, RMID e UMID no CSI

Resumo raiz:

  • FMID → quem introduziu o elemento

  • RMID → quem substituiu por último

  • UMID → quem atualizou (pode ter vários)

📌 Regra de ouro:

  • 1 FMID

  • 1 RMID

  • N UMIDs


⚙️ DDDEF – o GPS do SMP/E

O SMP/E não depende de DD no JCL.

Ele usa DDDEF entries para:

  • alocação dinâmica

  • apontar datasets

  • evitar ambiguidades entre ambientes

🔥 Dica Bellacosa:

Nome do DDDEF = LLQ do dataset


🛠️ Gerenciamento de Zonas

Os famosos Zone Management Commands:

  • ZONEEXPORT / ZONEIMPORT

  • ZONERENAME

  • ZONEDELETE

  • ZONECOPY

  • ZONEMERGE

  • GZONEMERGE

  • ZONEEDIT

  • UNLOAD

  • UPGRADE

⚠️ Aviso sincero:

Alguns desses comandos não perdoam erro humano.

Use com:

  • backup

  • café

  • e juízo


📦 UCLIN – poder absoluto (e perigoso)

O UCLIN permite:

  • ADD

  • REP

  • DEL

Em quase qualquer entry do CSI.

📛 Comparação honesta:

UCLIN é o SUPERZAP do SMP/E.

Use só quando souber exatamente o que está fazendo.


🧠 Conclusão Bellacosa

O CSI não é só um inventário:

  • é auditoria

  • é rastreabilidade

  • é rollback

  • é governança

Quem domina o CSI:

✔ domina o SMP/E
✔ dorme tranquilo após APPLY
✔ não teme auditoria


📘 Próximo capítulo: Zone Management Commands na prática
📦 Casos reais, armadilhas e quando NÃO usar ZONEMERGE


✍️ Bellacosa Mainframe – porque z/OS não se administra no improviso.