2 IBM DB2 Databaseプラグインの構成

この章では、Enterprise ManagerにIBM DB2 Databaseターゲットを追加する前に完了する必要のある構成タスクの手順について説明します。

次の構成タスクが用意されています。

プラグインをデプロイする管理エージェントの構成

エージェントを構成するには、まず、エージェント・サービスを起動するユーザーがローカル管理者グループに属していることを確認します。また、プラグインをデプロイするすべてのエージェントで優先資格証明を設定する必要があります。これを行うには、次の項の手順に従います。

ユーザーへの高度な権限の割当て

高度な権限を割り当てるには、次のようにします。

  1. エージェントをホストするローカルのMicrosoft Windowsノードで、エージェント・サービスを起動するユーザーがローカル管理者グループに属していることを確認します。そうでない場合は、追加します。
  2. Windowsの「ローカル セキュリティの設定」ツールを開き、エージェント・サービスを起動するユーザーに次の高度な権限を付与します。
    • オペレーティング システムの一部として機能

    • プロセスのメモリ クォータの増加

    • バッチ・ジョブとしてログオンする権限

    • プロセス レベル トークンの置き換え

  3. エージェント・サービスが稼働している場合は、再起動します。
  4. Enterprise Managerでホストおよびエージェントの優先資格証明を設定します。詳細は、「優先資格証明の設定と検証」を参照してください。
    • 優先資格証明で設定するOSユーザーは、ローカル管理者グループに属している必要があります。

    • このOSユーザーは、次の高度な権限を持っている必要があります。

      • オペレーティング システムの一部として機能

      • プロセスのメモリ クォータの増加

      • バッチ ジョブとしてログオン

      • プロセス レベル トークンの置き換え

優先資格証明の設定と検証

プラグインをデプロイするすべてのエージェントで優先資格証明を設定するには、次のようにします。

  1. Enterprise Managerで、「設定」メニューから「セキュリティ」「優先資格証明」の順に選択します。

    「優先資格証明」ページが開き、ターゲットの表が表示されます。

  2. 表からホストのターゲット・タイプを選択し、管理対象優先資格証明をクリックします。

    ホスト優先資格証明ページが表示されます。

  3. ホスト優先資格証明ページの「ターゲットの資格証明」セクションで、プラグインをデプロイする管理エージェントが稼働しているホストを選択し、「設定」をクリックします。
  4. 「名前付き資格証明の選択」ダイアログ・ボックスで、「新規」として資格証明を選択し、ユーザー名とパスワードを指定して「テストと保存」をクリックします。テストが正常に実行されたら、資格証明は適切に設定されています。
  5. プラグインをデプロイする管理エージェントに対してOSコマンド・ジョブを実行します。
    • Enterprise Managerにログインします。

    • 「エンタープライズ」メニューから「ジョブ」「アクティビティ」を選択します。

    • 「ジョブ・アクティビティ」ページで「ジョブの作成」リストから「OSコマンド」を選択し、「実行」をクリックします。

    • 次のページで必要な詳細を入力し、「発行」をクリックしてジョブを実行します。ジョブが正常に実行されたら、資格証明は適切に設定されています。

ノート:

UIからジョブを実行するには、ターゲットのエージェント・ホストの優先資格証明が、db2コマンドライン・ユーティリティを実行でき、IBM DB2 Databaseを起動、停止、静止および静止解除する権限を持つユーザー用のものである必要があります。

適切なオペレーティング・システム・ユーザーの使用と認可レベルおよび権限の割当て

IBM DB2 Databaseプラグインは、IBM DB2で使用されるテーブル・ファンクションにアクセスします。同プラグインがこれらのテーブル・ファンクションにアクセスするには、特定のユーザー・グループに割り当てられた、適切なオペレーティング・システム・ユーザーを使用する必要があります。このオペレーティング・システム・ユーザーには、少なくとも最小の権限を割り当てる必要があります。また、正しい認可レベルも割り当てる必要があります。

ノート:

IBM DB2ユーザーはオペレーティング・システム・ユーザーである必要があります。IBM DB2では、セキュリティをホスト・オペレーティング・システムに依存しているため、固有のデータベース・ユーザーを使用できません。

オペレーティング・システム・ユーザーをまだ作成していない場合は、IBM DB2を実行しているホスト上にユーザーを1つ作成します。その後、次のステップに従って、そのユーザーを新規または既存のユーザー・グループに割り当てます。

  1. IBM Data Studioを開きます。

  2. ツリー・ビューから、変更するデータベースを選択し、図2-1に示すように管理者アカウントを使用して接続します。

    図2-1 IBM Data Studioへの接続


    IBM Data Studioへの接続

  3. ツリー・ビューから、「ユーザーとグループ」を展開して「ユーザー」を選択します。

  4. 右側のペインで、「新規オブジェクトの作成」を選択します。

  5. 新規ユーザーの「プロパティ」ウィンドウの「一般」タブで、オペレーティング・システムのユーザー名を入力します。

  6. 「権限」タブで、アカウントにCONNECTが付与されていることを確認します。

  7. 適用された変更内容を確認するには、図2-2に示されているように、新しく作成したユーザーを使用してデータベースへの接続を試行します。

    図2-2 データベースへの接続


    データベースへの接続

ノート:

これらのステップは、IBM DB2 SQLを使用してコマンドラインから実行することもできます。

さらに、オペレーティング・システム・ユーザー・グループに認可レベルと権限を割り当てます。IBM DB2でサポートされる認可レベルは、SYSADM、SYSCTRL、SYSMAINT、DBADMおよびLOADです。SYSADM、SYSCTRLおよびSYSMAINT認可レベルは、GRANT SQL文を使用して付与することはできません。これらの特別な認可レベルは、データベース・マネージャの構成ファイルからのみ設定できます。DBADM権限は、SYSADM認可レベルのユーザーのみが付与できます。

SYSMON認可レベルは、IBM DB2を管理するために必要です。このレベルは、IBM DB2で使用されるテーブル・ファンクション(SYSPROC.SNAPSHOT_DATABASEなど)にアクセスするために必要となります。

次のステップに従って、使用するユーザー・グループにSYSMON認可レベルを設定します。

  1. db2=>プロンプトで、次のコマンドを実行します。
    db2 => update dbm cfg using sysmon_group USERGROUP
    db2 => db2stop
    db2 => db2start
    
  2. 変更が反映されたかどうかを確認するために、次のコマンドを実行します。
    db2 => get dbm cfg
    

    このコマンドの出力は次のようになります。

    Database Manager Configuration
    Node type = Enterprise Server Edition with local and remote clients
    .....
       SYSADM group name     (SYSADM_GROUP)   =
       SYSCTRL group name    (SYSCTRL_GROUP)  =
       SYSMAINT group name   (SYSMAINT_GROUP) = 
       SYSMON group name     (SYSMON_GROUP)   = USERGROUP
    ......
    

ノート:

認可レベルと権限がIBM DB2でどのように実装されるかについては、IBMのWebサイトを参照してください。

IBM DB2でのヘルス・インジケータ(Health Indicator)メトリックとデータベースの監視(Database Monitoring)メトリックの構成

この項では、IBM DB2で実行する必要のある、インストール後の構成ステップについて説明します。

ヘルス・インジケータ(Health Indicator)メトリックに必要な構成

インスタンスおよびデータベース・オブジェクトのヘルス・インジケータは、データベース・マネージャの構成パラメータHEALTH_MONを使用して有効または無効にできます。これにより、テーブル・ファンクションHEALTH_TBS_HIHEALTH_DB_HIおよびHEALTH_DBM_HIに値が移入されます。これらのファンクションは、ヘルス・インジケータのしきい値に基づいてトリガーされたアラートを表示するために、プラグインによって使用されます。

ノート:

これらの設定を有効にすると、一部のリソース(CPUやメモリーなど)にオーバーヘッドが生じることがあります。したがって、これらのステップはヘルス・インジケータ(Health Indicator)メトリックを表示する必要がある場合にのみ実行してください。

HEALTH_MONをCLP (Command Line Processor)によって有効または無効にするには、次のコマンドを実行します。

db2==> update dbm cfg using HEALTH_MON [on;off]

変更が反映されたかどうかを確認するために、次のコマンドを実行します。

db2==> get dbm cfg

出力は次のようになります。

.....
.....
.....
Monitor health of instance and databases (HEALTH_MON) = ON
.....
..........

詳細は、IBMのWebサイトにアクセスしてください。

データベースの監視(Database Monitoring)メトリックのメトリック・コレクション・エラーを回避するために必要な構成

データベースの監視(Database Monitoring)メトリックのメトリック・コレクション・エラーを回避するには、GET_DBSIZE_INFOパッケージを呼び出して、STMG_DBSIZE_INFO表を作成し、必要なデータを移入する必要があります。

GET_DBSIZE_INFOプロシージャは、データベースのサイズと最大容量を計算します。算出された値は、プロシージャの出力パラメータとして返され、SYSTOOLS.STMG_DBSIZE_INFO表内にキャッシュされます。これらの値がキャッシュされるのは、計算のパフォーマンス・コストが高いためです。

SYSTOOLS.STMG_DBSIZE_INFO表は、このプロシージャの初回実行時に自動的に作成されます。SYSTOOLS.STMG_DBSIZE_INFO表にキャッシュされた値は、snapshot-timestampとrefresh-windowの各値に基づき、古い値でないことを確認されたうえで返されます。

キャッシュされた値が最新でない場合は、新たに算出された値がキャッシュされ、SYSTOOLS.STMG_DBSIZE_INFO表に挿入されて返された後、snapshot-timestamp値が更新されます。GET_DBSIZE_INFOで最後に取得されるパラメータはrefresh-windowです。

refresh-window (コール間の時間間隔)のデフォルト値は30分です。データベースの更新がより頻繁に行われる場合は、より短い時間に設定することもできます。

CLP(コマンドライン・プロセッサ)によりGET_DBSIZE_INFOを呼び出すには、次のコマンドを実行します。

db2==>CALL GET_DBSIZE_INFO(?, ?, ?, -1)

この例の場合、refresh-windowは30分になります。

文の監視に必要な構成

文を監視するメトリックのメトリック収集エラーを回避するには、DB2のプロンプトで次のコマンドを実行して、監視文のスイッチがオンになるようにデータベース・マネージャ構成を更新します。

db2 => update dbm cfg using DFT_MON_STMT on

ロックおよびロック待機の監視に必要な構成

分析ページでロックおよびロック待機情報に関するメトリック収集エラーを回避するには、DB2のプロンプトで次のコマンドを実行して、監視プラグイン・ユーザーがDB2で待機ロック管理ビューを問合せできるように権限を設定します。

IBM DB2バージョン9.1および9.5の場合、ロックとロック待機のスイッチがオンになるようにデータベース・マネージャ構成を更新します。

db2 => update dvm cfg using DFT_MON_LOCK on

IBM DB2バージョン9.7以上の場合、DB2ユーザーがMON_LOCKWAITS管理ビューに対する選択権限を持ち、DATAACCESS権限を持つことを確認してください。[username]がターゲットの構成時に使用される監視ユーザー名である場合、次のコマンドを実行します。

db2 => GRANT DATAACCESS ON DATABASE TO USER [username]
db2 => GRANT SELECT on TABLE SYSIBMADM.MON_LOCKWAITS TO USER [username]

データベース収集ヘルス・インジケータ・メトリックに必要な構成

データベース収集ヘルス・インジケータ・メトリックのデータを表示するには、監視対象のデータベースで表監視(DFT_MON_TABLE)を有効にする必要があります。

CLPによる表の監視を有効化または無効化するには、次のコマンドを実行します。

db2 => update dbm cfg using DFT_MON_TABLE [on; off]