Sobre as Melhores Práticas para Operar Implantações em Nuvem com Eficiência

A eficiência operacional está relacionada à identificação de processos e procedimentos apropriados para automatizar e otimizar a operação de todos os serviços em nuvem. É importante considerar as melhores práticas para implementar, operar e monitorar aplicativos e infraestrutura para fornecer o máximo valor comercial. Com implementações diárias, há a necessidade de ver o que está acontecendo com os recursos da nuvem. O monitoramento precisa estar em vigor para saber se um ambiente está funcionando corretamente e se são necessários ajustes.

Executar Operações como Código

Provisione, dimensione e gerencie seu ambiente usando automação e uma infraestrutura como metodologia de código.
  • Usar a estrutura das Zonas de Destino do OCI

    Aproveite os projetos selecionados pela Oracle com orientação de design e modelos pré-configurados do Terraform IaC adequados para várias arquiteturas e casos de uso para a maioria das implementações da OCI.

  • Adote a infraestrutura como código (IaC)

    Automatize a implantação de cargas de trabalho e procedimentos operacionais, limite a interação humana e melhore a resposta a eventos usando a infraestrutura como código.

  • Definir a Infraestrutura de Carga de Trabalho

    Quando você define a infraestrutura como código, é possível provisionar cargas de trabalho de forma automática e repetida em uma infraestrutura consistente. A parametrização permite a reutilização de modelos comuns, promovendo a padronização entre ambientes e minimizando o retrabalho entre as equipes.

  • Desenvolvimento e Implantação de Aplicativos

    A automação da implantação de código na infraestrutura existente permite a consistência do aplicativo em várias implantações de infraestrutura.

  • Gerenciar a Configuração de Infraestrutura

    A consistência é crucial ao configurar e atualizar a configuração da infraestrutura em vários recursos de nuvem. Com o gerenciamento de configuração, é possível gerenciar a implantação da configuração da infraestrutura durante o design, a implementação, os testes, a aplicação de patches e as novas versões.

Faça Implantações Frequentes e Iterativas

Minimize os riscos usando automação e um processo de desenvolvimento iterativo ao testar e implantar código.

  • Automatize seu processo de implantação de aplicativos

    Automatize o maior número possível de processos. Se possível, elimine implementações manuais em produção; embora isso possa ser aceitável em ambientes mais baixos para promover velocidade e flexibilidade.

  • Aproveite a automação para testar seu código antes da implantação

    O teste de bugs, vulnerabilidades de segurança, funcionalidade, desempenho e integrações é fundamental para minimizar os problemas que os usuários descobrem. As falhas de teste devem impedir que o código seja liberado na produção.

  • Implementar implantações iterativas e incrementais

    Reduza os riscos testando e validando implementações com mais frequência. Mudanças menores e mais frequentes podem levar a menos exposição a falhas e atrasos na identificação de problemas.

Definir Procedimentos Operacionais

Defina procedimentos para aproveitar as ferramentas disponíveis e automatizar procedimentos.

  • Automatizar a aplicação de patches e a manutenção

    Aproveite as ferramentas para atualizar e aplicar patches automaticamente a instâncias de computação, instâncias de banco de dados e servidores que fazem parte da responsabilidade de manutenção do cliente.

  • Aproveite os utilitários de gerenciamento de configuração

    Use ferramentas de gerenciamento de configuração para automatizar e reduzir riscos ao atualizar configurações de recursos.

  • Monitorar métricas de desempenho do sistema

    Entenda as métricas fornecidas pelos serviços de infraestrutura. Configure o monitoramento e o alerta para fornecer visibilidade sobre o estado de todas as cargas de trabalho e indicadores proativos de falha.

  • Documente e teste seu plano de recuperação de desastres

    Crie um plano de recuperação de desastres que reflita o impacto comercial das falhas de aplicativos. Compreender as dependências de aplicativos e seu impacto nos aplicativos. Automatize o processo de recuperação o máximo possível e documente todas as etapas manuais. Teste regularmente seu processo de recuperação de desastres para validar e melhorar o plano.

  • Planeje interações de suporte do Oracle Cloud Infrastructure

    Antes que surja a necessidade, estabeleça um processo para entrar em contato com o suporte do Oracle Cloud Infrastructure.

  • Incorporar práticas do FinOps

    Incorpore práticas FinOps em procedimentos operacionais para garantir que o gerenciamento de custos se torne parte integrante das operações do dia a dia.

Esperar Falhas e Aprender

Falhas inesperadas ocorrerão durante todo o ciclo de vida de um aplicativo. Aprenda com uma falha e melhore os processos de resposta e recuperação.

  • Aprenda com falhas

    Realize análises de causa raiz e ajuste os processos operacionais para respostas melhores e mais ágeis a falhas no futuro.

  • Melhorar continuamente a resposta a incidentes

    Integre as lições aprendidas com falhas e problemas passados com procedimentos de resposta a incidentes existentes para evitar problemas futuros e reduzir o Tempo Médio de Reparo.

  • Prática para o fracasso

    Teste e ensaie periodicamente processos de gerenciamento e recuperação de incidentes para ajustar respostas futuras.

Identificar e Monitorar os Principais Indicadores de Desempenho da Carga de Trabalho

Identifique o desempenho de linha de base e os principais indicadores de desempenho (KPIs) para suas cargas de trabalho. Use os KPIs e logs para monitorar a integridade e o desempenho da carga de trabalho do aplicativo.

Considere usar o seguinte para monitorar o desempenho da carga de trabalho:

  • Implementar rastreamento em torno de chamadas de serviço

    Os dados de desempenho da linha de base podem ajudar a fornecer dados de tendência que você pode usar para identificar proativamente problemas de desempenho antes que eles afetem os usuários.

  • Implementar verificações de integridade

    Execute verificações de integridade e investigações regularmente de fora do aplicativo para identificar a degradação da integridade e do desempenho do aplicativo. As verificações de integridade e sondas devem ser mais do que apenas testes de página estáticos, eles devem refletir a integridade holística da aplicação.

  • Verificar workflows de longa execução

    Pegar problemas antecipadamente pode minimizar a necessidade de reverter todo o fluxo de trabalho ou executar várias transações de compensação.

  • Manter logs de sistema, aplicativo e auditoria

    Utilize um serviço de log centralizado para armazenar e analisar seus logs.

  • Configurar um sistema de aviso prévio

    Identifique os principais indicadores de desempenho (KPIs) da integridade de um aplicativo, como exceções transitórias e latência de chamada remota, e defina valores de limite apropriados para cada um deles. Envie um alerta para operações quando o valor limite for atingido.

  • Treine vários operadores para monitorar o aplicativo e executar etapas de recuperação manuais

    Certifique-se de que sempre haja pelo menos um operador treinado ativo.

  • Crie políticas de dimensionamento que tomem medidas com base em KPIs

    As políticas de dimensionamento ajudam a fornecer desempenho consistente para seus usuários finais durante períodos de alta demanda e ajudam a reduzir seus custos durante períodos de demanda baixa.

Aproveite os Serviços Gerenciados

Use serviços de nuvem gerenciados para garantir que seus recursos de nuvem sejam executados de forma eficiente e econômica. Sua organização de TI pode descarregar o trabalho pesado tático e indiferenciado associado ao gerenciamento de recursos de nuvem para que eles possam se concentrar em suas principais competências.

Identificar Suas Responsabilidades

Os provedores de nuvem documentam por que sua plataforma é responsável e por que o cliente é responsável. Identifique as responsabilidades do cliente e garanta que você tenha procedimentos operacionais para cada uma dessas responsabilidades.