Quando seu serviço está implantado em várias regiões, a distribuição de tráfego permite controlar a porcentagem de tráfego roteada para cada grupo de endpoints, facilitando transições suaves de tráfego entre regiões.
Proporção de distribuição de tráfego
Cada grupo de endpoints possui uma proporção de distribuição de tráfego entre 0% e 100% (padrão: 100%).
0% — nenhum tráfego é encaminhado para este grupo de endpoints.
100% — todo o tráfego disponível é encaminhado para este grupo de endpoints.
O GA determina qual grupo de endpoints usar primeiro com base na prioridade de agendamento, que reflete a latência de rede entre o ponto de acesso mais próximo e o grupo de endpoints. Quanto mais próximo o ponto de acesso estiver da região do grupo de endpoints, maior será a prioridade. O tráfego é sempre enviado primeiro para o grupo de endpoints íntegro de maior prioridade, e a proporção de distribuição é aplicada sobre essa decisão de roteamento.
Para faturamento por assinatura, apenas listeners TCP e UDP suportam distribuição de tráfego. Para faturamento conforme o uso, todos os tipos de listener suportam distribuição de tráfego.
Quando as verificações de integridade estão ativadas:
Se um grupo de endpoints de maior prioridade falhar na verificação de integridade, o GA encaminha todo o tráfego para o próximo grupo de endpoints disponível com a maior prioridade. A proporção de distribuição de tráfego configurada é ignorada durante o failover.
Quando o grupo de endpoints com falha passa novamente na verificação de integridade, o GA roteia automaticamente o tráfego de volta para ele. Nenhuma intervenção manual é necessária.
Se existir uma política de encaminhamento personalizada, o tráfego será distribuído entre os grupos de endpoints associados à política de encaminhamento correspondente.
Cenário
Uma empresa executa um serviço TCP na porta 80 em servidores nas regiões China (Beijing) e China (Shanghai), com a maioria dos clientes localizada em Beijing. A empresa utiliza o GA com uma área de aceleração em China (Beijing) e dois grupos de endpoints: Beijing (primário) e Shanghai (standby). Por padrão, o GA roteia todo o tráfego dos clientes de Beijing para o grupo de endpoints de Beijing. O grupo de endpoints de Shanghai assume apenas quando o grupo de Beijing fica indisponível. Agora, a empresa precisa deslocar temporariamente todo o tráfego dos clientes de Beijing para o grupo de endpoints de Shanghai sem interromper o serviço.
Para isso, ajuste o valor de distribuição de tráfego do grupo de endpoints de Beijing. Por exemplo, reduza-o do padrão de 100% para 50%, para que o GA roteie metade do tráfego dos clientes de Beijing para Shanghai. Após verificar o encaminhamento correto, reduza o valor para 0% para que o GA roteie todo o tráfego dos clientes de Beijing para Shanghai, concluindo uma transição suave de tráfego.
Procedimento
Este tópico usa como exemplo uma instância padrão do Global Accelerator com pagamento conforme o uso. Antes de criar uma instância padrão do Global Accelerator com pagamento conforme o uso, certifique-se de compreender as seguintes informações:
As instâncias do GA utilizam o método de medição pay-by-data-transfer. Não é necessário associar um plano de largura de banda básico a instâncias do GA com pagamento conforme o uso. O faturamento da transferência de dados pela rede do GA é gerenciado pelo Cloud Data Transfer (CDT). Para mais informações, consulte Data transfer billing.
Na primeira vez que utilizar uma instância do GA com pagamento conforme o uso, você deve Activate the Service.
Etapa 1: Implantar servidores
Este tópico utiliza o Alibaba Cloud Linux 3.2104 64-bit como exemplo. Os comandos de teste podem variar conforme o sistema operacional. Para comandos específicos, consulte a documentação do seu sistema operacional.
Implante servidores nas regiões China (Beijing) e China (Shanghai) e abra a porta TCP 80.
Faça logon em um cliente na região China (Beijing), abra uma janela de linha de comando e use o comando
curl <origin_server_ip>para acessar os servidores nas regiões China (Beijing) e China (Shanghai).
Etapa 2: Configurar informações básicas da instância
Faça logon no Global Accelerator console.
Na página Instances, clique em Create Standard Pay-as-you-go Instance.
-
Na etapa Basic Instance Configuration, configure os parâmetros conforme a tabela a seguir e clique em Next.
Parâmetro
Descrição
GA Instance Name
Insira um nome para a instância do GA.
Instance Billing Method
Pay-As-You-Go é selecionado por padrão.
Você será cobrado instance fees, CU fees e data transfer fees para instâncias do Global Accelerator com pagamento conforme o uso.
Resource Group
Selecione o grupo de recursos ao qual a instância padrão pertence.
O grupo de recursos deve ter sido criado pela conta atual da Alibaba Cloud no Resource Management. Para mais informações, consulte Create a resource group.
Etapa 3: Configurar uma área de aceleração
Configure áreas de aceleração para uma instância do Global Accelerator para especificar as regiões onde seus usuários estão localizados e alocar largura de banda para acelerar o acesso aos seus serviços de backend.
Na etapa Configure Acceleration Area, configure os parâmetros conforme a tabela a seguir e clique em Next.
Parâmetro | Descrição |
Acceleration Area | Na lista suspensa, selecione uma ou mais regiões das quais deseja acelerar o acesso e clique em Add. Neste exemplo, selecione China (Beijing) na área North China. |
Assign Bandwidth | |
Maximum Bandwidth | Defina a largura de banda para a área de aceleração. O valor para cada área de aceleração pode variar de 2 a 10.000 Mbit/s. Este valor serve apenas como limite de taxa. O CDT liquida as taxas de transferência de dados. Neste exemplo, mantenha o valor padrão de 200 Mbit/s. Importante Definir a largura de banda máxima muito baixa pode acionar limitação de taxa e causar perda de tráfego. |
IP Protocol | Selecione o protocolo IP usado para acessar o serviço Global Accelerator. Neste exemplo, mantenha o valor padrão de IPv4. |
ISP Line Type | Selecione o tipo de linha de rede pública usado para acessar o serviço Global Accelerator. Neste exemplo, selecione BGP (Multi-ISP). |
Etapa 4: Configurar um listener
Um listener verifica e processa solicitações de conexão de entrada com base na porta e no protocolo especificados. Cada listener está associado a um ou mais grupos de endpoints. Após associar um grupo de endpoints a um listener, o GA roteia o tráfego para o endpoint ideal dentro desse grupo.
Na etapa Configure Listeners, configure um listener e clique em Next.
Esta seção descreve apenas os parâmetros relevantes para este exemplo. Mantenha os valores padrão para os demais parâmetros. Para mais informações, consulte Add a TCP or UDP listener.
|
Parâmetro |
Descrição |
|
Listener Name |
Insira um nome para o listener. |
|
Routing Type |
Selecione o tipo de roteamento. Neste exemplo, selecione Intelligent Routing. |
|
Protocol |
Selecione o protocolo para o listener. Neste exemplo, selecione TCP. |
|
Port |
Especifique a porta do listener usada para receber e encaminhar solicitações aos endpoints. O número da porta deve estar no intervalo de 1 to 65499. Neste exemplo, insira 80. |
Etapa 5: Configurar grupos de endpoints e endpoints
-
Configure o grupo de endpoints de Beijing.
-
Na página do assistente Configure an Endpoint Group, configure o grupo de endpoints de Beijing com os seguintes parâmetros e clique em Next.
Esta seção descreve apenas os parâmetros relevantes para este exemplo. Para mais informações, consulte Add and manage endpoint groups for intelligent routing listeners.
Parâmetro
Descrição
Region
Selecione a região onde o grupo de endpoints está implantado.
Neste exemplo, selecione China (Beijing).
Endpoint Configuration
O host de destino que processa as solicitações do cliente. Configure o endpoint com os seguintes parâmetros:
Backend Service Type: Selecione Custom Public IP.
Backend Service: Insira o endereço IP do serviço de backend a ser acelerado. Neste exemplo, insira o endereço IP público do servidor em China (Beijing).
Weight: Insira o peso do endpoint. Valores válidos: 0 a 255. O GA roteia o tráfego para os endpoints com base em seus pesos. Neste exemplo, mantenha o valor padrão de 255.
AvisoSe o peso de um endpoint for definido como 0, o Global Accelerator para de distribuir tráfego para esse endpoint. Proceda com cautela.
Preserve Client IP
Selecione se deseja preservar os endereços IP dos clientes.
Se ativado, o servidor de backend poderá recuperar o endereço IP original do cliente. Para mais informações, consulte Preserve client IP addresses.
Neste exemplo, mantenha a configuração padrão Disabled.
Traffic Distribution Ratio
Defina a porcentagem de tráfego roteada para este grupo de endpoints.
O valor varia de 0 a 100. Neste exemplo, mantenha o valor padrão de 100.
Health Check
Especifica se as verificações de integridade devem ser ativadas. Se ativado, o GA monitora a disponibilidade do endpoint.
Neste exemplo, ative as verificações de integridade.
Health Check Protocol
Selecione o protocolo para a verificação de integridade. Os protocolos suportados são TCP, HTTP e HTTPS.
Neste exemplo, selecione TCP.
Port
A porta que o serviço de verificação de integridade usa para acessar o endpoint.Intervalo válido: 1-65535.
Neste exemplo, insira 80.
-
Na página do assistente Configuration Review, confirme as configurações do listener e do endpoint e clique em Submit.
A criação da instância do Global Accelerator pode levar de 3 a 5 minutos.
Opcional: Após a criação da instância, clique em Go to Instance Details. Na página de detalhes da instância, visualize a configuração nas abas Instance Information, Listeners e Acceleration Areas.
-
-
Configure o grupo de endpoints de Shanghai.
Na página de detalhes da instância, clique na aba Listeners.
Na aba Listeners, localize o listener de destino e clique no ID do grupo de endpoints ou no número na coluna Default Endpoint Group.
Na aba Endpoint Group, na seção Default Endpoint Group, clique em + Add Endpoint Group.
-
Na página Add Endpoint Group, configure os seguintes parâmetros e clique em Create.
Region: Selecione China (Shanghai).
Backend Service em Endpoint Configuration: Insira o endereço IP público do servidor em China (Shanghai).
Mantenha os outros parâmetros iguais aos do grupo de endpoints de Beijing.
Etapa 6: Testar a distribuição de tráfego
Envie várias solicitações do cliente para verificar o resultado da distribuição de tráfego:
echo > curl.txt
for ((i=0; i<<request-count>; i++)); do
curl -s <acceleration-ip> >> curl.txt
done
echo "Beijing count: $(grep -c Beijing curl.txt)"
echo "Shanghai count: $(grep -c Shanghai curl.txt)"
<request-count>: o número total de solicitações a simular, por exemplo100.<acceleration-ip>: o IP de aceleração atribuído pelo GA.
No cenário descrito neste tópico, faça logon no cliente de Beijing e envie 100 solicitações:
echo > curl.txt
for ((i=0; i<100; i++)); do
curl -s 123.xxx.xxx.xxx >> curl.txt
done
echo "Beijing count: $(grep -c Beijing curl.txt)"
echo "Shanghai count: $(grep -c Shanghai curl.txt)"
Execute este comando três vezes — com o valor de distribuição de tráfego do grupo de endpoints de Beijing (maior prioridade) definido como 100%, 50% e 0%, respectivamente — e compare a distribuição de solicitações entre as regiões.
Tópicos relacionados
Para mais informações sobre verificações de integridade, consulte Enable and manage health checks.
Para mais informações sobre os princípios e casos de uso da distribuição de tráfego, consulte Principles and use cases of traffic distribution across multiple endpoint groups.
É possível combinar a distribuição de tráfego com verificações de integridade para implementar balanceamento de carga multirregião e recuperação de desastres. Para mais informações, consulte Use GA to accelerate cross-region applications and implement high-availability disaster recovery.