Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

Tridentオペレータを手動で導入(オフラインモード)

共同作成者

Tridentオペレータを手動で導入して、Tridentをインストールできます。このプロセスは、Tridentに必要なコンテナイメージがプライベートレジストリに保存されているインストールに適用されます。プライベートイメージレジストリがない場合は、を使用し"標準的な導入のプロセス"ます。

Trident 24.10に関する重要な情報

  • Tridentに関する次の重要な情報をお読みください。*

Trident </strong>に関する<strong>の重要な情報
  • TridentでKubernetes 1.31がサポートされるようになりました。Kubernetesをアップグレードする前にTridentをアップグレード

  • Tridentでは、SAN環境でのマルチパス構成の使用が厳密に適用されます。multipath.confファイルの推奨値はです find_multipaths: no

    非マルチパス構成またはを使用 find_multipaths: yes または find_multipaths: smart multipath.confファイルの値が原因でマウントが失敗します。Tridentはの使用を推奨しています find_multipaths: no 21.07リリース以降

Tridentオペレータを手動で導入し、Tridentをインストール

レビュー "インストールの概要" インストールの前提条件を満たし、環境に適したインストールオプションを選択していることを確認します。

作業を開始する前に

Linuxホストにログインして、管理が機能していることとを確認します "サポートされる Kubernetes クラスタ" 必要な権限があることを確認します。

メモ OpenShift では、以降のすべての例で「 kubectl 」ではなく「 OC 」を使用し、「 OC login-u SYSTEM : admin 」または「 OC login-u kube-admin 」を実行して最初に「 *system:admin 」としてログインします。
Details
  1. Kubernetesのバージョンを確認します。

    kubectl version
  2. クラスタ管理者の権限を確認します。

    kubectl auth can-i '*' '*' --all-namespaces
  3. Docker Hubのイメージを使用してポッドを起動し、ポッドネットワーク経由でストレージシステムにアクセスできることを確認します。

    kubectl run -i --tty ping --image=busybox --restart=Never --rm -- \
      ping <management IP>

手順1:Tridentのインストーラパッケージをダウンロード

Tridentインストーラパッケージには、Tridentオペレータの導入とTridentのインストールに必要なすべてのものが含まれています。からTridentインストーラの最新バージョンをダウンロードして展開し"GitHubの_Assets_sectionを参照してください"ます。

wget https://github.com/NetApp/trident/releases/download/v24.10.0/trident-installer-24.10.0.tar.gz
tar -xf trident-installer-24.10.0.tar.gz
cd trident-installer

手順2:を作成します TridentOrchestrator CRD

カスタムリソース定義(CRD)を作成し `TridentOrchestrator`ます。カスタムリソースは後で作成し `TridentOrchestrator`ます。で適切なCRD YAMLバージョンを使用して `deploy/crds`CRDを作成し `TridentOrchestrator`ます。

kubectl create -f deploy/crds/<VERSION>.yaml

手順3:オペレータのレジストリの場所を更新します

/deploy/operator.yaml、イメージレジストリの場所を反映するように更新し image: docker.io/netapp/trident-operator:24.10.0 ます。は "TridentとCSIの画像" 1つのレジストリまたは別のレジストリに配置できますが、すべてのCSIイメージは同じレジストリに配置する必要があります。例:

  • image: <your-registry>/trident-operator:24.10.0 イメージがすべて1つのレジストリに格納されている場合。

  • image: <your-registry>/netapp/trident-operator:24.10.0 TridentイメージがCSIイメージとは別のレジストリにある場合。

ステップ4:Tridentオペレータを導入

Tridentインストーラには、オペレータのインストールと関連オブジェクトの作成に使用できるバンドルファイルが用意されています。バンドルファイルは、デフォルト設定を使用してオペレータを導入し、Tridentをインストールするための簡単な方法です。

  • クラスタでKubernetes 1.24を実行している場合は、を使用し `bundle_pre_1_25.yaml`ます。

  • クラスタでKubernetes 1.25以降を実行している場合は、を使用します bundle_post_1_25.yaml

作業を開始する前に
  • デフォルトでは、Tridentのインストーラによって trident ネームスペース:状況に応じて trident ネームスペースが存在しません。次を使用して作成してください:

    kubectl apply -f deploy/namespace.yaml
  • オペレータを以外のネームスペースに配置する場合 trident 名前空間、更新 serviceaccount.yamlclusterrolebinding.yaml および operator.yaml を使用してバンドルファイルを生成します kustomization.yaml

    1. を作成します kustomization.yaml 次のコマンドを使用して、<bundle.yaml> is bundle_pre_1_25.yaml または bundle_post_1_25.yaml 使用しているKubernetesのバージョンに基づきます。

      cp deploy/kustomization_<bundle.yaml> deploy/kustomization.yaml
    2. 次のコマンドを使用してバンドルをコンパイルします。WHERE_STORE_IS <bundle.yaml> bundle_pre_1_25.yaml または bundle_post_1_25.yaml 使用しているKubernetesのバージョンに基づきます。

      kubectl kustomize deploy/ > deploy/<bundle.yaml>
手順
  1. リソースを作成し、オペレータを配置します。

    kubectl create -f deploy/<bundle.yaml>
  2. operator、deployment、およびReplicaSetsが作成されたことを確認します。

    kubectl get all -n <operator-namespace>
重要 Kubernetes クラスタには、オペレータのインスタンスが * 1 つしか存在しないようにしてください。Trident のオペレータが複数の環境を構築することは避けてください。

手順5:でイメージレジストリの場所を更新します TridentOrchestrator

"TridentとCSIの画像" 1つのレジストリまたは別のレジストリに配置できますが、すべてのCSIイメージは同じレジストリに配置する必要があります。更新 deploy/crds/tridentorchestrator_cr.yaml レジストリ設定に基づいて追加の場所の仕様を追加します。

1つのレジストリ内のイメージ
imageRegistry: "<your-registry>"
autosupportImage: "<your-registry>/trident-autosupport:24.10"
tridentImage: "<your-registry>/trident:24.10.0"
異なるレジストリ内の画像
imageRegistry: "<your-registry>"
autosupportImage: "<your-registry>/trident-autosupport:24.10"
tridentImage: "<your-registry>/trident:24.10.0"

手順6:を作成します TridentOrchestrator Tridentをインストール

これで、を作成してTridentをインストールできます TridentOrchestrator。必要に応じて、仕様内の属性をさらに使用 `TridentOrchestrator`できます"Tridentのインストールをカスタマイズ"。次の例は、TridentイメージとCSIイメージが異なるレジストリにあるインストールを示しています。

kubectl create -f deploy/crds/tridentorchestrator_cr.yaml
tridentorchestrator.trident.netapp.io/trident created

kubectl describe torc trident

Name:        trident
Namespace:
Labels:      <none>
Annotations: <none>
API Version: trident.netapp.io/v1
Kind:        TridentOrchestrator
...
Spec:
  Autosupport Image:  <your-registry>/trident-autosupport:24.10
  Debug:              true
  Image Registry:     <your-registry>
  Namespace:          trident
  Trident Image:      <your-registry>/trident:24.10.0
Status:
  Current Installation Params:
    IPv6:                       false
    Autosupport Hostname:
    Autosupport Image:          <your-registry>/trident-autosupport:24.10
    Autosupport Proxy:
    Autosupport Serial Number:
    Debug:                      true
    Http Request Timeout:       90s
    Image Pull Secrets:
    Image Registry:       <your-registry>
    k8sTimeout:           30
    Kubelet Dir:          /var/lib/kubelet
    Log Format:           text
    Probe Port:           17546
    Silence Autosupport:  false
    Trident Image:        <your-registry>/trident:24.10.0
  Message:                Trident installed
  Namespace:              trident
  Status:                 Installed
  Version:                v24.10.0
Events:
    Type Reason Age From Message ---- ------ ---- ---- -------Normal
    Installing 74s trident-operator.netapp.io Installing Trident Normal
    Installed 67s trident-operator.netapp.io Trident installed

インストールを確認します。

インストールを確認するには、いくつかの方法があります。

を使用します TridentOrchestrator ステータス

のステータス TridentOrchestrator インストールが正常に完了したかどうかを示し、インストールされているTridentのバージョンが表示されます。インストール中、のステータス TridentOrchestrator からの変更 Installing 終了: Installed。を確認した場合は Failed ステータスとオペレータは単独で回復できません。 "ログをチェックしてください"

ステータス 説明

インストール中です

オペレータはこのCRを使用してTridentをインストールしています TridentOrchestrator

インストール済み

Tridentは正常にインストールされました。

アンインストール中です

オペレータはTridentをアンインストールしています。
spec.uninstall=true

アンインストール済み

Tridentがアンインストールされます。

失敗しました

オペレータはTridentをインストール、パッチ適用、アップデート、またはアンインストールできませんでした。オペレータは自動的にこの状態から回復しようとします。この状態が解消されない場合は、トラブルシューティングが必要です。

更新中です

オペレータが既存のインストールを更新しています。

エラー

「 TridentOrchestrator 」は使用されません。別のファイルがすでに存在します。

ポッドの作成ステータスを使用する

作成されたポッドのステータスを確認することで、Tridentのインストールが完了したかどうかを確認できます。

kubectl get pods -n trident

NAME                                       READY   STATUS    RESTARTS   AGE
trident-controller-7d466bf5c7-v4cpw        6/6     Running   0           1m
trident-node-linux-mr6zc                   2/2     Running   0           1m
trident-node-linux-xrp7w                   2/2     Running   0           1m
trident-node-linux-zh2jt                   2/2     Running   0           1m
trident-operator-766f7b8658-ldzsv          1/1     Running   0           3m

を使用します tridentctl

を使用して、インストールされているTridentのバージョンを確認できます tridentctl

./tridentctl -n trident version

+----------------+----------------+
| SERVER VERSION | CLIENT VERSION |
+----------------+----------------+
| 24.10.0        | 24.10.0        |
+----------------+----------------+