【第9回 PowerScale Isilonコラム】OneFS 9.5.0新機能 「SmartQoS」の紹介

技術解説

【第9回 PowerScale Isilonコラム】OneFS 9.5.0新機能 「SmartQoS」の紹介

今回のコラムではOneFS 9.5.0で実装されたSmartQoSの機能を紹介します。 これまでQoS(Quality of Service)機能といえば第8回コラムで紹介したSyncIQレプリケーションの帯域制御などがありましたがSMB、NFSといったサービス用プロトコルにはQoS機能がありませんでした。 SmartQoSは待望のサービス用プロトコルのQoS機能です。

  • そもそもQoSとは?
  • SmartQoS機能の概要
  • 活用ユースケース
  • 設定のポイント
  • まとめ

そもそもQoSとは?

ITの世界には多種多様なQoSが存在しますがそれらの共通点は「目的のサービス品質(Quality of service)を担保するために通信を区別し何らかの優先順位やリソース分配ルールを設けること」です。 

現実の社会を例にするとQoSのイメージが掴みやすいかと思います。 

 例:緊急走行時の救急車 

  •  ①赤信号の交差点への進入が許される
  •  ②上限速度が引き上げられる(一般道:80km/h、高速道路:100km/h) 
  •  ③ほかのクルマは救急車の通行を妨げないよう「道路左側に寄る」「減速・停止する」などしなければならない 

緊急走行時の救急車 |東京エレクトロンデバイス

①②は重要度の高い対象に優先的なリソース使用を許可する方式のQoS 

は重要度の低い対象のリソース使用を制限する方式のQoS 

SmartQoSは後者の方式だと言えます。 

SmartQoS機能の概要

SmartQoSは特定のワークロードに対してプロトコルOPS(Operations per second)のリミットを設けるQoS機能です。追加のライセンス購入などは不要な標準機能ですので従来のOneFSユーザも9.5.0にバージョンアップすることで利用可能になります。 

制限対象のワークロードは以下のメトリック(変数)によって定義します。複数のメトリックを組み合わせることで対象を絞った細やかなワークロード定義が可能です。 

  •  Remote IP address:クライアントのIPアドレス 
  •  Local IP address:クラスタノードのIPアドレス 
  •  Protocol:アクセスプロトコル 
  •  Export ID:NFSエクスポート 
  •  User name:ユーザー名  
  •  Group name:グループ名     
  •  Zone name:アクセスゾーン  

活用ユースケース

活用例①複数サービスの統合ストレージ環境

従来のOneFSではワークロードごとにリソースを分けたい場合、複数タイプのハードウェアモデルとSmartPoolsライセンスを用意してティアリング構成をとることが解決策でした。(高パフォーマンスが必要なワークロードにオールフラッシュのプールを割り当てる 等) 

それとは逆の考え方になりますが、SmartQoS機能を利用すれば優先度の低いワークロードにOPS制限をかけるかたちで優先度の高いサービスワークロードの品質を担保することができます。 

ユースケース|東京エレクトロンデバイス

SmartQoSはライセンスフリーな標準機能かつ複数タイプのハードウェアを用意する必要がないため、追加のコストをかけずに簡単に導入できるメリットがあります。 

(もちろんSmartPoolsとの併用も可能です。併用した場合はより柔軟でメリハリの効いたリソース分配が可能です。) 

活用例②SMB/NFSでバックアップをとっている環境

SMBNFSのプロトコルでバックアップをとっている環境ではバックアップI/OQoSをかけることで本番サービスへの影響リスクを低減することができます。 

PowerScaleがバックアップの対象例|東京エレクトロンデバイス

影響回避ためにバックアップを休日や夜間帯のみにスケジュールするの一つの手段ですが、SmartQoSを利用すれば日中のサービスワークロードがある時間帯にもバックアップをとれる可能性が広がります。

設定のポイント

ポイントはQoSを設定する目的と対象ワークロードを明確にすることです。また、事前にモニタリング期間を設けて対象ワークロードの定常的なOPS値、ピークOPS値などを把握するべきでしょう。 

QoS設定前後プロトコルOPS変化の例 

BeforeBefore|東京エレクトロンデバイス

AfterAfter|東京エレクトロンデバイス

 

上の例はどちらも同一のスクリプトを用いたクライアントI/OですがAfterの画面では20 OPSのリミットを設定したことにより実測のOPS値が抑制されていることが確認できます。(タイミングによって若干リミットをオーバーすることがあります。) 

 補足情報: 

ワークロードのプロトコルOPS値を確認する方法は上のブラウザ画面以外に 

  •  ・クラスタのCLI(コマンド)を利用する方法 
  •  ・InsightIQPerformance monitoringを利用する方法 

 

があります。 

特にInsightIQはパフォーマンスの推移をグラフィカルに表示出来るので指定した期間のピークOPS値を知りたい場合などに便利です。無償で利用可能なPowerScale(Isilon)専用の可視化ツールですので積極的な活用をおススメします。InsightIQのプロトコルOPS表示のイメージ|東京エレクトロンデバイス

 

まとめ

今回のコラムでは「SmartQoS機能」を紹介しました。様々なクライアントサービスが混在する環境ではワークロードごとのパフォーマンスの把握・管理はとても重要であり、SmartQoSはその業務を支援してくれる強力な機能です。 

現行のリリースではプロトコルOPSによるワークロード抑制が可能ですが今後はリミットの種類が追加されるなどの機能拡充にも期待したいですね。アップデートがあれば弊社のWebコンテンツでも取り上げたいと思います。 

今後ともPowerScaleコラムシリーズを含む弊社Webコンテンツにご期待ください。 

ポイント

SmartQoSはワークロードのプロトコルOPSを制限する機能 

OPSリミットを設定する前に対象のワークロードをよく理解することが重要 

「フラッシュストレージ」に関連する製品・サービス