Crea políticas de alertas

En esta página, se muestra cómo crear políticas de alertas para clústeres de Anthos en clústeres de equipos físicos.

Antes de comenzar

Debes contar con los siguientes permisos para crear políticas de alertas:

  • monitoring.alertPolicies.create
  • monitoring.alertPolicies.delete
  • monitoring.alertPolicies.update

Tienes estos permisos si tienes alguna de las siguientes funciones:

  • monitoring.alertPolicyEditor
  • monitoring.editor
  • Editor de proyecto
  • Propietario del proyecto

Para verificar tus funciones, ve a la página de IAM en la consola de Google Cloud.

Crea una política: Baja del servidor de la API del clúster

En este ejercicio, crearás una política de alertas para los servidores de la API de Kubernetes de los clústeres de administrador. Con esta política implementada, puedes configurarla para recibir notificaciones siempre que el servidor de API de un clúster de administrador deje de funcionar.

  1. Descarga el archivo de configuración de la política: apiserver-down.json.

  2. Crea la política:

    gcloud alpha monitoring policies create --policy-from-file=POLICY_CONFIG
    

    Reemplaza POLICY_CONFIG por la ruta de acceso del archivo de configuración que acabas de descargar.

  3. Visualiza tus políticas de alertas:

    Console

    1. En la consola de Google Cloud, ve a la página Supervisión.

      Ir a Monitoring

    2. A la izquierda, selecciona Alertas.

    3. En Políticas, puedes ver una lista de tus políticas de alertas.

      En la lista, selecciona Anthos on server API server (critical) para ver los detalles de tu política nueva. En Condiciones, puedes ver una descripción de la política. Por ejemplo:

      Policy violates when ANY condition is met
      Anthos on baremetal API server is up
      

    gcloud

    gcloud alpha monitoring policies list

    El resultado muestra información detallada sobre la política. Por ejemplo:

    ---
    combiner: OR
    conditions:
    - conditionMonitoringQueryLanguage:
        duration: 0s
        query: |-
          { t_0:
              fetch k8s_container
              | metric 'kubernetes.io/anthos/up'
              | filter (resource.container_name =~ 'kube-apiserver')
              | align mean_aligner()
              | group_by 1m, [value_up_mean: mean(value.up)]
              | every 1m
              | group_by [resource.project_id, resource.location, resource.cluster_name],
                  [value_up_mean_aggregate: aggregate(value_up_mean)]
          ; t_1:
              fetch k8s_container::kubernetes.io/anthos/anthos_cluster_info
              | filter (metric.anthos_distribution = 'baremetal')
              | align mean_aligner()
              | group_by [resource.project_id, resource.location, resource.cluster_name],
                  [value_anthos_cluster_info_aggregate:
                     aggregate(value.anthos_cluster_info)]
              | every 1m }
          | join
          | value [t_0.value_up_mean_aggregate]
          | window 1m
          | absent_for 300s
        trigger:
          count: 1
      displayName: Anthos on baremetal API server is up
      name: projects/xxxxxx/alertPolicies/8497323605386949154/conditions/8497323605386950375
    creationRecord:
      mutateTime: '2021-03-17T23:07:18.618778106Z'
      mutatedBy: sharon@example.com
    displayName: Anthos on baremetal API server down (critical)
    enabled: true
    mutationRecord:
      mutateTime: '2021-03-17T23:07:18.618778106Z'
      mutatedBy: sharon@example.com
    name: projects/xxxxxx/alertPolicies/8497323605386949154
    

Crea políticas de alertas adicionales

En esta sección, se proporcionan descripciones y archivos de configuración para un conjunto de políticas de alertas recomendadas.

Para crear una política, sigue los mismos pasos que usaste en el ejercicio anterior:

  1. Para descargar el archivo de configuración, haz clic en el vínculo en la columna de la derecha.

  2. Para crear la política, ejecuta gcloud alpha monitoring policies create.

Disponibilidad de los componentes del plano de control

Nombre de la alerta Descripción Definición de la política de alertas en Cloud Monitoring
Baja del servidor de la API de Anthos on equipos físicos (crítico) El servidor de la API desapareció del descubrimiento de objetivos de métricas apiserver-down.json
Anthos en el programador de equipos físicos (crítico) El programador desapareció del descubrimiento de objetivos de métricas scheduler-down.json
Baja del administrador del controlador de Anthos en equipos físicos (crítico) El administrador del controlador desapareció del descubrimiento de objetivos de métricas controller-manager-down.json

Sistema de Kubernetes

Nombre de la alerta Descripción Definición de la política de alertas en Cloud Monitoring
Bucle de fallas del pod de Anthos equipos físicos (crítico) El pod está en estado de bucle de fallas pod-crash-looping.json
Anthos en un pod de equipos físicos no está listo durante más de una hora (crítico) El pod ha pasado más de una hora en estado no listo pod-not-ready-1h.json
Uso alto del volumen persistente de Anthos en equipos físicos (críticos) Se espera que el volumen persistente reclamado se llene. persistent-volume-usage-high.json
Anthos en el nodo de equipos físicos no está listo durante más de una hora (crítico) El nodo ha pasado más de una hora en estado no listo node-not-ready-1h.json
El uso de Anthos en la cpu de nodo de equipos físicos supera el 80% (crítico). El uso de CPU del nodo supera el 80% node-cpu-usage-high.json
El uso de memoria de Anthos en el nodo de equipos físicos supera el 80% (crítico). El uso de memoria del nodo supera el 80% node-memory-usage-high.json
El uso de Anthos en el disco de nodo de equipos físicos supera el 80% (crítico). El uso del disco del nodo supera el 80% node-disk-usage-high.json

Rendimiento de Kubernetes

Nombre de la alerta Descripción Definición de la política de alertas en Cloud Monitoring
La tasa de recuento de errores de Anthos en el servidor de la API de equipos físicos superó el 10% (crítico). El servidor de la API muestra errores para más del 10% de las solicitudes api-server-error-ratio-10-percent.json
La tasas de error de servidor de la API de Anthos API en equipos físicos supera el 5% (advertencia) El servidor de la API muestra errores para más del 5% de las solicitudes api-server-error-ratio-5-percent.json
El líder de Anthos en equipos físicos etcd cambia con mucha frecuencia (crítico) El líder etcd cambia con demasiada frecuencia etcd-leader-changes-too-frecuente.json
Las propuestas de Anthos en equipos físicos fallaban con demasiada frecuencia (críticas) Las propuestas etcd fallan con demasiada frecuencia etcd-proposals-failed-too-frecuente.json
Anthos en el servidor de equipos físicos de etcd no está en quórum (crítico) El servidor etcd no está en quórum. etcd-server-not-in-qurum.json

Recibe notificaciones

Después de crear una política de alertas, puedes definir uno o más canales de notificación para la política. Hay varios tipos de canales de notificación. Por ejemplo, puedes recibir notificaciones por correo electrónico, un canal de Slack o una app para dispositivos móviles. Puedes elegir los canales que se adapten a tus necesidades.

Para obtener instrucciones sobre cómo configurar canales de notificación, consulta Administra canales de notificaciones.