Aggiornamento della versione di Agent di registrazione utilizzando un grafico di Helm

È possibile aggiornare la versione Agent di registrazione utilizzando un grafico Helm.

Completare i seguenti passaggi per aggiornare la versione dell'agente distribuita nel cluster:

Se è stata installata una versione precedente di Agent di registrazione e si è aggiornata la configurazione dell'agente modificando la mappa di configurazione direttamente nel cluster, eseguire una copia della mappa di configurazione dal cluster prima di eseguire il comando helm upgrade. Quando il sito Agent di registrazione viene aggiornato, le modifiche apportate alla mappa di configurazione vengono sovrascritte.

Prima di iniziare

  • Assicurarsi di avere accesso al cluster Kubernetes con le autorizzazioni per creare spazi dei nomi e distribuire l'agente.

  • Eseguire una copia della mappa di configurazione corrente dell'agente di registrazione. Esegui: kubectl get cm logs-agent -n ibm-observe -o yaml > logging-agent-backup-cm.yaml

  • Installa le seguenti CLI:

    • La IBM Cloud CLI per accedere al IBM Cloud e gestire i servizi di IBM Cloud, come la creazione di una chiave API.

    • La CLI Kubernetes per gestire i cluster Kubernetes utilizzando i comandi kubectl. Ulteriori informazioni.

    • La CLI di Openshift per gestire i cluster OpenShift dalla riga di comando. Ulteriori informazioni.

  • Leggere il Agent di registrazione.

  • Controllare le versioni dell'agente disponibili. Per ulteriori informazioni, vedere Verifica delle versioni dell'agente disponibili. Si noti che la versione del diagramma di Helm corrisponderà alla versione dell'agente: ad esempio, se si utilizza la versione 1.3.0 dell'agente, esiste un diagramma di Helm con la versione 1.3.0 che accompagna tale versione.

Passo 1. Aggiornare il file dei valori del grafico Helm per il Agent di registrazione

Completare i passaggi seguenti per modificare il grafico di Helm con la versione dell'agente che si intende distribuire:

  1. Aggiornare il file logs-values.yaml usato per distribuire l'agente con il seguente contenuto:

    Il file logs-values.yaml contiene le configurazioni specifiche dell'installazione.

    Se non si dispone del file logs-values.yaml usato per distribuire l'agente, crearne uno basato sulla configurazione attuale della configmap dell'agente.

    metadata:
      name: "logs-agent"
    image:
      version: "1.6.1"  # Modify the agent version and enter the version that you want to deploy
    
    clusterName: "ENTER_CLUSTER_NAME"     # Enter the name of your cluster. This information is used to improve the metadata and help with your filtering.
    
    additionalMetadata: # add additional metadata, for example:
      region: au-syd
      env: production
      logs-agent-version: 1.6.1     # Enter the agent version that you want to deploy
    
    env:
      # ingestionHost is a required field. For example:
      # ingestionHost: "<logs instance>.ingress.us-east.logs.cloud.ibm.com"
      ingestionHost: "" # required
    
      # If you are using private CSE proxy, then use port number "3443"
      # If you are using private VPE Gateway, then use port number "443"
      # If you are using the public endpoint, then use port number "443"
      ingestionPort: "" # required
    
      iamMode: "TrustedProfile"
      # trustedProfileID - trusted profile id - required for iam trusted profile mode
      trustedProfileID: "" # required if iamMode is set to TrustedProfile
    
    

Passo 2. Aggiornare l'agente

Se si utilizza il 'iamMode come 'IAMAPIKey, l'apikey deve essere presente in un Kubernetes secret chiamato 'logs-agent con il nome della chiave 'IAM_API_KEY. Il segreto può essere creato utilizzando la carta di Helm, includendo l'opzione " --set secret.iamAPIKey=<your iamAPIKey> quando si esegue l'installazione di helm. Se il segreto è stato creato manualmente o se si utilizza il " iamMode=TrustedProfile, non includere questa opzione.

Completa i seguenti passi:

  1. Accedi al cluster. Per ulteriori informazioni, vedere Accesso al cluster.

  2. Aggiornare l'agente.

    Se è stata installata una versione precedente di Agent di registrazione e si è aggiornata la configurazione dell'agente modificando la mappa di configurazione direttamente nel cluster, eseguire una copia della mappa di configurazione dal cluster prima di eseguire il comando helm upgrade. Quando il sito Agent di registrazione viene aggiornato, le modifiche apportate alla mappa di configurazione vengono sovrascritte.

    Se si utilizza il comando 'iamMode=TrustedProfile, il comando completo è:

    helm upgrade <install-name> oci://icr.io/ibm-observe/logs-agent-helm --version <chart-version> --values <PATH>/logs-values.yaml -n ibm-observe
    

    Se si utilizza il comando 'iamMode=IAMAPIKey, il comando completo è:

    helm upgrade <install-name> oci://icr.io/ibm-observe/logs-agent-helm --version <chart-version> --values <PATH>/logs-values.yaml -n ibm-observe --set secret.iamAPIKey=<APIKey-value>
    

    dove:

    • <install-name> è il nome dell'installazione di Helm (logs-agent). È possibile eseguire il seguente comando per ottenere il nome dell'installazione: helm list -n ibm-observe
    • <chart-version> è la versione del grafico del timone. La versione del grafico di Helm deve corrispondere alla versione dell'immagine dell'agente. Per ulteriori informazioni, consultare le versioni del grafico diHelm.
    • <PATH> è il percorso della directory in cui si trova il file 'logs-values.yaml.
    • <APIKey-value> è l'apikey IAM associata al ServiceID.

    Ad esempio, è possibile eseguire il seguente comando dalla directory in cui è disponibile il file 'logs-values.yaml:

    helm upgrade logs-agent oci://icr.io/ibm-observe/logs-agent-helm --version 1.5.0 --values ./logs-values.yaml -n ibm-observe --set secret.iamAPIKey=<secret>
    

    Per vedere il nome dell'agente installato e la versione del grafico, è possibile eseguire helm list -n NAMESPACE.

  3. Riavviare i pod dell'agente.

    Per i cluster Kubernetes, eseguire:

    kubectl -n ibm-observe rollout restart ds/logs-agent
    

    Per i cluster OpenShift, eseguire:

    oc -n ibm-observe rollout restart ds/logs-agent
    
  4. Verificare che tutti i pod siano stati riavviati, nello stato running e che non riportino errori.

    Per i cluster Kubernetes, eseguire:

    kubectl get pods -n ibm-observe
    

    Per i cluster OpenShift, eseguire:

    oc get pods -n ibm-observe
    

Passo 3. Verificare che i registri vengano consegnati alla destinazione di destinazione

Completa i seguenti passi:

  1. Accedere all'interfaccia web dell'istanza IBM Cloud Logs.

  2. Quando l'agente è configurato correttamente, è possibile visualizzare i registri attraverso la vista predefinita del dashboard. Il Agent di registrazione etichetta i record di log con un oggetto kubernetes che include il nome del cluster.

    kubernetes.cluster_name:<CLUSTER_NAME>
    

    È possibile eseguire la query 'kubernetes.cluster_name:<YOUR_CLUSTER_NAME> nell'istanza IBM Cloud Logs per cercare i log generati dal cluster.