Trident オペレータとともに導入
Trident のオペレータが、 Astra Trident を導入できます。Trident オペレータは、手動または Helm を使用して導入できます。
をまだ理解していない場合は、を参照してください "基本概念"今こそ、そのための絶好の機会です。 |
Astra Trident を導入するには、次の前提条件を満たしている必要があります。
-
Kubernetes 1.14 以降を実行するサポート対象の Kubernetes クラスタに対するすべての権限が必要です。
-
サポートされているネットアップストレージシステムを利用できるようにしておきます。
-
すべての Kubernetes ワーカーノードからボリュームをマウントできます。
-
を搭載したLinuxホストがある
kubectl
(または `oc`OpenShiftを使用している場合)Kubernetesクラスタを管理するようにインストールおよび設定します。 -
を設定しておきます
KUBECONFIG
Kubernetesクラスタ構成を参照する環境変数。 -
を有効にしておきます "Astra Trident に必要な機能ゲート"。
-
Kubernetes と Docker Enterprise を併用する場合は、 "CLI へのアクセスを有効にする手順は、ユーザが行ってください"。
それはすべてですか?最高!それでは始めましょう。
Helm を使用して Trident オペレータを導入します
Helm を使用して Trident オペレータを導入するには、以下の手順を実行します。
上記の前提条件に加え、 Helm を使用して Trident Operator を導入するには、次のものが必要です。
-
Kubernetes 1.17 以降
-
Helm バージョン 3
-
からインストーラバンドルをダウンロードします "Trident GitHub" ページインストーラバンドルのにHelmチャートが含まれています
/helm
ディレクトリ。 -
を使用します
helm install
コマンドを使用し、導入環境の名前を指定します。次の例を参照してください。helm install <name> trident-operator-21.07.1.tgz --namespace <namespace you want to use for Trident>
インストール中に設定データを渡すには、次の 2 つの方法があります。
-
--values
(または-f
):オーバーライドを使用してYAMLファイルを指定します。これは複数回指定でき、右端のファイルが優先されます。 -
--set
:コマンドラインでオーバーライドを指定します
たとえば、のデフォルト値を変更するには、のように指定します debug`をクリックし、次のコマンドを実行します `--set
コマンドを実行します
$ helm install <name> trident-operator-21.07.1.tgz --set tridentDebug=true
。 values.yaml
File。Helmチャートの一部で、キーのリストとデフォルト値が表示されます。
helm list
名前、ネームスペース、グラフ、ステータス、 アプリケーションのバージョン、リビジョン番号など。
Trident オペレータを手動で導入
Trident のオペレータを手動で導入するには、以下の手順を実行します。
ステップ 1 : Kubernetes クラスタを確認する
まず、 Linux ホストにログインして、 _working _ 、 "サポートされる Kubernetes クラスタ" に必要な権限があることを確認します。
OpenShiftでは、を使用します oc ではなく kubectl 以降のすべての例では、を実行して、最初に* system:admin *としてログインします oc login -u system:admin または oc login -u kube-admin 。
|
Kubernetes のバージョンが 1.14 以降かどうかを確認するには、次のコマンドを実行します。
kubectl version
Kubernetes クラスタ管理者の権限があるかどうかを確認するには、次のコマンドを実行します。
kubectl auth can-i '*' '*' --all-namespaces
Docker Hub のイメージを使用してポッドを起動し、ポッドネットワーク経由でストレージシステムにアクセスできるかどうかを確認するには、次のコマンドを実行します。
kubectl run -i --tty ping --image=busybox --restart=Never --rm -- \ ping <management IP>
手順 2 :オペレータをダウンロードして設定します
21.01 以降、 Trident Operator はクラスタを対象とします。TridentのオペレータがTridentをインストールするには、を作成する必要があります TridentOrchestrator カスタムリソース定義(CRD)およびその他のリソースの定義。Astra Trident をインストールする前に、次の手順を実行してオペレータをセットアップする必要があります。
|
-
の最新バージョンをダウンロードします "Trident インストーラバンドル" _Downloads_section から抽出します
wget https://github.com/NetApp/trident/releases/download/v21.04/trident-installer-21.04.tar.gz tar -xf trident-installer-21.04.tar.gz cd trident-installer
-
適切なCRDマニフェストを使用して、を作成します
TridentOrchestrator
CRD。次に、を作成しますTridentOrchestrator
後でカスタムリソース(Custom Resource)をクリックして、演算子によってインストールをインスタンス化する。次のコマンドを実行します。
kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
-
のあとに入力します
TridentOrchestrator
CRDが作成され、オペレータの展開に必要な次のリソースを作成します。-
オペレータのサービスアカウント
-
ClusterRole および ClusterRoleBinding をサービスアカウントにバインドする
-
専用の PodSecurityPolicy
-
演算子自体
Trident インストーラには、これらのリソースを定義するマニフェストが含まれています。デフォルトでは、オペレータはに配置されます
trident
ネームスペース:状況に応じてtrident
ネームスペースが存在しません。次のマニフェストを使用してネームスペースを作成してください。
$ kubectl apply -f deploy/namespace.yaml
-
-
デフォルト以外の名前空間に演算子を配置します
trident
ネームスペースの場合はを更新する必要がありますserviceaccount.yaml
、clusterrolebinding.yaml
およびoperator.yaml
マニフェストを作成し、を生成しますbundle.yaml
。次のコマンドを実行してYAMLマニフェストを更新し、を生成します
bundle.yaml
を使用するkustomization.yaml
:kubectl kustomize deploy/ > deploy/bundle.yaml
次のコマンドを実行してリソースを作成し、オペレータを配置します。
kubectl create -f deploy/bundle.yaml
-
展開後にオペレータのステータスを確認するには、次の手順を実行します。
$ kubectl get deployment -n <operator-namespace> NAME READY UP-TO-DATE AVAILABLE AGE trident-operator 1/1 1 1 3m $ kubectl get pods -n <operator-namespace> NAME READY STATUS RESTARTS AGE trident-operator-54cb664d-lnjxh 1/1 Running 0 3m
オペレータによる導入で、クラスタ内のいずれかのワーカーノードで実行されるポッドが正常に作成されます。
Kubernetes クラスタには、オペレータのインスタンスが * 1 つしか存在しないようにしてください。Trident のオペレータが複数の環境を構築することは避けてください。 |
手順3:作成 TridentOrchestrator
Tridentをインストール
これで、オペレータを使って Astra Trident をインストールする準備ができました。これには作成が必要です TridentOrchestrator
。Tridentのインストーラには、作成用の定義例が付属しています TridentOrchestrator
。これがの設置作業から始まります trident
ネームスペース:
$ 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: Debug: true Namespace: trident Status: Current Installation Params: IPv6: false Autosupport Hostname: Autosupport Image: netapp/trident-autosupport:21.04 Autosupport Proxy: Autosupport Serial Number: Debug: true Enable Node Prep: false Image Pull Secrets: Image Registry: k8sTimeout: 30 Kubelet Dir: /var/lib/kubelet Log Format: text Silence Autosupport: false Trident Image: netapp/trident:21.04.0 Message: Trident installed Namespace: trident Status: Installed Version: v21.04.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
Tridentオペレータは、の属性を使用して、Astra Tridentのインストール方法をカスタマイズできます TridentOrchestrator
仕様を参照してください "Trident の導入をカスタマイズ"。
のステータス TridentOrchestrator
インストールが正常に完了したかどうかを示し、インストールされているTridentのバージョンが表示されます。
ステータス | 説明 |
---|---|
インストール中です |
このツールを使用してAstra Tridentをインストールしている |
インストール済み |
Astra Trident のインストールが完了しました。 |
アンインストール中です |
OperatorはAstra Tridentをアンインストールしています。理由はです |
アンインストール済み |
Astra Trident がアンインストールされました。 |
失敗しました |
オペレータは Astra Trident をインストール、パッチ適用、更新、またはアンインストールできませんでした。オペレータはこの状態からのリカバリを自動的に試みます。この状態が解消されない場合は、トラブルシューティングが必要です。 |
更新中です |
オペレータが既存のインストールを更新しています。 |
エラー |
。 |
インストール中、のステータス TridentOrchestrator
からの変更 Installing
終了: Installed
。を確認した場合は Failed
ステータスとオペレータが単独でリカバリできない場合は、オペレータのログを確認する必要があります。を参照してください "トラブルシューティング" セクション。
Astra Trident のインストールが完了しているかどうかを確認するには、作成したポッドを確認します。
$ kubectl get pod -n trident NAME READY STATUS RESTARTS AGE trident-csi-7d466bf5c7-v4cpw 5/5 Running 0 1m trident-csi-mr6zc 2/2 Running 0 1m trident-csi-xrp7w 2/2 Running 0 1m trident-csi-zh2jt 2/2 Running 0 1m trident-operator-766f7b8658-ldzsv 1/1 Running 0 3m
を使用することもできます tridentctl
インストールされているAstra Tridentのバージョンを確認します。
$ ./tridentctl -n trident version +----------------+----------------+ | SERVER VERSION | CLIENT VERSION | +----------------+----------------+ | 21.04.0 | 21.04.0 | +----------------+----------------+
これで、バックエンドを作成できます。を参照してください "導入後のタスク"。
導入時の問題のトラブルシューティングについては、を参照してください "トラブルシューティング" セクション。 |