Partilhar via


Migrar o IBM System i para o Azure usando o Infinite i

Máquinas Virtuais do Microsoft Azure
Base de Dados SQL do Azure

Este artigo descreve como migrar cargas de trabalho do IBM System i para o Azure usando o Infinite i. O Infinite i converte o Gerador de Programas de Relatório (RPG) e o código-fonte de linguagem comum orientada a negócios (COBOL) em código-objeto executado nativamente em máquinas virtuais (VMs) x86. As telas e interações de aplicativos funcionam como antes, minimizando a necessidade de retreinamento do usuário. Após a migração, você pode manter e atualizar programas modificando o código-fonte original como de costume.

Arquitetura

Diagrama de uma arquitetura que usa o Infinite i para migrar cargas de trabalho do System i para o Azure.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de Trabalho

O fluxo de trabalho a seguir corresponde ao diagrama anterior:

  1. A emulação de terminal Web TN5250 fornece acesso do usuário ao Azure por meio de uma conexão criptografada Secure Sockets Layer/Transport Layer Security.

  2. O Azure ExpressRoute fornece uma conexão de alta velocidade dedicada entre recursos locais e do Azure.

  3. O Azure Load Balancer distribui o tráfego TN5250 de entrada por dois servidores de aplicativos Infinite i (ativo e em espera) na rede virtual. Os clientes baseados no Azure se conectam por meio de uma rede virtual emparelhada. A tabela a seguir descreve as configurações suportadas:

    Modelo Apoio Detalhes
    Ativo/Passivo Sim Recomendamos este modelo. Ele usa replicação e failover entre zonas de disponibilidade.
    Ativo/Ativo (Balanceador de Carga) Não Este modelo não é suportado devido a restrições de banco de dados e estado de sessão.
    Várias VMs (Conjuntos de Escala de Máquina Virtual do Azure) Limitado Use este modelo apenas para implantação de infraestrutura. Não o use para dimensionamento de carga de trabalho.
    Back-end de banco de dados clusterizado Não Este modelo não é compatível com a arquitetura atual do Infinite i.
  4. Os compiladores do Infinite i convertem o código-fonte do System i (RPG e COBOL) em código objeto de 64 bits para ser executado em VMs x86 do Azure. O tempo de execução interpreta CL, CMD e SQL.

  5. O Infinite i inclui um banco de dados interno que emula recursos do DB2/400, como arquivos físicos, arquivos lógicos, arquivos de vários membros, junções, gatilhos, integridade referencial, controle de compromisso e registro no diário. Quando um aplicativo é executado no Azure, ele acessa os dados como no ambiente AS/400 sem a necessidade de alterações de código. O Infinite i fornece conectores de banco de dados internos como ODBC (Open Database Connectivity) e JDBC (Java Database Connectivity) para se conectar a arquivos físicos e lógicos no banco de dados interno.

  6. O Azure Files fornece compartilhamentos de arquivos para implementar arquivos Infinite i. A montagem de um compartilhamento de arquivos na VM do Azure dá aos programas acesso direto aos arquivos. O compartilhamento de arquivos também contém módulos de carga e arquivos de log.

  7. Em vez do banco de dados interno descrito na etapa 5, é possível migrar o banco de dados DB2/400 para um banco de dados SQL padrão. As opções de banco de dados são SQL Server, Azure SQL, Oracle e MySQL. Essas opções suportam os mesmos recursos que o banco de dados interno. Quando o Infinite i migra o banco de dados, ele cria um esquema de banco de dados que mapeia arquivos físicos para tabelas e arquivos lógicos para exibições.

  8. O Azure Site Recovery fornece recuperação de desastres.

Componentes

  • Máquinas Virtuais do Azure As VMs são recursos de computação escaláveis e sob demanda que eliminam as demandas de manutenção de hardware físico. Nessa arquitetura, eles executam as cargas de trabalho migradas e fornecem flexibilidade e escalabilidade. As opções de sistema operacional incluem Windows e Linux.

  • O Virtual Machine Scale Sets automatiza e equilibra a carga do dimensionamento de VMs. Essas ações simplificam o gerenciamento de aplicativos e aumentam a disponibilidade para garantir alta disponibilidade e desempenho para os aplicativos.

  • A Rede Virtual do Azure é uma rede privada segura na nuvem. Ele conecta VMs entre si, à Internet e a redes locais. Ele fornece a conectividade necessária para as cargas de trabalho migradas.

  • O Azure Private Link carrega conexões privadas para os serviços do Azure. Ajuda a garantir uma comunicação segura entre os componentes.

  • Os serviços de balanceamento de carga do Azure dimensionam VMs para alta disponibilidade e alto desempenho. Essa arquitetura usa o Load Balancer, que fornece balanceamento de baixa latência do tráfego entre VMs e entre aplicativos híbridos de várias camadas.

  • O Armazenamento em Disco do Azure fornece armazenamento em bloco altamente durável e de alto desempenho para VMs do Azure. Ele suporta várias opções de armazenamento em disco para atender às necessidades de desempenho e durabilidade. Existem quatro opções de armazenamento em disco para a nuvem: Azure Ultra Disk Storage, Azure Premium SSD, Azure Standard SSD e Azure Standard HDD.

  • Azure Files fornece compartilhamentos de arquivos de nível empresarial simples, seguros e sem servidor na nuvem. Os compartilhamentos suportam o acesso pelos protocolos SMB (Server Message Block) e NFS (Network File System) padrão do setor. Implantações locais e na nuvem do Windows, Linux e macOS podem montar compartilhamentos de arquivos simultaneamente.

  • O ExpressRoute carrega conexões privadas entre a infraestrutura local e os datacenters do Azure. Ajuda a garantir conectividade segura e de alta velocidade.

  • O Azure SQL é uma família de bancos de dados de nuvem SQL que fornecem uma experiência unificada para todo o seu portfólio SQL e uma ampla gama de opções de implantação, da borda à nuvem. Ele fornece serviços de banco de dados totalmente gerenciados para cargas de trabalho migradas.

  • O Banco de Dados SQL do Azure, que faz parte da família SQL do Azure, é um mecanismo de banco de dados de plataforma como serviço (PaaS) totalmente gerenciado. Ele lida com a maioria das funções de gerenciamento de banco de dados, como atualização, aplicação de patches, backups e monitoramento, sem o seu envolvimento. O Banco de Dados SQL sempre é executado na versão estável mais recente do mecanismo de banco de dados do SQL Server e do sistema operacional corrigido, com disponibilidade de 99,99% para ajudar a garantir alta disponibilidade e desempenho.

Detalhes do cenário

O Infinite i permite migrar suas cargas de trabalho do System i e AS/400 para o Azure. As cargas de trabalho migradas no Azure mantêm ou melhoram o desempenho e a disponibilidade, reduzem custos e criam oportunidades de modernização.

Após a implantação no Infinite i no Azure, os aplicativos são executados como na plataforma System i. O ambiente de tempo de execução Infinite i suporta processamento de tarefas e comandos de linguagem de controle em um ambiente Linux.

Você usa o pacote Infinite i para compilar seus aplicativos. O pacote inclui compiladores e tradutores para estas tecnologias: RPG, RPG/ILE, RPG/Free, COBOL, Control Language Programs (CLP) e Data Description Specifications (DDS).

O ambiente Infinite i oferece os seguintes benefícios:

  • Migração fácil de cargas de trabalho do System i para o Azure.

  • Conversão de arquivos em fita para backup e conformidade normativa.

  • Telas de aplicativos que funcionam como antes. Você tem a opção de atualizar as telas para interfaces de usuário baseadas na Web.

  • Um banco de dados interno Infinite que contém seus dados e emula o DB2/400. Em vez disso, você tem a opção de migrar para um banco de dados SQL padrão, com pequenas alterações de código ou nenhuma.

  • Economia em licenciamento e manutenção que reduz significativamente o custo total de propriedade.

  • Opções mais rápidas e de menor custo para recuperação de desastres no Azure em comparação com o System i.

Potenciais casos de utilização

  • Migre facilmente cargas de trabalho do IBM System i e AS/400 para o Azure.

  • Modernize as cargas de trabalho do Sistema i e AS/400 e reduza custos.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que você pode usar para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Well-Architected Framework.

Fiabilidade

A confiabilidade ajuda a garantir que seu aplicativo possa cumprir os compromissos que você assume com seus clientes. Para obter mais informações, consulte Lista de verificação de revisão de design para confiabilidade.

Essa arquitetura acomoda redundância e recuperação de desastres para alta disponibilidade:

  • Use a Recuperação de Site para recuperação de desastres em VMs do Azure. Ele ajuda a proteger as VMs contra grandes interrupções, minimizando o tempo de inatividade e a perda de dados. O serviço é confiável, econômico e fácil de implantar.

Para melhorar a disponibilidade, siga as seguintes etapas:

  • Use as zonas de disponibilidade do Azure para proteger contra interrupções de infraestrutura, eliminando todos os pontos únicos de falha. O contrato de nível de serviço (SLA) para VMs é para 99,99% tempo de atividade.

  • Use Conjuntos de Escala de Máquina Virtual para configurar um grupo de VMs com balanceamento de carga que compõem um conjunto de dimensionamento de máquina virtual do Azure. Esta abordagem aumenta a disponibilidade.

  • Para obter mais informações, consulte Opções de disponibilidade para máquinas virtuais.

Segurança

A segurança fornece garantias contra ataques deliberados e o uso indevido de seus valiosos dados e sistemas. Para obter mais informações, consulte Lista de verificação de revisão de design para segurança.

  • O Infinite i migra as funções de acesso baseadas em usuário do System i para o Azure.

  • O ambiente de tempo de execução do Infinite i fornece o mesmo nível de segurança no Azure que o ambiente do System i forneceu.

Otimização de Custos

A Otimização de Custos concentra-se em formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Lista de verificação de revisão de design para otimização de custos.

A solução Infinite i mantém os custos no mínimo para reduzir o custo total de propriedade:

  • A migração para o Azure elimina os custos de licenciamento e manutenção da IBM.

  • O Linux tem custos de implementação mais baixos do que as plataformas IBM.

  • O recurso de dimensionamento automático dos serviços de PaaS é dimensionado sob demanda para minimizar os custos.

Para estimar o custo de implementação dessa solução, use a calculadora de preços do Azure.

Aqui estão as considerações de preços para componentes específicos:

Excelência Operacional

A Excelência Operacional abrange os processos operacionais que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, consulte Lista de verificação de revisão de design para excelência operacional.

  • A metodologia de implantação do Infinite i recomenda que você converta e teste cargas de trabalho na plataforma original antes de migrar o código e os dados para a plataforma Azure.

  • Ao mover cargas de trabalho para o Azure, use zonas de disponibilidade, conjuntos de dimensionamento e Recuperação de Site para reduzir a sobrecarga de gerenciamento para dimensionamento e confiabilidade.

  • Considere usar modelos do Azure Resource Manager para implantação com script e para recursos de monitoramento e alerta.

Eficiência de desempenho

A Eficiência de Desempenho refere-se à capacidade da sua carga de trabalho de escalar para atender às demandas dos usuários de forma eficiente. Para obter mais informações, consulte Lista de verificação de revisão de projeto para eficiência de desempenho.

  • O processo de design de migração do Infinite i considera as características de desempenho das cargas de trabalho em execução no Sistema i e seleciona a configuração correta dos serviços do Azure para o desempenho desejado no Azure.

  • O Infinite i pode tirar proveito dos conjuntos de escala do Azure para adicionar capacidade conforme necessário.

  • A arquitetura foi projetada para acomodar o processamento paralelo executando vários conjuntos de VMs no mesmo banco de dados. As transações independentes não dependem umas das outras serem seriais.

  • Para essa arquitetura, use SSD Premium ou Ultra Disk Storage para melhorar o desempenho.

Contribuidores

A Microsoft mantém este artigo. Os seguintes colaboradores escreveram este artigo.

Autor principal:

  • Philip Brooks - Brasil | Gerente de Programa Sênior

Para ver perfis não públicos do LinkedIn, faça login no LinkedIn.

Próximos passos