IBMメインフレームにおいて、ワークロードマネージャ(WLM )は、 MVS/ESAメインフレームオペレーティング・システムおよびz/OSを含む後継システムの基本コンポーネントです。WLMは、管理者が定義した目標に基づいて、z/OS上で実行される作業のシステム・リソースへのアクセスを制御します。ワークロードマネージャのコンポーネントは、他のオペレーティング・システムにも存在します。例えば、IBMワークロードマネージャは、 AIXオペレーティング・システム用のソフトウェア製品としても提供されています。
メインフレームコンピュータでは、多数の異なるアプリケーションが同時に実行されます。実行中の処理に求められるのは、一貫した実行時間と予測可能なデータベースへのアクセスです。z /OSでは、ワークロードマネージャ(WLM)コンポーネントが、システム管理者による外部仕様に基づいて処理のシステムリソースへのアクセスを制御することで、これらのニーズを満たします。
システム管理者は、作業をサービス クラスに分類します。分類メカニズムでは、特定のアプリケーションが使用するトランザクション名、ユーザー ID、プログラム名などの作業属性を使用します。さらに、システム管理者は、アプリケーション作業を表すサービス クラスに対して、目標と重要度レベルを定義します。目標は、作業のパフォーマンスに関する期待値を定義します。目標は、応答時間、相対速度 (ベロシティと呼ばれる)、または特定の要件がない場合は任意として表現できます。応答時間は、作業要求がシステムに入ってから、アプリケーションが WLM に実行完了を通知するまでの期間を表します。WLM は、一連の作業要求の平均応答時間が期待される時間内に終了すること、または作業要求の一定割合がエンド ユーザーの期待を満たすことを保証することに関心があります。
応答時間の定義には、アプリケーションがWLMと通信することも必要条件となります。これが不可能な場合は、エンドユーザーがシステムに期待する速度を表すために、実行速度と呼ばれる相対的な速度指標が使用されます。
この測定は、継続的に収集されるシステム状態に基づいています。システム状態は、作業要求がシステムリソースを使用するタイミングと、他の作業によって使用されているために待機する必要があるタイミングを示します。後者は遅延状態と呼ばれます。使用中の状態の総数を、使用中および遅延状態を含むすべての生産状態の総数で割った値に100を乗じたものが実行速度です。この測定では、アプリケーションとWLMコンポーネント間の通信は不要ですが、応答時間目標よりも抽象的な指標です。
最後に、システム管理者は各サービス クラスに重要度を割り当て、システム負荷が高すぎてすべての処理を実行できない場合に、どのサービス クラスがシステム リソースへの優先アクセス権限を持つべきかを WLM に指示します。サービス クラスと目標定義は、レポート作成やさらなる制御のための他の構成要素とともにサービス ポリシーに整理され、WLM へのアクセス用にサービス定義として保存されます。アクティブなサービス定義は、並列シスプレックスクラスタのすべての z/OS システムが同じパフォーマンス目標に向けてアクセスおよび実行できるように、ペア データ セットに保存されます。
WLMは、作業とシステムリソースに関するデータを継続的に収集するクローズド制御メカニズムです。収集・集計された測定値をサービス定義のユーザー定義と比較し、ユーザーの期待が満たされていない場合は、作業のシステムリソースへのアクセスを調整します。このメカニズムは、事前に定義された時間間隔で継続的に実行されます。収集されたデータを目標定義と比較するために、パフォーマンス指標が計算されます。
サービスクラスのパフォーマンス指標は、目標が達成されたか、目標を上回ったか、達成されなかったかを示す単一の数値です。WLMは、達成されたパフォーマンス指標と重要度に基づいて、サービスクラスへのアクセスを変更します。このために、収集されたデータを使用して変更の可能性と結果を予測します。予測結果が、定義された顧客の期待に基づいて作業に有益であると判断された場合、変更が実行されます。WLMは、計算のための統計的に関連のあるサンプルベースを格納するために、20秒から20分の範囲のデータベースを使用します。また、制御可能で予測可能なシステムを維持するために、1つの決定間隔で1つのサービスクラスに利益をもたらす変更が実行されます。
WLM は、作業がシステム プロセッサ、I/O ユニット、システム ストレージにアクセスするのを制御し、作業実行のためのプロセスを開始および停止します。たとえば、システム プロセッサへのアクセスは、実行を希望する作業ユニット間の相対的な順位を定義するディスパッチ プライオリティによって制御されます。同じサービス クラスに分類されたすべての作業ユニットには、同じディスパッチ プライオリティが割り当てられます。既に述べたように、ディスパッチ プライオリティは固定されておらず、サービス クラスの重要度から単純に導き出されるものでもありません。目標達成度、システム 利用率、およびシステム プロセッサに対する作業の要求に基づいて変化します。他のすべてのシステム リソースを制御するためにも同様のメカニズムが存在します。z/OS Workload Manager による作業のシステム リソースへのアクセスを制御するこの方法は、目標指向ワークロード管理と呼ばれ、作業がシステム リソースにアクセスする方法のより静的な関係を定義するリソース エンタイトルメント ベースのワークロード管理とは対照的です。リソース エンタイトルメント ベースのワークロード管理は、たとえば大規模なUNIXオペレーティングシステムで見られます。
他のオペレーティング システムのワークロード管理コンポーネントとの大きな違いは、z/OS Workload Manager と、z/OS 上で実行される主要なアプリケーション、ミドルウェア、サブシステムとの緊密な連携です。WLM は、サブシステムがシステム内で作業単位の開始と終了を WLM に通知し、システム管理者がシステム上の作業を分類するために使用できる分類属性を渡せるインターフェースを提供します。さらに、WLM は、ロード バランシング コンポーネントが並列シスプレックス クラスタ内で最適なシステムに作業要求を配置できるインターフェースも提供します。データベースマネージャとリソースマネージャが競合状況を WLM に通知し、WLM がリソース ロックとラッチの保持者を昇格させることで遅延作業を支援できるようにする追加の計測機能も存在します。
時が経つにつれ、z/OS Workload Manager は、az/OS オペレーティング システムにおけるパフォーマンス関連のあらゆる側面を制御する中心的なコンポーネントとなりました。並列シスプレックス クラスタでは、z/OS Workload Manager の各コンポーネントが連携して、クラスタ上で実行されているアプリケーションの単一のイメージ ビューを提供します。複数の仮想パーティションを持つSystem zでは、z/OS WLM はLPARハイパーバイザと相互運用することで、z/OS パーティションの重み付けに影響を与え、論理パーティションが消費できる CPU 容量を制御できます。