Préparation de l'installation des opérateurs de stockage de données sur Linux x86_64

Pour installer un magasin de données tiers, votre cluster doit avoir accès à la version prise en charge de l'image du magasin de données.

Pour connaître les versions compatibles du magasin de données pour votre déploiement d' Instana, installez le plug-in kubectl et exécutez la commande kubectl instana --version. Pour plus d'informations, consultez la rubrique consacrée au plug-in « Instana » sur kubectl.

Préparation de l'installation en ligne

Préparez l'installation des opérateurs de magasin de données dans un environnement en ligne.

  1. Installez Helm.

    curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
    chmod 700 get_helm.sh
    ./get_helm.sh
     
  2. Assurez-vous que le service « cert-manager », qui sert par défaut à provisionner automatiquement le secret, est bien installé dans votre cluster. Pour l'installer cert-manager, exécutez la commande suivante :

    kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.20.2/cert-manager.yaml
     
  3. Veillez à définir une classe de stockage par défaut sur le cluster sur lequel vous installez les magasins de données. Vous avez besoin d'une classe de stockage avec le mode d'accès ReadWriteMany (RWX) ou ReadWriteOnce (RWO). Veillez à mettre à jour la classe de stockage que vous avez définie dans votre cluster avec un accès RWX ou RWO.

    Pour vérifier si une classe de stockage par défaut est définie dans votre cluster, exécutez la commande suivante:

    kubectl get storageclass -o=jsonpath='{.items[?(@.metadata.annotations.storageclass\.kubernetes\.io\/is-default-class=="true")].metadata.name}'
     

    Si la commande ne renvoie pas de valeur, vous devez définir une classe de stockage par défaut en exécutant la commande suivante:

    kubectl patch storageclass <storageclass_name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
     
  4. Ajoutez et mettez à jour le référentiel Helm pour les opérateurs tiers. Utilisez votre clé de téléchargement d' Instana comme mot de passe.

    helm repo add instana https://artifact-public.instana.io/artifactory/rel-helm-customer-virtual --username=_ --password=<download_key>
     
    helm repo update
     

Préparation de l'installation hors ligne

Préparez une installation hors ligne (avec isolation physique).

  1. Préparez un hôte bastion pouvant accéder à Internet et à votre propre registre d'images interne.

  2. Installez Helm sur l'hôte bastion.

    curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
    chmod 700 get_helm.sh
    ./get_helm.sh
     
  3. Ajoutez les référentiels de chartes Helm de l'opérateur.

    helm repo add instana https://artifact-public.instana.io/artifactory/rel-helm-customer-virtual --username=_ --password=<download_key>
    helm repo update
     
  4. Téléchargez les chartes Helm .

    helm pull instana/ibm-clickhouse-operator --version=v1.2.0
    helm pull instana/zookeeper-operator --version=1.0.0
    helm pull instana/strimzi-kafka-operator --version=0.51.0
    helm pull instana/eck-operator --version=3.4.0
    helm pull instana/cloudnative-pg --version=0.28.2
    helm pull instana/cass-operator --version=0.64.3
    helm pull instana/cert-manager --version=1.20.2
                   
  5. Extrayez les images de l'opérateur.

    • cert-manager
      docker pull artifact-public.instana.io/jetstack/cert-manager-cainjector:v1.20.2
      docker pull artifact-public.instana.io/jetstack/cert-manager-controller:v1.20.2
      docker pull artifact-public.instana.io/jetstack/cert-manager-webhook:v1.20.2
                           
    • Cassandra
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/cass-operator:1.30.0_v0.40.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/system-logger:1.29.0_v0.23.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/k8ssandra-client:0.8.12_v0.33.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cassandra:4.1.11_v0.42.0
                           
    • ClickHouse
      docker pull artifact-public.instana.io/clickhouse-operator:v1.2.39
      docker pull artifact-public.instana.io/clickhouse:25.8.13.73-2-lts-ibm
                           
    • Elasticsearch
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/elasticsearch:3.4.0_v0.33.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/elasticsearch:8.18.6_v0.25.0
                           
    • Kafka
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0_v0.32.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:0.51.0-kafka-4.1.1_v0.32.0
                           
    • PostgreSQL en utilisantCloudNativePG
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/cloudnative-pg:v1.29.1_v0.34.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/cnpg-containers:15_v0.37.0
                           
    • ZooKeeper
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper:0.2.15_v0.21.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper:3.9.3_v0.21.0
      docker pull artifact-public.instana.io/self-hosted-images/k8s/kubectl:v1.35.2_v0.11.0
                           
  6. Si vous utilisez votre hôte bastion comme hôte de l' Instana e dans votre environnement isolé, vous n'avez pas besoin d'effectuer les étapes suivantes. Toutefois, si votre hôte bastion et l'hôte isolé physiquement sont différents, procédez comme suit:

    1. Sur votre hôte Bastion, téléchargez le fichier binaire Helm correspondant au système d'exploitation de votre hôte isolé. Pour connaître les fichiers binaires disponibles, consultez la section « Installation et mise à jour ». Voir l'exemple de commande suivant.

      wget https://get.helm.sh/helm-v3.15.2-linux-amd64.tar.gz
       
    2. Copiez le fichier binaire Helm , les images d'opérateur et les chartes Helm de votre hôte bastion vers l'hôte qui se trouve dans votre environnement isolé physiquement.

    3. Installez Helm sur l'hôte isolé physiquement. Exécutez ces commandes à partir de l'emplacement du fichier binaire Helm .

      tar –xvzf helm-v3.15.2-linux-amd64.tar.gz
      mv linux-amd64/helm /usr/local/bin/helm
       
  7. Créez les magasins de données. Pour connaître les commandes, consultez la section « Installation des magasins de données ».