Tutorial: Configurar o monitoramento para SAP HANA - Amazon CloudWatch

Tutorial: Configurar o monitoramento para SAP HANA

Este tutorial demonstra como configurar o CloudWatch Application Insights para estabelecer o monitoramento para seus bancos de dados SAP HANA. Você pode usar os painéis automáticos do CloudWatch Application Insights para visualizar detalhes do problema, acelerar a solução de problemas e facilitar o tempo médio de resolução (MTTR) para seus bancos de dados SAP HANA.

Ambientes compatíveis

O CloudWatch Application Insights oferece suporte à implantação de recursos da AWS para os sistemas e padrões a seguir. Você fornece e instala o software de banco de dados SAP HANA e o software de aplicação SAP compatível.

  • Banco de dados SAP HANA em uma única instância do Amazon EC2: SAP HANA em uma arquitetura de aumento na escala vertical em nó único, com até 24 TB de memória.

  • Banco de dados SAP HANA em várias instâncias do Amazon EC2: SAP HANA em uma arquitetura de redução da escala em vários nós.

  • Configuração de alta disponibilidade do banco de dados SAP HANA Cross-AZ: SAP HANA com alta disponibilidade configurada em duas zonas de disponibilidade usando clustering SUSE/RHEL.

nota

O CloudWatch Application Insights oferece suporte apenas a ambientes SID HANA únicos. Se houver vários SID HANA conectados, o monitoramento será configurado apenas para o primeiro SID detectado.

Sistemas operacionais compatíveis

O CloudWatch Application Insights para SAP HANA é compatível com a arquitetura x86-64 nos seguintes sistemas operacionais:

  • SuSE Linux 12 SP4 para SAP

  • SuSE Linux 12 SP5 para SAP

  • SUSE Linux 15

  • SuSE Linux 15 SP1

  • SuSE Linux 15 SP2

  • SuSE Linux 15 para SAP

  • SuSE Linux 15 SP1 para SAP

  • SuSE Linux 15 SP2 para SAP

  • SuSE Linux 15 SP3 para SAP

  • SuSE Linux 15 SP4 para SAP

  • SuSE Linux 15 SP5 para SAP

  • RedHat Linux 8.6 para SAP com alta disponibilidade e serviços de atualização

  • RedHat Linux 8.5 para SAP com alta disponibilidade e serviços de atualização

  • RedHat Linux 8.4 para SAP com alta disponibilidade e serviços de atualização

  • RedHat Linux 8.3 para SAP com alta disponibilidade e serviços de atualização

  • RedHat Linux 8.2 para SAP com alta disponibilidade e serviços de atualização

  • RedHat Linux 8.1 para SAP com alta disponibilidade e serviços de atualização

  • RedHat Linux 7.9 para SAP com alta disponibilidade e serviços de atualização

Atributos

O CloudWatch Application Insights para SAP HANA fornece os seguintes recursos:

  • Detecção automática de workload SAP HANA

  • Criação automática de alarmes SAP HANA com base no limite estático

  • Criação automática de alarmes SAP HANA com base na detecção de anomalias

  • Reconhecimento automático de padrões de log SAP HANA

  • Painel de integridade para o SAP HANA

  • Painel de problemas para o SAP HANA

Pré-requisitos

É necessário cumprir os seguintes pré-requisitos para configurar um banco de dados SAP HANA com o CloudWatch Application Insights:

  • SAP HANA: instalar um banco de dados SAP HANA 2.0 SPS05 em execução e acessível em uma instância do Amazon EC2.

  • Usuário do banco de dados do SAP HANA: um usuário de banco de dados com funções de monitoramento deve ser criado no banco de dados SYSTEM e em todos os locatários.

    Exemplo

    Os comandos SQL a seguir criam um usuário com funções de monitoramento.

    su - <sid>adm hdbsql -u SYSTEM -p <SYSTEMDB password> -d SYSTEMDB CREATE USER CW_HANADB_EXPORTER_USER PASSWORD <Monitoring user password> NO FORCE_FIRST_PASSWORD_CHANGE; CREATE ROLE CW_HANADB_EXPORTER_ROLE; GRANT MONITORING TO CW_HANADB_EXPORTER_ROLE; GRANT CW_HANADB_EXPORTER_ROLE TO CW_HANADB_EXPORTER_USER;
  • Python 3.6: instalar o Python 3.6 ou versões posteriores em seu sistema operacional. Use a versão mais recente do Python. Se o Python não for detectado em seu sistema operacional, o Python 3.8 será instalado.

    Consulte installation examples.

  • Pip3: instalar o programa instalador, pip3, em seu sistema operacional. Se o pip3 não for detectado em seu sistema operacional, ele será instalado.

  • Agente do Amazon CloudWatch: verificar que um atendente preexistente do CloudWatch não esteja em execução na sua instância do Amazon EC2. Se você tiver o agente do CloudWatch instalado, certifique-se de remover do seu arquivo de configuração existente a configuração dos recursos que você está usando no CloudWatch Application Insights, para evitar conflito de mesclagem. Para ter mais informações, consulte Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch.

  • AWSHabilitação do Systems Manager: instalar o SSM Agent em suas instâncias, que devem estar habilitadas para o SSM. Para obter mais informações sobre como instalar o SSM Agent, consulte Trabalhar com o SSM Agent no Guia do usuário do AWS Systems Manager.

  • Funções de instância do Amazon EC2: você deve anexar as funções de instância do Amazon EC2 a seguir para configurar seu banco de dados.

    • Deve-se anexar a função do AmazonSSMManagedInstanceCore para habilitar o Systems Manager. Para obter mais informações, consulte exemplos de políticas baseadas em identidade do AWS Systems Manager.

    • Deve-se anexar o CloudWatchAgentServerPolicy para permitir que métricas e logs de instância sejam emitidos por meio do CloudWatch. Para obter mais informações, consulte Criar perfis e usuários do IAM para uso com o agente do CloudWatch.

    • Você deve anexar a seguinte política em linha do IAM à função de instância do Amazon EC2 para leitura da senha armazenada no AWS Secrets Manager. Para obter mais informações sobre políticas em linha, consulte Políticas em linha no Guia do usuário do AWS Identity and Access Management.

      { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:*:*:secret:ApplicationInsights-*" } ] }
  • Grupos de recursos da AWS: para integrar suas aplicações ao CloudWatch Application Insights, crie um grupo de recursos que inclua todos os recursos associados da AWS usados por sua pilha de aplicações. Isso inclui instâncias do Amazon EC2 e volumes do Amazon EBS que executam seu banco de dados SAP HANA. Se houver vários bancos de dados por conta, recomendamos criar um grupo de recursos que inclua os recursos da AWS para cada sistema de banco de dados SAP HANA.

  • Permissões do IAM: para usuários não administradores:

    • é necessário criar uma política do AWS Identity and Access Management (IAM) que permita ao Application Insights criar uma função vinculada ao serviço e anexá-la à sua identidade do usuário. Para obter as etapas para anexar a política, consulte Política do IAM.

    • O usuário deve ter a permissão para criar um segredo no AWS Secrets Manager para armazenar as credenciais do usuário do banco de dados. Para obter mais informações, consulte Exemplo: permissão para criar segredos.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret" ], "Resource": "arn:aws:secretsmanager:*:*:secret:ApplicationInsights-*" } ] }
  • Função vinculada ao serviço: o Application Insights usa funções vinculadas ao serviço do AWS Identity and Access Management (IAM). Ao criar a primeira aplicação com o Application Insights, é criada uma função vinculada ao serviço no console do Application Insights. Para ter mais informações, consulte Usar funções vinculadas ao serviço do CloudWatch Application Insights.

Configurar seu banco de dados SAP HANA para monitoramento

Use as etapas a seguir para configurar o monitoramento para seu banco de dados SAP HANA

  1. Abra o console do CloudWatch.

  2. No painel de navegação esquerdo, em Monitoramento de infraestrutura, escolha Application Insights.

  3. A página Application Insights exibe a lista de aplicações que são monitoradas pelo Application Insights e o status de monitoramento de cada aplicação. No canto superior direito, escolha Add an application (Adicionar uma aplicação).

  4. Na página Specify application details (Especificar os detalhes da aplicação), na lista suspensa em Resource group (Grupo de recursos), selecione o grupo de recursos da AWS que contém seus recursos de banco de dados SAP HANA. Se ainda não tiver criado um grupo de recursos para a aplicação, você poderá criar um escolhendo Create new resource group (Criar grupo de recursos) na lista suspensa Resource group (Grupo de recursos). Para obter mais informações sobre grupos de recursos, consulte o Guia do usuário dos AWS Resource Groups.

  5. Em Monitor CloudWatch Events (Monitorar CloudWatch Events), marque a caixa de seleção para integrar o monitoramento do Application Insights com o CloudWatch Events para obter insights do Amazon EBS, Amazon EC2, AWS CodeDeploy, Amazon ECS, APIs e notificações do AWS Health, Amazon RDS, Amazon S3 e AWS Step Functions.

  6. Em Integrar com o OpsCenter do AWS Systems Manager, marque a caixa de seleção ao lado de Gerar OpsItems do OpsCenter do AWS Systems Manager para ações corretivas para visualizar e receber notificações quando forem detectados problemas nas aplicações selecionadas. Para rastrear as operações executadas para resolver itens de trabalho operacionais (OpsItems) relacionados aos recursos da AWS, forneça um ARN do tópico do SNS.

  7. É possível, opcionalmente, inserir etiquetas para ajudar a identificar e organizar seus recursos. O CloudWatch Application Insights é compatível com os grupos de recursos baseados em tags e em filas do AWS CloudFormation, exceto os grupos do Application Auto Scaling). Para obter mais informações, consulte Tag Editor (Editor de etiquetas) no Guia do usuário do AWS Resource Groups.

  8. Escolha Next (Próximo) para continuar a configurar o monitoramento.

  9. Na página Revisar componentes detectados, são listados os componentes monitorados e suas workloads automaticamente detectadas pelo CloudWatch Application Insights.

    1. Para adicionar workloads a um componente que contenha uma workload de nó único detectada do SAP HANA, selecione o componente e escolha Editar componente.

      nota

      Os componentes que contêm uma workload detectada de vários nós do SAP HANA ou de alta disponibilidade do HANA oferecem suporte a apenas uma workload em um componente.

      
                                    A página de revisão de componentes para monitoramento do console do CloudWatch Application Insights: selecione o componente a ser editado.
    2. Para adicionar uma nova workload, escolha Adicionar nova workload.

      
                                    A seção de edição do componente do console do CloudWatch Application Insights: escolha o botão inferior esquerdo para adicionar a workload.
    3. Quando terminar de editar workloads, escolha Salvar alterações.

  10. Escolha Próximo.

  11. Na página Especificar detalhes do componente, insira o seu nome e senha de usuário.

  12. Revise a configuração de monitoramento de aplicações e escolha Submit (Enviar).

  13. A página de detalhes da aplicação se abrirá, e nela serápossível visualizar o Resumo da aplicação, a lista de Componentes e workloads monitoradas e de Componentes e workloads não monitoradas. Ao selecionar o botão de opção ao lado de um componente ou workload, também será possível visualizar o Histórico de configuração, os Padrões de log e quaisquer Tags criadas. Quando você envia sua configuração, sua conta implanta todas as métricas e alarmes para o sistema SAP HANA, o que pode levar até duas horas.

Gerenciar o monitoramento de seu banco de dados SAP HANA

Você pode gerenciar credenciais de usuário, métricas e caminhos de log para o banco de dados SAP HANA executando as seguintes etapas:

  1. Abra o console do CloudWatch.

  2. No painel de navegação esquerdo, em Monitoramento de infraestrutura, escolha Application Insights.

  3. A página Application Insights exibe a lista de aplicações que são monitoradas pelo Application Insights e o status de monitoramento de cada aplicação.

  4. Em Componentes monitorados, selecione o botão ao lado do nome do componente. Em seguida, escolha Manage monitoring (Gerenciar o monitoramento).

  5. Em EC2 instance group logs (Logs de grupos de instâncias do EC2), é possível atualizar o caminho de log existente, o conjunto de padrões de log e o nome do grupo de logs. Além disso, você pode adicionar até outros três Application logs (Logs de aplicações).

  6. Em Metrics (Métricas), você pode escolher as métricas SAP HANA de acordo com suas necessidades. Os nomes das métricas SAP HANA são prefixados com hanadb. Você pode adicionar até 40 métricas por componente.

  7. Em HANA configuration (Configuração do HANA), insira a senha e o nome de usuário para o banco de dados SAP HANA. Este é o nome de usuário e a senha que o atendente do Amazon CloudWatch usa para se conectar ao banco de dados SAP HANA.

  8. Em Custom alarms (Alarmes personalizados), é possível pode adicionar alarmes extras para serem monitorados pelo CloudWatch Application Insights.

  9. Revise a configuração de monitoramento de aplicações e escolha Submit (Enviar). Quando você envia sua configuração, sua conta atualiza todas as métricas e alarmes do sistema SAP HANA, o que pode levar até duas horas.

Configurar o limite de alarmes

O CloudWatch Application Insights cria automaticamente uma métrica do Amazon CloudWatch para o alarme observar, bem como o limite dessa métrica. O alarme passará para o estado ALARM quando a métrica ultrapassar o limite de um número especificado de períodos de avaliação. Observe que essas configurações não são retidas pelo Application Insights.

Para editar um alarme de uma única métrica, execute as seguintes etapas:

  1. Abra o console do CloudWatch.

  2. No painel de navegação à esquerda, escolha Alarms (Alarmes), All alarms (Todos os alarmes).

  3. Selecione o botão ao lado do alarme criado automaticamente pelo CloudWatch Application Insights. Em seguida, escolha Actions (Ações) e selecione Edit (Editar) no menu suspenso.

  4. Edite os seguintes parâmetros em Metric (Métrica).

    1. Em Statistic (Estatística), escolha uma das estatísticas ou um dos percentis predefinidos ou especifique um percentil personalizado. Por exemplo, p95.45.

    2. Em Period (Período), escolha os períodos de avaliação do alarme. Ao avaliar o alarme, todos cada período é agregado em um único ponto de dados.

  5. Edite os seguintes parâmetros em Conditions (Condições).

    1. Escolha se a métrica deve ser maior que, menor que ou igual ao limite.

    2. Especifique o valor do limite.

  6. Em Additional Configuration (Configuração adicional) edite os parâmetros a seguir.

    1. Em Datapoints to alarm (Datapoints para alarme), especifique o número de pontos de dados, ou períodos de avaliação, que devem estar no estado ALARM para iniciar o alarme. Quando os dois valores correspondem, é criado um alarme que entra no estado ALARM se o número designado de períodos consecutivos for excedido. Para criar um alarme m de n, especifique um número menor para o primeiro valor do que para o segundo valor. Para obter mais informações sobre como a avaliação de alarmes, consulte Avaliação de um alarme.

    2. Para o Missing data treatment (Tratamento de dados ausentes), escolha como deseja que o alarme se comporte quando alguns pontos de dados estiverem ausentes. Para obter mais informações, consulte Configurar como alarmes do CloudWatch tratam dados ausentes.

    3. Se o alarme usar um percentil como estatística monitorada, uma caixa Percentiles with low samples (Percentis com amostras baixas) será exibida. Escolha se deseja avaliar ou ignorar casos com taxas de amostra baixas. Se você escolher ignore (maintain the alarm state) (ignorar (manter o estado do alarme)), o estado do alarme atual será sempre mantido quando o tamanho da amostra for muito baixo. Para obter mais informações sobre percentis com amostras baixas, consulte Alarmes do CloudWatch baseados em percentual e exemplos de poucos dados.

  7. Escolha Próximo.

  8. Em Notification (Notificação), selecione um tópico do SNS para notificar quando o alarme estiver no estado ALARM, OK ou INSUFFICIENT_DATA.

  9. Escolha Create alarm (Criar alarme).

Visualizar e solucionar problemas detectados pelo CloudWatch Application Insights

As seções a seguir fornecem etapas para ajudar a resolver cenários comuns de solução de problemas que ocorrem quando você configura o monitoramento para SAP HANA no Application Insights.

Banco de dados SAP HANA atinge o limite de alocação de memória

Descrição

Sua aplicação SAP que é apoiado por um banco de dados SAP HANA apresenta um funcionamento defeituoso devido à alta pressão de memória, levando à degradação da performance da aplicação.

Resolução

É possível identificar a camada da aplicação que está causando o problema conferindo o painel criado dinamicamente que mostra as métricas relacionadas e os trechos do arquivo de log. No exemplo a seguir, o problema pode ocorrer devido a uma grande carga de dados no sistema SAP HANA.


                        Alocação de memória excedida.

A alocação de memória usada excede o limite de 80% do limite total de alocação de memória.


                        Grupo de logs mostrando falta de memória.

O grupo de logs mostra o esquema BNR-DATA e a tabela IMDBMASTER_30003 ficou sem memória. Além disso, o grupo de logs mostra a hora exata do problema, o limite de localização global atual, a memória compartilhada, o tamanho do código e o tamanho da alocação de reserva OOM.


                        Texto do grupo de logs.

Evento de disco cheio

Descrição

Sua aplicação SAP que é apoiada por um banco de dados SAP HANA deixa de responder, o que leva a uma incapacidade de acessar o banco de dados.

Resolução

É possível identificar a camada do banco de dados que está causando o problema conferindo o painel criado dinamicamente que mostra as métricas relacionadas e os trechos do arquivo de log. No exemplo a seguir, o problema pode ter sido causado por falha do administrador ao habilitar o backup automático de log, o que fez com que o diretório sap/hana/log fosse preenchido.


                        Grupo de logs mostrando falta de memória.

O widget do grupo de log no painel de problemas exibe o evento DISKFULL.


                        Grupo de logs mostrando falta de memória.

O backup SAP HANA parou de ser executado

Descrição

Sua aplicação SAP com suporte de um banco de dados SAP HANA parou de funcionar.

Resolução

É possível identificar a camada do banco de dados que está causando o problema conferindo o painel criado dinamicamente que mostra as métricas relacionadas e os trechos do arquivo de log.

O widget do grupo de log no painel de problemas exibe o evento ACCESS DENIED. Isso inclui informações adicionais, como o bucket do S3, a pasta do bucket do S3 e a região do bucket do S3.


                        Grupo de logs mostrando falta de memória.

Detecção de anomalias para o SAP HANA

Para métricas específicas do SAP HANA, como o número de contagens de threads, o CloudWatch aplica algoritmos estatísticos e de machine learning para definir o limite. Esses algoritmos analisam continuamente métricas do banco de dados SAP HANA, determinam linhas de base normais e apontam anomalias com intervenção mínima do usuário. Os algoritmos geram um modelo de detecção de anomalia, o que gera um intervalo de valores esperados que representam o comportamento normal da métrica.

Os algoritmos de detecção de anomalias consideram a sazonalidade e as mudanças de tendência das métricas. As mudanças de sazonalidade podem ser por hora, dia ou semana, conforme mostrado nos exemplos de uso da CPU do SAP HANA.


                    Grupo de logs mostrando falta de memória.

Depois de criar um modelo, a detecção de anomalias do CloudWatch avaliará continuamente o modelo e fará ajustes para garantir que ele seja o mais preciso possível. Isso inclui treinar novamente o modelo para ajustes caso os valores da métrica evoluam ao longo do tempo ou sofram mudanças repentinas. Também inclui preditores para melhorar os modelos de métricas sazonais, pontiagudas ou esparsas.

Solução de problemas do Application Insights para o SAP HANA

Esta seção fornece etapas para ajudar você a resolver erros comuns retornados pelo painel do Application Insights.

Não é possível adicionar mais de 60 métricas de monitoramento

Erro retornado: Component cannot have more than 60 monitored metrics.

Causa raiz: The current metric limit is 60 monitor metrics per component.

Resolução: remova métricas que não são necessárias para aderir ao limite.

Nenhuma métrica ou alarme SAP aparece após o processo de integração.

Erro retornado: no Run Command do AWS Systems Manager, o AWS-ConfigureAWSPackage falhou

A saída mostra o seguinte erro:

Unable to find a host with system database, for more info rerun using -v

                    Grupo de logs mostrando falta de memória.

Resolução: o nome de usuário e senha podem estar incorretos. Verifique se o nome de usuário e a senha são válidos e execute novamente o processo de integração.

A saída mostra os seguintes erros de instalação:

ERROR: Can not execute `setup.py` since setuptools is not available in the build environment.

ou

[SSL: CERTIFICATE_VERIFY_FAILED]

Resolução: instale o Python usando um dos seguintes exemplos de comandos do SUSE Linux:

Exemplo 1

sudo zypper install -y python36

Exemplo 2

Instale a versão mais recente do Python 3.8.

wget https://www.python.org/ftp/python/3.8.<LATEST_RELEASE>/Python-3.8.<LATEST_RELEASE>.tgz tar xf Python-3.* cd Python-3.*/ sudo zypper install make gcc-c++ gcc automake autoconf libtool sudo zypper install zlib-devel sudo zypper install libopenssl-devel libffi-devel ./configure --with-ensurepip=install sudo make sudo make install sudo su python3.8 -m pip install --upgrade pip setuptools wheel