Ajuste de escala, alta disponibilidade e gerenciamento de tráfego

Quando o app é implementado para o Code Engine, ele se torna acessível e disponível para testes e até mesmo produção. Como o Code Engine fornece uma plataforma serverless para cargas de trabalho conteinerizadas, a maioria dos detalhes de tempo de execução são gerenciados automaticamente pelo Code Engine. É possível, no entanto, controlar muitos dos detalhes.

Ajustando a escala do app

Ao trabalhar com o Cloud Foundry, você pode ter configurado e usado o recurso de ajuste automático de escala, que permitiu incluir e remover automaticamente as instâncias do app, dependendo das métricas de desempenho ou da data e hora. Em contraste, o Code Engine ajusta automaticamente a escala do aplicativo por padrão. O Code Engine escala um app até 10 instâncias de tempo de execução (por padrão) e até zero (significando que o app não consome nenhum recurso quando não está em uso).

É possível editar essas configurações dentro dos limites e cotas do Code Engine. Uma escala máxima de 0 (zero) escale o app para o máximo possível, se necessário enquanto uma escala mínima de 1 mantém pelo menos uma instância do aplicativo em execução. Ao ajustar o tempo limite de simultaneidade e solicitação, é possível ajustar o escalador automático às suas necessidades. Para obter mais informações, consulte Configurando o ajuste de escala de aplicativo

Alta disponibilidade

Para aspectos de alta disponibilidade (e recuperação de desastre), o Cloud Foundry e o Code Engine são semelhantes.

  • Siga as boas práticas para o tratamento de solicitações simultâneas.
  • Certifique-se de ter pelo menos duas ou até três instâncias do app funcionando.
  • Executar instâncias de app nas zonas disponíveis de uma região multizona (MZR).
  • Use um balanceador de carga global (GLB) na frente de instâncias do app implementadas em vários MZRs para alta disponibilidade em um nível global.

Gerenciamento de tráfego e atualizações contínuas

Para manter seu aplicativo disponível ao implantar uma nova versão em Cloud Foundry, você usa opções especiais de comando da CLI para atualizações contínuas ou implantações com tempo de inatividade zero. Com o Code Engine, as atualizações contínuas são executadas automaticamente. Depois que a nova revisão do app está pronta, o tráfego é movido do antigo app para a nova revisão.

A execução de implementações blue-green e a transferência gradual do tráfego do aplicativo antigo para a nova revisão exigiram alguma intervenção manual em Cloud Foundry. Com o Code Engine, é possível usar os recursos integrados nas camadas subjacentes do Kubernetes e do Knative. A publicação do blog, Blue-green deployment with IBM Cloud Code Engine and Knative, mostra como o comando Knative CLI atualiza o aplicativo para que o tráfego seja configurado para se dividir entre as revisões. Considerando um aplicativo chamado bluegreen e duas revisões rev-old e rev-new, o comando a seguir divide o tráfego 80/20 entre eles.

kn service update bluegreen --traffic rev-old=80 --traffic rev-new=20

Ao ajustar as porcentagens atribuídas, é possível testar a nova versão do código com algum tráfego primeiro e, quando o código estiver pronto, executar a revisão na produção.

Próximas etapas

  1. Acabou de iniciar a migração? Confira a Introdução.
  2. Comparar a terminologia do Cloud Foundry com o Code Engine.
  3. Experimente o Code Engine com um tutorial de construção local.
  4. O seu aplicativo usa ligações de serviço? Confira Migrando suas ligações de serviços.
  5. Ajuste de escala, alta disponibilidade e gerenciamento de tráfego (página atual)
  6. Encontre equivalentes do Code Engine para comandos do Cloud Foundry.
  7. Ainda tem perguntas? Experimente as Perguntas mais frequentes de Migrando aplicativos Cloud Froundry para o Code Engine.

Outras Informações