Google Cloud NetApp Volumes の手動サービス品質(QoS)を使用すると、容量とは別にボリュームのスループットと IOPS の上限を構成して、ワークロードの要件を満たし、ストレージ費用を管理できます。
利点
手動 QoS には次の利点があります。
費用の最適化: ストレージ プールの容量内でボリュームのパフォーマンスをスケーリングして、クラウド費用を最適化します。
スループットの即時調整: ダウンタイムなしでボリュームのスループットを調整します。
障害復旧コストの削減: 複製されたボリュームの QoS を下げて、宛先プールの障害復旧コストを削減します。
クローンまたはキャッシュのパフォーマンスの向上: 割り当てサイズが小さいクローンまたはキャッシュ ボリュームのパフォーマンスを向上させます。
柔軟なワークロード管理: 1 つのストレージ プールで複数のワークロードをホストし、必要に応じて各ボリュームのスループットを調整します。
考慮事項
手動 QoS を構成する前に、次のガイドラインを考慮してください。
手動 QoS は、Google Cloud CLI、NetApp Volumes API、または Terraform を使用して管理できます。 Google Cloud コンソールはサポートされていません。
手動 QoS は、Flex Unified、Standard、Premium、Extreme の各サービスレベルでサポートされています。Flex File サービスレベルでは使用できません。
Flex Unified デフォルト モード、Standard、Premium、Extreme のサービスレベルの手動 QoS を管理する
手動 QoS ストレージ プール内のボリュームでは、スループットと容量を個別に設定できます。手動 QoS プール内のすべてのボリュームの全体的なスループットは、プールの合計スループットによって制限されます。プールのスループットは、割り当てられた容量とサービスレベルによって決まります。たとえば、40 TiB のプレミアム プールは、TiB あたり 64 MiBps で最大 2,560 MiBps のスループットを達成できます。一方、200 TiB のエクストリーム プールは、合計スループットが 25,600 MiBps のボリュームをサポートできます。
手動 QoS プールを設定したら、プール内の各ボリュームに必要なスループット上限を設定できます。単一ボリュームの最大スループットの上限は 4.5 GiBps、大容量ボリュームの場合は 30 GiBps です。
プールとボリュームのコマンドまたは API には、プールの使用可能なスループット値と割り当てられたスループット値が表示され、合計スループットの管理に役立ちます。手動 QoS プールを作成してボリューム スループットを定義するには、ストレージ プールを作成するとボリュームを作成するをご覧ください。
Flex Unified ONTAP モードプールで QoS ポリシー グループを使用してスループットと IOPS の上限を構成するには、Flex Unified ONTAP モードの手動 QoS を管理するをご覧ください。
ストレージ プールの作成
Standard、Premium、Extreme のサービスレベルに手動 QoS を使用してストレージ プールを作成します。
gcloud netapp storage-pools create POOL_NAME \ --project=PROJECT_NAME \ --location=LOCATION \ --capacity=CAPACITY \ --service-level=SERVICE_LEVEL \ --qos-type=QOS_TYPE \ --network=name=NETWORK_NAME
次の情報を置き換えます。
POOL_NAME: 作成するプールの名前。プール名はロケーションごとに一意である必要があります。PROJECT_NAME: ストレージ プールを作成するプロジェクトの名前。LOCATION: 作成するプールのロケーション。CAPACITY: プールの容量(GiB)。SERVICE_LEVEL: ストレージ プールのサービスレベル(Standard、Premium、Extreme)。QOS_TYPE: ストレージ プールの QoS タイプ(autoまたはmanual)。NETWORK_NAME: Virtual Private Cloud ネットワークの名前。
Flex Unified Default-mode サービスレベルに手動 QoS を使用してストレージ プールを作成します。
gcloud netapp storage-pools create POOL_NAME \ --project=PROJECT_NAME \ --location=LOCATION \ --capacity=CAPACITY \ --service-level=flex \ --type=unified \ --mode=default \ --qos-type=QOS_TYPE \ --network=name=NETWORK_NAME
次の情報を置き換えます。
POOL_NAME: 作成するプールの名前。プール名はロケーションごとに一意である必要があります。PROJECT_NAME: ストレージ プールを作成するプロジェクトの名前。LOCATION: 作成するプールのロケーション。CAPACITY: プールの容量(GiB)。QOS_TYPE: ストレージ プールの QoS タイプ(autoまたはmanual)。NETWORK_NAME: VPC ネットワークの名前。
ストレージ プールを編集する
手動 QoS を使用するように既存の自動 QoS ストレージ プールを編集します。
gcloud netapp storage-pools update POOL_NAME \ --project=PROJECT_NAME \ --location=LOCATION \ --qos-type=QOS_TYPE
次の情報を置き換えます。
POOL_NAME: 更新するプールの名前。PROJECT_NAME: プロジェクトの名前。LOCATION: プールのロケーション。QOS_TYPE: ストレージ プールの更新された QoS タイプ。manual構成のみがサポートされています。
ボリュームを作成
指定した手動 QoS スループット上限でボリュームを作成します。
gcloud netapp volumes create VOLUME_NAME \ --project=PROJECT_NAME \ --location=LOCATION \ --storage-pool=STORAGE_POOL \ --capacity=CAPACITY \ --protocols=PROTOCOLS \ --share-name=SHARE_NAME \ --throughput-mibps=THROUGHPUT_MIBPS
次の情報を置き換えます。
VOLUME_NAME: ボリュームの名前。この名前はロケーションごとに一意である必要があります。PROJECT_NAME: ボリュームを作成するプロジェクトの名前。LOCATION: ボリュームのロケーション。STORAGE_POOL: ボリュームを作成するストレージ プール。CAPACITY: ボリュームの容量(GiB)。この値は、NAS クライアントに表示される容量を定義します。PROTOCOLS: ボリュームのエクスポートに使用される NAS プロトコル。有効な選択肢は、NFSv3、NFSv4、SMB、および次の組み合わせです。nfsv3,nfsv4nfsv3,smbnfsv4,smb
選択したプロトコル タイプに応じて、
--export-policyや--smb-settingsなどのプロトコル固有のフラグを追加することをおすすめします。SHARE_NAME: ボリュームの NFS エクスポート パスまたは SMB 共有名。THROUGHPUT_MIBPS: ボリュームのスループット上限(MiBps)。
その他のオプション フラグの詳細については、ボリュームの作成に関する Google Cloud SDK のドキュメントをご覧ください。
Flex Unified ONTAP モードのサービスレベルの手動 QoS を管理する
Flex Unified ONTAP モードのストレージ プールでは、QoS ポリシー グループ(QPG)を使用してスループットと IOPS の上限を設定できます。複数の QPG を作成し、ワークロードのパフォーマンス ニーズに基づいてボリュームを割り当てることができます。QPG を使用すると、1 つのワークロードが他のワークロードに影響を与えるのを防ぎ、1 つの Flex Unified ONTAP モードプール内の複数のワークロードで一貫したパフォーマンスを実現できます。パフォーマンスのニーズが変化した場合は、ダウンタイムなしで既存のボリュームを別の QPG に移動できます。
QoS ポリシー グループには次の機能があります。
専用パフォーマンス割り当てと共有パフォーマンス割り当て: スループットと IOPS の上限を QPG 内のすべてのボリュームで共有するか(
is-shared=true)、各ボリュームに個別に適用するか(is-shared=false)を選択します。きめ細かいスループットと IOPS の上限: アプリケーションのパフォーマンス目標を達成するために、各ポリシー グループの最大スループット(MiBps)と IOPS の上限を設定します。
動的ボリューム割り当て: ボリュームの作成時にポリシー グループにボリュームを割り当てる、ワークロードの実行中に割り当てを変更する、またはボリュームをプールのデフォルトの共有パフォーマンス設定(
qos-policy-group none)に割り当てたままにします。ライブ上限の変更: I/O を中断したり、ストレージのダウンタイムを発生させたりすることなく、既存の QoS ポリシー グループのスループットと IOPS の上限をリアルタイムで変更します。
新しい QoS ポリシー グループを作成する
ONTAP モードのストレージ プールに新しい QoS ポリシー グループを作成します。
gcloud netapp storage-pools execute STORAGE_POOL_NAME \ --location=LOCATION \ -- "qos policy-group create -policy-group QPG_NAME -vserver SVM_NAME -max-throughput IOPS,THROUGHPUT -is-shared IS_SHARED_TRUE_OR_FALSE"
次の情報を置き換えます。
STORAGE_POOL_NAME: ONTAP モードのストレージ プールの名前。LOCATION: ONTAP モードのストレージ プールのロケーション。QPG_NAME: 作成する QPG の名前。SVM_NAME: ストレージ仮想マシン(SVM)の名前。IOPS: QPG のボリュームに割り当てる IOPS の上限。1 IOPS 以上の整数値を指定します。THROUGHPUT: QPG のボリュームに割り当てる最大スループットの上限。1 MiBps 以上の整数値を指定します。IS_SHARED_TRUE_OR_FALSE: QoS 制限の適用方法を指定するブール値。QPG に割り当てられたすべてのボリュームで共有 QoS を有効にするにはtrueを指定し、各ボリュームで専用 QoS を個別に有効にするにはfalseを指定します。このプロパティは不変であり、QPG の作成後に更新することはできません。
QoS ポリシー グループをボリュームに割り当てる
ボリュームの作成時に QoS ポリシー グループを割り当てます。
gcloud netapp storage-pools execute STORAGE_POOL_NAME \ --location=LOCATION \ -- "volume create -volume VOLUME_NAME -vserver SVM_NAME -aggregate AGGREGATE_NAME -size SIZE -junction-path /VOLUME_NAME -qos-policy-group QPG_NAME"
次の情報を置き換えます。
STORAGE_POOL_NAME: ONTAP モードのストレージ プールの名前。LOCATION: ONTAP モードのストレージ プールのロケーション。VOLUME_NAME: 作成する新しいボリュームの名前。SVM_NAME: SVM の名前。AGGREGATE_NAME: 集計の名前。SIZE: ボリュームのサイズ(GiB)。QPG_NAME: ボリュームに割り当てる QPG の名前。
既存のボリュームに QoS ポリシー グループを割り当てる
既存のボリュームに QoS ポリシー グループを割り当てます。
gcloud netapp storage-pools execute STORAGE_POOL_NAME \ --location=LOCATION \ -- "volume modify -vserver SVM_NAME -volume VOLUME_NAME -qos-policy-group QPG_NAME"
次の情報を置き換えます。
STORAGE_POOL_NAME: ONTAP モードのストレージ プールの名前。LOCATION: ONTAP モードのストレージ プールのロケーション。SVM_NAME: SVM の名前。VOLUME_NAME: QPG を割り当てるボリュームの名前。QPG_NAME: ボリュームに割り当てる新しい QPG の名前。
ボリュームから QoS ポリシー グループを削除する
-qos-policy-group を none に設定して、ボリュームから QoS ポリシー グループを削除します。
gcloud netapp storage-pools execute STORAGE_POOL_NAME \ --location=LOCATION \ -- "volume modify -vserver SVM_NAME -volume VOLUME_NAME -qos-policy-group none"
次の情報を置き換えます。
STORAGE_POOL_NAME: ONTAP モードのストレージ プールの名前。LOCATION: ONTAP モードのストレージ プールのロケーション。SVM_NAME: SVM の名前。VOLUME_NAME: QPG を削除するボリュームの名前。
QoS ポリシー グループを変更する
既存の QoS ポリシー グループのスループットと IOPS の上限を更新します。
gcloud netapp storage-pools execute STORAGE_POOL_NAME \ --location=LOCATION \ -- "qos policy-group modify -policy-group QPG_NAME -max-throughput IOPS,THROUGHPUT"
次の情報を置き換えます。
STORAGE_POOL_NAME: ONTAP モードのストレージ プールの名前。LOCATION: ONTAP モードのストレージ プールのロケーション。QPG_NAME: 変更する QPG の名前。IOPS: QPG の更新後の最大 IOPS 上限。最小値は 1 IOPS です。THROUGHPUT: QPG の更新された最大スループット上限。最小値は 1 MiBps です。
QoS ポリシー グループを削除する
QoS ポリシー グループを削除します。
gcloud netapp storage-pools execute STORAGE_POOL_NAME \ --location=LOCATION \ -- "qos policy-group delete -policy-group QPG_NAME"
次の情報を置き換えます。
STORAGE_POOL_NAME: ONTAP モードのストレージ プールの名前。LOCATION: ONTAP モードのストレージ プールのロケーション。QPG_NAME: 削除する QPG の名前。
次のステップ
ボリュームの移行について確認する。