Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Usa métricas del controlador de políticas

En esta página, se explica cómo usar las métricas para supervisar el controlador de políticas.

El controlador de políticas incluye varias métricas relacionadas con el uso de políticas. Por ejemplo, hay métricas que registran la cantidad de restricciones y plantillas de restricciones y la cantidad de incumplimientos de auditoría detectados. Para crear y registrar estas métricas, el controlador de políticas usa OpenCensus. Puedes configurar el controlador de políticas para exportar estas métricas a Prometheus o Cloud Monitoring. La configuración predeterminada para exportar métricas exporta las métricas a Prometheus y Cloud Monitoring.

Configura la exportación de métricas

En las versiones 1.12.0 y posteriores de Anthos Config Management, puedes configurar cómo el controlador de políticas exporta sus métricas. Puedes elegir entre Prometheus, Cloud Monitoring, ambos o ninguno cuando instalas el controlador de políticas. De forma predeterminada, el controlador de políticas intenta exportar métricas a Prometheus y Cloud Monitoring.

En las versiones de Anthos Config Management anteriores a la 1.12.0, el controlador de políticas solo exporta métricas a Prometheus.

Exporta métricas a Cloud Monitoring

Si el controlador de políticas se ejecuta en un entorno de Google Cloud que tiene una cuenta de servicio predeterminada, el controlador de políticas exporta de forma automática las métricas a Cloud Monitoring en las versiones 1.12.0 y Anthos Config Management más tarde.

Si GKE Workload Identity o Fleet Workload Identity están habilitados, completa los siguientes pasos:

  1. Vincula la cuenta de servicio de Kubernetes gatekeeper-admin en el espacio de nombres gatekeeper-system a una cuenta de servicio de Google con el rol de escritor de métricas:

    gcloud iam service-accounts add-iam-policy-binding \
        --role roles/iam.workloadIdentityUser \
        --member "serviceAccount:PROJECT_ID.svc.id.goog[gatekeeper-system/gatekeeper-admin]" \
        GSA_NAME@PROJECT_ID.iam.gserviceaccount.com
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID de tu proyecto
    • GSA_NAME: Es la cuenta de servicio de Google con la función de IAM de escritor de métricas de Monitoring (roles/monitoring.metricWriter).

    Esta acción requiere el permiso iam.serviceAccounts.setIamPolicy en el proyecto.

  2. Anota la cuenta de servicio de Kubernetes mediante la dirección de correo electrónico de la cuenta de servicio de Google:

    kubectl annotate serviceaccount \
        --namespace gatekeeper-system \
        gatekeeper-admin \
        iam.gke.io/gcp-service-account=GSA_NAME@PROJECT_ID.iam.gserviceaccount.com
    
  3. Reinicia el Pod gatekeeper-controller-manager:

    kubectl rollout restart deployment gatekeeper-controller-manager -n gatekeeper-system
    

Para ver ejemplos sobre cómo ver estas métricas, consulta Lee métricas de OpenCensus en Cloud Monitoring.

Exportar métricas a Prometheus

El controlador de políticas exporta las métricas para Prometheus en el puerto 8675 de forma predeterminada. También puedes configurar Cloud Monitoring para extraer métricas personalizadas de Prometheus. Para obtener más información, consulta Prometheus administrado.

Ver métricas

Las métricas del controlador de políticas se exportan a tu proyecto de Cloud Monitoring en formato Prometheus. Como resultado, puedes consultar las métricas mediante la API de Cloud Monitoring y un panel en la consola de Google Cloud. Puedes editar este panel para satisfacer tus necesidades operativas y empresariales.

Para consultar la API de Cloud Monitoring, usa el lenguaje de consulta de Prometheus (PromQL) (el lenguaje de consulta de facto para las métricas de Kubernetes) o el lenguaje de consulta de Monitoring (MQL) (el lenguaje de consulta de métricas propiedad de Google).

Para crear el panel del controlador de políticas, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Paneles.

    Ir a Paneles

  2. En la página Descripción general de los paneles, haz clic en la pestaña Biblioteca de muestra. Esta pestaña te muestra todos los paneles que puedes importar.

  3. En la columna Categorías, selecciona Anthos Config Management.

  4. En la tabla Muestras de Anthos Config Management, selecciona la casilla de verificación Controlador de políticas.

  5. Haz clic en Importar.

  6. Para crear el panel, haz clic en Confirmar en la ventana de confirmación.

Para ver y editar el panel del controlador de políticas, sigue estos pasos:

  1. En la página Descripción general de los paneles, selecciona la pestaña Lista de paneles.
  2. Selecciona el panel Policy Controller.
  3. Para personalizar el panel, haga clic en Editar panel.
  4. Realice los cambios necesarios y haga clic en Guardar. Para obtener más información sobre la personalización de paneles, consulta Filtra un panel en la documentación de Cloud Monitoring.

Crea alertas

Para recibir notificaciones cuando tus métricas alcancen ciertos umbrales, crea políticas de alertas en Cloud Monitoring.

Integración con terceros

Con la API de Cloud Monitoring, cualquier herramienta de observabilidad de terceros puede transferir métricas del controlador de políticas.

Por ejemplo, si usas los paneles de Grafana, agrega la API de Cloud Monitoring como la fuente de datos en Grafana. Para obtener más información, consulta Google Cloud Monitoring en la documentación de Grafana.

Métricas disponibles

Si el controlador de políticas está habilitado en el clúster, puedes consultar las siguientes métricas (todas con el prefijo OpenCensus/):

Nombre Tipo Etiquetas Descripción
OpenCensus/audit_duration_seconds Acumulativo Distribución de la duración del ciclo de auditoría
OpenCensus/audit_last_run_time Indicador La marca de tiempo de época desde el último tiempo de ejecución de auditoría, expresado como segundos de punto flotante
OpenCensus/constraint_template_ingestion_count Acumulativo status Cantidad total de acciones de transferencia de las plantillas de restricciones
OpenCensus/constraint_template_ingestion_duration_seconds Acumulativo status Distribución de la duración de transferencia de las plantillas de restricciones
OpenCensus/constraint_templates Indicador status Cantidad actual de plantillas de restricciones
OpenCensus/validation_request_count Contador admission_status Recuento de solicitudes de admisión del servidor de API
OpenCensus/validation_request_duration_seconds Acumulativo admission_status Distribución de la duración de las solicitudes de admisión
OpenCensus/violations Indicador enforcement_action Cantidad de incumplimientos de auditoría detectados en el último ciclo de auditorías
OpenCensus/watch_manager_intended_watch_gvk Indicador Cantidad de GroupVersionKinds únicos que el controlador de políticas debe observar. Esta métrica es una combinación de restricciones y recursos sincronizados. No implementado por el momento
OpenCensus/watch_manager_watched_gvk Indicador Cantidad de GroupVersionKinds únicos que el controlador de políticas observa en realidad. Esta métrica tiene como objetivo converger la igualdad de OpenCensus/watch_manager_Intents_watch_gvk. No implementado por el momento

¿Qué sigue?