Encaminhe solicitações HTTPS de vários nomes de domínio para diferentes servidores de back-end por meio de um único listener do ALB, usando certificados adicionais e regras de encaminhamento baseadas em domínio.
Cenário de exemplo
O ALB associa o nome de domínio de uma solicitação HTTPS recebida ao certificado apropriado, conclui a autenticação HTTPS e, em seguida, encaminha a solicitação ao servidor de back-end correto com base nas regras de encaminhamento.
Este tópico usa a seguinte configuração como exemplo:
O certificado padrão do listener, chamado
default, está associado ao nome de domínioaliyundoc.com. O grupo de servidores padrão é o RS1.Um certificado adicional,
example1, está associado ao nome de domíniowww.example.com. As solicitações parahttps://www.example.comsão encaminhadas para o grupo de servidores RS1.Outro certificado adicional,
example2, está associado ao nome de domíniowww.example.org. As solicitações parahttps://www.example.orgsão encaminhadas para o grupo de servidores RS2.
Pré-requisitos
Crie uma instância do Application Load Balancer (ALB). Para mais informações, consulte Crie e gerencie instâncias ALB.
Crie dois grupos de servidores: RS1 e RS2. Para mais informações, consulte Crie e gerencie grupos de servidores.
Adicione servidores de back-end aos grupos de servidores: uma instância ECS chamada ECS01 ao RS1 e outra chamada ECS02 ao RS2. Implante suas aplicações em ambas as instâncias ECS.
Registre seus nomes de domínio e obtenha o registro de Internet Content Provider (ICP) para eles. Para mais informações, consulte Register a domain name on Alibaba Cloud e ICP filing process.
-
Compre ou envie os certificados necessários para o Certificate Management Service e associe-os aos seus respectivos nomes de domínio. Para mais informações sobre como criar um certificado, consulte Ative HTTPS para um site usando um certificado comercial. Este tópico requer os seguintes certificados:
Um certificado padrão chamado
defaultassociado ao nome de domínioaliyundoc.com.Um certificado adicional chamado
example1associado ao nome de domíniowww.example.com.Um certificado adicional chamado
example2associado ao nome de domíniowww.example.org.
Etapa 1: Adicionar um listener HTTPS
Faça login no console do Application Load Balancer.
Na barra de navegação superior, selecione a região onde a instância do ALB está implantada.
No painel de navegação à esquerda, selecione Instances.
Na página Instances, localize a instância de destino e clique em Create Listener na coluna Actions.
-
Na página Configure Listener, configure os seguintes parâmetros e mantenha os valores padrão para os demais. Em seguida, clique em Next.
Parameter
Description
Listener Protocol
Selecione HTTPS.
Listener Port
Defina a porta como 443.
-
Na página Configure SSL Certificate, configure o seguinte parâmetro e mantenha os valores padrão para os demais. Em seguida, clique em Next.
Parameter
Description
Server Certificate
Selecione o certificado padrão preparado, chamado
default. -
Na página Select Server Group, configure o seguinte parâmetro e mantenha os valores padrão para os demais. Em seguida, clique em Next.
Parameter
Description
Server Group
Selecione o grupo de servidores RS1 criado.
Na página Configuration Review, revise suas configurações e clique em Submit.
Etapa 2: Adicionar certificados adicionais
Na página Instances, localize a instância de destino e clique em ID da instância.
Clique em Listener. Localize o listener HTTPS e clique em Manage Certificates na coluna Actions.
Clique em Server Certificates e, em seguida, clique em Add EV Certificate.
Na caixa de diálogo Add Additional Certificate, selecione o certificado
example1e clique em OK. Repita esta etapa para adicionar o certificado adicionalexample2.
Etapa 3: Configure regras de encaminhamento
Na página Instances, localize a instância de destino e clique em ID da instância.
Clique em Listener. Localize o listener HTTPS e clique em View/Modify Forwarding Rule na coluna Actions.
Clique em Inbound Forwarding Rules, clique em Add New Rule.
-
Configure as duas regras de encaminhamento a seguir e clique em OK.
Se o Domain Name for
www.example.com, em Forward to, selecione RS1. Defina o Weight como 100.Se o Domain Name for
www.example.org, em Forward to, selecione RS2. Defina o Weight como 100.
Etapa 4: Configure a resolução de DNS
Adicione registros CNAME para www.example.com e www.example.org apontando para o nome DNS público da sua instância ALB.
Faça login no console do Application Load Balancer.
Na barra de navegação superior, selecione uma região.
Localize a instância ALB de destino e copie o Domain Name da instância.
-
Siga estas etapas para adicionar um registro CNAME.
NotaSe os seus nomes de domínio não estiverem registrados na Alibaba Cloud, adicione-os primeiro ao console do Alibaba Cloud DNS antes de configurar as definições de DNS. Para mais informações, consulte Domain management. Se o seu nome de domínio estiver registrado na Alibaba Cloud, prossiga com as etapas a seguir.
Faça login no console do Alibaba Cloud DNS.
Na página Public Zone, localize o nome de domínio de destino e clique em Settings na coluna Actions.
Na página Settings, clique em Add Record.
-
No painel Add Record, configure os seguintes parâmetros para o registro CNAME e, em seguida, clique em OK.
Parameter
Description
Record Type
Selecione CNAME na lista suspensa.
Hostname
No campo, insira o prefixo do seu nome de domínio, como
www.Query Source
Mantenha o valor padrão.
Record Value
No campo, insira o endereço CNAME para o nome de domínio. Este é o nome DNS da instância ALB copiado.
TTL
O período em que um registro DNS permanece armazenado em cache no servidor DNS. Mantenha o valor padrão.
NotaOs novos registros CNAME entram em vigor imediatamente. O tempo de propagação para um registro CNAME modificado depende do TTL do registro em cache no servidor DNS local. O TTL padrão é de 10 minutos.
Se ocorrer um conflito ao adicionar o registro, use um nome de host diferente. Para mais informações, consulte DNS record conflict rules.
Etapa 5: Verifique a configuração
Após concluir a configuração, insira https://www.example.com e https://www.example.org em um navegador para verificar se as regras de encaminhamento funcionam corretamente. Este exemplo pressupõe a implantação de uma página web estática simples em cada servidor de back-end.
Insira
https://www.example.comno seu navegador. A solicitação é encaminhada para o ECS01 no grupo de servidores RS1. A página exibeHello World ! This is ECS01.Insira
https://www.example.orgno seu navegador. A solicitação é encaminhada para o ECS02 no grupo de servidores RS2. A página exibeHello World ! This is ECS02.
Se o teste falhar, limpe o cache do navegador e teste novamente.
Documentos relacionados
Para mais informações sobre regras de encaminhamento, consulte Configure regras de encaminhamento baseadas em domínio e caminho.