Esportazione dei log

Questa pagina è rivolta agli operatori di infrastruttura.

Configura output aggiuntivo con fluent-bit

Puoi esportare i log in altre destinazioni oltre a Loki in esecuzione in un cluster. Consulta l'elenco delle destinazioni supportate. Questa impostazione può essere configurata per cluster o a livello globale.

Configurazione globale

  1. Crea una mappa di configurazione nello spazio dei nomi anthos-management-center con l'etichetta logmon: system_logs. La configurazione di output aggiuntiva ha la stessa sintassi dei plug-in di output di fluent e deve essere aggiunta al file output.conf nel campo data. Vedi i file di configurazione di esempio.

    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: anthos-management-center
      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. Esegui il comando seguente per aprire la risorsa personalizzata Observability in un editor a riga di comando:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n anthos-management-center edit observability default
    
  3. Nella risorsa personalizzata Observability, aggiungi il campo additionalSink sotto il campo spec/logging.

    apiVersion: managementcenter.anthos.cloud.google.com/v1alpha1
    kind: Observability
    metadata:
      # Don't change the name
      name: default
      # Don't change the namespace
      namespace: anthos-management-center
    spec:
      enabled: true
      logging:
        additionalSink:
          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. Per salvare le modifiche nella risorsa personalizzata Observability, salva ed esci dall'editor della riga di comando.

Configurazione per cluster

  1. Escludi il cluster dalla configurazione globale aggiungendo il nome del cluster all'elenco spec/logging/additionalSink/clusterSelector/exclude nella risorsa personalizzata Observability.

    apiVersion: managementcenter.anthos.cloud.google.com/v1alpha1
    kind: Observability
    metadata:
      # Don't change the name
      name: default
      # Don't change the namespace
      namespace: anthos-management-center
    spec:
      enabled: true
      logging:
        additionalSink:
          clusterSelector:
            exclude:
            - cluster-name
          ...
    
  2. Crea una mappa di configurazione nello spazio dei nomi kube-system con l'etichetta logmon: system_logs. La configurazione di output aggiuntiva ha la stessa sintassi dei plug-in di output di fluent e deve essere aggiunta al file output.conf nel campo data. Vedi i file di configurazione di esempio.

    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
    
  3. Esegui il comando seguente per aprire la risorsa personalizzata LogMon in un editor a riga di comando:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  4. Nella risorsa personalizzata LogMon, aggiungi il campo additionalOutput sotto il 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:
            - ...
            - ...
    
  5. Per salvare le modifiche nella risorsa personalizzata LogMon, salva ed esci dall'editor della riga di comando.