Preparazione all'installazione degli operatori di archiviazione dati su Linux on IBM Z and LinuxONE

Per installare un archivio dati di terzi, il cluster deve avere accesso alla versione supportata dell'immagine dell'archivio dati.

Per verificare quali versioni del data store sono compatibili con la tua distribuzione di Instana, installa il plug-in kubectl ed esegui il comando kubectl instana --version. Per ulteriori informazioni, consultare la voce relativa al plug-in " Instana " all'indirizzo kubectl.

Preparazione del cluster per l'installazione

Prima di installare un componente Instana, assicurati di contrassegnare e etichettare il nodo su cui intendi effettuare l'installazione. Questa operazione destina il nodo esclusivamente ai componenti dell' Instana, garantendo una corretta allocazione delle risorse e il loro isolamento.

La configurazione deve includere almeno quattro nodi di lavoro, ciascuno dotato di 16 vCPUs e 64 GB di memoria, oltre a un nodo di lavoro aggiuntivo con 8 vCPUs e 16 GB di memoria.

  1. Assegna un nome ai primi 4 nodi di lavoro o ai nodi che preferisci utilizzando i comandi kubectl.

    CLUSTER_NAME=$(hostname|cut -d . -f 2-)
    for NODE in 0 1 2 3
    do
       oc label node worker${NODE}.${CLUSTER_NAME} node-role.kubernetes.io/monitor="true"
       oc adm taint node worker${NODE}.${CLUSTER_NAME} node.instana.io/monitor="true":NoSchedule
    done
     
  2. Assicurati che i nodi siano contrassegnati e etichettati.

    Verificare che i nodi siano etichettati correttamente.

    oc get nodes -l node-role.kubernetes.io/monitor=true
     

    Il risultato deve essere identico a quello dell'esempio seguente:

       NAME                                   STATUS   ROLES            AGE    VERSION
    worker0.instana-odf5.cp.fyre.ibm.com   Ready    monitor,worker   5d5h   v1.29.6+aba1e8d
    worker1.instana-odf5.cp.fyre.ibm.com   Ready    monitor,worker   5d5h   v1.29.6+aba1e8d
    worker2.instana-odf5.cp.fyre.ibm.com   Ready    monitor,worker   5d5h   v1.29.6+aba1e8d
    worker3.instana-odf5.cp.fyre.ibm.com   Ready    monitor,worker   5d5h   v1.29.6+aba1e8d
     

    Verificare che i nodi siano contrassegnati correttamente.

    kubectl get nodes -o=jsonpath='{range .items[*]}{.metadata.name}{"\t"}{range .spec.taints[*]}{.key}{"="}{.value}{"\t"}{end}{"\n"}{end}' |grep monitor
     

    Il risultato atteso dovrebbe essere simile a questo

    worker0.instana-odf5.cp.fyre.ibm.com    node.instana.io/monitor=true
    worker1.instana-odf5.cp.fyre.ibm.com    node.instana.io/monitor=true
    worker2.instana-odf5.cp.fyre.ibm.com    node.instana.io/monitor=true
    worker3.instana-odf5.cp.fyre.ibm.com    node.instana.io/monitor=true
     

Preparazione all'installazione online

Preparare l'installazione degli operatori dell'archivio dati in un ambiente in linea.

  1. Installa Helm
    Figura 1. Si apre in una nuova scheda o finestra
    Icona link esterno
    .
    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. Assicurati che cert-manager
    Figura 2. Si apre in una nuova scheda o finestra
    Icona link esterno
    , che viene utilizzato per configurare automaticamente il segreto per impostazione predefinita, è installato nel tuo cluster. Per eseguire l'installazione cert-manager, eseguire il seguente comando:
    kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.7.1/cert-manager.yaml
     
    Nota: saltare questo passaggio se " cert-manager " è già installato nel cluster.
  3. Assicurarsi di impostare una classe di memoria predefinita sul cluster su cui si stanno installando gli archivi dati. È necessaria una classe di archiviazione con modalità di accesso ReadWriteMany (RWX) o ReadWriteOnce (RWO). Assicurati di aggiornare la classe di archiviazione che hai impostato nel tuo cluster con l'accesso RWX o RWO.

    Per verificare se una classe di archiviazione predefinita è impostata nel tuo cluster, immetti il seguente comando:

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

    Se il comando non restituisce un valore, devi impostare una classe di archiviazione predefinita immettendo il seguente comando:

    kubectl patch storageclass <storageclass_name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
     
  4. Aggiungi e aggiorna il repository Helm per gli operatori di terzi. Utilizza la chiave di download di Instana come password.

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

Preparazione all'installazione offline

Prepararsi per un'installazione offline (air-gapped).

  1. Prepara un host bastion che può accedere sia a Internet che al tuo registro delle immagini interno.

  2. Installa Helm sull'host 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. Aggiungi i repository del grafico Helm operatore.

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

    helm pull instana/ibm-clickhouse-operator --version=v0.1.2
    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.1
    helm pull instana/cloudnative-pg --version=0.28.2
    helm pull instana/cass-operator --version=0.63.1
    helm pull instana/cert-manager --version=1.13.2
                   
  5. Eseguire il pull delle immagini operatore.

    • Cassandra
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/cass-operator:1.29.0_v0.39.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/system-logger:1.26.0_v0.22.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.10_v0.41.0
                           
    • ClickHouse
      docker pull artifact-public.instana.io/clickhouse-operator:v0.1.2
      docker pull artifact-public.instana.io/clickhouse:24.8.14.39-10-lts-ibm
                           
    • Elasticsearch
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/elasticsearch:3.4.1_v0.34.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/elasticsearch:8.18.6_v0.24.0
                           
    • Kafka
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/operator/strimzi:0.51.0
      docker pull artifact-public.instana.io/self-hosted-images/3rd-party/datastore/kafka:0.51.0_v0.32.0
                           
    • PostgreSQL utilizzando CloudNativePG
      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.39.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. Se utilizzi il tuo host bastion come host di accesso ( Instana ) nel tuo ambiente air-gapped, non è necessario eseguire i passaggi seguenti. Tuttavia, se il tuo host bastion e l'host air - gapped sono diversi, completa questa procedura:

    1. Sul tuo host Bastion, scarica il file binario Helm compatibile con il sistema operativo del tuo host isolato. Per i file binari disponibili, consultare la sezione Installazione e aggiornamento
      Figura 3. Si apre in una nuova scheda o finestra
      Icona link esterno
      . Si veda il seguente comando di esempio.
      wget https://get.helm.sh/helm-v3.15.2-linux-s390x.tar.gz
       
    2. Copia il file binario Helm , le immagini operatore e i grafici Helm dal tuo host bastion all'host che si trova nel tuo ambiente air - gapped.

    3. Installare Helm sull'host air - gapped. Eseguire questi comandi dall'ubicazione del file binario Helm .

      tar –xvzf https://get.helm.sh/helm-v3.15.2-linux-s390x.tar.gz
      mv linux-s390x/helm /usr/local/bin/helm
       
  7. Creare gli archivi dati. Per i comandi, consultare la sezione Installazione degli archivi dati.