Création d'un magasin de données « ZooKeeper » sur Linux on Power ( ppc64le )
Installez l'opérateur ZooKeeper et configurez le magasin de données.
Avant de commencer
Assurez-vous d'avoir préparé votre hôte en ligne et hors ligne pour extraire des images du référentiel externe. Vérifiez également que le référentiel Helm correct est ajouté.
Pour plus d'informations, consultez la section « Préparation de l'installation du magasin de données ».
ZooKeeper versions de l'opérateur et balises d'image pour le déploiement
Les images suivantes sont nécessaires pour la charte Helm ou les versions d'opérateur épinglées.
| Plateforme | Versions de l'opérateur | Version de graphique Helm | Image avec étiquette |
|---|---|---|---|
| Linux® on Power® (ppc64le) | 0.2.15 | 1.0.0 | artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper: 0.2.15_v0.21.0 artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper: 3.9.3_v0.21.0 artifact-public.instana.io/self-hosted-images/k8s/ kubectl : v1.35.2_v0.11.0 |
Installation d' ZooKeeper. en ligne
Procédez comme suit pour installer le magasin de données ZooKeeper .
Créez l'espace de nom
instana-zookeeper:kubectl create namespace instana-zookeeperCréez des secrets d'extraction d'image pour l'espace de nom
instana-zookeeper. Mettez à jour la valeurdownload_keyavec votre propre clé de téléchargement.kubectl create secret docker-registry instana-registry \ --namespace=instana-zookeeper \ --docker-username=_ \ --docker-password=<download_key> \ --docker-server=artifact-public.instana.ioInstallez l'opérateur ZooKeeper .
helm install zookeeper-operator -n instana-zookeeper --create-namespace instana/zookeeper-operator --version=1.0.0 --set image.repository=artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper --set image.tag=0.2.15_v0.21.0 --set global.imagePullSecrets={"instana-registry"}Pour installer les instances ZooKeeper , vous avez besoin de l'espace de nom
instana-clickhouse. Vérifiez si l'espace de nominstana-clickhouseexiste dans votre cluster. S'il n'existe pas, vous pouvez le créer maintenant.- Vérifiez si l'espace de nom
instana-clickhouseexiste.kubectl get namespace | grep clickhouse - Si l'espace de nom
instana-clickhousen'existe pas, créez-le maintenant.kubectl create namespace instana-clickhouse
- Vérifiez si l'espace de nom
Créez des secrets d'extraction d'image pour l'espace de nom
instana-clickhouse. Avant de créer le secret, mettez à jour la valeur <download_key> avec votre clé d'agent.kubectl create secret docker-registry instana-registry \ --namespace=instana-clickhouse \ --docker-username=_ \ --docker-password=<download_key> \ --docker-server=artifact-public.instana.ioCréez un fichier « YAML », par exemple
zookeeper.yaml, avec la configuration suivante : ZooKeeper.apiVersion: "zookeeper.pravega.io/v1beta1" kind: "ZookeeperCluster" metadata: name: "instana-zookeeper" spec: # For all params and defaults, see https://github.com/pravega/zookeeper-operator/tree/master/charts/zookeeper#configuration replicas: 3 image: repository: artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper tag: "3.9.3_v0.21.0" pod: imagePullSecrets: [name: "instana-registry"] serviceAccountName: "zookeeper" config: tickTime: 2000 initLimit: 10 syncLimit: 5 maxClientCnxns: 0 autoPurgeSnapRetainCount: 20 autoPurgePurgeInterval: 1 persistence: reclaimPolicy: Delete spec: resources: requests: storage: "10Gi"Effectuez les étapes de la rubrique Déploiement et vérification de ZooKeeper (en ligne et hors ligne).
Installation hors ligne d' ZooKeeper
Installez l'opérateur ZooKeeper dans un environnement hors ligne.
Si vous n'avez pas encore extrait les images ZooKeeper du registre externe lorsque vous avez préparé l'installation, vous pouvez les extraire maintenant. Exécutez les commandes suivantes sur votre hôte bastion. Ensuite, copiez les images sur votre serveur d' Instana, qui se trouve dans votre environnement isolé.
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
Suivez les étapes suivantes sur votre serveur d' Instana.
Rebalisez les images dans votre registre d'images interne.
docker tag artifact-public.instana.io/self-hosted-images/3rd-party/operator/zookeeper:0.2.15_v0.21.0 <internal-image-registry>/self-hosted-images/3rd-party/zookeeper-operator:0.2.15_v0.21.0 docker tag artifact-public.instana.io/self-hosted-images/3rd-party/datastore/zookeeper:3.9.3_v0.21.0 <internal-image-registry>/self-hosted-images/3rd-party/zookeeper:3.9.3_v0.21.0 docker tag artifact-public.instana.io/self-hosted-images/k8s/kubectl:v1.35.2_v0.11.0 <internal-image-registry>/self-hosted-images/k8s/kubectl:v1.35.2_v0.11.0Envoyez les images à votre registre d'images interne sur votre hôte bastion.
docker push <internal-image-registry>/self-hosted-images/3rd-party/zookeeper-operator:0.2.15_v0.21.0 docker push <internal-image-registry>/self-hosted-images/3rd-party/zookeeper:3.9.3_v0.21.0 docker push <internal-image-registry>/self-hosted-images/k8s/kubectl:v1.35.2_v0.11.0Créer l'espace de noms
instana-zookeeper.kubectl create namespace instana-zookeeperFacultatif : Créez un secret d'extraction d'image si votre registre d'images interne nécessite une authentification.
kubectl create secret docker-registry <secret_name> --namespace instana-zookeeper \ --docker-username=<registry_username> \ --docker-password=<registry_password> \ --docker-server=<internal-image-registry>:<internal-image-registry-port> \ --docker-email=<registry_email>Installez l'opérateur ZooKeeper . Si vous avez créé un secret d'extraction d'image à l'étape précédente, ajoutez
--set imagePullSecrets[0].name="<internal-image-registry-pull-secret>"à la commande suivante.helm install zookeeper-operator -n instana-zookeeper zookeeper-operator-1.0.0.tgz --version=1.0.0 --set image.repository=<internal-image-registry>/ppc64le-oss/zookeeper-operator-ppc64le --set image.tag=0.2.15_v0.21.0Pour installer les instances ZooKeeper , vous avez besoin de l'espace de nom
instana-clickhouse. Vérifiez si l'espace de nominstana-clickhouseexiste dans votre cluster. S'il n'existe pas, vous pouvez le créer maintenant.- Vérifiez si l'espace de nom
instana-clickhouseexiste.kubectl get namespace | grep clickhouse - Si l'espace de nom
instana-clickhousen'existe pas, créez-le maintenant.kubectl create namespace instana-clickhouse
- Vérifiez si l'espace de nom
Créez un fichier « YAML », par exemple
zookeeper.yaml, avec la configuration suivante : ZooKeeper.apiVersion: "zookeeper.pravega.io/v1beta1" kind: "ZookeeperCluster" metadata: name: "instana-zookeeper" spec: # For all params and defaults, see https://github.com/pravega/zookeeper-operator/tree/master/charts/zookeeper#configuration replicas: 3 image: repository: <internal-image-registry>/self-hosted-images/3rd-party/zookeeper tag: "3.9.3_v0.21.0" pod: serviceAccountName: "zookeeper" config: tickTime: 2000 initLimit: 10 syncLimit: 5 maxClientCnxns: 0 autoPurgeSnapRetainCount: 20 autoPurgePurgeInterval: 1 persistence: reclaimPolicy: Delete spec: resources: requests: storage: "10Gi"Effectuez les étapes de la rubrique Déploiement et vérification de ZooKeeper (en ligne et hors ligne).
Déploiement et vérification d' ZooKeeper s (en ligne et hors ligne)
Procédez comme suit pour déployer l'instance ZooKeeper et créer le magasin de données.
Déployez ZooKeeper.
kubectl apply -f zookeeper.yaml -n instana-clickhouseClickHouse ayant besoin d'un cluster ZooKeeper dédié, ZooKeeper est installé dans l'espace de nom
instana-clickhouse.Vérifiez si le pod de l'opérateur ZooKeeper est en cours d'exécution.
kubectl get pods -n instana-zookeeper
La sortie suivante est un exemple de sortie.
NAME READY STATUS RESTARTS AGE
instana-zookeeper-operator-7fccd8fd77-9lww5 1/1 Running 0 74s
Vérifiez si ZooKeeper fonctionne.
kubectl get all -n instana-clickhouse
Voir le modèle de sortie suivant.
NAME READY STATUS RESTARTS AGE
pod/instana-zookeeper-0 1/1 Running 0 119s
pod/instana-zookeeper-1 1/1 Running 0 82s
pod/instana-zookeeper-2 1/1 Running 0 47s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/instana-zookeeper-admin-server ClusterIP 192.168.1.126 <none> 8080/TCP 2m
service/instana-zookeeper-client ClusterIP 192.168.1.13 <none> 2181/TCP 2m
service/instana-zookeeper-headless ClusterIP None <none> 2181/TCP,2888/TCP,3888/TCP,7000/TCP,8080/TCP 2m
NAME READY AGE
statefulset.apps/instana-zookeeper 3/3 2m3s