Dec 16th, 2023: [PT] Sinfonia da Eficiência: AIOps Orquestrando a Excelência Operacional

This post is also available in english.

Antes de explorarmos o AIOps, vamos esclarecer alguns conceitos-chave relacionados a alguns (não todos :sweat_smile:) dos diferentes "Ops":

  • DevOps: DEV + OPS

Você provavelmente já ouviu falar do DevOps. É uma metodologia que integra o trabalho da equipe de desenvolvimento de software (Dev) e a equipe de operações (Ops), facilitando a entrega por meio de colaboração e automação.

  • DataOps: DATA + OPS

Reconhecendo o crescimento contínuo de dados e os desafios associados, você pode entender o DataOps como a aplicação dos princípios e práticas do DevOps aos dados. É um processo para permitir que os dados certos cheguem ao lugar certo gerenciando todo o ciclo de vida dos dados.

  • MLOps: ML + DEV + OPS

Da mesma forma, o MLOps (Operações de Machine Learning) pode ser visto como a aplicação dos princípios do DevOps aos pipelines de machine learning, onde a colaboração entre funções operacionaliza o processo de machine learning, garantindo a confiabilidade e o desempenho dos modelos de ML.

  • AIOps: AI + DEVOPS

O AIOps (Operações de Inteligência Artificial) junta-se a essa mistura de termos e também está relacionado à IA/ML. No entanto, enquanto o MLOps se concentra no desenvolvimento e implementação de modelos de ML, o AIOps se concentra na gestão das operações de TI com a aplicação de capacidades de inteligência artificial (IA) para otimizar os resultados do negócio.

O AIOps não substitui o DevOps! É uma evolução dentro do mesmo ciclo. O AIOps utiliza a inteligência artificial para automatizar, simplificar, acelerar e otimizar os processos de operações de TI.

Então, o que posso fazer com o AIOps?

Tudo começa com dados...

Isso pode incluir:

  • Logs, métricas e traces
  • Dados de desempenho e eventos
  • Dados de infraestrutura e rede
  • Dados de aplicações
  • Dados relacionados a incidentes
  • Dados históricos

Para começar, em (Kibana -> Analytics -> Machine Learning) você verá diferentes capacidades de IA.

Anomaly detection (detecção de anomalias) constrói um modelo de probabilidade com base em padrões de dados, e você pode executar o trabalho continuamente para identificar eventos anormais ao longo do tempo. Com isso, é possível identificar anomalias e gerar alertas para resolver e evitar problemas antes que ocorram.

Exemplos do que você pode fazer incluem, mas não estão limitados a:

  • Identificar anomalias em logs categorizados com base no padrão das mensagens
  • Estimar a probabilidade de um valor de série temporal ocorrer em uma data futura
  • Identificar fields (campos) que influenciam ou contribuem para anomalias

Data Frame analytics é uma análise de várias variáveis que permite analisar seus dados usando algoritmos de classificação, detecção de outliers e regressão. Com ela, você pode prever diferentes classes ou categorias com base em seus campos, detectar pontos com dados significativamente diferentes de outros valores e também estimar as relações entre diferentes campos.

Exemplos do que você pode fazer incluem, mas não estão limitados a:

  • Prever categorias de erro com base em mensagens de logs históricas
  • Estimar as relações entre diferentes métricas para entender como as mudanças em uma métrica podem influenciar outras

Natural Language Processing (Processamento de Linguagem Natural) permite interpretar e manipular texto em linguagem humana. Você pode importar e fazer o deploy de modelos treinados no Elasticsearch; os modelos estarão disponíveis em 'Trained Models', e você pode utilizá-los para enriquecer seus dados.

Exemplos do que você pode fazer incluem, mas não estão limitados a:

  • Enriquecer dados relacionados a incidentes com valores de análise de sentimento
  • Identificar o idioma e traduzir mensagens de tickets de suporte
  • Analisar e correlacionar dados de texto não estruturado, identificando palavras-chave e considerando ambiguidades e contexto

AIOps Labs fornece métodos estatísticos para ajudar a interpretar o comportamento de seus dados. Com a log rate analysis (análise de taxa de logs), você pode identificar razões para aumentos ou diminuições nos volumes de logs; com a log pattern analysis (análise de padrões de logs), você pode encontrar padrões em mensagens de log; e com a change point detection (detecção de pontos de mudança), você pode detectar pontos de mudança em uma métrica.

O AI Assistant, alimentado por um connector para o OpenAI, também pode contribuir com sua estratégia de AIOps. Ele oferece a capacidade de utilizar o OpenAI GPT-4+ para explicar mensagens de erro, sugerir soluções e solicitar, analisar e visualizar seus dados.

Exemplos do que você pode fazer incluem, mas não estão limitados a:

  • Obter informações contextuais. Ao identificar contribuintes estatisticamente significativos para picos de log por meio da análise de taxa de logs, o AI Assistant explica possíveis causas e sugere soluções eficazes.

  • Ter conversas com o AI Assistant. Adicione informações externas à base de conhecimento do assistente e obtenha informações e insights adicionais em tempo real.

Ele executa a summarize function (função de resumo), que é uma função projetada para resumir o conteúdo da conversa, e o resultado será armazenado.

{
  "name": "summarize",
  "args": {
    "id": "log_rate_spike_test",
    "text": "The log rate spike in the PostgreSQL database running in a Kubernetes environment was a test and has been resolved. It should not be considered as an issue in the future.",
    "is_correction": false,
    "confidence": "high",
    "public": true
  }
}

E então, ele executa a função 'recall', uma função projetada para recuperar aprendizados anteriores. O AI Assistant utiliza o ELSER, o motor de busca semântica da Elastic, para recuperar dados do índice de sua base de conhecimento interna e criar respostas RAG (geração aumentada por recuperação).

Observe que o texto agora é diferente e inclui informações atualizadas.

Você também pode integrar dados externos (GitHub issues, arquivos Markdown, tickets do Jira, arquivos de texto, etc.) no Elasticsearch e reindexar seus dados na base de conhecimento do AI Assistant.

POST _reindex
{
    "source": {
        "index": "<InternalDocsIndex>", // nome do índice onde seus documentos internos estão armazenados
        "_source": [
            "<text_field>", // nome do campo que contém o texto de seus documentos internos.
            "<timestamp>", // nome do campo de data/hora, timestamp.
            "namespace",
            "is_correction",
            "public", // verdadeiro ou falso. Se verdadeiro, o documento está disponível para os usuários no espaço definido. Se falso, o documento é restrito ao usuário indicado no campo de user.name.
            "confidence"
        ]
    },
    "dest": {
        "index": ".kibana-observability-ai-assistant-kb-000001",
        "pipeline": ".kibana-observability-ai-assistant-kb-ingest-pipeline" // este pipeline contém o modelo Elastic Learned Sparse EncodeR.
    },
    "script": {
        "inline": "ctx._source.text = ctx._source.remove(\"<text_field>\");ctx._source.namespace=\"<space>\";ctx._source.is_correction=false;ctx._source.public=<public>;ctx._source.confidence=\"high\";ctx._source['@timestamp'] = ctx._source.remove(\"<timestamp>\");ctx._source['user.name'] = \"<user.name>\""
    }
}

Como você pode ver, além do DevOps, você pode incluir o AIOps em sua estratégia de observabilidade com o Elasticsearch e implementar estratégias como essas para aprimorar a eficiência, lidar proativamente com problemas e continuar a melhorar o desempenho e a confiabilidade do seu sistema.

Na Sinfonia da Eficiência, o AIOps orquestra a excelência operacional para que você possa desfrutar de uma temporada de festas harmoniosa.

Boas Festas!

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.