Jump to content 日本-日本語

製品  >  ソフトウェア  >  HP- UX Developer Edge

「サーバ仮想化によるスケールアウト」の新潮流・後編

HP-UX/Integrityサーバー お問い合せ
コンテンツに進む
HAクラスタの疑問を解く・後編
サーバ仮想化のユニークな点は、アプリケーションのサービスレベル目標(SLO)を監視し、その変化に応じてリソースをリアルタイムに配分する能力にある。つまり、少ないリソースを多くのアプリケーションで効率的に利用することができるわけだ。特集2では、HPが提供するProcess Resource Manager(PRM)とWorkLoad Manager(WLM)を例にとり、サーバ仮想化によるサービスレベル管理のメカニズムを詳しく紹介する。
「サーバ仮想化によるスケールアウト」の新潮流・後編
リソース・パーティションを実現するpsetとPRM
vPar・pset・PRMを操るSLO管理ツールWLM
2004年8月
テクニカルライター 吉川和巳

リソース・パーティションを実現するpsetとPRM


前編で説明したとおり、vParによるパーティショニングによって、1台のミッドレンジ/ハイエンド・サーバを複数の「論理的なサーバ」(独立したOS)に分割することができる。一方、HPのVSE(Virtual Server Environment)では、さらに粒度の細かなパーティショニング技術として、Processor Set(pset)およびProcess Resource Manager(PRM)という2つを用意している。

vParsが「1台のサーバを複数のOSに分割する」のに対し、psetとPRMは「1つのOSを複数のリソース・パーティションに分割する」ためのメカニズムである。つまり、1つのOSが管理するリソース(プロセッサーやメモリ、ディスク・バンド幅)をいくつかに分割し、それぞれに異なるアプリケーションを割り当てるのである。なお、psetはHP-UX 11iで無償で提供されている機能であり、PRMは有償機能として提供されている。


プロセッサーをグループ化するpset


図1は、psetの概要を表した図である。

図1:psetによるプロセッサーのグループ化
図1:psetによるプロセッサーのグループ化

この図が示すように、HP-UX 11iでは、複数のプロセッサーをグループ化したプロセッサー・セット(pset)を設定できる。そして、それぞれのpset内で動作させるアプリケーション(プロセス)をコマンドで指定する。このpsetによってプロセッサー・リソースを分割することで、複数アプリケーション間の干渉を防ぐことができる。図1の例でいえば、仮にアプリケーションのバグやピーク時負荷によってpset Aのプロセッサー利用率が100%に達したとしても、pset Bやpset Cのアプリケーションに影響が及ぶことはない。つまり、共用ホスティングでありながら、あたかも専用ホスティングのように常時一定のパフォーマンスを維持できるのである。

また、psetを構成するプロセッサー数の変更や、割り当てるプロセスの設定などは、すべて動的に実施できる。アプリケーションの動作を止める必要がなく、コマンド1つで即座に実行できるため、負荷ピーク時にプロセッサーを増強するなどの緊急対応も可能だ。


リソース利用率を%単位で制御するPRM


一方、HPが有償ソフトウェアとして提供するPRMは、プロセッサーとメモリ、ディスク・バンド幅のそれぞれの利用率について、アプリケーションごとに%単位の制御を実現する。たとえば、1つのOSが管理するプロセッサー・リソース全体を100%として、アプリケーション・グループ1には33%の使用権を、グループ2には66%の使用権をそれぞれ割り当てるといった運用が可能である。この割り当て例でPRMを動作させると、図2のようなプロセッサー・リソース管理が実施される。

図2:PRMによるプロセッサー利用率の制御
図2:PRMによるプロセッサー利用率の制御

図2が示すように、プロセッサーに空きがある状態(時間A〜B)では、グループ1は使用権を上回るプロセッサー・リソースを得ることができる。しかし、プロセッサーが逼迫してくると(時間B〜)、グループ1の利用率は最大33%に抑えられ、グループ2には66%が確保される。

こうした%単位のきめ細かなリソース管理のカギは、HP-UXのスケジューラが握っている。HP-UXの標準のスケジューラでは、UNIX OSでは一般的な、プロセスの優先度に基づくスケジューリングが実施される。しかし周知のとおり、単純な優先度ベースのアルゴリズムでは、図2のような安定した利用率制御は実現できない。そこでPRMでは、標準スケジューラの代わりにFair Share Scheduler(FSS)と呼ばれる専用のスケジューラをHP-UXに組み込むことで、指定された利用率を厳密に履行するOS環境を実現している。

図3は、このPRMとpsetの組み合わせによるリソース管理の例である。

図3:psetとPRMの組み合わせ例
図3:psetとPRMの組み合わせ例

この例では、まずpset AとBにそれぞれアプリケーション・グループAとBを固定で割り当てている(図左上)。また、pset Cでは、アプリケーション・グループCおよびDで、PRMによる%単位の利用率制御を実施している(図右上)。さらにメモリとディスク・バンド幅については、すべてのグループに対してPRMを利用した利用率制御を適用している(図中央下)。

このように、psetとPRMの連携により、プロセッサー単位および%単位の厳密なリソース・パーティショニングが可能になり、メインフレーム・ライクなアプリケーションの集約と安定運用が実現する。

トップへ   次のページへ ※本文の続きを閲覧するには、HP-UX Developer Edgeへの会員登録が必要です。

本ページの内容は執筆時の情報に基づいており、異なる場合があります。

お問い合わせ

ご購入前のお問い合わせ


ご購入後のお問い合わせ

オンラインサポート
製品の標準保証でご利用いただける無償のサービスです。

ショールーム

ショールーム 導入をご検討のお客様へ
業務アプリケーションの継続・標準化・開発性とシステム担当者様、システム開発者様が抱える悩み・疑問に対する解決策実体験して頂けます。
印刷用画面へ
プライバシー ご利用条件・免責事項