Implementar o IBM DB2 pureScale no Azure

Este artigo descreve como implementar uma arquitetura de exemplo que um cliente corporativo usou recentemente para migrar de seu ambiente IBM DB2 em execução no z/OS para o IBM DB2 pureScale no Azure.

Para seguir as etapas usadas para a migração, consulte os scripts de instalação no repositório DB2onAzure no GitHub. Esses scripts são baseados na arquitetura de uma carga de trabalho OLTP (processamento de transações online) típica de médio porte.

Começar agora

Para implementar essa arquitetura, baixe e execute o script deploy.sh encontrado no repositório DB2onAzure no GitHub.

O repositório também tem scripts para configurar um painel do Grafana. É possível usar o painel para consultar o Prometheus, o sistema de monitoramento e alerta de código aberto incluído no DB2.

Nota

O script deploy.sh no cliente cria chaves SSH privadas e as passa para o modelo de implantação por HTTPS. Para maior segurança, recomendamos usar o Cofre de Chaves do Azure para armazenar segredos, chaves e senhas.

Como funciona o script de implantação

O script deploy.sh cria e configura os recursos do Azure para essa arquitetura. O script solicita a assinatura do Azure e as máquinas virtuais usadas no ambiente de destino e, em seguida, executa as seguintes operações:

  • Configura o grupo de recursos, a rede virtual e as sub-redes no Azure para a instalação.
  • Configura os grupos de segurança de rede e SSH para o ambiente.
  • Configura várias NICs no armazenamento compartilhado e nas máquinas virtuais DB2 pureScale.
  • Cria as máquinas virtuais de armazenamento compartilhado. Se você usa o Storage Spaces Direct ou outra solução de armazenamento, consulte Visão geral do Storage Spaces Direct.
  • Cria a máquina virtual jumpbox.
  • Cria as máquinas virtuais DB2 pureScale.
  • Cria a máquina virtual testemunha que o DB2 pureScale pinga. Ignore esta parte da implementação se sua versão do DB2 pureScale não exigir uma testemunha.
  • Cria uma máquina virtual do Windows para usar em testes, mas não instala nada nela.

Em seguida, os scripts de implantação configuram uma vSAN (rede de área de armazenamento virtual) iSCSI para armazenamento compartilhado no Azure. Neste exemplo, o iSCSI se conecta ao cluster de armazenamento compartilhado. Na solução original do cliente, foi utilizado o GlusterFS. No entanto, a IBM já não suporta esta abordagem. Para manter seu suporte da IBM, você precisa usar um sistema de arquivos compatível com iSCSI suportado. A Microsoft oferece o Storage Spaces Direct (S2D) como opção.

Esta solução também oferece a opção de instalar os destinos iSCSI como um único nó do Windows. O iSCSI fornece uma interface de armazenamento de bloco compartilhado sobre TCP/IP que permite que o procedimento de configuração do DB2 pureScale use uma interface de dispositivo para se conectar ao armazenamento compartilhado.

Os scripts de implantação executam estas etapas gerais:

  1. Configure um cluster de armazenamento compartilhado no Azure. Esta etapa envolve pelo menos dois nós Linux.
  2. Configure uma interface iSCSI Direct nos servidores Linux de destino para o cluster de armazenamento compartilhado.
  3. Configure o iniciador iSCSI nas máquinas virtuais Linux. O iniciador acessará o cluster de armazenamento compartilhado usando um destino iSCSI. Para obter detalhes de configuração, consulte Como configurar um destino iSCSI e um iniciador no Linux na documentação RootUsers.
  4. Instale a camada de armazenamento compartilhado para a interface iSCSI.

Depois que os scripts criam o dispositivo iSCSI, a etapa final é instalar o DB2 pureScale. Como parte da configuração do DB2 pureScale, o IBM Spectrum Scale (anteriormente conhecido como GPFS) é compilado e instalado no cluster GlusterFS. Esse sistema de arquivos clusterizado permite que o DB2 pureScale compartilhe dados entre as máquinas virtuais que executam o mecanismo DB2 pureScale. Para obter mais informações, consulte a documentação do IBM Spectrum Scale no site da IBM.

Arquivo de resposta DB2 pureScale

O repositório GitHub inclui DB2server.rsp, um arquivo de resposta (.rsp) que permite gerar um script automatizado para a instalação do DB2 pureScale. A tabela a seguir lista as opções do DB2 pureScale que o arquivo de resposta usa para configuração. Você pode personalizar o arquivo de resposta conforme necessário para seu ambiente.

Nota

Um arquivo de resposta de exemplo, DB2server.rsp, está incluído no repositório DB2onAzure no GitHub. Se você usar esse arquivo, deverá editá-lo antes que ele possa funcionar em seu ambiente.

Nome de utilizador Campo Value
Damos-lhe as boas-vindas Nova instalação
Escolha um Produto DB2 Versão 11.1.3.3. Edições do Servidor com DB2 pureScale
Configuração Diretório /data1/opt/ibm/db2/V11.1
Selecione o tipo de instalação Típico
Concordo com os termos da IBM Selecionado
Proprietário da instância Usuário existente Por exemplo, nome de usuário DB2sdin1
Usuário cercado Usuário existente, Nome de usuário DB2sdfe1
Sistema de arquivos de cluster Caminho do dispositivo de partição de disco compartilhado /dev/dm-2
Ponto de montagem /DB2sd_1804a
Disco compartilhado para dados /dev/dm-1
Ponto de montagem (Dados) /DB2fs/datafs1
Disco compartilhado para log /dev/dm-0
Ponto de montagem (Log) /DB2fs/logfs1
Desempate do DB2 Cluster Services. Caminho do dispositivo /dev/dm-3
Lista de anfitriões d1 [eth1], d2 [eth1], cf1 [eth1], cf2[eth1]
FC primária preferida Cf1
FC secundária preferida Cf2
Arquivo de resposta e resumo primeira opção Instale o DB2 Server Edition com o recurso IBM DB2 pureScale e salve minhas configurações em um arquivo de resposta
Nome do arquivo de resposta /root/DB2server.rsp

Notas sobre esta implementação

  • Os valores de /dev-dm0, /dev-dm1, /dev-dm2, e /dev-dm3 podem mudar após uma reinicialização na máquina virtual onde a instalação ocorre (d0 no script automatizado). Para encontrar os valores corretos, você pode emitir o seguinte comando antes de concluir o arquivo de resposta no servidor onde a instalação será executada:

    sudo ls -als /dev/mapper
    
    total 0
    0 drwxr-xr-x 2 root root 140 May 30 11:07 .
    0 drwxr-xr-x 19 root root 4060 May 30 11:31 ..
    0 crw------- 1 root root 10, 236 May 30 11:04 control
    0 lrwxrwxrwx 1 root root 7 May 30 11:07 db2data1 -\> ../dm-1
    0 lrwxrwxrwx 1 root root 7 May 30 11:07 db2log1 -\> ../dm-0
    0 lrwxrwxrwx 1 root root 7 May 30 11:26 db2shared -\> ../dm-2
    0 lrwxrwxrwx 1 root root 7 May 30 11:08 db2tieb -\> ../dm-3
    
  • Os scripts de instalação usam aliases para os discos iSCSI para que os nomes reais possam ser encontrados facilmente.

  • Quando o script de instalação é executado em d0, os /dev/dm-\* valores podem ser diferentes em d1, cf0 e cf1. A diferença nos valores não afeta a configuração do DB2 pureScale.

Resolução de problemas e problemas conhecidos

O repositório GitHub inclui uma base de conhecimento que os autores mantêm. Ele lista possíveis problemas que você pode ter e resoluções que você pode tentar. Por exemplo, problemas conhecidos podem acontecer quando:

  • Você está tentando acessar o endereço IP do gateway.
  • Você está compilando a Licença Pública Geral (GPL).
  • O handshake de segurança entre hosts falha.
  • O instalador do DB2 deteta um sistema de arquivos existente.
  • Você está instalando manualmente o IBM Spectrum Scale.
  • Você está instalando o DB2 pureScale quando o IBM Spectrum Scale já está criado.
  • Você está removendo o DB2 pureScale e o IBM Spectrum Scale.

Para obter mais informações sobre esses e outros problemas conhecidos, consulte o arquivo kb.md no repositório DB2onAzure .

Próximos passos