NETERIS CONSULTING

    Oracle Cloud Monitoring Metrics: Monitorización diraria de métricas

    Posted by M. Sanz on 17 agosto 2022
    Find me on:
    Add to Flipboard Magazine.

    Cabecera-2

    En los últimos años, los servicios basados en la nube se están posicionando como la solución definitiva empresarial para el aprovisionamiento de una estructura computacional segura y de un coste inferior a una on premise. Aún estando en la nube, la monitorización diaria de estos servicios sigue siendo clave para la estabilidad y el buen funcionamiento de la estructura.

    En el caso de Oracle Cloud Infrastructure (OCI) nos ofrece una serie de herramientas para poder llevar a cabo esto. En concreto, se puede monitorizar de forma pasiva o activa una serie de métricas de vital importancia para la actividad de negocio.

     

    Imagen1-3

     

    De forma predeterminada, las métricas que suelen abarcar son, por mencionar las más importantes, la CPU, memoria, lectura/escritura en disco en las instancias de computación, envío de paquetes y estado de sesiones en las instancias de networking.

     

    Imagen2

     

    Oracle, por su parte, nos ofrece un servicio de notificación bastante completo en el caso de que las métricas sobrepasen un límite previamente definido.

    Para sacar un mayor provecho, Oracle ofrece dentro de su CLI (command line interface) una serie de end-points que junto con la sintaxis de Monitoring Query Language (MQL) podremos integrar nuestra propia herramienta de monitorización dando un valor añadido, ya se que puede adaptar e integrar a las necesidades actuales para la monitorización diaria.

    ¿Cómo construir un comando para la monitorización de un parámetro?

    Como ejemplo, vamos a mostrar cómo construir un comando para la monitorización de un parámetro sencillo como el del estado de una instancia compute.

    En la consola de OCI dentro de la instancia que queremos monitorizar, vamos al apartado de métricas, seleccionamos en Metric NameSpace: oci_compute_infrastructure_health, en la gráfica de health status hacemos clic en Options y damos a Copy Query (MQL) tal como se ve en la figura de abajo.

     

    Imagen3

     

    Esto nos habrá copiado un texto como el siguiente:

    instance_status[5m]{resourceId = "ocid1.instance.oc1.eu-frankfurt-1..o7a"}.mean()

    Dentro de la estructura del comando de OCI usamos el parámetro monitoring y metric-data summarize-metrics-data.

     

    Imagen4-1

     

     La construcción completa sería la siguiente:

    oci monitoring metric-data summarize-metrics-data --compartment-id ocid1.compartment.oc1..uaq --namespace oci_compute_infrastructure_health --query-text='instance_status[5m]{resourceId = "ocid1.instance.oc1.eu-frankfurt-1..o7a"}.mean()'

     

    El resultado en una salida JSON parametrizada de tal forma que podemos sacar la información que nos interese:

    Imagen5

     

    En este caso, la variable “value” indica 0.0 que indica que la instancia está disponible.

    Con esto se ve cómo podemos monitorizar el estado de una instancia de compute, pero las posibilidades son bastante amplias. De hecho, casi cualquier servicio en la nube de Oracle nos ofrece la posibilidad de ser monitorizado a través del CLI tales como balanceadores de carga, tuneles IPSEC, Fast Connect , Autonomus Database etc.

    Integración con Zabbix/Grafana

    Para que estos datos nos sean útiles, es decir, puedan ser representados de una forma cómoda y monitorizarlos, podemos integrar estos datos en cualquier plataforma de monitorización, en nuestro caso utilizaremos Zabbix.

     

    Imagen6

     

    Zabbix de forma nativa puede procesar comandos y filtrar los resultados. En nuestro caso, nos interesa quedarnos solo con el estatus del balanceador si es OK o ERROR, para eso Zabbix nos ofrece una forma rápida de filtrar datos estructurados en archivos JSON tal como aparece abajo:

     

    Imagen7

    Una vez vinculado el estado del balanceador al dato y eligiendo un intervalo de consulta, tendremos incorporado el valor para poder crear desencadenadores de alertas para que nos avise en el caso de que la instancia del balanceador no esté disponible.

    Este caso que hemos visto puede extenderse a todas las instancias que tengamos en el OCI de Oracle, creado una plataforma única, rápida y accesible para revisar el estado de nuestra infraestructura en OCI.

    En el caso de que queramos aumentar nuestra experiencia visual, podemos beneficiarnos de Grafana, una herramienta de visualización de datos muy integrada hoy en día en este campo.

    Existen Plugin de Grafana que nos permiten conectarnos directamente a las métricas de cualquier instancia OCI, y poder visualizar series temporales.

     

    Imagen8

    Gracias a las facilidades que proporciona Oracle a través de CLI y su integración con otras herramientas, podemos administrar las métricas de nuestra infraestructura de forma sencilla y fiable.

    Los aplicativos y componentes físicos que corren en la capa del cliente son de vital importancia para la continuidad del negocio y con este tipo de herramientas se garantiza la disponibilidad, y predecir o evitar posibles escenarios que lleven a una indisponibilidad del servicio.

    New Call-to-action

     

    Topics: Cloud & Infrastructure, Managed Services, Oracle Cloud Infrastructure (OCI)