Migrar seu Classic Load Balancer
O Elastic Load Balancing é compatível com os seguintes tipos de balanceadores de carga: Application Load Balancers, Network Load Balancers, Gateway Load Balancers e Classic Load Balancers. Para informações sobre os diferentes recursos de cada tipo de balanceador de carga, consulte Recursos do Elastic Load Balancing
Também é possível optar por migrar um Classic Load Balancer existente em uma VPC para um Application Load Balancer ou um Network Load Balancer.
Benefícios da migração de um Classic Load Balancer
Cada tipo de balanceador de carga tem seus próprios recursos, funções e configurações exclusivos. Analise os benefícios de cada balanceador de carga para ajudar a decidir qual é o melhor para você.
Migrar usando o assistente de migração
O assistente de migração usa a configuração do Classic Load Balancer para criar um Application Load Balancer ou Network Load Balancer equivalente. Isso reduz o tempo e o esforço necessários para migrar um Classic Load Balancer em comparação com outros métodos.
nota
O assistente cria um balanceador de carga. O assistente não converte o Classic Load Balancer existente em um Application Load Balancer ou Network Load Balancer. Você deve redirecionar manualmente o tráfego para o balanceador de carga recém-criado.
Limitações
-
O nome do novo balanceador de carga não pode ser o mesmo de um balanceador de carga existente do mesmo tipo, na mesma região.
-
Se o Classic Load Balancer tiver alguma tag contendo o prefixo
aws:em sua chave, essas tags não serão migradas.
Ao migrar para um Application Load Balancer
-
Se o Classic Load Balancer tiver apenas uma sub-rede, você deve especificar uma segunda.
-
Se o Classic Load Balancer tiver receptores HTTP/HTTPS que usam as verificações de integridade TCP, o protocolo de verificação de integridade será atualizado para HTTP e o caminho definido como "/".
-
Se o Classic Load Balancer tiver receptores HTTPS usando uma política de segurança personalizada ou sem suporte, o assistente de migração usará a política de segurança padrão para o novo tipo de balanceador de carga.
Ao migrar para um Network Load Balancer
-
Os seguintes tipos de instância não serão registrados no novo grupo de destino: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, T1
-
Algumas configurações de verificação de integridade do Classic Load Balancer podem não ser transferíveis para o novo grupo de destino. Esses casos serão indicados como uma alteração na seção de resumo do assistente de migração.
-
Se o Classic Load Balancer tiver receptores SSL, o assistente de migração cria um receptor TLS usando o certificado e a política de segurança do receptor SSL.
Para migrar um Classic Load Balancer usando o assistente de migração
-
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, em Load Balancing (Balanceamento de carga), escolha Load balancers (Balanceadores de carga).
-
Selecione o Classic Load Balancer que deseja migrar.
-
Na seção Detalhes dos balanceadores de carga, escolha Iniciar assistente de migração.
-
Escolha Migrar para o Application Load Balancer ou Migrar para o Network Load Balancer para abrir o assistente de migração.
-
Em Nomear novo balanceador de carga, em Nome do balanceador de carga, insira um nome para o novo balanceador de carga.
-
Em Nomear novo grupo de destino e revisar destinos, em Nome do grupo de destino, insira um nome para o novo grupo de destino.
-
(Opcional) Em Destinos, você pode revisar as instâncias de destino que serão registradas no novo grupo de destino.
-
(Opcional) Em Revisar tags, você pode revisar as tags que serão aplicadas ao novo balanceador de carga
-
Em Resumo do Application Load Balancer ou Resumo do Network Load Balancer, revise e verifique as opções de configuração atribuídas pelo assistente de migração.
-
Quando o resumo da configuração estiver do seu agrado, escolha Criar Application Load Balancer ou Criar Network Load Balancer para iniciar a migração.
Migrar usando o utilitário de cópia do balanceador de carga
Os utilitários de cópia do balanceador de carga estão disponíveis no repositório do Elastic Load Balancing Tools, na página da AWS no GitHub.
Recursos
Migrar o balanceador de carga manualmente
As informações a seguir fornecem instruções gerais para criar manualmente um novo Application Load Balancer ou Network Load Balancer com base em um Classic Load Balancer existente em uma VPC. Você pode migrar usando o Console de gerenciamento da AWS, a AWS CLI ou um SDK da AWS. Para obter mais informações, consulte Como começar a usar o Elastic Load Balancing.
Depois de concluir o processo de migração, você poderá aproveitar os recursos do seu novo load balancer.
Etapa 1: criar um novo balanceador de carga
Crie um balanceador de carga com uma configuração equivalente ao Classic Load Balancer para migrar.
-
Crie um novo balanceador de carga com o mesmo esquema (voltado para a Internet ou interno), sub-redes e grupos de segurança do Classic Load Balancer.
-
Crie um grupo de destino para o seu balanceador de carga com as mesmas configurações de verificação de integridade presentes no seu Classic Load Balancer.
-
Execute um destes procedimentos:
-
Se o Classic Load Balancer estiver anexado a um grupo do Auto Scaling, anexe o grupo de destino ao grupo do Auto Scaling. Isso também registrará as instâncias do Auto Scaling com o grupo de destino.
-
Registre suas instâncias EC2 com o seu grupo de destino.
-
-
Crie um ou mais listeners, cada um com uma regra padrão que encaminha solicitações para o grupo de destino. Se você criar um receptor HTTPS, poderá especificar o mesmo certificado que foi especificado para o seu Classic Load Balancer. Recomendamos que você use a política de segurança padrão.
-
Se o seu Classic Load Balancer tiver tags, verifique e adicione as tags relevantes ao seu novo balanceador de carga.
Etapa 2: redirecionar gradualmente o tráfego para seu novo balanceador de carga
Depois que suas instâncias forem registradas com o novo balanceador de carga, você poderá iniciar o processo de redirecionamento do tráfego do balanceador de carga antigo para o novo. Isso permite que você teste seu novo balanceador de carga enquanto minimiza os riscos à disponibilidade da sua aplicação.
Para redirecionar o tráfego gradualmente para seu novo load balancer
-
Cole o nome DNS do seu novo load balancer no campo de endereço de um navegador da Web conectado à Internet. Se tudo estiver funcionando, o navegador exibirá a página padrão da sua aplicação.
-
Crie um novo registro de DNS que associe seu nome de domínio ao seu novo load balancer. Se o serviço de DNS for compatível com o recurso de ponderação, especifique um peso de 1 no novo registro de DNS e um peso de 9 no registro de DNS existente para seu balanceador de carga antigo. Isso direcionará 10% do tráfego para o novo balanceador de carga e 90% do tráfego para o balanceador de carga antigo.
-
Monitore seu novo load balancer para verificar se ele está recebendo o tráfego e solicitações de roteamento para suas instâncias.
Importante
A vida útil (TTL – time-to-live) no registro DNS é de 60 segundos. Isso significa que qualquer servidor DNS que resolver o nome de domínio manterá as informações do registro em cache por 60 segundos, enquanto as alterações são propagadas. Portanto, esses servidores DNS ainda poderão rotear o tráfego para o balanceador de carga antigo por até 60 segundos após você concluir a etapa anterior. Durante a propagação, o tráfego pode ser direcionado para o load balancer.
-
Continue para atualizar a ponderação dos seus registros DNS até que todo o tráfego seja direcionado para o novo load balancer. Após concluir, você poderá excluir o registro DNS do seu balanceador de carga antigo.
Etapa 3: atualizar políticas, scripts e código
Se você tiver migrado o Classic Load Balancer para um Application Load Balancer ou Network Load Balancer, não esqueça de fazer o seguinte:
-
Atualize as políticas do IAM que usam a versão de API de 01/06/2012 para usar a versão de 01/12/2015.
-
Atualize processos que usam métricas do CloudWatch no namespace
AWS/ELBpara usar métricas do namespaceAWS/ApplicationELBouAWS/NetworkELB. -
Atualize os scripts que usam comandos aws elb da AWS CLI para usar comandos aws elbv2 da AWS CLI.
-
Atualize os modelos do CloudFormation que usam o recurso
AWS::ElasticLoadBalancing::LoadBalancerpara usar os recursosAWS::ElasticLoadBalancingV2. -
Atualize o código que usa a versão de API de 01/06/2012 do Elastic Load Balancing para usar a versão de 01/12/2015.
Recursos
-
elbv2 na Referência de comandos da AWS CLI
-
Referência de API do Elastic Load Balancing versão de 2015-12-01
-
Gerenciamento de identidade e acesso para o Elastic Load Balancing
-
Métricas do Application Load Balancer no Guia do usuário para Application Load Balancers
-
Métricas do Network Load Balancer no Guia do usuário para Network Load Balancers
-
AWS::ElasticLoadBalancingV2::LoadBalancer no Guia do usuário do AWS CloudFormation
Etapa 4: excluir o balanceador de carga antigo
Você pode excluir o antigo Classic Load Balancer depois de:
-
Ter redirecionado todo o tráfego do balanceador de carga antigo para o novo.
-
Todas as solicitações existentes que foram roteadas para o balanceador de carga antigo tiverem sido concluídas.
Impedir que os usuários criem Classic Load Balancers
Você pode criar uma política do IAM que impeça que os usuários criem Classic Load Balancers em sua conta.
As APIs do Elastic Load Balancing V2 e do Elastic Load Balancing V1 fornecem uma ação de API CreateLoadBalancer. Ao criar um Classic Load Balancer, você usa a ação da API V1, que cria o balanceador de carga e os receptores. Ao criar um Application Load Balancer, Network Load Balancer ou balanceador de carga de gateway, você usa a ação da API V2, que cria somente o balanceador de carga. A API V2 fornece uma ação CreateListener, que você usa para criar receptores para um balanceador de carga depois de criá-lo.
A política a seguir nega aos usuários a permissão de criar um balanceador de carga se o protocolo do receptor for especificado. Como você deve configurar pelo menos um receptor ao criar um Classic Load Balancer, essa política impede que os usuários criem Classic Load Balancers. Isso não impede que os usuários criem outros tipos de balanceadores de carga, já que há ações de API separadas para criar esses balanceadores de carga e seus receptores.
{ "Version": "2012-10-17", "Effect": "Deny", "Action": "elasticloadbalancing:CreateLoadBalancer", "Resource": [ "arn:aws:elasticloadbalancing:*:*:loadbalancer/*" ], "Condition": { "Null": { "elasticloadbalancing:ListenerProtocol": false } } }