Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi.

Installez SUSE® Observability

Avant de commencer

Notes supplémentaires pour l’installation sur :

Avant de commencer l’installation de SUSE® Observability :

  • Vérifiez les exigences pour vous assurer que votre environnement Kubernetes correspond à la configuration que vous allez utiliser (recommandée, minimale ou non haute disponibilité).

  • Vérifiez que vous avez les permissions requises.

  • Ajoutez le dépôt SUSE® Observability helm au client helm local :

helm repo add suse-observability https://charts.rancher.com/server-charts/prime/suse-observability
helm repo update

Installez SUSE® Observability

Pour les environnements sans accès à Internet, également appelés environnements isolés physiquement, suivez d’abord ces instructions supplémentaires.

De plus, assurez-vous de suivre les instructions d’installation pour les environnements isolés physiquement chaque fois qu’elles sont présentes pour une étape.

Créer un espace de noms

Commencez par créer l’espace de noms où vous souhaitez installer SUSE® Observability et déployer le secret dans cet espace de noms. Dans notre guide, nous utiliserons l’espace de noms suse-observability :

kubectl create namespace suse-observability

Créez le fichier de configuration values.yaml

Le fichier values.yaml contient toute la configuration nécessaire pour déployer SUSE® Observability, y compris votre clé de licence, l’URL de base, le mot de passe administrateur et le profil de dimensionnement.

Avant de continuer : Assurez-vous d’avoir la dernière version des charts Helm avec helm repo update.

  • Méthode recommandée

  • Méthode héritée (cesser la prise en charge)

La méthode de configuration global.suseObservability est disponible à partir de la version 2.8.0. Pour les versions antérieures, utilisez la méthode héritée.

Créez un fichier values.yaml avec la structure de configuration global.suseObservability :

global:
  # Optional: Override image registry (defaults to registry.rancher.com)
  # Only needed for air-gapped environments or custom registries
  # imageRegistry: "your-private-registry.example.com"

  # Optional: Override storage class (uses cluster default if not set)
  # storageClass: "your-storage-class"

  suseObservability:
    # Required: Your {stackstate-product-name} license key
    license: "YOUR-LICENSE-KEY"

    # Required: Base URL for {stackstate-product-name}
    # Use http://localhost:8080 if ingress is not configured yet
    baseUrl: "https://observability.example.com"

    # Required: Sizing profile
    # Available: trial, 10-nonha, 20-nonha, 50-nonha, 100-nonha,
    #            150-ha, 250-ha, 500-ha, 4000-ha
    sizing:
      profile: "150-ha"

    # Required: Plain text admin password
    adminPassword: "your-password"
    # Instead of adminPassword you can provide a bcrypt hashed password with adminPasswordBcrypt
    # Generate with: htpasswd -bnBC 10 "" "your-password" | tr -d ':\n'
    # adminPasswordBcrypt: "$2a$10$..."

    # Optional: Receiver API key (auto-generated if not provided)
    # receiverApiKey: "your-receiver-api-key"

    # Optional: Pull secret for private registry
    # pullSecret:
    #   username: "registry-user"
    #   password: "registry-pass"

Pour plus d’options de configuration, y compris les paramètres d’affinité, consultez Configurer les affinités Kubernetes.

Cette méthode n’est plus prise en charge. Pour les nouvelles installations, utilisez la méthode recommandée ci-dessus. Pour les installations existantes utilisant cette méthode, consultez le guide de migration pour passer au nouveau format de configuration.

Vous pouvez générer les fichiers de configuration SUSE® Observability en exécutant un chart Helm séparé. Ceci est le chart suse-observability/suse-observability-values :

export VALUES_DIR=.
helm template \
  --set license='<your license>' \
  --set baseUrl='<suse-observability-base-url>' \
  --set sizing.profile='<sizing.profile>' \
  suse-observability-values \
  suse-observability/suse-observability-values --output-dir $VALUES_DIR

Cette commande génère les fichiers $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml, $VALUES_DIR/suse-observability-values/templates/sizing_values.yaml et $VALUES_DIR/suse-observability-values/templates/affinity_values.yaml.

Les mots de passe administrateur SUSE® Observability seront générés automatiquement par la commande ci-dessus et sont affichés en tant que commentaires dans le fichier basicConfig.yaml généré. Les valeurs réelles contiennent les hachages bcrypt de ces mots de passe afin qu’ils soient stockés en toute sécurité dans la release Helm du cluster.

Les valeurs qui peuvent être passées à ce chart sont :

Configuration Valeur Description

Générez la configuration de base

basicConfig.generate

Activer ou désactiver la génération du fichier basicConfig_values.yaml.

Clé API du récepteur

receiverApiKey

La clé API utilisée par SUSE® Observability pour recevoir des données des agents. C’est une clé secrète qui doit rester privée. Si vous l’omettez, une clé aléatoire sera générée pour vous.

URL de base

baseUrl

Le <STACKSTATE_BASE_URL>. L’URL externe pour SUSE® Observability que les utilisateurs et les agents utiliseront pour se connecter. Par exemple https://suse-observability.internal. Si vous n’avez pas encore décidé d’une configuration d’Ingress, utilisez http://localhost:8080. Cela peut être mis à jour plus tard dans le fichier généré.

Nom d’utilisateur et mot de passe**

-u -p

Le nom d’utilisateur et le mot de passe utilisés par SUSE® Observability pour récupérer des images. Pour les environnements isolés physiquement, ceux-ci doivent être le nom d’utilisateur et le mot de passe pour le registre de conteneurs local.

Clé de licence

license

La clé de licence SUSE® Observability.

Mot de passe par défaut

adminPassword

Le mot de passe pour l’utilisateur par défaut (admin) pour accéder à l’interface utilisateur de SUSE® Observability. Alternativement, vous pouvez fournir un mot de passe haché bcrypt en utilisant adminPasswordBcrypt. Une seule des deux options peut être utilisée à la fois.

Registre d’images

imageRegistry

Le registre où les images SUSE® Observability sont hébergées. Si non fourni, la valeur par défaut sera 'registry.rancher.com'. Uniquement nécessaire pour les environnements isolés physiquement ou les registres personnalisés.

Nom d’utilisateur du secret de récupération

pullSecret.username

Le nom d’utilisateur utilisé pour récupérer les images du registre Docker où les images SUSE® Observability sont hébergées. Uniquement nécessaire pour les registres personnalisés.

Mot de passe du secret de récupération

pullSecret.password

Le mot de passe utilisé pour récupérer les images du registre Docker où les images SUSE® Observability sont hébergées. Uniquement nécessaire pour les registres personnalisés.

Générez le fichier de dimensionnement

sizing.generate

Activez ou désactivez la génération du fichier sizing_values.yaml

Profil de taille

sizing.profile

Un des essais, 10-nonha, 20-nonha, 50-nonha, 100-nonha, 150-ha, 250-ha, 500-ha. Sur la base de ces profils, vous pouvez générer le fichier sizing_values.yaml contenant les tailles par défaut pour les ressources SUSE® Observability et la configuration à déployer en mode haute disponibilité ou non haute disponibilité. Par exemple, 10-nonha produit un sizing_values.yaml pour déployer une instance NonHa SUSE® Observability afin d’observer un cluster de 10 nœuds en mode non haute disponibilité. Actuellement, il n’est pas possible de passer d’un environnement non haute disponibilité à un environnement haute disponibilité. Si vous pensez que votre environnement nécessitera l’observation d’environ 150 nœuds, il est préférable d’opter immédiatement pour la haute disponibilité.

Anti-affinité des pods

affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution

Faire en sorte que les répliques des mêmes services de données soient planifiées sur différents nœuds Kubernetes. Applicable uniquement pour les profils HA. Soit true soit false. La valeur par défaut est true - la planification sur différents nœuds est imposée.

Conservez les fichiers basicConfig.yaml et sizing_values.yaml générés en toute sécurité. Vous pouvez réutiliser ces fichiers pour des mises à jour, ce qui permet de gagner du temps et de garantir que SUSE® Observability continue d’utiliser la même clé API. C’est souhaitable car cela signifie que les Agents et autres fournisseurs de données pour SUSE® Observability n’auront pas besoin d’être mis à jour. Vous pouvez régénérer les fichiers indépendamment en utilisant les commutateurs basicConfig.generate=false et sizing.generate=false pour désactiver l’un d’eux tout en conservant la version précédemment générée du fichier dans le output-dir.

Le chart des valeurs SUSE® Observability génère des configurations d’affinité que vous pouvez utiliser avec le chart principal SUSE® Observability pour contrôler le comportement de planification des pods. Consultez la documentation Configurer les affinités Kubernetes pour plus d’informations.

Configurer la classe de stockage (Optionnel)

SUSE® Observability utilise la classe de stockage par défaut du cluster si elle n’est pas spécifiée. Vous pouvez éventuellement remplacer cela en définissant global.storageClass dans votre fichier values.yaml.

  • Méthode recommandée

  • Méthode héritée (Cessée de la prise en charge)

Si vous devez utiliser une classe de stockage spécifique, ajoutez-la à votre fichier values.yaml sous global.storageClass :

global:
  storageClass: "your-storage-class"  # e.g., "local-path" for Rancher local-path provisioner
  suseObservability:
    # ... other configuration

Modifiez le fichier $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml pour ajouter la configuration "storageClass" :

# Source suse-observability-values/templates/baseConfig_values.yaml
global:
  storageClass: "your-storage-class" # Optional: override default storage class

Déployez SUSE® Observability avec Helm

Le déploiement recommandé de SUSE® Observability est une configuration prête pour la production, avec une haute disponibilité et de nombreux services fonctionnant de manière redondante. Si nécessaire, il est également possible d’exécuter SUSE® Observability dans une configuration non redondante, où chaque service n’a qu’une seule réplique. Cette configuration n’est recommandée que pour un environnement de test.

Pour les environnements isolés physiquement, suivez les instructions pour les installations en environnement isolé.

  • Méthode recommandée

  • Méthode recommandée (isolé physiquement)

  • Méthode héritée (Cessée de la prise en charge)

  • Méthode héritée (isolé physiquement)

Pour déployer SUSE® Observability sur Kubernetes :

  1. Avant de déployer :

  2. Déployez la dernière version de SUSE® Observability dans l’espace de noms suse-observability avec la commande suivante :

helm upgrade \
  --install \
  --namespace suse-observability \
  --values values.yaml \
suse-observability \
suse-observability/suse-observability

Alternativement, déployez directement en utilisant les drapeaux --set sans fichier de valeurs :

helm upgrade \
  --install \
  --namespace suse-observability \
  --set global.suseObservability.license="YOUR-LICENSE-KEY" \
  --set global.suseObservability.baseUrl="https://observability.example.com" \
  --set global.suseObservability.sizing.profile="150-ha" \
  --set global.suseObservability.adminPassword='$2a$10$...' \
suse-observability \
suse-observability/suse-observability

Pour déployer SUSE® Observability dans une configuration isolée physiquement sur Kubernetes :

  1. Avant de déployer :

  2. Déployez la dernière version de SUSE® Observability dans l’espace de noms suse-observability avec la commande suivante :

helm upgrade \
  --install \
  --namespace suse-observability \
  --values local-docker-registry.yaml \
  --values values.yaml \
suse-observability \
suse-observability/suse-observability

Cette méthode n’est plus prise en charge. Pour les nouvelles installations, utilisez la méthode recommandée ci-dessus. Pour les installations existantes utilisant cette méthode, consultez le guide de migration pour passer au nouveau format de configuration.

Pour déployer SUSE® Observability sur Kubernetes :

  1. Avant de déployer :

  2. Déployez la dernière version de SUSE® Observability dans l’espace de noms suse-observability avec la commande suivante :

helm upgrade \
  --install \
  --namespace suse-observability \
  --values $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml \
  --values $VALUES_DIR/suse-observability-values/templates/sizing_values.yaml \
  --values $VALUES_DIR/suse-observability-values/templates/affinity_values.yaml \
suse-observability \
suse-observability/suse-observability

Cette méthode n’est plus prise en charge. Pour les nouvelles installations, utilisez la méthode recommandée ci-dessus. Pour les installations existantes utilisant cette méthode, consultez le guide de migration pour passer au nouveau format de configuration.

Pour déployer SUSE® Observability dans une configuration isolée physiquement sur Kubernetes :

  1. Avant de déployer :

  2. Déployez la dernière version de SUSE® Observability dans l’espace de noms suse-observability avec la commande suivante :

helm upgrade \
  --install \
  --namespace suse-observability \
  --values local-docker-registry.yaml \
  --values $VALUES_DIR/suse-observability-values/templates/baseConfig_values.yaml \
  --values $VALUES_DIR/suse-observability-values/templates/sizing_values.yaml \
  --values $VALUES_DIR/suse-observability-values/templates/affinity_values.yaml \
suse-observability \
suse-observability-A.B.C.tgz

Après l’installation, la version SUSE® Observability devrait être listée dans l’espace de noms SUSE® Observability et tous les pods devraient être en cours d’exécution :

# Check the release is listed
helm list --namespace suse-observability

# Check pods are running
# It may take some time for all pods to be installed or available
kubectl get pods --namespace suse-observability

Accédez à l’interface utilisateur SUSE® Observability

Après que SUSE® Observability a été déployé, vous pouvez vérifier si tous les pods sont en cours d’exécution :

kubectl get pods --namespace suse-observability

Lorsque tous les pods sont en cours d’exécution, vous pouvez activer un transfert de port :

kubectl port-forward service/<helm-release-name>-suse-observability-router 8080:8080 --namespace suse-observability

Pour la configuration de l’ingress, créez un fichier ingress_values.yaml et ajoutez le code ci-dessous.

N’oubliez pas de définir un secret pour la configuration TLS. Pour des détails sur la façon de procéder, consultez la documentation de kubectl.

ingress:
  enabled: true
  class: ""
  annotations:
    nginx.ingress.kubernetes.io/proxy-body-size: "50m"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    #if external dns (cloudflare and similars) configure:
    #external-dns.alpha.kubernetes.io/target: <INGRESS_FQDN>
    #external-dns.alpha.kubernetes.io/ttl: "60"
    #end if
  hosts:
  - host: <SUSE_OBSERVABILITY_HOST>
  tls:
  - hosts:
    - <SUSE_OBSERVABILITY_HOST>
    secretName: suse-private-ai-tls
  existingSecret: suse-private-ai-tls
  # Set up your secrets in whichever way feels fit. Check k8s docs for details: https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_secret_tls/

Procédez à une mise à niveau pour appliquer la configuration de l’ingress :

  • Mise à niveau

  • Mise à niveau isolée physiquement

helm upgrade --namespace suse-observability --reuse-values --values ingress_values.yaml suse-observability suse-observability/suse-observability
helm upgrade --namespace suse-observability --reuse-values --values suse-observability-values/templates/ingress_values.yaml suse-observability suse-observability-A.B.C.tgz

Si vous n’utilisez pas de DNS externe, ajoutez à votre machine locale /etc/hosts : <CLUSTER_IP> <SUSE_OBSERVABILITY_HOST>.

SUSE® Observability sera maintenant disponible dans votre navigateur à https://localhost:8080. Connectez-vous avec le nom d’utilisateur admin et le mot de passe par défaut fourni dans le fichier baseConfig_values.yaml.

Les étapes suivantes sont