Resumo

Concluído

Aqui estão alguns dos principais pontos apresentados neste módulo sobre elasticidade:

  • As VMs e outros recursos de nuvem raramente experimentam cargas constantes. Em vez disso, eles experimentam cargas variáveis. Às vezes, os carregamentos apresentam variação de uma ordem de magnitude ou mais ao longo do tempo.
  • O dimensionamento da capacidade de computação para ajustá-la às cargas de pico garante a QoS (qualidade do serviço), mas resulta em aumento de custos e do uso de energia.
  • A elasticidade refere-se à capacidade de adicionar recursos para lidar com cargas mais altas e de remover recursos quando a carga diminui.
  • A elasticidade é obtida na nuvem por meio do dimensionamento de recursos, como VMs e bancos de dados.
  • O escalonamento (dimensionamento horizontal) refere-se ao aumento e à diminuição do número de recursos dedicados a uma tarefa, por exemplo, aumentando de 10 para 15 o número de VMs que atendem os usuários do site.
  • O escalonamento (dimensionamento vertical) refere-se à substituição de recursos existentes por outros mais ou menos poderosos, por exemplo, a substituição de uma VM de servidor Web que contém dois núcleos e 4 GB de RAM por uma contendo quatro núcleos e 8 GB de RAM.
  • O dimensionamento de recursos de modo correspondente à demanda mantém a utilização de recursos relativamente constante, reduz os custos e aprimora o uso de energia.
  • O dimensionamento automático permite que o dimensionamento ocorra com base em regras ou políticas estabelecidas por um administrador de nuvem. As regras ou políticas podem ser baseadas em tempo, em métricas ou nas duas coisas. Um exemplo de dimensionamento automático baseado em métricas é a colocação de instâncias adicionais online quando a utilização média da CPU atinge um limite predeterminado, como 70%.
  • O dimensionamento automático baseado em tempo, também conhecido como dimensionamento automático agendado, é mais apropriado quando as cargas são cíclicas e previsíveis.
  • O dimensionamento automático baseado em métricas pode lidar com cargas previsíveis e imprevisíveis.
  • Um balanceamento de carga eficaz é crucial para implementar serviços de nuvem escalonáveis.
  • Os balanceadores de carga usam diferentes tipos de algoritmos para distribuir a carga, incluindo algoritmos de Round Robin e baseados em hash.
  • Alguns balanceadores de carga tentam expedir solicitações de maneira mais inteligente usando métricas como tempo de execução de solicitação e utilização de CPU em cada nó.
  • Os balanceadores de carga também aumentam a disponibilidade monitorando a integridade dos recursos de back-end e reconhecendo quando esses recursos não estão disponíveis.
  • Devido a um único balanceador de carga representar um ponto único de falha, os balanceadores de carga geralmente são implantados em pares.
  • A computação sem servidor oferece benefícios que incluem preço baseado em consumo, escalabilidade automática e custos administrativos reduzidos
  • Um exemplo de computação sem servidor são funções sem servidor, que permitem que você carregue o código na nuvem e defina quando ele é executado.
  • Outro exemplo são fluxos de trabalho sem servidor, que permitem definir fluxos de trabalho de negócios (normalmente usando designers gráficos e sem escrever código) e especificar quando eles são executados.
  • A computação sem servidor também se estende a bancos de dados, que são dimensionados para atender à demanda estabelecida neles.