Linux on IBM Z and LinuxONE へのデータストアオペレーターのインストール準備

サード・パーティー・データ・ストアをインストールするには、サポートされているバージョンのデータ・ストア・イメージにクラスターがアクセスできる必要があります。

Instana デプロイメントと互換性のあるデータストアのバージョンを確認するには、 kubectl プラグインをインストールし、 kubectl instana --version コマンドを実行してください。 詳細については、 「 Instana kubectl 」プラグインのトピックを参照してください。

インストールに向けたクラスタの準備

Instana コンポーネントをインストールする前に、インストール対象のノードにテイントとラベルを付与してください。 この手順により、ノードが Instana コンポーネント専用に割り当てられ、適切なリソースの割り当てと分離が確保されます。

構成には、各ノードに16個の vCPUs と64 GBのメモリを搭載したワーカーノードを最低4台、および8個の vCPUs と16 GBのメモリを搭載したワーカーノードを1台追加する必要があります。

  1. kubectl コマンドを使用して、最初の4つのワーカーノード、または任意のノードにラベルを付けます。

    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. ノードにテイントとラベルが設定されていることを確認してください。

    ノードに正しいラベルが付けられていることを確認してください。

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

    出力は、以下の例と完全に一致する必要があります:

       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
     

    ノードに正しくテイントが設定されていることを確認してください。

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

    期待される出力は、次のようなものになるはずです

    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
     

オンラインインストールの準備

オンライン環境でのデータ・ストア・オペレーターのインストールを準備します。

  1. Helm をインストールする
    図 1. 新しいタブまたはウィンドウで開きます
    外部リンク・アイコン
    .
    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. cert-manager であることを確認してください
    図 2. 新しいタブまたはウィンドウで開きます
    外部リンク・アイコン
    デフォルトでシークレットを自動的にプロビジョニングするために使用される、がクラスターにインストールされています。 cert-manager をインストールするには、次のコマンドを実行します。
    kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.7.1/cert-manager.yaml
     
    注: クラスタに cert-manager がすでにインストールされている場合は、この手順をスキップしてください。
  3. データ・ストアをインストールするクラスターにデフォルトのストレージ・クラスが設定されていることを確認してください。 ReadWriteMany (RWX) または ReadWriteOnce (RWO) アクセス・モードのストレージ・クラスが必要です。 クラスターに設定したストレージ・クラスを RWX または RWO のアクセス権限で更新してください。

    クラスターにデフォルトのストレージ・クラスが設定されているかどうかを確認するには、以下のコマンドを実行します。

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

    コマンドが値を返さない場合は、以下のコマンドを実行してデフォルトのストレージ・クラスを設定する必要があります。

    kubectl patch storageclass <storageclass_name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
     
  4. サード・パーティー・オペレーター用の Helm リポジトリーを追加および更新します。 パスワードの値として、 Instana のダウンロードキーを使用してください。

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

オフラインインストールの準備

オフライン (エアギャップ) インストールの準備をします。

  1. インターネットと独自の内部イメージ・レジストリーの両方にアクセスできる要塞ホストを準備します。

  2. 要塞ホストに 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
     
  3. オペレーター Helm チャート・リポジトリーを追加します。

    helm repo add instana https://artifact-public.instana.io/artifactory/rel-helm-customer-virtual --username=_ --password=<download_key>
    helm repo update
     
  4. 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.0
    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. オペレーター・イメージをプルします。

    • 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.0_v0.33.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 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.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. エアギャップ環境において、バスティオンホストを Instana ホストとして使用している場合は、以下の手順を実行する必要はありません。 ただし、要塞ホストとエアギャップ・ホストが異なる場合は、以下の手順を実行します。

    1. Bastionホスト上で、エアギャップ環境にあるホストのOSに対応した Helm バイナリをダウンロードしてください。 利用可能なバイナリファイルについては、 「インストールとアップグレード」 を参照してください
      図 3. 新しいタブまたはウィンドウで開きます
      外部リンク・アイコン
      . 以下のコマンド例を参照してください。
      wget https://get.helm.sh/helm-v3.15.2-linux-s390x.tar.gz
       
    2. Helm バイナリー・ファイル、オペレーター・イメージ、および Helm チャートを要塞ホストからエアー・ギャップ環境内のホストにコピーします。

    3. エアギャップ・ホストに Helm をインストールします。 Helm バイナリー・ファイルの場所から以下のコマンドを実行します。

      tar –xvzf https://get.helm.sh/helm-v3.15.2-linux-s390x.tar.gz
      mv linux-s390x/helm /usr/local/bin/helm
       
  7. データ・ストアを作成します。 コマンドについては、 「データストアのインストール」 を参照してください。