Observar clústeres

En esta página, se explica cómo usar las opciones de registro y supervisión disponibles con el modo privado de Anthos.

Esta página está destinada a los administradores de la plataforma.

Supervisa paneles

Los paneles de muestra para la supervisión de métricas de clústeres y nodos están disponibles en el centro de administración de Anthos.

Pestaña Monitoring

El botón Panel de supervisión de Grafana abre la aplicación de Grafana alojada en el clúster de administrador. El acceso a Grafana se controla a través del Centro de administración. Si accediste al centro de administración, no se requiere acceso adicional.

Después de acceder, encontrará una lista de paneles de muestra disponibles para la demostración:

Paneles de Grafana

Registros de consultas

El botón Registros Loki de Grafana abre el explorador de Grafana, en la que se pueden consultar los registros, incluidos los registros del sistema de Kubernetes. Los registros se etiquetan como se describe en la siguiente sección.

Etiquetas de registro

Tipo de registro Etiquetas
Registros de contenedores
  • cluster=CLUSTER_NAME
  • resources=k8s_container
  • namespace=NAMESPACE_NAME
  • node=NODE_NAME
  • pod=POD_NAME
  • container=CONTAINER_NAME
  • Otras etiquetas de Kubernetes
Registros del nodo de journald
  • cluster=CLUSTER_NAME
  • resources=k8s_node
  • node=NODE_NAME
  • identifier=SYSLOG_IDENTIFIER
  • machine=MACHINE_ID
Registros de auditoría
  • cluster=CLUSTER_NAME
  • resource=k8s_audit
  • level=LEVEL
  • vert=VERB

Todas las etiquetas de Kubernetes y una etiqueta del clúster se incluyen como etiquetas de registro.

Consultas de muestra

  • En la siguiente consulta, se seleccionan los registros de contenedores:

    {cluster="admin", namespace="kube-system", resources="k8s_container", container="kube-apiserver"}
    

    Registros de contenedores de consultas de Grafana

  • En la siguiente consulta, se seleccionan los registros de nodos de journald:

    {cluster="admin", resources="k8s_node"}
    

    Registros del nodo de consulta de Grafana

  • En la siguiente consulta, se seleccionan los registros de auditoría:

    {cluster="admin", resources="k8s_audit"}
    

    Registros de auditoría de consultas de Grafana

Configura una StorageClass personalizada

El modo privado de Anthos usa PersistentVolumeClaims a fin de aprovisionar espacio para almacenar métricas, registros, paneles y alertas. Cuando creas un clúster, este crea de forma automática un recurso personalizado de LogMon. Para anular el StorageClass predeterminado, completa los siguientes pasos:

  1. Ejecuta el siguiente comando para abrir tu recurso personalizado de LogMon en un editor de línea de comandos:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  2. En el recurso personalizado de LogMon, actualiza el storageClassName en el campo spec:

    apiVersion: addons.gke.io/v1alpha1
    kind: Logmon
    metadata:
      # Don't change the name
      name: logmon-default
      # Don't change the namespace
      namespace: kube-system
    spec:
      system_logs:
        outputs:
          default_loki:
            deployment:
              storageClassName: anthos-system # configure the new storage class here 
      system_metrics:
        outputs:
          default_prometheus:
            deployment:
              storageClassName: anthos-system # configure the new storage class here
    
  3. Para guardar los cambios en el recurso personalizado de LogMon, guarda el editor de línea de comandos y sal de él.

Configura el tamaño de almacenamiento

Cuando creas un clúster, este crea de forma automática un recurso personalizado de LogMon. Para anular el tamaño de almacenamiento de las métricas, los registros, los paneles y las alertas, completa los siguientes pasos:

  1. Ejecuta el siguiente comando para abrir tu recurso personalizado de LogMon en un editor de línea de comandos:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  2. En el recurso personalizado de LogMon, actualiza el storageSize en el campo spec:

    apiVersion: addons.gke.io/v1alpha1
    kind: Logmon
    metadata:
      # Don't change the name
      name: logmon-default
      # Don't change the namespace
      namespace: kube-system
    spec:
      system_logs:
        outputs:
          default_loki:
            deployment:
              components:
                loki:
                   storageSize: 20Gi # configure the new storage size for logs here
      system_metrics:
        outputs:
          default_prometheus:
            deployment:
              components:
                alertmanager:
                   storageSize: 1Gi # configure the new storage size for alerts here
                grafana:
                   storageSize: 1Gi # configure the new storage size for dashboards here
                prometheus:
                   storageSize: 20Gi # configure the new storage size for metrics here
    ````
    
  3. Para guardar los cambios en el recurso personalizado de LogMon, guarda el editor de línea de comandos y sal de él.

Configura el tiempo de retención

Para configurar el tiempo de retención de los registros de los agentes de Prometheus y Loki que se ejecutan en el clúster, completa los siguientes pasos:

  1. Ejecuta el siguiente comando para abrir tu recurso personalizado de LogMon en un editor de línea de comandos:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  2. En el recurso personalizado de LogMon, actualiza el retentionTime en el campo spec:

    apiVersion: addons.gke.io/v1alpha1
    kind: Logmon
    metadata:
      # Don't change the name
      name: logmon-default
      # Don't change the namespace
      namespace: kube-system
    spec:
      system_logs:
        outputs:
          default_loki:
            deployment:
              retentionPolicy:
                retentionTime: 720h # configure the new retention time for logs here
      system_metrics:
        outputs:
          default_prometheus:
            deployment:
              retentionPolicy:
                retentionTime: 720h # configure the new retention time for metrics here
    
  3. Para guardar los cambios en el recurso personalizado de LogMon, guarda el editor de línea de comandos y sal de él.

Configura los resultados adicionales de fluent-bit

Se admite la exportación de registros a otros destinos, además de Loki que se ejecuta en el clúster. Consulta la lista de destinos admitidos. Para configurar el destino de salida de los registros adicional, completa los siguientes pasos:

  1. Crea un ConfigMap en el espacio de nombres kube-system con la etiqueta logmon: system_logs. La configuración de salida adicional tiene la misma sintaxis que los complementos de salida de fluent-bit y se debe agregar al archivo output.conf en el campo data. Consulta los archivos de configuración de muestra.

    apiVersion: v1
    kind: ConfigMap
    metadata:
      # The name should match the configmap name specified in step 3.
      name: <customized-system-logs-fluent-bit-output-config>
      # Don't change the namespace
      namespace: kube-system
      labels:
        # This label is required.
        logmon: system_logs
    data:
      # The file name must be output.conf
      output.conf: |
        # Add a customized fluent-bit output plugin configuration here
    
  2. Ejecuta el siguiente comando para abrir tu recurso personalizado de LogMon en un editor de línea de comandos:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  3. En el recurso personalizado de LogMon, agrega el campo additionalOutput debajo del campo spec/system_logs/outputs.

    apiVersion: addons.gke.io/v1alpha1
    kind: Logmon
    metadata:
      # Don't change the name
      name: logmon-default
      # Don't change the namespace
      namespace: kube-system
    spec:
      system_logs:
        outputs:
          additionalOutput:
            fluentbitConfigmaps:
            # The name should match the configmap name created in step 1.
            - "<customized-system-logs-fluent-bit-output-config>"
            # Scheme: []v1.VolumeMount. Add volumeMounts if necessary
            volumeMounts:
            - ...
            - ...
            # Scheme: []v1.Volume. Add volumes if necessary
            volumes:
            - ...
            - ...
    
  4. Para guardar los cambios en el recurso personalizado de LogMon, guarda el editor de línea de comandos y sal de él.