Mova o tráfego entre duas origens por peso
Mova uma parte das requisições de uma origem para outra com os pesos de Load Balancer e tire uma origem da rotação com um switch.
Você move requisições de uma origem para outra em etapas, com os pesos dos endereços de um connector com Load Balancer, pelo Azion Console, pela API ou pela Azion CLI. Para manter uma origem de reserva fora do tráfego até que a primária falhe, consulte Adicione uma origem de backup a um connector.
Com Round Robin, cada endereço recebe uma parte das requisições proporcional ao seu peso, um número inteiro de 1 a 100. O peso define uma proporção, não uma divisão exata: cada data center balanceia por conta própria, então a parte que um endereço recebe varia em torno da que o seu peso pede. Um peso não pode ser 0, então uma origem sai da rotação pelo switch Active, não pelo peso.
- As duas origens ficam em um connector como endereços Primary, e a nova origem começa com um peso pequeno.
- Mantenha cada conjunto de pesos até que a nova origem tenha atendido requisições suficientes para mostrar os seus erros.
- Quando aparecem novos erros, desative o endereço da nova origem para fazer o rollback.
- Quando nenhum erro novo aparece, aumente o peso da nova origem e mantenha de novo.
- Quando a nova origem recebe a parte que você quer, desative o endereço da origem antiga para fazer o cutover.
Pré-requisitos
- Um connector do tipo
httpque alcança a origem atual e uma regra cujo comportamento Set Connector envia requisições a ele. Para criar os dois, consulte Primeiros passos com Connectors. - Uma nova origem que guarda a mesma aplicação da atual. Todo endereço de um connector recebe o mesmo header
Host, então as duas origens devem responder pelo mesmo nome. - Acesso ao Azion Console, para o procedimento pelo Console. Consulte Como acessar o Azion Console.
- Um personal token e o ID do connector, para o procedimento pela API.
- A Azion CLI instalada e autorizada, e o ID do connector, para o procedimento pela CLI.
Os exemplos usam old-origin.example.com para a origem atual e new-origin.example.com para a nova. Substitua-os pelos seus.
Coloque as duas origens no connector
O connector recebe Load Balancer com Round Robin, e a nova origem entra como um segundo endereço Primary. Um peso 9 na origem atual e 1 na nova envia cerca de uma requisição em dez para a nova origem. Um connector guarda até 15 endereços com Load Balancer ativado.
Host recebe um nome pelo qual as duas origens respondem, como ${host}, que envia o host que o cliente requisitou. Um nome literal da origem atual chegaria à nova origem com um nome pelo qual ela pode não responder. Os exemplos definem Max Retries, Connection Timeout e Read/Write Timeout como 3, 30 e 60, os valores que o Console preenche. A API e a CLI dão a uma chave que o corpo deixa de fora os valores 0, 60 e 120.
Para colocar as duas origens no connector pelo Azion Console:
Acesse Azion Console > Connectors e selecione o connector da origem atual.
Em Host, insira ${host}.
Em Modules, ative Load Balancer. O formulário preenche Max Retries, Connection Timeout e Read/Write Timeout.
Em Load Balancer Configuration, defina Method como Round Robin.
Em Address Management, em old-origin.example.com, defina Server Role como Primary e insira 9 em Weight.
No novo Address, insira new-origin.example.com, sem protocolo nem porta.
Defina Server Role como Primary e insira 1 em Weight.
O Console mostra Connector has been updated.
O connector guarda dois endereços ativos e envia cerca de uma requisição em dez para a nova origem. Uma alteração de connector chega à infraestrutura distribuída da Azion em vários minutos e, até que todos os data centers a recebam, algumas requisições chegam só à origem atual.
Altere os pesos
Cada etapa altera só os pesos. Mantenha uma etapa por tempo suficiente para que a nova origem atenda as requisições que revelam as suas falhas antes de passar à próxima. Cada registro da fonte de dados HTTP Requests de Real-Time Events traz Upstream Status e Upstream Addr, o status e o endereço da origem que respondeu, então um filtro pelo endereço da nova origem mostra os erros dela.
Para alterar os pesos pelo Azion Console:
Acesse Azion Console > Connectors e selecione o connector.
Em Address Management, em old-origin.example.com, insira o novo peso em Weight, como 5.
Em new-origin.example.com, insira o novo peso em Weight, como 5.
O Console mostra Connector has been updated.
A nova origem recebe a parte dos novos pesos quando a alteração chega a cada data center. Durante a propagação, alguns data centers ainda aplicam os pesos anteriores, então avalie uma etapa só depois que ela se propagou.
Tire uma origem da rotação
O switch Active de um endereço o tira da rotação sem excluí-lo. O endereço mantém as portas, a função e o peso, então ativá-lo de novo restaura a etapa que ele deixou. Desativar o endereço da nova origem faz o rollback, e desativar o endereço da origem atual faz o cutover.
Para tirar a nova origem pelo Azion Console:
Acesse Azion Console > Connectors e selecione o connector.
Em Address Management, em new-origin.example.com, desative Active.
O Console mostra Connector has been updated. Para fazer o cutover, desative Active em old-origin.example.com.
O endereço desativado não recebe nenhuma requisição quando todos os data centers recebem a alteração. A alteração leva vários minutos para se propagar, então mantenha a origem que você desativou respondendo até que nenhuma requisição chegue a ela.