Z Understand and Refactor

Instala, configura e gere o add-on Z Understand and Refactor numa implementação existente do IBM Bob on-premises.

O Z Understand and Refactor é um add-on opcional do IBM Z Premium Package para o IBM Bob on-premises. Ele estende uma implantação base do Bob Core com capacidades de análise e modernização de aplicações z/OS. O add-on deve ser habilitado no nível de infraestrutura e atribuído aos usuários antes de poder ser usado. Para mais informações, consulte Gerenciando direitos.

O Z Understand fornece análise automatizada de ativos de aplicações z/OS, incluindo código-fonte COBOL, PL/I, JCL e HLASM. O Refactor expõe os serviços que a extensão IBM Bob IDE usa para gerar recomendações de modernização.

Pré-requisitos

Antes de instalar e configurar a carga de trabalho Z Understand and Refactor, garante que os seguintes pré-requisitos estão cumpridos:

  • Uma implementação IBM Bob on-premises está instalada e operacional. Para mais informações, consulta Instalação.
  • Existe uma base de dados relacional compatível disponível e acessível a partir do cluster Red Hat OpenShift Container Platform (OCP):
    • Db2: porta predefinida 50000
    • Microsoft SQL Server: porta predefinida 1433
  • Estão disponíveis privilégios de cluster-admin, ou permissões equivalentes, para o cluster OCP de destino.
  • O ficheiro config.yaml está configurado com o valor instanceNamespace adequado para a tua implementação.

Visão geral da configuração

Ativar a carga de trabalho

Em config.yaml, ativa o Z Understand:

bob:
  understand:
    enabled: true

Aplica a configuração:

# Nova instalação
./bobctl install

# Instalação existente
./bobctl upgrade

Configurar o Z Understand

Cria um ficheiro de configuração setup.json a partir da amostra específica para a tua base de dados:

Para Db2:

cp setup.sample.ocp.db2.json setup.json

Para SQL Server:

cp setup.sample.ocp.sqlserver.json setup.json

Edita setup.json e substitui todos os marcadores <INSERT_...> pelos valores do teu ambiente:

CampoDescrição
relationalDatabaseServer.hostHostname ou endereço IP do servidor de base de dados relacional.
relationalDatabaseServer.portPorta utilizada para ligar ao servidor de base de dados. Usa 50000 para Db2 ou 1433 para Microsoft SQL Server.
relationalDatabaseServer.usernameNome de utilizador de uma conta de base de dados com permissões de leitura e escrita.
relationalDatabaseServer.passwordPalavra-passe da conta de utilizador da base de dados.
graphDatabaseServer.passwordPalavra-passe do serviço interno de base de dados de grafos. Configura durante a configuração e guarda de forma segura.
userAccess.passwordPalavra-passe para a conta de administrador do Z Understand.
Nota:

generalSettings.ip não requer configuração manual. O controlador deteta e preenche automaticamente o hostname de entrada do cluster durante a implementação.

Executar a configuração

Executa o comando de configuração para armazenar a configuração como um Kubernetes Secret, atualizar o CR do Bob para ativar a carga de trabalho e monitorizar o estado da implementação:

./bobctl understand setup --config setup.json

O comando:

  • Cria um Kubernetes Secret com as credenciais da base de dados.
  • Atualiza o recurso personalizado Bob para referenciar o secret.
  • Aguarda até que a carga de trabalho atinja o estado Ready.

O processo de configuração pode demorar até 15 minutos.

FlagObrigatórioPredefiniçãoDescrição
--config <filepath>SimNenhumCaminho para o ficheiro de configuração setup.json.
--secret-name <name>Nãobobz-understand-setupNome do Kubernetes Secret criado para armazenar a configuração.
--no-waitNãoNenhumSai imediatamente sem aguardar que a carga de trabalho atinja o estado Ready.
--dry-runNãoNenhumValida e pré-visualiza as alterações sem as aplicar ao cluster.

Nota: O comando setup só pode ser executado uma vez durante a implementação inicial. Para a gestão posterior do ciclo de vida, usa os comandos enable e disable.

Verificar a implementação

Verifica que os pods do Z Understand and Refactor estão em execução:

oc get pods -n <instance-namespace> -l app=ibm-bobz-understand
oc get pods -n <instance-namespace> -l app=ibm-bobz-refactor

Verifica o estado da carga de trabalho:

oc get bob <cr-name> -n <instance-namespace> \
  -o jsonpath='{.status.understand.status}'

Estado esperado: Ready

Como está este tópico?