As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Implemente diagnósticos e solução de problemas do Kubernetes baseados em IA com a integração entre o K8SGpt e o Amazon Bedrock
Ishwar Chauthaiwale, Muskan., e Prafful Gupta, da Amazon Web Services
Resumo
Esse padrão demonstra como implementar o diagnóstico e a solução de problemas do Kubernetes baseados em IA integrando o K8SGpt ao modelo Anthropic Claude v2 disponível no Amazon Bedrock. A solução fornece etapas de análise e correção de linguagem natural para problemas de cluster do Kubernetes por meio de uma arquitetura segura de bastion host. Ao combinar a experiência do K8sGpt Kubernetes com os recursos avançados de linguagem do Amazon Bedrock DevOps , as equipes podem identificar e resolver problemas de cluster rapidamente. Com esses recursos, é possível reduzir o tempo médio de resolução (MTTR) em até 50%.
Esse padrão nativo da nuvem utiliza o Amazon Elastic Kubernetes Service (Amazon EKS) para o gerenciamento do Kubernetes. O padrão implementa as melhores práticas de segurança por meio de funções AWS Identity and Access Management (IAM) adequadas e isolamento de rede. Essa solução é particularmente valiosa para organizações que desejam otimizar suas operações de Kubernetes e aprimorar seus recursos de solução de problemas com a assistência de IA.
Pré-requisitos e limitações
Pré-requisitos
Um ativo Conta da AWS com as permissões apropriadas
AWS Command Line Interface (AWS CLI) instalado e configurado
Um cluster do Amazon EKS
Um host Bastion com as configurações de grupo de segurança necessárias
Limitações
A análise do K8SGpt é limitada pelo tamanho da janela de contexto do modelo Claude v2.
Os limites de taxa da API Amazon Bedrock se aplicam com base nas cotas da sua conta.
Alguns Serviços da AWS não estão disponíveis em todos Regiões da AWS. Para saber a disponibilidade da região, consulte AWS Serviços por região
. Para endpoints específicos, consulte Endpoints e cotas de serviço e escolha o link para o serviço.
Versões do produto
Amazon EKS versão 1.31 ou posterior
Modelo Claude 2 no Amazon Bedrock
Arquitetura
O diagrama a seguir mostra a arquitetura para diagnósticos de Kubernetes baseados em IA usando o K8SGpt integrado ao Amazon Bedrock no. Nuvem AWS

A arquitetura mostra o seguinte fluxo de trabalho:
Os desenvolvedores acessam o ambiente por meio de uma conexão segura com o host bastion. Essa EC2 instância da Amazon serve como ponto de entrada seguro e contém a instalação da interface de linha de comando (CLI) do K8SGpt e as configurações necessárias.
O bastion host, configurado com funções específicas do IAM, estabelece conexões seguras com o cluster Amazon EKS e com os endpoints do Amazon Bedrock. O K8SGpt é instalado e configurado no host bastion para realizar a análise de cluster do Kubernetes.
O Amazon EKS gerencia o plano de controle e os nós de trabalho do Kubernetes, fornecendo o ambiente de destino para a análise do K8SGpt. O serviço é executado em várias zonas de disponibilidade em uma nuvem privada virtual (VPC), o que ajuda a fornecer alta disponibilidade e resiliência. O Amazon EKS fornece dados operacionais por meio da API Kubernetes, permitindo uma análise abrangente de clusters.
O K8SGpt envia dados de análise para o Amazon Bedrock, que fornece o modelo básico Claude v2 (FM) para processamento de linguagem natural. O serviço processa a análise do K8SGpt para gerar explicações legíveis por humanos e oferece sugestões detalhadas de remediação com base nos problemas identificados. O Amazon Bedrock opera como um serviço de IA sem servidor com alta disponibilidade e escalabilidade.
nota
Em todo esse fluxo de trabalho, o IAM controla o acesso entre componentes por meio de funções e políticas, gerenciando a autenticação das interações do bastion host, do Amazon EKS e do Amazon Bedrock. O IAM implementa o princípio do privilégio mínimo e permite a comunicação segura entre serviços em toda a arquitetura.
Automação e escala
As operações do K8sGpt podem ser automatizadas e escaladas em vários clusters do Amazon EKS por meio de várias ferramentas. Serviços da AWS Essa solução oferece suporte à integração contínua e à integração de implantação contínua (CI/CD) usando Jenkins
Ferramentas
Serviços da AWS
AWS Command Line Interface (AWS CLI) é uma ferramenta de código aberto que ajuda você a interagir Serviços da AWS por meio de comandos em seu shell de linha de comando.
O Amazon Elastic Kubernetes Service (Amazon EKS) ajuda você a executar o AWS Kubernetes sem precisar instalar ou manter seu próprio plano de controle ou nós do Kubernetes.
AWS Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus AWS recursos controlando quem está autenticado e autorizado a usá-los.
Outras ferramentas
O K8SGpt
é uma ferramenta de código aberto baseada em IA que transforma o gerenciamento do Kubernetes. Ele atua como especialista em engenharia de confiabilidade de sites virtuais (SRE), examinando, diagnosticando e solucionando automaticamente os problemas do cluster Kubernetes. Os administradores podem interagir com o K8sGpt usando linguagem natural e obter informações claras e práticas sobre o estado do cluster, falhas no pod e falhas no serviço. Os analisadores integrados da ferramenta detectam uma ampla variedade de problemas, desde componentes mal configurados até restrições de recursos, e fornecem explicações e soluções. easy-to-understand
Práticas recomendadas
Implemente controles de acesso seguro usando o AWS Systems Manager Session Manager acesso ao Bastion Host.
Certifique-se de que a autenticação K8sGpt use funções dedicadas do IAM com permissões mínimas de privilégio para interações do Amazon Bedrock e do Amazon EKS. Para obter mais informações, consulte Concessão de privilégio mínimo e nas melhores práticas de segurança na documentação do IAM.
Configure a marcação de recursos, habilite o CloudWatch registro na Amazon para trilhas de auditoria e implemente a anonimização de dados
para informações confidenciais. Mantenha backups regulares das configurações do K8sGpt enquanto configura programações de digitalização automatizadas fora do horário de pico para minimizar o impacto operacional.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Defina o Amazon Bedrock como o provedor de back-end de IA para o K8SGpt. | Para definir o Amazon Bedrock como o provedor de back-end de IA r para
O comando de exemplo usa Para verificar
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Veja uma lista dos filtros disponíveis. | Para ver a lista de todos os filtros disponíveis, use o seguinte AWS CLI comando:
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Escaneie um pod em um namespace específico usando um filtro. | Esse comando é útil para a depuração direcionada de problemas específicos de pods em um cluster Kubernetes, usando os recursos de IA do Amazon Bedrock para analisar e explicar os problemas encontrados. Para escanear um pod em um namespace específico usando um filtro, use o seguinte comando: AWS CLI
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Examine uma implantação em um namespace específico usando um filtro. | Esse comando é útil para identificar e solucionar problemas específicos da implantação, principalmente quando o estado real não corresponde ao estado desejado. Para verificar uma implantação em um namespace específico usando um filtro, use o seguinte comando: AWS CLI
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Examine um nó em um namespace específico usando um filtro. | Para verificar um nó em um namespace específico usando um filtro, use o seguinte comando: AWS CLI
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Obtenha resultados detalhados. | Para obter resultados detalhados, use o seguinte AWS CLI comando:
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Verifique os pods problemáticos. | Para verificar se há pods problemáticos específicos, use o seguinte comando: AWS CLI
Veja a seguir um exemplo da saída esperada desse comando:
| AWS DevOps |
Obtenha insights específicos do aplicativo. | Esse comando é particularmente útil quando:
Para obter insights específicos do aplicativo, use o seguinte comando:
Veja a seguir um exemplo da saída esperada desse comando:
|
Recursos relacionados
Blogs da AWS
AWS documentação
Outros recursos