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

NetApp HCIまたはSolidFireバックエンドを構成する

共同作成者 netapp-aruldeepa

Tridentインストールで Element バックエンドを作成して使用する方法を学習します。

要素ドライバーの詳細

Tridentは `solidfire-san`クラスターと通信するためのストレージ ドライバー。サポートされているアクセス モードは、ReadWriteOnce (RWO)、ReadOnlyMany (ROX)、ReadWriteMany (RWX)、ReadWriteOncePod (RWOP) です。

その `solidfire-san`ストレージ ドライバーは、ファイル および ブロック ボリューム モードをサポートします。のために `Filesystem`volumeMode では、 Trident はボリュームを作成し、ファイルシステムを作成します。ファイルシステムの種類は、StorageClass によって指定されます。

ドライバ プロトコル ボリュームモード サポートされているアクセスモード サポートされているファイルシステム

solidfire-san

iSCSI

ブロック

RWO、ROX、RWX、RWOP

ファイルシステムがありません。生のブロックデバイス。

solidfire-san

iSCSI

Filesystem

RWO、RWOP

xfsext3ext4

開始する前に

Element バックエンドを作成する前に、次のものが必要です。

  • Element ソフトウェアを実行するサポートされているストレージ システム。

  • ボリュームを管理できるNetApp HCI/ SolidFireクラスター管理者またはテナント ユーザーの資格情報。

  • すべての Kubernetes ワーカーノードに適切な iSCSI ツールがインストールされている必要があります。参照"ワーカーノードの準備情報"

バックエンド構成オプション

バックエンドの構成オプションについては、次の表を参照してください。

パラメータ 説明 デフォルト

version

常に1

storageDriverName

ストレージ ドライバーの名前

いつも「solidfireさん」

backendName

カスタム名またはストレージバックエンド

「solidfire_」+ ストレージ(iSCSI)IPアドレス

Endpoint

テナント資格情報を持つSolidFireクラスタの MVIP

SVIP

ストレージ(iSCSI)IPアドレスとポート

labels

ボリュームに適用する任意の JSON 形式のラベルのセット。

""

TenantName

使用するテナント名(見つからない場合は作成)

InitiatorIFace

iSCSIトラフィックを特定のホストインターフェースに制限する

"デフォルト"

UseCHAP

CHAP を使用して iSCSI を認証します。 Trident はCHAP を使用します。

true

AccessGroups

使用するアクセスグループIDのリスト

「trident」という名前のアクセスグループのIDを検索します

Types

QoS仕様

limitVolumeSize

要求されたボリューム サイズがこの値を超える場合、プロビジョニングに失敗します

"" (デフォルトでは強制されません)

debugTraceFlags

トラブルシューティング時に使用するデバッグ フラグ。例: {"api":false, "method":true}

ヌル

警告 使用しないでください `debugTraceFlags`ただし、トラブルシューティングを行っており、詳細なログ ダンプが必要な場合を除きます。

例1: バックエンド構成 `solidfire-san`3種類のボリュームを備えたドライバー

この例では、CHAP 認証を使用し、特定の QoS 保証を備えた 3 つのボリューム タイプをモデル化するバックエンド ファイルを示します。おそらく、これらのそれぞれを消費するためのストレージクラスを定義することになるでしょう。 `IOPS`ストレージ クラス パラメータ。

---
version: 1
storageDriverName: solidfire-san
Endpoint: https://<user>:<password>@<mvip>/json-rpc/8.0
SVIP: <svip>:3260
TenantName: <tenant>
labels:
  k8scluster: dev1
  backend: dev1-element-cluster
UseCHAP: true
Types:
  - Type: Bronze
    Qos:
      minIOPS: 1000
      maxIOPS: 2000
      burstIOPS: 4000
  - Type: Silver
    Qos:
      minIOPS: 4000
      maxIOPS: 6000
      burstIOPS: 8000
  - Type: Gold
    Qos:
      minIOPS: 6000
      maxIOPS: 8000
      burstIOPS: 10000

例2: バックエンドとストレージクラスの構成 `solidfire-san`仮想プールを備えたドライバー

この例では、仮想プールと、それらを参照する StorageClasses が構成されたバックエンド定義ファイルを示します。

Trident は、プロビジョニング時にストレージ プールにあるラベルをバックエンド ストレージ LUN にコピーします。便宜上、ストレージ管理者は仮想プールごとにラベルを定義し、ラベルごとにボリュームをグループ化できます。

以下に示すサンプルのバックエンド定義ファイルでは、すべてのストレージプールに特定のデフォルトが設定されており、 `type`シルバーで。仮想プールは、 `storage`セクション。この例では、一部のストレージ プールは独自のタイプを設定し、一部のプールは上記で設定されたデフォルト値を上書きします。

---
version: 1
storageDriverName: solidfire-san
Endpoint: https://<user>:<password>@<mvip>/json-rpc/8.0
SVIP: <svip>:3260
TenantName: <tenant>
UseCHAP: true
Types:
  - Type: Bronze
    Qos:
      minIOPS: 1000
      maxIOPS: 2000
      burstIOPS: 4000
  - Type: Silver
    Qos:
      minIOPS: 4000
      maxIOPS: 6000
      burstIOPS: 8000
  - Type: Gold
    Qos:
      minIOPS: 6000
      maxIOPS: 8000
      burstIOPS: 10000
type: Silver
labels:
  store: solidfire
  k8scluster: dev-1-cluster
region: us-east-1
storage:
  - labels:
      performance: gold
      cost: "4"
    zone: us-east-1a
    type: Gold
  - labels:
      performance: silver
      cost: "3"
    zone: us-east-1b
    type: Silver
  - labels:
      performance: bronze
      cost: "2"
    zone: us-east-1c
    type: Bronze
  - labels:
      performance: silver
      cost: "1"
    zone: us-east-1d

次の StorageClass 定義は、上記の仮想プールを参照します。使用して `parameters.selector`フィールドでは、各 StorageClass はボリュームをホストするために使用できる仮想プールを呼び出します。ボリュームには、選択した仮想プールで定義された側面が設定されます。

最初のStorageClass(solidfire-gold-four ) は最初の仮想プールにマップされます。これはゴールドパフォーマンスを提供する唯一のプールです Volume Type QoS`ゴールドの。最後のStorageClass(`solidfire-silver ) は、シルバー パフォーマンスを提供するストレージ プールを呼び出します。 Trident はどの仮想プールが選択されるか決定し、ストレージ要件が満たされていることを確認します。

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-gold-four
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=gold; cost=4
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-silver-three
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=silver; cost=3
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-bronze-two
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=bronze; cost=2
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-silver-one
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=silver; cost=1
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-silver
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=silver
  fsType: ext4