Tutorial: Migrar um cluster do WebLogic Server para o Azure com o Gateway de Aplicativo do Azure como um balanceador de carga

Este tutorial orienta você pelo processo de implantação do WLS (WebLogic Server) com o Gateway de Aplicativo do Azure. Ele aborda as etapas específicas para criar um Key Vault, armazenar um certificado TLS/SSL no Key Vault e usar esse certificado para terminação TLS/SSL. Embora todos esses elementos estejam bem documentados por si sós, este tutorial mostra a maneira específica em que todos esses elementos se reúnem para criar uma solução de balanceamento de carga simples e avançada para o WLS no Azure.

Diagram showing the relationship between WLS, App Gateway, and Key Vault.

O balanceamento de carga é uma parte essencial da migração do Cluster do Oracle WebLogic Server para o Azure. A solução mais fácil é usar o suporte interno para o Gateway de Aplicativo do Azure. O Gateway de Aplicativo está incluído como parte do suporte ao Cluster do WebLogic no Azure. Para obter uma visão geral do suporte ao Cluster do WebLogic no Azure, confira O que é o Oracle WebLogic Server no Azure?.

Neste tutorial, você aprenderá a:

  • Escolha como fornecer o certificado TLS/SSL para o Gateway de Aplicativo
  • Implantar o WebLogic Server com o Gateway de Aplicativo do Azure no Azure
  • Validar a implantação bem-sucedida do WLS e do Gateway de Aplicativo

Pré-requisitos

  • OpenSSL em um computador que executa um ambiente de linha de comando de tipo UNIX.

    Embora possa haver outras ferramentas disponíveis para o gerenciamento de certificados, este tutorial usa OpenSSL. Você encontra o OpenSSL agrupado com várias distribuições do GNU/Linux, como o Ubuntu.

  • Uma assinatura ativa do Azure.

    • Se você não tiver uma assinatura do Azure, crie uma conta gratuita.
  • A capacidade de implantar um dos Aplicativos Azure do WLS listados em Aplicativos Azure do Oracle WebLogic Server.

Contexto de migração

Aqui estão alguns itens a serem considerados sobre a migração de instalações locais do WLS e do Gateway de Aplicativo do Azure. Embora as etapas deste tutorial sejam a maneira mais fácil de estabelecer um balanceador de carga na frente do Cluster do WebLogic Server no Azure, há muitas outras maneiras de fazer isso. Essa lista mostra algumas outras coisas a considerar.

Implantar o WebLogic Server com o Gateway de Aplicativo no Azure

Essa seção mostra a você como provisionar um cluster do WLS com um Gateway de Aplicativo do Azure criado automaticamente como o balanceador de carga para os nós de cluster. O Gateway de Aplicativo usa o certificado TLS/SSL fornecido para a terminação TLS/SSL. Para obter detalhes avançados sobre a terminação TLS/SSL com o Gateway de Aplicativo, confira Visão geral da terminação TLS e do TLS de ponta a ponta com o Gateway de Aplicativo.

Veja como criar o cluster do WLS e o Gateway de Aplicativo:

Primeiro, inicie o processo de implantação de um servidor WebLogic configurado ou de um cluster dinâmico, conforme descrito na documentação da Oracle, mas volte para esta página quando você chegar em Gateway de Aplicativo do Azure, como mostrado aqui.

Azure portal screenshot showing the Azure Application Gateway.

Escolha como fornecer o certificado TLS/SSL para o Gateway de Aplicativo

Você tem várias opções para fornecer o certificado TLS/SSL para o gateway de aplicativo, mas só pode escolher um. Esta seção explica cada opção para que você possa escolher a melhor para sua implantação.

Opção um: carregar um certificado TLS/SSL

Essa opção é adequada para cargas de trabalho de produção em que o Gateway de Aplicativo é voltado à Internet pública ou para cargas de trabalho de intranet que exigem TLS/SSL. Ao escolher essa opção, um Azure Key Vault é provisionado automaticamente para conter o certificado TLS/SSL usado pelo Gateway de Aplicativo.

Veja como carregar um certificado TLS/SSL existente assinado:

  1. Siga as etapas do emissor do certificado para criar um certificado TLS/SSL protegido por senha e especifique o nome DNS para o certificado. Como escolher o caractere curinga vs. o certificado de nome único está além do escopo deste documento. Qualquer um deles funcionará aqui.
  2. Exporte o certificado do emissor usando o formato de arquivo PFX e baixe-o em seu computador local. Se o emissor não oferecer suporte à exportação como PFX, há ferramentas para converter muitos formatos de certificado para PFX.
  3. Selecione a seção Gateway de Aplicativo do Azure.
  4. Ao lado de Conectar-se ao Gateway de Aplicativo do Azure, selecione Sim.
  5. Selecione Carregar um certificado SSL.
  6. Selecione o ícone do navegador de arquivos para o campo Certificado SSL. Navegue até o certificado em formato PFX baixado e selecione Abrir.
  7. Insira a senha para o certificado nas caixas Senha e Confirmar Senha.
  8. Escolha se deseja ou não negar o tráfego público diretamente para os nós dos servidores gerenciados. Selecionar Sim fará com que os servidores gerenciados só possam ser acessados por meio do Gateway de Aplicativo.

Sincronizar a configuração de DNS

Os certificados TLS/SSL são associados a um nome de domínio DNS no momento em que são emitidos pelo emissor do certificado. Veja nesta seção como fazer para configurar a implantação com o nome DNS do certificado. Você pode usar uma zona DNS que já tenha criado ou permitir que a implantação crie uma para você. Selecione a seção Configuração de DNS para continuar.

Usar uma zona DNS do Azure existente

Veja como usar uma zona DNS do Azure existente com o Gateway de Aplicativo:

  1. Ao lado de Configurar Alias de DNS personalizado, selecione Sim.
  2. Ao lado de Usar uma zona DNS do Azure existente, selecione Sim.
  3. Insira o nome da zona DNS do Azure ao lado de Nome da zona DNS.
  4. Insira o grupo de recursos que contém a zona DNS do Azure da etapa anterior.

Permitir que a implantação crie uma zona DNS do Azure

Veja como criar uma zona DNS do Azure com o Gateway de Aplicativo:

  1. Ao lado de Configurar Alias de DNS personalizado, selecione Sim.
  2. Ao lado de Usar uma zona DNS do Azure existente, selecione Não.
  3. Insira o nome da zona DNS do Azure ao lado de Nome da zona DNS. Uma nova zona DNS é criada no mesmo grupo de recursos que o WLS.

Por fim, especifique os nomes para as zonas DNS filho. A implantação criará duas zonas DNS filho para uso com o WLS: uma para o console de administração e outra para o Gateway de Aplicativo. Por exemplo, se o nome da zona DNS fosse «contoso.net», você poderia inserir o administrador e o aplicativo como os valores. O console de administração estaria disponível em «admin.contoso.net» e o gateway de aplicativo estaria disponível em «app.contoso.net». Não se esqueça de configurar a delegação de DNS conforme descrito em Delegação de zonas DNS com o DNS do Azure.

Azure portal screenshot showing fields for child DNS zones.

As outras opções para fornecer um certificado TLS/SSL para o Gateway de Aplicativo são detalhadas nas seções a seguir. Se você estiver satisfeito com a opção escolhida, pule para a seção Continuar com a implantação.

Opção dois: identificar um Azure Key Vault

Essa opção é adequada para cargas de trabalho de produção ou não, dependendo do certificado TLS/SSL fornecido. Se não quiser que a implantação crie um Azure Key Vault, você poderá identificar um existente ou criar um. Essa opção exige que você armazene o certificado e a senha dele no Azure Key Vault antes de continuar. Se você tiver um Key Vault existente que deseja usar, pule para a seção Criar um certificado TLS/SSL. Caso contrário, prossiga para a próxima seção.

Criar um Cofre de chaves do Azure

Esta seção mostra como usar o portal do Azure para criar um Azure Key Vault.

  1. No menu do portal do Azure ou na página Início, selecione Criar um recurso.
  2. Digite Key Vault na caixa Pesquisar.
  3. Na lista de resultados, escolha Key Vault.
  4. Na seção Key Vault, escolha Criar.
  5. Na seção Criar cofre de chaves, forneça as seguintes informações:
    • Assinatura: escolha uma assinatura.
    • Em Grupo de Recursos, escolha Criar e digite um nome para o grupo de recursos. Anote o nome do cofre de chaves. Você precisará dele mais tarde ao implantar o WLS.
    • Nome do Cofre da Chave: Um nome exclusivo é necessário. Anote o nome do cofre de chaves. Você precisará dele mais tarde ao implantar o WLS.

    Observação

    Você pode usar o mesmo nome para Grupo de recursos e Nome do cofre de chaves.

    • No menu suspenso Local, escolha um local.
    • Deixe as outras opções em seus padrões.
  6. Selecione Avançar: Política de Acesso.
  7. Em Habilitar acesso a, selecione Azure Resource Manager para implantação de modelo.
  8. Selecione Examinar + criar.
  9. Selecione Criar.

A criação do cofre de chaves é razoavelmente leve, normalmente concluída em menos de dois minutos. Quando a implantação for concluída, selecione Ir para o recurso e prossiga para a próxima seção.

Criar um certificado TLS/SSL

Esta seção mostra como criar um certificado TLS/SSL autoassinado em um formato adequado para uso pelo Gateway de Aplicativo implantado com o WebLogic Server no Azure. O certificado precisa ter uma senha não vazia. Se você já tiver um certificado TLS/SSL com senha válida e não vazia no formato .pfx, ignore esta seção e passe para a próxima. Se o certificado TLS/SSL com uma senha existente, válida e não vazia não estiver no formato .pfx, primeiro converta-o em um arquivo .pfx antes de passar para a próxima seção. Caso contrário, abra um shell de comando e digite os comandos a seguir.

Observação

Esta seção mostra como criptografar o certificado com codificação de base 64 antes de armazená-lo como um segredo no Key Vault. Isso é exigido pela implantação subjacente do Azure que cria o WebLogic Server e o Gateway de Aplicativo.

Siga estas etapas para criar o certificado e codificá-lo em base 64:

  1. Criar uma RSA PRIVATE KEY

    openssl genrsa 2048 > private.pem
    
  2. Crie uma chave pública correspondente.

    openssl req -x509 -new -key private.pem -out public.pem
    

    Você terá que responder várias perguntas quando solicitado pela ferramenta OpenSSL. Esses valores serão incluídos no certificado. Este tutorial usa um certificado autoassinado, portanto, os valores são irrelevantes. Os valores literais a seguir são aceitáveis.

    1. Para Nome do País, insira um código de duas letras.
    2. Para Nome do Estado ou Província, insira WA.
    3. Para Nome da Organização, insira Contoso. Para Nome da Unidade Organizacional, insira cobrança.
    4. Para Nome Comum, insira Contoso.
    5. Para Endereço de Email, insira billing@contoso.com.
  3. Exportar o certificado como um arquivo .pfx

    openssl pkcs12 -export -in public.pem -inkey private.pem -out mycert.pfx
    

    Digite a senha duas vezes. Anote a senha. Você precisará dele mais tarde ao implantar o WLS.

  4. Codificar o arquivo mycert.pfx em base 64

    base64 mycert.pfx > mycert.txt
    

Agora que você criou um Key Vault e tem um certificado TLS/SSL válido com uma senha não vazia, pode armazenar o certificado no Key Vault.

Armazenar o certificado TLS/SSL no Key Vault

Esta seção mostra como armazenar o certificado e a respectiva senha no Key Vault criado nas seções anteriores.

Para armazenar o certificado, siga estas etapas:

  1. No portal do Azure, coloque o cursor na barra de pesquisa na parte superior da página e digite o nome do Key Vault que você criou anteriormente no tutorial.
  2. Seu Key Vault deve aparecer no título Recursos. Selecione-o.
  3. Na seção Configurações, selecione Segredos.
  4. Selecione Gerar/Importar.
  5. Em Opções de upload, mantenha o valor padrão.
  6. Em Nome, insira myCertSecretData ou qualquer nome que desejar.
  7. Em Valor, insira o conteúdo do arquivo mycert.txt. O comprimento do valor e a presença de caracteres de nova linha não são um problema para o campo de texto.
  8. Mantenha os valores restantes com os respectivos padrões e selecione Criar.

Para armazenar a senha do certificado, siga estas etapas:

  1. Você retornará à página Segredos. Selecione Gerar/Importar.
  2. Em Opções de upload, mantenha o valor padrão.
  3. Em Nome, insira myCertSecretPassword ou qualquer nome que desejar.
  4. Em Valor, insira a senha do certificado.
  5. Mantenha os valores restantes com os respectivos padrões e selecione Criar.
  6. Você retornará à página Segredos.

Identificar o Key Vault

Agora que você tem um Key Vault com um certificado TLS/SSL assinado e a senha dele armazenada como segredos, retorne à seção Gateway de Aplicativo do Azure para identificar o Key Vault para a implantação.

Azure portal screenshot showing Azure Key Vault fields.

  1. Em Nome do grupo de recursos na assinatura atual que contém o KeyVault, insira o nome do grupo de recursos que contém o Key Vault criado anteriormente.
  2. Em Nome do Azure KeyVault que contém os segredos para o Certificado para Terminação SSL, insira o nome do Key Vault.
  3. Em O nome do segredo no KeyVault especificado cujo valor corresponde aos dados do certificado SSL, digite myCertSecretData ou qualquer nome que você tenha inserido anteriormente.
  4. Em O nome do segredo no KeyVault especificado cujo valor corresponde à senha do certificado SSL, digite myCertSecretData ou qualquer nome que você tenha inserido anteriormente.
  5. Selecione Examinar + criar.
  6. Selecione Criar. Isso fará uma validação da possibilidade de obter o certificado do Key Vault e de que a senha desse certificado corresponde ao valor que você armazenou para a senha no Key Vault. Se essa etapa de validação falhar, examine as propriedades do Key Vault e verifique se o certificado e a senha foram inseridos corretamente.
  7. Quando você vir Validação aprovada, selecione Criar.

Isso iniciará o processo de criação do Cluster do WLS e do respectivo Gateway de Aplicativo de front-end, o que pode levar cerca de 15 minutos. Após a conclusão da implantação, selecione Ir para o grupo de recursos. Na lista de recursos no grupo de recursos, selecione myAppGateway.

A última opção para fornecer um certificado TLS/SSL para o Gateway de Aplicativo é detalhada na próxima seção. Se você estiver satisfeito com a opção escolhida, pule para a seção Continuar com a implantação.

Opção três: gerar um certificado autoassinado

Essa opção é adequada somente para implantações de teste e desenvolvimento. Com essa opção, um Azure Key Vault e um certificado autoassinado são criados automaticamente e o certificado é fornecido ao Gateway de Aplicativo.

Veja como solicitar a implantação para executar essas ações:

  1. Na seção Gateway de Aplicativo do Azure, selecione Gerar um Certificado Autoassinado.
  2. Selecione uma identidade gerenciada atribuída pelo usuário. Isso é necessário para permitir que a implantação crie o Azure Key Vault e o certificado.
  3. Se você ainda não tiver uma identidade gerenciada atribuída pelo usuário, selecione Adicionar para iniciar o processo de criação de uma.
  4. Para criar uma identidade gerenciada atribuída pelo usuário, siga as etapas na seção Criar uma identidade gerenciada atribuída pelo usuário em Criar, listar, excluir ou atribuir uma função a uma identidade gerenciada atribuída pelo usuário usando o portal do Azure. Depois de selecionar a identidade gerenciada atribuída pelo usuário, verifique se a caixa de seleção ao lado da identidade gerenciada atribuída pelo usuário está marcada.

Azure portal screenshot showing fields for generating a self-signed certificate.

Continuar com a implantação

Agora você pode continuar com os outros aspectos da implantação do WLS, conforme descrito na documentação da Oracle.

Validar a implantação bem-sucedida do WLS e do Gateway de Aplicativo

Esta seção mostra uma técnica para validar rapidamente a implantação bem-sucedida do cluster do WLS e do Gateway de Aplicativo.

Se você tinha selecionado Ir para o grupo de recursos e, em seguida, myAppGateway no final da seção anterior, estará vendo agora uma página de visão geral do Gateway de Aplicativo. Caso contrário, você poderá encontrar essa página digitando myAppGateway na caixa de texto na parte superior do portal do Azure e, em seguida, selecionando a página correta que aparece. Lembre-se de selecionar aquela no grupo de recursos que você criou para o cluster do WLS. Em seguida, conclua as etapas abaixo.

  1. No painel esquerdo da página de visão geral para myAppGateway, role para baixo até a seção Monitoramento e selecione Integridade de back-end.
  2. Depois que a mensagem carregando desaparecer, você deverá ver uma tabela no meio da tela mostrando os nós do cluster configurados como nós no pool de back-end.
  3. Verifique se o status mostra Íntegro para cada nó.

Limpar os recursos

Se não for continuar a usar este cluster do WLS, exclua o Key Vault e o cluster do WLS seguindo estas etapas:

  1. Visite a página de visão geral para myAppGateway, conforme mostrado na seção anterior.
  2. Na parte superior da página, sob o texto Grupo de recursos, selecione o grupo de recursos.
  3. Selecione Excluir grupo de recursos.
  4. O foco de entrada será definido para o campo rotulado DIGITE O NOME DO GRUPO DE RECURSOS. Digite o nome do grupo de recursos conforme solicitado.
  5. Isso fará com que o botão Excluir seja habilitado. Selecione o botão Excluir. Essa operação levará algum tempo, mas você poderá continuar para a próxima etapa enquanto a exclusão estiver sendo processada.
  6. Localize o Key Vault seguindo a primeira etapa da seção Armazenar o certificado TLS/SSL no Key Vault.
  7. Selecione Excluir.
  8. Selecione Excluir no painel que aparece.

Próximas etapas

Continue a explorar as opções para executar o WLS no Azure.