Sobre as Melhores Práticas para Operar Implantações em Nuvem com Eficiência
Executar Operações como 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.