ワークロードマネージャー

IBM メインフレームでは、ワークロード・マネージャーWLM )は、 MVS/ESAメインフレーム・オペレーティング・システム、およびz/OSを含むその後継システムの基本コンポーネントです。WLM は、管理者が定義した目標に基づいて、z/OS 上で実行される作業のためのシステム・リソースへのアクセスを制御します。ワークロード・マネージャーのコンポーネントは、他のオペレーティング・システム用にも存在します。例えば、IBM ワークロード・マネージャーはAIX オペレーティング・システム用のソフトウェア製品でもあります。

ワークロードマネージャー

メインフレーム・コンピュータでは、複数の異なるアプリケーションが同時に実行されます。作業実行には、一貫した実行時間とデータベースへの予測可能なアクセスが求められます。z /OSでは、ワークロード・マネージャー(WLM)コンポーネントが、システム管理者による外部指定に基づいて作業によるシステム・リソースへのアクセスを制御することで、これらのニーズを満たします。

システム管理者は、作業をサービス クラス分類します。この分類メカニズムでは、特定のアプリケーションが使用することがわかっているトランザクション名、ユーザー ID、プログラム名などの作業属性を使用します。さらにシステム管理者は、アプリケーション作業を表すサービス クラスの目標重要度レベルを定義します。目標は、作業のパフォーマンス期待値を定義します。目標は、応答時間、相対速度 (速度と呼ばれる)、または特定の要件が存在しない場合は任意として表現できます。応答時間は、作業要求がシステムに入ってから、アプリケーションが WLM に実行の完了を通知するまでの期間を表します。WLM は、一連の作業要求の平均応答時間が予想される時間内に終了すること、または作業要求のパーセンテージがエンドユーザーの期待を満たすことを保証することに関心があります。

応答時間の定義には、アプリケーションがWLMと通信することが必要です。これが不可能な場合は、相対的な速度指標(実行速度)を使用して、エンドユーザーがシステムに期待する速度を表します。

実行速度の定義
実行速度100合計使用サンプル合計使用サンプル+合計遅延サンプル{\displaystyle {\text{実行速度}}=100\cdot {\frac {\text{合計使用サンプル数}}{{\text{合計使用サンプル数}}+{\text{合計遅延サンプル数}}}}}

この測定は、継続的に収集されるシステム状態に基づいています。システム状態は、作業要求がシステムリソースを使用するタイミングと、他の作業によってそのリソースが使用されているために待機する必要があるタイミングを表します。後者は遅延状態と呼ばれます。すべての使用状態とすべての生産状態(使用状態と遅延状態)の商に100を掛けたものが実行速度です。この測定では、アプリケーションとWLMコンポーネントとの通信は必要ありませんが、応答時間の目標よりも抽象度が高くなります。

最後に、システム管理者は各サービスクラスに重要度を割り当て、システム負荷が高すぎてすべての作業を実行できない場合に、どのサービスクラスがシステムリソースへの優先アクセスをWLMに与えるかを指示します。サービスクラスと目標定義は、レポート作成やさらなる制御のための他の構成要素とともにサービスポリシーにまとめられ、WLMへのアクセス用のサービス定義として保存されます。アクティブなサービス定義はカップル・データセットに保存され、Parallel Sysplexクラスター内のすべてのz/OSシステムが、同じパフォーマンス目標に向けてアクセスし、実行できるようになります。

WLMは、作業とシステムリソースに関するデータを継続的に収集するクローズドな制御メカニズムです。収集・集約された測定値をサービス定義のユーザー定義と比較し、ユーザーの期待が達成されていない場合は、システムリソースへの作業のアクセスを調整します。このメカニズムは、事前に定義された時間間隔で継続的に実行されます。収集されたデータを目標定義と比較するために、パフォーマンス指標が計算されます。

パフォーマンス指標の定義
応答時間について: P実際に達成された応答時間応答時間目標{\displaystyle {\text{応答時間の場合: }}PI={\frac {\text{実際に達成された応答時間}}{\text{応答時間目標}}}}

実行速度について: P実行速度目標達成された実行速度{\displaystyle {\text{実行速度の場合: }}PI={\frac {\text{実行速度目標}}{\text{達成された実行速度}}}}

サービスクラスのパフォーマンス指標は、目標定義が達成できたか、超過達成されたか、あるいは未達成であったかを示す単一の数値です。WLMは、達成されたパフォーマンス指標と重要度に基づいて、サービスクラスのアクセスを変更します。このために、収集されたデータを用いて変更の可能性と結果を予測します。定義された顧客の期待に基づいて、変更が作業に有益であるという予測結果が得られた場合、変更が実行されます。WLMは、計算のための統計的に適切なサンプルのベースとして、20秒から20分の範囲のデータベースを使用します。また、制御された予測可能なシステムを維持するために、1つの決定間隔において、1つのサービスクラスに利益をもたらす変更が実行されます。

WLM は、作業のシステム プロセッサ、I/O ユニット、システム ストレージへのアクセスを制御し、作業実行プロセスを開始および停止します。たとえば、システム プロセッサへのアクセスは、実行する作業単位間の相対的な順位を定義するディスパッチ優先順位によって制御されます。同じサービス クラスに分類されたすべての作業単位には、同じディスパッチ優先順位が割り当てられます。すでに述べたように、ディスパッチ優先順位は固定ではなく、サービス クラスの重要度から単純に導出されるものでもありません。これは、目標の達成度、システム使用率、およびシステム プロセッサに対する作業の需要に基づいて変化します。他のすべてのシステム リソースを制御するために、同様のメカニズムが存在します。z/OS ワークロード マネージャーが作業のシステム リソースへのアクセスを制御するこの方法は、目標指向ワークロード管理と呼ばれ、作業がシステム リソースにどのようにアクセスできるかについてのはるかに静的な関係を定義するリソース割り当てベースのワークロード管理とは対照的です。リソース割り当てベースのワークロード管理は、たとえば 大規模なUNIXオペレーティング システムに採用されています。

他のオペレーティング・システムのワークロード管理コンポーネントとの大きな違いは、z/OS ワークロード・マネージャーと主要アプリケーション( z/OS 上で実行されるミドルウェアおよびサブシステム)との緊密な連携です。WLM は、サブシステムがシステム内で作業単位の開始と終了を WLM に通知し、システム管理者がシステム上の作業を分類するために使用できる分類属性を渡すためのインターフェースを提供します。さらに、WLM は、ロード・バランシング・コンポーネントが並列シスプレックス・クラスター内の最適なシステムに作業要求を配置するためのインターフェースも提供します。データベース・マネージャーとリソース・マネージャーが競合状況を WLM に通知し、WLM がリソースのロックとラッチの保持者を昇格させることで遅延作業を支援できるようにするための追加のインスツルメンテーションも存在します。

時間の経過とともに、z/OS ワークロード・マネージャーは、z/OS オペレーティング・システムにおけるあらゆるパフォーマンス関連の側面を統括的に制御するコンポーネントとなりました。Parallel Sysplex クラスターでは、z/OS ワークロード・マネージャーの各コンポーネントが連携して、クラスター上で実行中のアプリケーションを単一のイメージ・ビューで表示します。複数の仮想パーティションを持つSystem zでは、z/OS WLM はLPARハイパーバイザーと相互運用し、z/OS パーティションの重み付けを調整し、論理パーティションで消費できる CPU 容量を制御できます。

文学

  • Paola Bari他著:システム・プログラマーズ・ガイド:ワークロード管理。IBM Redbook、SG24-6472

参照