As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migre e replique arquivos VSAM para o Amazon RDS ou o Amazon MSK usando o Connect da Precisely
Criado por Prachi Khanna (AWS) e Boopatia GOPALSAMY (AWS)
Ambiente: PoC ou piloto | Origem: VSAM | Destino: Banco de dados |
Tipo R: redefinir arquitetura | Workload: IBM | Tecnologias: mainframe; modernização |
Serviços da AWS: Amazon MSK; Amazon RDS; AWS Mainframe Modernization |
Resumo
Esse padrão mostra como migrar e replicar arquivos do Método de acesso ao armazenamento virtual (VSAM - Virtual Storage Access Method) de um mainframe para um ambiente de destino na Nuvem AWS usando o Connect
Pré-requisitos e limitações
Pré-requisitos
IBM z/OS V2R1
ou superior CICS Transaction Server para z/OS (CICS TS) V5.1
ou superior (captura de dados CICS/VSAM) IBM MQ 8.0
ou superior Conformidade com os requisitos de segurança do z/OS
(por exemplo, autorização APF para bibliotecas de carregamento SQData) Logs de recuperação do VSAM ativados
(Opcional) Versão de recuperação do CICS VSAM (CICS VR - CICS VSAM Recovery Version)
para capturar automaticamente os registros do CDC Uma conta AWS ativa
Uma nuvem privada virtual (VPC) com uma sub-rede acessível por sua plataforma legada
Uma licença VSAM Connect da Precisely
Limitações
O Connect não oferece suporte à criação automática de tabelas de destino com base nos esquemas ou copybooks do VSAM de origem. Você deve definir a estrutura da tabela de destino pela primeira vez.
Para destinos sem streaming, como o Amazon RDS, você deve especificar a fonte de conversão para o mapeamento de destino no script de configuração do Apply Engine.
As funções de registro, monitoramento e alerta são implementadas por meio de APIs e exigem que componentes externos (como a Amazon CloudWatch) estejam totalmente operacionais.
Versões do produto
SQData 40134 para z/OS
SQData 4.0.43 para a imagem de máquina da Amazon (AMI) do Amazon Linux no Amazon Elastic Compute Cloud (Amazon EC2)
Arquitetura
Pilha de tecnologia de origem
Job Control Language (JCL - Linguagem de controle de trabalho)
Shell z/OS Unix e Interactive System Productivity Facility (ISPF - Facilidade de produtividade do sistema interativo)
Utilitários VSAM (IDCAMS)
Pilha de tecnologias de destino
Amazon EC2
Amazon MSK
Amazon RDS
Amazon VPC
Arquitetura de destino
Migração de arquivos VSAM para o Amazon RDS
O diagrama a seguir mostra como migrar arquivos VSAM para um banco de dados relacional, como o Amazon RDS, em tempo real ou quase em tempo real usando o agente/publicador do CDC no ambiente de origem (mainframe on-premises) e o Apply Engine
O diagrama mostra o seguinte fluxo de trabalho em lote:
O Connect captura as alterações em um arquivo comparando os arquivos VSAM dos arquivos de backup para identificar as alterações e, em seguida, envia as alterações para o fluxo de registros.
O publicador consome dados do fluxo de log do sistema.
O publicador comunica as alterações de dados capturadas a um mecanismo de destino por meio de TCP/IP. O Controller Daemon autentica a comunicação entre os ambientes de origem e de destino.
O mecanismo de aplicação no ambiente de destino recebe as alterações do agente do Publisher e as aplica a um banco de dados relacional ou não relacional.
O diagrama mostra o seguinte fluxo de trabalho on-line:
O Connect captura as alterações no arquivo on-line usando uma replicação de log e, em seguida, transmite as alterações capturadas para um logstream.
O publicador consome dados do fluxo de log do sistema.
O publicador comunica as alterações de dados capturadas ao mecanismo de destino por meio de TCP/IP. O Controller Daemon autentica a comunicação entre os ambientes de origem e de destino.
O mecanismo de aplicação no ambiente de destino recebe as alterações do agente do Publisher e as aplica a um banco de dados relacional ou não relacional.
Migração de arquivos VSAM para o Amazon MSK
O diagrama a seguir mostra como transmitir estruturas de dados VSAM de um mainframe para o Amazon MSK no modo de alto desempenho e gerar automaticamente conversões de esquema JSON ou AVRO que se integram ao Amazon MSK.
O diagrama mostra o seguinte fluxo de trabalho em lote:
O Connect captura as alterações em um arquivo usando o CICS VR ou comparando arquivos VSAM de arquivos de backup para identificar alterações. As alterações capturadas são enviadas para o fluxo de registros.
O publicador consome dados do fluxo de log do sistema.
O publicador comunica as alterações de dados capturadas ao mecanismo de destino por meio de TCP/IP. O Controller Daemon autentica a comunicação entre os ambientes de origem e de destino.
O Replicator Engine que está operando no modo de processamento paralelo divide os dados em uma unidade de cache de trabalho.
Os segmentos de trabalho capturam os dados do cache.
Os dados são publicados nos tópicos do Amazon MSK a partir dos segmentos de trabalho.
O diagrama mostra o seguinte fluxo de trabalho on-line:
As alterações no arquivo on-line são capturadas usando uma replicação de log. As alterações capturadas são transmitidas para o logstream.
O publicador consome dados do fluxo de log do sistema.
O publicador comunica as alterações de dados capturadas ao mecanismo de destino por meio de TCP/IP. O Controller Daemon autentica a comunicação entre os ambientes de origem e de destino.
O Replicator Engine que está operando no modo de processamento paralelo divide os dados em uma unidade de cache de trabalho.
Os segmentos de trabalho capturam os dados do cache.
Os dados são publicados nos tópicos do Amazon MSK a partir dos segmentos de trabalho.
Ferramentas
O Amazon Managed Streaming for Apache Kafka (Amazon MSK) é um serviço totalmente gerenciado que ajuda você a criar e executar aplicações que usam o Apache Kafka para processar dados em streaming.
O Amazon Relational Database Service (Amazon RDS) ajuda você a configurar, operar e escalar um banco de dados relacional na Nuvem AWS.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Instale o Connect CDC 4.1. |
| Desenvolvedor/administrador de mainframe IBM |
Configure o diretório zFS. | Para configurar um diretório zFS, siga as instruções dos diretórios de variáveis do zFS Observação: As configurações do controlador Daemon e do agente Capture/Publisher são armazenadas no sistema de arquivos z/OS UNIX Systems Services (conhecido como zFS). Os agentes Controller Daemon, Capture, Storage e Publisher exigem uma estrutura de diretórios zFS predefinida para armazenar um pequeno número de arquivos. | Desenvolvedor/administrador de mainframe IBM |
Configure portas TCP/IP. | Para configurar portas TCP/IP, siga as instruções das portas TCP/IP Observação: o Daemon do controlador requer portas TCP/IP nos sistemas de origem. As portas são referenciadas pelos mecanismos nos sistemas de destino (onde os dados de alteração capturados são processados). | Desenvolvedor/administrador de mainframe IBM |
Crie um logstream do z/OS. | Para criar um logstream do z/OS Observação: o Connect usa o logstream para capturar e transmitir dados entre o ambiente de origem e o ambiente de destino durante a migração. Para ver um exemplo de JCL que cria um z/OS LogStream, consulte Criar LogStreams do sistema z/OS | Desenvolvedor de mainframe da IBM |
Identifique e autorize IDs para usuários do zFS e tarefas iniciadas. | Use o RACF para conceder acesso ao sistema de arquivos OMVS zFS. Para ver um exemplo de JCL, consulte Identificar e autorizar IDs de usuários e tarefas iniciadas do ZFS | Desenvolvedor/administrador de mainframe IBM |
Gere as chaves públicas/privadas do z/OS e o arquivo de chave autorizado. | Execute o JCL para gerar o par de chaves. Para obter um exemplo, consulte Exemplo de par de chaves na seção Informações adicionais desse padrão. Para obter instruções, consulte Gerar chaves públicas e privadas do z/OS e o arquivo de chave autorizado | Desenvolvedor/administrador de mainframe IBM |
Ative o CICS VSAM Log Replicate e anexe-o ao fluxo de logs. | Execute o seguinte script JCL:
| Desenvolvedor/administrador de mainframe IBM |
Ative o log de recuperação de arquivos VSAM por meio de um FCT. | Modifique a Tabela de controle de arquivos (FCT - File Control Table) para refletir as seguintes alterações de parâmetros:
| Desenvolvedor/administrador de mainframe IBM |
Configure o CD CzLog para o agente do Publisher. |
| Desenvolvedor/administrador de mainframe IBM |
Ative o Daemon do controlador. |
| Desenvolvedor/administrador de mainframe IBM |
Ative o publicador. |
| Desenvolvedor/administrador de mainframe IBM |
Ative o fluxo de registro. |
| Desenvolvedor/administrador de mainframe IBM |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Instale Precisely em uma instância do EC2. | Para instalar o Connect da Preciously no Amazon Linux AMI para Amazon EC2, siga as instruções de Install Connect CDC (SQData) no UNIX | AWS geral |
Abra portas TCP/IP. | Para modificar o grupo de segurança para incluir as portas do Controller Daemon para acesso de entrada e saída, siga as instruções do TCP/IP | AWS geral |
Crie diretórios de arquivos. | Para criar diretórios de arquivos, siga as instruções de Preparar o ambiente de aplicação de destino | AWS geral |
Crie o arquivo de configuração do Apply Engine. | Crie o arquivo de configuração do Apply Engine no diretório de trabalho do Apply Engine. O exemplo de arquivo de configuração a seguir mostra o Apache Kafka como destino:
Observação: Para obter mais informações, consulte Segurança | AWS geral |
Crie scripts para o processamento do Apply Engine. | Crie os scripts para que o Apply Engine processe os dados de origem e replique os dados de origem para o destino. Para obter mais informações, consulte Criar um script de mecanismo de aplicação | AWS geral |
Execute os scripts. | Use os comandos | AWS geral |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Valide a lista de arquivos VSAM e tabelas de destino para processamento de CDC. |
| AWS geral, Mainframe |
Verifique se o produto Connect CDC SQData está vinculado. | Execute um trabalho de teste e verifique se o código de retorno desse trabalho é 0 (bem-sucedido). Observação: As mensagens de status do Connect CDC SQData Apply Engine devem mostrar mensagens de conexão ativas. | AWS geral, Mainframe |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Execute o trabalho em lotes no mainframe. | Execute o trabalho de aplicação em lote usando um JCL modificado. Inclua etapas na JCL modificada que façam o seguinte:
| AWS geral, Mainframe |
Verifique o fluxo de logs. | Verifique o fluxo de registros para confirmar que você pode ver os dados de alteração do trabalho em lote concluído do mainframe. | AWS geral, Mainframe |
Valide as contagens das alterações do delta de origem e da tabela de destino. | Para confirmar se os registros foram contabilizados, faça o seguinte:
| AWS geral, Mainframe |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Execute a transação on-line em uma região do CICS. |
| Desenvolvedor de mainframe da IBM |
Verifique o fluxo de logs. | Confirme se o fluxo de registros está preenchido com alterações específicas no nível do registro. | Desenvolvedor do AWS Mainframe |
Valide a contagem no banco de dados de destino. | Monitore o mecanismo de aplicação para obter contagens de níveis recordes. | Precisely, Linux |
Valide as contagens de registros e os registros de dados no banco de dados de destino. | Consulte o banco de dados de destino para validar as contagens de registros e os registros de dados. | AWS geral |
Recursos relacionados
VSAM z/OS
(documentação do Precisely) Aplique o mecanismo
(documentação do Precisely) Mecanismo replicador
(documentação do Precisely) O fluxo de logs
(documentação da IBM)
Mais informações
Exemplo do arquivo de configuração
Este é um exemplo de arquivo de configuração para um fluxo de logs em que o ambiente de origem é um mainframe e o ambiente de destino é o Amazon MSK:
-- JOBNAME -- PASS THE SUBSCRIBER NAME -- REPORT progress report will be produced after "n" (number) of Source records processed. JOBNAME VSMTOKFK; --REPORT EVERY 100; -- Change Op has been ‘I’ for insert, ‘D’ for delete , and ‘R’ for Replace. For RDS it is 'U' for update -- Character Encoding on z/OS is Code Page 1047, on Linux and UNIX it is Code Page 819 and on Windows, Code Page 1252 OPTIONS CDCOP('I', 'U', 'D'), PSEUDO NULL = NO, USE AVRO COMPATIBLE NAMES, APPLICATION ENCODING SCHEME = 1208; -- SOURCE DESCRIPTIONS BEGIN GROUP VSAM_SRC; DESCRIPTION COBOL ../copybk/ACCOUNT AS account_file; END GROUP; -- TARGET DESCRIPTIONS BEGIN GROUP VSAM_TGT; DESCRIPTION COBOL ../copybk/ACCOUNT AS account_file; END GROUP; -- SOURCE DATASTORE (IP & Publisher name) DATASTORE cdc://10.81.148.4:2626/vsmcdct/VSMTOKFK OF VSAMCDC AS CDCIN DESCRIBED BY GROUP VSAM_SRC ACCEPT ALL; -- TARGET DATASTORE(s) - Kafka and topic name DATASTORE 'kafka:///MSKTutorialTopic/key' OF JSON AS CDCOUT DESCRIBED BY GROUP VSAM_TGT FOR INSERT; -- MAIN SECTION PROCESS INTO CDCOUT SELECT { SETURL(CDCOUT, 'kafka:///MSKTutorialTopic/key') REMAP(CDCIN, account_file, GET_RAW_RECORD(CDCIN, AFTER), GET_RAW_RECORD(CDCIN, BEFORE)) REPLICATE(CDCOUT, account_file) } FROM CDCIN;
Exemplo de par de chaves
Este é um exemplo de como executar o JCL para gerar o par de chaves:
//SQDUTIL EXEC PGM=SQDUTIL //SQDPUBL DD DSN=&USER..NACL.PUBLIC, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=21200), // DISP=(,CATLG,DELETE),UNIT=SYSDA, // SPACE=(TRK,(1,1)) //SQDPKEY DD DSN=&USER..NACL.PRIVATE, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=21200), // DISP=(,CATLG,DELETE),UNIT=SYSDA, // SPACE=(TRK,(1,1)) //SQDPARMS DD keygen //SYSPRINT DD SYSOUT= //SYSOUT DD SYSOUT=* //SQDLOG DD SYSOUT=* //*SQDLOG8 DD DUMMY