Mise à jour de la version Agent de journalisation à l'aide d'une carte Helm

Vous pouvez mettre à jour la version Agent de journalisation en utilisant un graphique Helm.

Effectuez les étapes suivantes pour mettre à niveau la version de l'agent déployé dans le cluster :

Si vous avez installé une version précédente de Agent de journalisation et que vous avez mis à jour la configuration de l'agent en modifiant la carte de configuration directement dans le cluster, faites une copie de votre carte de configuration à partir du cluster avant d'exécuter la commande helm upgrade. Lorsque le site Agent de journalisation est mis à jour, toutes les modifications apportées à la carte de configuration sont écrasées.

Avant de commencer

  • Assurez-vous d'avoir accès au cluster Kubernetes avec les autorisations nécessaires pour créer des espaces de noms et déployer l'agent.

  • Prendre une copie de la carte de configuration actuelle de l'agent de journalisation. Exécutez : kubectl get cm logs-agent -n ibm-observe -o yaml > logging-agent-backup-cm.yaml

  • Installez les interfaces de ligne de commande suivantes :

    • Le CLI IBM Cloud CLI pour se connecter au IBM Cloud et gérer les services IBM Cloud tels que la création d'une clé API.

    • Le CLI Kubernetes pour gérer les clusters Kubernetes en utilisant les commandes kubectl. En savoir plus.

    • La CLI d'Openshift pour gérer les clusters 'OpenShift à partir de la ligne de commande. En savoir plus.

  • En savoir plus sur le Agent de journalisation

  • Vérifiez les versions de l'agent disponibles. Pour plus d'informations, voir Vérification des versions disponibles de l'agent. Notez que la version du diagramme Helm correspond à la version de l'agent - par exemple, si vous utilisez la version 1.3.0 de l'agent, il y a un diagramme Helm avec la version 1.3.0 qui accompagne cette version.

Étape 1. Mettre à jour le fichier des valeurs du graphique Helm pour le Agent de journalisation

Effectuez les étapes suivantes pour modifier le diagramme Helm avec la version de l'agent que vous prévoyez de déployer :

  1. Mettez à jour le fichier nommé logs-values.yaml que vous avez utilisé pour déployer l'agent avec le contenu suivant :

    Le fichier logs-values.yaml contient les configurations spécifiques à votre déploiement.

    Si vous n'avez pas le fichier logs-values.yaml que vous avez utilisé pour déployer l'agent, créez-en un basé sur la configuration actuelle de l'agent.

    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
    
    

Étape 2. Mise à jour de l'agent

Si vous utilisez le " iamMode comme " IAMAPIKey, l'apikey doit être présent dans un secret Kubernetes nommé " logs-agent avec le nom de clé " IAM_API_KEY. Le secret peut être créé à l'aide de la carte Helm en incluant l'option " --set secret.iamAPIKey=<your iamAPIKey> lors de l'installation de Helm. Si le secret a été créé manuellement ou si vous utilisez le " iamMode=TrustedProfile, n'incluez pas cette option.

Procédez comme suit :

  1. Connectez-vous au cluster. Pour plus d'informations, voir Accéder à votre cluster.

  2. Mettre à jour l'agent.

    Si vous avez installé une version précédente de Agent de journalisation et que vous avez mis à jour la configuration de l'agent en modifiant la carte de configuration directement dans le cluster, faites une copie de votre carte de configuration à partir du cluster avant d'exécuter la commande helm upgrade. Lorsque le site Agent de journalisation est mis à jour, toutes les modifications apportées à la carte de configuration sont écrasées.

    Si vous utilisez la commande 'iamMode=TrustedProfile, la commande complète est la suivante :

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

    Si vous utilisez la commande 'iamMode=IAMAPIKey, la commande complète est la suivante :

    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>
    

    où :

    • <install-name> est le nom de l'installation Helm (logs-agent). Vous pouvez exécuter la commande suivante pour obtenir le nom de l'installation : helm list -n ibm-observe
    • <chart-version> est la version du diagramme de barre. La version de la carte Helm doit correspondre à la version de l'image de l'agent. Pour plus d'informations, voir les versions des cartesHelm
    • <PATH> est le chemin d'accès au répertoire où se trouve le fichier 'logs-values.yaml
    • <APIKey-value> est l'apikey IAM associé au ServiceID.

    Par exemple, vous pouvez exécuter la commande suivante à partir du répertoire où se trouve le fichier " 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>
    

    Pour voir le nom de l'agent installé et la version du tableau, vous pouvez exécuter helm list -n NAMESPACE.

  3. Redémarrer les agents.

    Pour les clusters Kubernetes, exécutez :

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

    Pour les clusters OpenShift, exécutez :

    oc -n ibm-observe rollout restart ds/logs-agent
    
  4. Vérifier que tous les pods ont redémarré, qu'ils sont dans l'état running et qu'ils ne signalent pas d'erreurs.

    Pour les clusters Kubernetes, exécutez :

    kubectl get pods -n ibm-observe
    

    Pour les clusters OpenShift, exécutez :

    oc get pods -n ibm-observe
    

Étape 3. Vérifier que les journaux sont livrés à votre destination cible

Procédez comme suit :

  1. Allez dans l'interface web de votre instance IBM Cloud Logs...

  2. Lorsque votre agent est correctement configuré, vous pouvez consulter les journaux dans la vue par défaut du tableau de bord. L'Agent de journalisation marque les enregistrements de log avec un objet kubernetes qui inclut le nom du cluster.

    kubernetes.cluster_name:<CLUSTER_NAME>
    

    Vous pouvez exécuter la requête " kubernetes.cluster_name:<YOUR_CLUSTER_NAME> dans votre instance IBM Cloud Logs pour rechercher les journaux générés par votre cluster.