Guía del usuario del agente de supervisión de SAP HANA

Google Cloud proporciona un agente de supervisión personalizado que recopila métricas personalizadas de SAP HANA y las envía a Cloud Monitoring, una solución de supervisión integrada en Google Cloud. Mediante Cloud Monitoring, puedes compilar paneles para visualizar tus métricas de SAP HANA y configurar alertas basadas en límites de métricas. Para obtener más información, consulta la documentación de Cloud Monitoring.

Requisitos previos

En esta guía, se supone que implementaste SAP HANA en Google Cloud mediante el método descrito en la Guía de implementación de SAP HANA.

Configura Cloud Monitoring para tu proyecto

Para configurar un lugar de trabajo de Cloud Monitoring para tu proyecto, haz lo siguiente:
  1. En Cloud Console, selecciona tu proyecto de Google Cloud.
    Ir a Cloud Console
  2. En el panel de navegación, selecciona Monitoring.

    Si nunca usaste Cloud Monitoring, entonces, en tu primer acceso a Monitoring en Google Cloud Console, se crea un lugar de trabajo de forma automática y tu proyecto se asocia con ese lugar de trabajo. De lo contrario, si el proyecto no está asociado con un lugar de trabajo, aparecerá un diálogo y podrás crear uno o agregar tu proyecto a un lugar de trabajo existente. Te recomendamos que crees un lugar de trabajo. Después de realizar la selección, haz clic en Agregar.

Configura las funciones de IAM necesarias

De forma predeterminada, el agente de supervisión usa la cuenta de servicio predeterminada de la instancia de tu máquina virtual (VM) de Compute Engine. Esta cuenta de servicio permite que los objetos binarios que se ejecutan en la instancia de VM escriban métricas en Monitoring.

Si eliges usar una cuenta de servicio diferente, debes agregar de forma manual la función de IAM que proporciona esos permisos a tu cuenta de servicio.

Para agregar la función de IAM necesaria a tu cuenta de servicio, sigue estos pasos:

  1. Ve a la página IAM y administración en Cloud Console.

    Ir a la página IAM y administración

  2. Selecciona tu proyecto y haz clic en Continuar.

  3. Identifica la cuenta de servicio a la que le quieres agregar una función.

    • Si la cuenta de servicio aún no se encuentra en la lista de miembros, no tiene ninguna función asignada. Haz clic en Agregar miembro y, luego, ingresa la dirección de correo electrónico de la cuenta de servicio.
    • Si la cuenta de servicio ya se encuentra en la lista de miembros, es porque tiene funciones existentes. Haz clic en la lista desplegable de la función actual para la cuenta de servicio que deseas editar.
  4. Selecciona Supervisión > Supervisión del escritor de métricas en la lista de funciones disponibles.

  5. Haz clic en Agregar o Guardar a fin de aplicar las funciones a la cuenta de servicio.

Instala el agente

Elige una ubicación de implementación

El agente de supervisión se puede ejecutar directamente en uno o más nodos en tu instalación de SAP HANA o de forma indirecta como un servicio en otra instancia de VM. Elige tu ubicación de implementación según el caso práctico.

Descarga e instala el agente

Para descargar e instalar el agente, sigue estos pasos:

  1. Establece una conexión SSH con tu instancia de VM de SAP HANA.
  2. Descarga y ejecuta la secuencia de comandos de instalación:

    sudo curl https://storage.googleapis.com/gcm-ext/gcm_install.sh | bash -x
    Cuando ejecutes el comando anterior, la secuencia de comandos de instalación realizará las siguientes operaciones:

  3. Crea los siguientes directorios:

    • /usr/local/lib/gcm, que contendrá el objeto binario del agente
    • /etc/gcm.d, que contendrá las consultas que deseas que ejecute el agente
    • /var/spool/gcm, que contiene las métricas que recopiló el agente durante el último tiempo. En el futuro, el agente enviará esas métricas a Cloud Monitoring. Después de enviar las métricas, se borran de /var/spool/gcm.
  4. Descarga la versión más reciente del agente y la guarda en /usr/local/lib/gcm/.

  5. Crea un symlink al objeto binario en /usr/local/bin/gcm.

  6. Crea una plantilla de configuración básica, /etc/default/gcm.

  7. Crea un archivo de configuración de daemon, /etc/systemd/system/gcm.service.

  8. Vuelve a cargar las definiciones de servicio systemd.

  9. Habilita el agente de supervisión como un daemon.

Actualiza el agente

Cuando hay una versión nueva disponible, debes actualizar el agente de forma manual.

Verifica si hay una versión nueva del agente

  1. Verifica la versión de tu agente:

    gcm --version
  2. Comprueba si hay actualizaciones disponibles:

    curl https://storage.googleapis.com/gcm-ext/LATEST

Descarga y actualiza el agente

Para actualizar el agente cuando esté disponible una versión nueva, sigue estos pasos:

  1. Detén el proceso del agente:

    sudo systemctl stop gcm
  2. Actualiza el agente con el siguiente comando. Las opciones -C-U omiten la creación del archivo de configuración predeterminado y la definición del servicio systemd de Linux para el agente:

    sudo curl https://storage.googleapis.com/gcm-ext/gcm_install.sh | bash -s -- -C -U

  3. Inicia el agente:

    sudo systemctl start gcm

Configura el agente

Después de ejecutar la secuencia de comandos de instalación, configura las instancias de VM que supervisará el agente y, si lo deseas, las consultas que realizará el agente en tu base de datos.

Define el archivo de configuración

Cuando ejecutaste la secuencia de comandos de instalación, se creó un archivo de plantilla de configuración en la siguiente ubicación:

/etc/default/gcm

Con el archivo de configuración, puedes configurar el agente para que consulte SAP HANA en una o más instancias de VM. Para cada instancia de VM que desees supervisar sigue estos pasos:

  1. Agrega una definición de instancia de VM en el archivo de configuración en instances. Para cada instancia, define el nombre, el host, el puerto, el usuario y la contraseña.
  2. Para permitir que el agente recopile métricas de esa instancia de VM, agrega el nombre de la instancia de VM en enabled_instances.

Define los atributos en la configuración con el siguiente formato:

---
config:
  timestamps_in_output: no
  debug_messages: yes
  skip_default_queries: yes
  queries_directory: /etc/gcm.d
  spool_directory: /var/spool/gcm
  enabled_instances:
    - [INSTANCE_NAME]
    - [INSTANCE_NAME_2]
  project_id: [PROJECT_ID]
  instances:
    - name: [INSTANCE_NAME]
      host: [INSTANCE_IP]
      port: [PORT_NUMBER]
      user: [DB_USERNAME]
      password: [YOUR_PASSWORD]
      type: [INSTANCE_TYPE]
    - name: [INSTANCE_NAME_2]
      host: [INSTANCE_IP_2]
      ...

Los siguientes atributos son necesarios en el archivo de configuración:

  • [PROJECT_ID]: El ID del proyecto de Google Cloud que contiene las instancias de VM que se deben supervisar. Especifica solo un ID del proyecto.
  • [INSTANCE_NAME]: El nombre de la instancia de VM de Compute Engine que deseas supervisar.
  • [INSTANCE_IP]: La IP interna o externa de la instancia de VM de Compute Engine que deseas supervisar. Si es posible, recomendamos usar IP internas, ya que requieren menos configuración que las IP externas y son privadas y seguras de forma predeterminada.
  • [DB_USERNAME]: El usuario de la base de datos de SAP HANA que deseas usar.
  • [PORT_NUMBER]: El número de puerto de tu base de datos de SAP HANA. Por lo general, el número de puerto es 39015 para SAP HANA Express o 30015 para SAP HANA Platform Edition.
  • [YOUR_PASSWORD]: La contraseña de usuario para el usuario de tu base de datos.
  • [INSTANCE_TYPE]: Ingresa sap_hana para este campo.

También tienes la opción de configurar el agente con las siguientes marcas. Estas marcas de parámetros deben establecerse antes del elemento config:

  • timestamps_in_output (booleano): Si estás ejecutando el agente como un daemon en systemd, configúralo como no, ya que systemd proporciona marcas de tiempo. El valor predeterminado es no.
  • debug_messages (booleano): Si está configurado, muestra mensajes de depuración. El valor predeterminado es yes.
  • skip_default_queries (booleano): Omite el conjunto predeterminado de consultas. No afecta las consultas definidas por el usuario. El valor predeterminado es no.
  • queries_directory (string): El directorio en el que se buscan las consultas definidas por el usuario. El valor predeterminado es /etc/gcm.d.
  • spool_directory (string): El directorio en el que se recopilan las métricas en spool. El valor predeterminado es /var/spool/gcm.

Define consultas personalizadas

De forma predeterminada, el agente recopila un conjunto predeterminado de métricas de tu base de datos de SAP HANA. Para obtener descripciones de estas métricas, así como de las consultas que generan las métricas, visita la página sobre las métricas predeterminadas de SAP HANA.

Puedes agregar consultas adicionales si creas uno o más archivos YAML personalizados en el siguiente directorio:

/etc/gcm.d

El siguiente es un archivo de consulta de ejemplo:

- root: by_component
  type: sap_hana
  description: |
      Amount of memory (in MiB) used by service components
  query: |
    SELECT
             HOST AS "host",
             COMPONENT AS "component",
             SUM(USED_MEMORY_SIZE)/1024/1024 AS "mem_used_mb"
        FROM M_SERVICE_COMPONENT_MEMORY
    GROUP BY HOST, COMPONENT;
  columns:
    - type: LABEL
      value_type: STRING
      name: host
    - type: LABEL
      value_type: STRING
      name: component
    - type: GAUGE
      description: Amount of memory (in MiB) used by the service component
      value_type: DOUBLE
      name: mem_used_mb

Cada archivo YAML comprende uno o más elementos que representan los resultados de una determinada consulta de SQL en las métricas de tu base de datos de SAP HANA. Cada elemento tiene los siguientes atributos:

  • root: Un espacio de nombres descriptivo para un determinado grupo de métricas.
  • query: La consulta de SQL.
  • columns: El tipo de datos, el tipo de valor y el nombre de columna para cada campo en la consulta.

    • type: Describe cómo se informan los datos a Monitoring. Puedes configurar type como LABEL, lo que indica que el tipo es un encabezado de columna, o como GAUGE,, uno de los tipos de métricas definidos en la enumeración MetricKind de la API de Monitoring. En este momento, GAUGE es el único tipo de métrica compatible con el agente.
    • value_type: El tipo de valor de la métrica. El valor de este parámetro puede ser cualquiera de los tipos de valor definidos en la enumeración ValueType de la API de Monitoring.
    • name: El nombre de la columna.

A fin de obtener una lista completa de las vistas del sistema que SAP HANA pone a disposición para realizar consultas, visita la página sobre el SQL de SAP HANA y la referencia de vistas del sistema.

Los resultados de las consultas se limitan a 1,000 registros. Usa funciones de agregación de SQL, como SUM, AVG, COUNT, MIN y MAX, para limitar la cantidad de registros que se muestran.

Realiza operaciones básicas

En esta sección, se describe cómo realizar operaciones básicas con el agente de supervisión de SAP HANA. Para obtener una lista completa de opciones configurables, ejecuta gcm --help.

Administra el daemon del agente de supervisión

Cuando ejecutaste la secuencia de comandos de instalación, el instalador creó un archivo de unidad systemd para el agente, lo que te permite administrar el agente con los comandos estándar systemctl. Los siguientes comandos inician, detienen y sondean el estado del agente, respectivamente:

sudo systemctl start gcm
sudo systemctl stop gcm
sudo systemctl status gcm

Para leer los registros que genera systemctl, consulta el contenido del diario systemd mediante el siguiente comando:

sudo journalctl -u gcm

Para ver las últimas líneas que se registraron, puedes agregar la marca -f, que funciona como una canalización hacia tail -f:

sudo journalctl -u gcm -f

Suprime consultas predeterminadas

De forma predeterminada, el agente ejecuta sus consultas predeterminadas además de cualquier consulta personalizada que hayas definido. Para inhabilitar este conjunto de consultas predeterminado, configura la marca skip_default_queries como yes en tu archivo de configuración o configura la marca --no-defaults cuando ejecutes la herramienta de forma manual. Para obtener más información, consulta la sección sobre cómo definir el archivo de configuración.

Recopila y envía métricas de forma manual

A fin de verificar que el agente funcione como se espera, puedes ejecutar comandos de forma manual para ejecutar las consultas, recopilar las métricas resultantes y, luego, enviarlas a Cloud Monitoring. Para ejecutar las consultas y recopilar las métricas resultantes de manera exacta una vez, ejecuta el siguiente comando:

sudo gcm gather

Con este comando, también se envían las métricas recopiladas a Cloud Monitoring.

Visualiza las métricas en Cloud Monitoring

Para mostrar las métricas que recopila Cloud Monitoring en tus propios gráficos y paneles, haz lo siguiente:

  1. En Cloud Console, ve a la página Monitoring.

    Ir a Monitoring

  2. Selecciona Paneles>Crear panel.

  3. Haz clic en Agregar gráfico.

  4. En el menú Tipo de recurso, selecciona Métricas personalizadas.

  5. En el menú Métrica, selecciona by_component/mem_used_mb. Deja los otros campos con sus valores predeterminados. Verás los datos del gráfico en la sección Vista previa del panel.

  6. Haz clic en Guardar.

Ahora, un panel simple muestra métricas en vivo de tu instancia o instancias de VM de SAP HANA.

Solución de problemas

Las consultas predeterminadas fallan

Asegúrate de que el usuario de tu base de datos SAP HANA tenga acceso a las siguientes vistas del sistema SAP HANA:

  • M_CS_ALL_COLUMNS
  • M_CS_TABLES
  • M_EXPENSIVE_STATEMENTS
  • M_HOST_RESOURCE_UTILIZATION
  • M_SERVICE_COMPONENT_MEMORY
  • M_SERVICE_MEMORY

Las métricas no se envían a Cloud Monitoring

Asegúrate de que tu cuenta de servicio de Google Cloud tenga permiso para escribir métricas en Cloud Monitoring. Para obtener más detalles, consulta la sección sobre cómo configurar las funciones de IAM necesarias.

Asistencia

Si tienes problemas con la infraestructura o los servicios de Google Cloud, comunícate con el equipo de asistencia de Google Cloud. Puedes encontrar la información de contacto en la página Descripción general de la asistencia en Google Cloud Console. Si la asistencia de Google Cloud determina que existe un problema en tus sistemas de SAP, te referiremos a la asistencia de SAP.

Por problemas relacionados con el producto SAP, registra una solicitud de asistencia en Asistencia de SAP. SAP evalúa el ticket de asistencia y, si parece ser un problema de infraestructura de Google Cloud, transfiere el ticket al componente BC-OP-LNX-GOOGLE o BC-OP-NT-GOOGLE de Google Cloud.

Requisitos de asistencia

Antes de recibir asistencia para los sistemas SAP y la infraestructura y los servicios de Google Cloud que usan, debes cumplir con los requisitos mínimos del plan de asistencia.

A fin de obtener más información sobre los requisitos mínimos de asistencia para SAP en Google Cloud, consulta lo siguiente:

¿Qué sigue?