Como realizar um balanceamento de carga entre registros DNS
Você pode usar uma zona do Edge DNS para criar vários registros e realizar um balanceamento de carga DNS. Atribuir diferentes pesos a cada registro para a mesma zona ajuda a distribuir o tráfego de rede recebido, garantindo uma melhor utilização dos recursos e evitando sobrecarga em um único servidor.
Neste guia, você aprenderá um exemplo usando um tipo de registro A
, que aceita valores no formato de endereço IPv4.
- Acesse o Azion Console > Edge DNS.
- Escolha a zona na qual deseja adicionar registros na lista ou crie uma zona.
- Selecione a aba Records.
- Clique no botão + Record.
- Em Name, forneça o nome do novo registro como um subdomínio.
- Em Type, selecione o tipo de registro
A
. - Em Value, adicione os itens para a resposta DNS ao registro registrado no formato de endereço IPv4. Exemplo:
192.111.0.1
. - Em TTL (seconds), escolha o tempo, em segundos, que uma resposta pode ser armazenada em um servidor de resolução. Valor máximo:
2147483647
. - Em Policy, selecione Weighted.
- Em Weight, especifique o peso para o registro, considerando que você criará outros registros para a mesma zona com pesos diferentes. Aceita valores de
0
a255
. - Em Description (opcional), você pode adicionar um texto curto que diferencia os registros que você criará para o balanceamento de carga. Aceita até 45 caracteres.
- Em Weight, especifique o peso para o registro, considerando que você criará outros registros para a mesma zona com pesos diferentes. Aceita valores de
- Clique no botão Save.
- Repita as etapas de 4 a 10 para criar os outros registros DNS balanceados necessários, observando sempre os limites do Edge DNS, usando sempre o mesmo Name e definindo os endereços desejados em Value e pesos diferentes para cada registro em Weight.
Se você adicionar 3 registros, por exemplo, pode especificar um peso de 50 para o primeiro registro, 20 para o segundo registro e 30 para o terceiro registro.
- Execute a seguinte requisição
GET
em seu terminal, substituindo[TOKEN VALUE]
pelo seu personal token para recuperar seu<hosted_zone_id>
:
curl --request GET --url https://api.azion.com/v4/edge_dns/zones --header 'Accept: application/json' --header 'Authorization: Token [TOKEN VALUE]'
- Você receberá uma resposta com todas as suas zonas existentes. Copie o valor do
<id>
que deseja usar. - Execute a seguinte requisição
POST
, substituindo[TOKEN VALUE]
pelo seu personal token e o valor<hosted_zone_id>
que você copiou:
curl --request POST --url https://api.azion.com/v4/edge_dns/zones/{zoneId}/records --header 'Accept: application/json' --header 'Authorization: Token [TOKEN VALUE]' --header 'Content-Type: application/json' --data '{ "type": "A", "name": "lbexample", "rdata": ["192.111.0.1", "192.111.0.2"], "ttl": 20, "policy": "weighted", "weight": 50, "description": "policy weight 50"}'
- Você receberá uma resposta semelhante a esta:
{"state": "executed","data": { "id": <record_id>, "description": "policy weight 50", "name": "lbexample", "ttl": 20, "type": "A", "rdata": [ "192.111.0.1", "192.111.0.2" ], "policy": "weighted", "weight": 50}}
Aguarde alguns minutos para que as alterações se propaguem e seus registros sejam criados na zona hospedada que você escolheu.
- Repita as etapas para criar os outros registros DNS balanceados necessários, observando sempre os limites do Edge DNS, usando sempre o mesmo
entry
e definindo os endereços desejados no parâmetroanswers_list
e pesos diferentes para cada registro no parâmetroweight
.
Testando seu registro balanceado
Após configurar seu registro balanceado, você pode testar e ver se está funcionando por meio de comandos no terminal:
- Execute
dig +short [seu hostname balanceado]
algumas vezes seguidas.- Você verá a lista de endereços variar, a cada vez, com base no registro selecionado pelo balanceador de carga feito no Edge DNS.
- A resposta será semelhante a:
dig +short lbexemplo @ns1.aziondns.net192.111.0.1
dig +short lbexemplo @ns1.aziondns.net192.111.0.2
dig +short lbexemplo @ns1.aziondns.net192.111.0.3