Hitachi

JP1 Version 11 JP1/Performance Management - Agent Option for Microsoft(R) SQL Server


2.1.4 PFM - Agent for Microsoft SQL Serverのセットアップ手順

ここでは,PFM - Agent for Microsoft SQL Serverを運用するための,セットアップについて説明します。

[図データ]は使用する環境によって必要になるセットアップ項目,またはデフォルトの設定を変更する場合のオプションのセットアップ項目を示します。

〈この項の構成〉

(1) PFM - Agent for Microsoft SQL Serverの登録[図データ]

PFM - ManagerおよびPFM - Web Consoleを使ってPFM - Agentを一元管理するために,PFM - ManagerおよびPFM - Web ConsoleにPFM - Agent for Microsoft SQL Serverを登録する必要があります。

PFM - Managerのバージョンが08-50以降の場合,PFM - Agentの登録は自動で行われるため,ここで説明する手順は不要です。

ただし,PFM - Managerよりリリース時期が新しいPFM - AgentまたはPFM - RMについては手動登録が必要になる場合があります。手動登録の要否については,PFM - Managerのリリースノートを参照してください。

PFM - Agentの登録の流れを次に示します。

図2‒4 PFM - Agentの登録の流れ

[図データ]

重要
  • PFM - Agentの登録は,インスタンス環境を設定する前に実施してください。

  • すでにPFM - Agent for Microsoft SQL Serverの情報が登録されているPerformance Managementシステムに,新たに同じバージョンのPFM - Agent for Microsoft SQL Serverを追加した場合,PFM - Agentの登録は必要ありません。

  • バージョンが異なるPFM - Agent for Microsoft SQL Serverを,異なるホストにインストールする場合,古いバージョン,新しいバージョンの順でセットアップしてください。

  • PFM - Managerと同じホストにPFM - Agentをインストールした場合,jpcconf agent setupコマンドが自動的に実行されます。共通メッセージログに「KAVE05908-I エージェント追加セットアップは正常に終了しました」と出力されるので,結果を確認してください。コマンドが正しく実行されていない場合は,コマンドを実行し直してください。コマンドの実行方法については,マニュアル「JP1/Performance Management リファレンス」のコマンドの章を参照してください。

  • PFM - Agent for Microsoft SQL Serverは,共有メモリーを使用してMicrosoft SQL Server と通信しているため,Microsoft SQL Server側で共有メモリーを有効にする設定が必要です。クラスタ環境の場合は,TCP/IPを使用してMicrosoft SQL Serverと通信するので,Microsoft SQL Server側でTCP/IPを有効にしてください。

  • 設定はMicrosoft SQL ServerのSQL Server構成マネージャーなどから行います。詳細については,Microsoft SQL Serverのマニュアルを参照してください。

  • Microsoft SQL Serverのメモリー設定で,最小クエリメモリーの値を初期設定の1,024キロバイトより低く設定しないでください。低く設定した場合,Microsoft SQL Serverに対するクエリーが失敗し,データ収集ができなくなります。

  • PFM - Agent for Microsoft SQL Serverの情報を登録する作業では,PFM - Web Consoleの[レポート階層]画面および[アラーム階層]画面に「SQL」という名前のフォルダが作成されます。[レポート階層]画面で,すでに独自に「SQL」という名前のフォルダまたはファイルを作成していた場合には,名前を変更してから作業を始めてください。

(a) PFM - Agent for Microsoft SQL Serverのセットアップファイルをコピーする

PFM - Agent for Microsoft SQL ServerインストールしたホストにあるセットアップファイルをPFM - ManagerおよびPFM - Web Consoleをインストールしたホストにコピーします。手順を次に示します。

  1. PFM - Web Consoleが起動されている場合は,停止する。

  2. PFM - Agentのセットアップファイルをバイナリーモードでコピーする。

    ファイルが格納されている場所およびファイルをコピーする場所を次の表に示します。

    表2‒2 コピーするセットアップファイル

    PFM - Agentの

    セットアップファイル

    コピー先

    PFMプログラム名

    OS

    コピー先フォルダ

    インストール先フォルダ\setup\jpcagtqw.EXE

    PFM - Manager

    Windows

    PFM - Managerのインストール先フォルダ\setup\

    インストール先フォルダ\setup\jpcagtqu.Z

    UNIX

    /opt/jp1pc/setup/

    インストール先フォルダ\setup\jpcagtqw.EXE

    PFM - Web Console

    Windows

    PFM - Web Consoleのインストール先フォルダ\setup\

    インストール先フォルダ\setup\jpcagtqu.Z

    UNIX

    /opt/jp1pcwebcon/setup/

(b) PFM - Managerホストでセットアップコマンドを実行する

PFM - ManagerでPFM - Agent for Microsoft SQL Serverをセットアップするための次のコマンドを実行します。

jpcconf agent setup -key SQL

ここでは,対話形式の実行例を示していますが,jpcconf agent setupコマンドは非対話形式でも実行できます。jpcconf agent setupコマンドの詳細については,マニュアル「JP1/Performance Management リファレンス」のコマンドについて説明している章を参照してください。

重要

コマンドを実行するローカルホストのPerformance Managementのプログラムおよびサービスが完全に停止していない状態でjpcconf agent setupコマンドを実行した場合,エラーが発生することがあります。その場合は,Performance Managementのプログラムおよびサービスが完全に停止したことを確認したあと,再度jpcconf agent setupコマンドを実行してください。

PFM - ManagerホストにあるPFM - Agentのセットアップファイルは,この作業が終了したあと,削除してもかまいません。

(c) PFM - Web Consoleホストでセットアップコマンドを実行する

PFM - Web ConsoleでPFM - Agent for Microsoft SQL Serverをセットアップするための次のコマンドを実行します。

jpcwagtsetup

PFM - Web ConsoleホストにあるPFM - Agentのセットアップファイルは,この作業が終了したあと削除してもかまいません。

(2) インスタンス環境の設定

インスタンス環境の設定では,次の項目を実施します。複数のインスタンス環境を設定する場合は,この手順を繰り返し実施します。

次に手順について説明します。

(a) インスタンス情報を設定する

PFM - Agent for Microsoft SQL Serverで監視するMicrosoft SQL Serverのインスタンス情報を設定します。インスタンス情報の設定は,PFM - Agentホストで実施します。

設定するインスタンス情報を次の表に示します。セットアップの操作を始める前に,次の表の情報をあらかじめ確認してください。Microsoft SQL Serverのインスタンス情報およびMicrosoft SQL Serverのユーザー認証の詳細については,Microsoft SQL Serverのマニュアルを参照してください。

表2‒3 PFM - Agent for Microsoft SQL Serverのインスタンス情報

項目

説明

設定できる値

デフォルト値

Microsoft SQL Serverのインスタンス名

監視対象となるMicrosoft SQL Serverのインスタンス名。

16バイト以内の半角文字列。

Microsoft SQL Serverのインストール方法によって,指定するインスタンス名は異なる。

既定インストールした場合

default

インスタンス名を付与してインストールした場合

付与したインスタンス名

詳細については,インスタンス環境の構築手順について記載している個所を参照のこと。

SQL_HOST

監視対象となるMicrosoft SQL Serverが稼働しているホスト名。論理ホストの場合は,論理ホスト名。

PFM - Agent for Microsoft SQL Serverのインストール先ホスト名

SQL_USER※1

SQL Server認証に使用するMicrosoft SQL Serverのユーザー名。

128バイト以内の半角文字列。

「sa」と同等の権限を持つユーザーアカウント(固定サーバロールsysadminメンバーアカウント)。

上記以外のアカウントを用意する場合は,「(c) Microsoft SQL Serverのログインの権限」を参照のこと。

Windows認証で認証する場合は,半角スペース1文字にする。

sa

SQL_PASSWORD※1

SQL Server認証に使用するMicrosoft SQL Serverのユーザーのパスワード。

SQL_USERに対応するパスワード。

SQL_ERRORLOG

PD_EE,PD_ESレコードで監視するMicrosoft SQL Serverインスタンスのエラーログファイル名を絶対パスで指定する。エラーログファイルを監視しない場合は,デフォルト値を指定する(指定値は使用されないが,空欄を許可しないため)。

ファイル名やパスに半角空白を含む場合は「"」で囲わずに指定する。

512バイト以内の半角文字列。

ただし,次の文字は指定できない。

  • タブ

  • 次の記号

    「/」「,」「;」「*」「?」「"」「<」「>」「|

C:\Program Files\Microsoft SQL Server\MSSQL.1

\MSSQL\LOG\ERRORLOG

STARTUP_PENDING※2

PFM - Agent for Microsoft SQL Serverの起動から通常処理に移行するときのペンディング時間。

ペンディング機能については,「3.2.1(2) フェールオーバー時のペンディング機能」を参照してください。

0〜3600(単位:秒)。

なお,0を指定した場合はペンディングが行われない。

0

LOG_PATH※2※3

エージェントログの出力先フォルダ名を絶対パスで指定する。

パスに半角空白を含む場合は「"」で囲わずに指定する。

245バイト以内の半角文字列。

ただし,次の文字は指定できない。

  • タブ

  • 次の記号

    「/」「,」「;」「*」「?」「"」「<」「>」「|

インストール先フォルダ\agtq\agent\インスタンス名\log

LOG_SIZE※2

エージェントログの1ファイルの最大サイズ。※4

1〜32(単位:メガバイト)。

ただし,推奨は16以上。

16

TIMEOUT※2

データベースアクセス時のクエリータイムアウト時間を秒単位で指定する。

1〜3600(単位:秒)。

60

LOGIN_TIMEOUT※2

データベースへの接続タイムアウト時間を秒単位で指定する。

1〜3600(単位:秒)。

20

Store Version※5

使用するStoreバージョンを指定する。Storeバージョンについては「2.4.3 Storeバージョン2.0への移行」を参照のこと。

1.0または2.0

2.0

DB_FREE_PERC_OPTION※6※8

PD_DSレコードの空き容量の割合に関するフィールド(Free %フィールド,Data Unallocate %フィールド)がマイナス値になる場合の動作を指定する。

{Y|N}

「Y」を指定した場合,DB_FREE_PERC_NUMBERで指定した値を設定する。

「N」を指定した場合,Free %フィールド,Data Unallocate %フィールドにマイナス値がそのまま設定される。

Y

DB_FREE_PERC_NUMBER※7※8

PD_DSレコードの空き容量の割合に関するフィールド(Free %フィールド,Data Unallocate %フィールド)がマイナス値になった場合に置き換える値を指定する。DB_FREE_PERC_OPTIONで「Y」を指定した場合だけ有効。

-1〜999

0

LIMIT_PD_LD_NUMBER※9

PD_LDレコードの最大収集件数を指定する。

0〜900,000(件)。

0を指定すると,上限を設定しないで全てのデータを収集する。

1000

LIMIT_PD_EE_NUMBER※10

PD_EEレコードの最大収集件数を指定する。この項目は,履歴収集またはアラームによる稼働監視を行う場合に有効となる。Collection Intervalに設定した収集間隔で取得する最大件数を指定する。PD_EEレコードについては「5. レコード」の「Errorlog Error Detail(PD_EE)」を参照。

注)リアルタイムレポートの場合この項目は有効にならずMicrosoft SQL Serverのエラーログに記録されたすべてのエラーを収集する。

100〜100,000(件)。

1000

(凡例)

−:なし

注※1

SQL_USERに指定するMicrosoft SQL Serverのユーザー名によって,Microsoft SQL Serverの認証方法が異なります。Microsoft SQL Serverのインストール方法,Microsoft SQL Serverのインスタンス情報およびMicrosoft SQL Serverのユーザー認証の詳細については,Microsoft SQL Serverのマニュアルを参照してください。SQL_USERの指定値ごとの認証方法を次の表に示します。

表2‒4 SQL_USERの指定値ごとの認証方法

SQL_USERの指定値

SQL_PASSWORDの指定値

認証方法

sa

ユーザーsaのパスワード

SQL Server認証

指定しない(パスワードを設定していない場合)

任意の半角文字列

指定したユーザーのパスワード

指定しない(パスワードを設定していない場合)

半角スペース1文字

不要(入力しても無視される)

Windows認証

なお,上記の表の「Windows認証」は,PFM-Agent for Microsoft SQL Server サービスのアカウントで実施します。

Windows認証を使用してMicrosoft(R) SQL Server 2012以降を監視する場合,ローカルシステムアカウントにサーバロールsysadminが付与されません。sysadminを付与するか他のアカウントを用意してください。

注※2

PFM - Agent for Microsoft SQL Server 08-00より前のバージョンからバージョンアップする場合,デフォルト値が設定されます。

注※3

エージェントログの出力先フォルダをデフォルト値以外に変更する場合は,書き込みアクセス許可のあるフォルダを指定してください。

WRPによるリソース保護が有効になっているフォルダの下位にあるリソースは,削除および変更できません。WRPが設定されているフォルダの下位に,エージェントログの出力先フォルダを設定しないでください。

注※4

エージェントログは,1インスタンスにつき最大4ファイルが採取されます。LOG_SIZEの値は,次の条件を満たすことを確認して指定してください(LOG_PATHがデフォルトの場合を含む)。

LOG_PATHに指定したドライブの空き容量(メガバイト) > LOG_SIZEの値×4

ハードディスクに十分な空き容量がない場合,エージェントログの採取エラーとなります。エージェントログについては「7.3 ログ情報」を参照してください。

注※5

Store Versionは新規にインスタンス環境を設定するときだけ指定できる項目です。インスタンス環境を更新するときは指定できません。

注※6

Microsoft SQL Serverのデータの遅延割り当てにより,パフォーマンスデータへの値の反映がすぐに実行されないため,PD_DSレコードのFree %フィールドおよびData Unallocate %フィールドの値がマイナスになる場合があります。この場合に値を置き換えるかどうかを指定します。

注※7

Free %フィールドおよびData Unallocate %フィールドをアラーム条件に使用している場合は,運用環境に合わせて値を設定してください。

<アラームを発生させる場合>

異常条件,または警告条件のしきい値を超過するように値を設定する。

<アラームを発生させない場合>

異常条件,または警告条件のしきい値を超過しないように値を設定する。

注※8

Free %フィールドの値を置き換えた場合,KAVF21847-Iメッセージがエージェントログに出力されます。Data Unallocate %フィールドの値を置き換えた場合,KAVF21851-Iメッセージが,エージェントログに出力されます。

注※9

Microsoft SQL Serverで,大量のトランザクションやロックアクセスが発生している稼働状況でLock Detail(PD_LD)レコードの収集を行うと次のような事象が発生することがあります。

  • Storeデータベースの容量が増加する。

  • 収集に時間がかかり,収集が完了するまで他のレコードの収集がスキップされる。

  • メモリを多く消費する。

例えば,Microsoft SQL Serverのデータベースをバックアップする場合に,ロック数が一時的に増加するようなときは,Lock Detail(PD_LD)レコードで上限値を設定することでシステムの負荷を軽減できます。

設定する値は,通常の運用で発生するロック数の最大値よりも大きい値にしてください。ロック数は次のどちらかで確認することができます。

  • エージェントログの通常ログで確認する。

 次のメッセージで確認できます。

 KAVF21807-I Getting record ended = LD -> Storing started [ count = レコード数 ]

  • SQL文を実行して現在のロック数を確認する。

 「付録A.4 レコードのインスタンス数の算出方法」の表A-1にある,PD_LDの算出方法に記載しているSQL文を実行することでロック数を確認できます。

注※10

Microsoft SQL Serverで障害が発生した場合,Microsoft SQL Serverのエラーログに同じエラーを大量に出力し続けることがあります。

このような状況でErrorlog Error Detail(PD_EE)レコードの収集を行うと,次のような事象が発生することがあります。

  • Storeデータベースの容量が増加する。

  • 収集に時間がかかり,収集が完了するまで他のレコードの収集がスキップされる。

  • メモリを多く消費する。

この項目で上限値を設定することでシステムの負荷を軽減することができますので,1000件程度で運用することを推奨します。

注意
  • インスタンス環境を設定していない場合,PFM - Agent for Microsoft SQL Serverのサービスを起動できません。

  • jpcconf inst setupコマンドを使用してインスタンス環境を構築する際,Microsoft SQL Server上に存在しないインスタンス名を指定した場合でもコマンドは正常に終了します。しかし,その後レコードの収集を開始すると,共通メッセージログに「KAVF21400-W」のメッセージが出力され,監視対象のMicrosoft SQL Serverに接続できません。この場合,正しいインスタンス名を確認の上,再度jpcconf inst setupコマンドを実行してください。

インスタンス環境を構築するには,jpcconf inst setupコマンドを使用します。インスタンス環境の構築手順を次に示します。

  1. サービスキーおよびインスタンス名を指定して,jpcconf inst setupコマンドを実行する。

    次のように指定してコマンドを実行します。

    jpcconf inst setup -key SQL -inst インスタンス名

    Microsoft SQL Serverのインストール方法によって,指定するインスタンス名は次のように異なります。

    • Microsoft SQL Serverを既定インストールした場合

      既定のインスタンスを監視するため,インスタンス名を次のように「default」と指定してください。なお,「default」という名称以外は指定できません。

      jpcconf inst setup -key SQL -inst default

    • インスタンス名を付与してMicrosoft SQL Serverをインストールした場合

      この場合,インスタンス名には,Microsoft SQL Serverのインスタンス名としても認識できる名前を設定する必要があります。Microsoft SQL Serverのインストール時に指定した,Microsoft SQL Serverのインスタンス名(監視対象となるMicrosoft SQL Serverのインスタンス名)を指定してください。例えば「SQL1」というインスタンス名を付与してMicrosoft SQL Serverをインストールした場合は,インスタンス名を次のように「SQL1」と指定してください。

      jpcconf inst setup -key SQL -inst SQL1

    jpcconf inst setupコマンドの詳細については,マニュアル「JP1/Performance Management リファレンス」の,コマンドについて説明している章を参照してください。

  2. Microsoft SQL Serverのインスタンス情報を設定する。

    表2-3に示した項目を,コマンドの指示に従って入力してください。各項目とも省略はできません。デフォルトで表示されている値を入力値とする場合は,リターンキーだけを押してください。

すべての入力が終了すると,インスタンス環境が構築されます。構築時に入力したホスト名,ユーザー名,パスワード,エラーログファイル名,ペンディング時間,エージェントログ出力先,またはエージェントログファイルサイズを変更したい場合は,再度jpcconf inst setupコマンドを実行し,インスタンス環境を更新してください。インスタンス環境の更新については,「2.4.2 インスタンス環境の更新の設定」を参照してください。

構築されるインスタンス環境を次に示します。

  • インスタンス環境のフォルダ構成

    次のフォルダ下にインスタンス環境が構築されます。

    物理ホストの場合:インストール先フォルダ\agtq

    論理ホストの場合:環境フォルダ\jp1pc\agtq

    注※

    環境フォルダとは,論理ホスト作成時に指定した共有ディスク上のフォルダです。

    構築されるインスタンス環境のフォルダ構成を次に示します。

    表2‒5 インスタンス環境のフォルダ構成

    フォルダ名・ファイル名

    説明

    agent

    インスタンス名

    jpcagt.ini

    Agent Collectorサービス起動情報ファイル

    jpcagt.ini.model

    Agent Collectorサービス起動情報ファイルのモデルファイル

    log

    ログファイル格納フォルダ

    store

    インスタンス名

    jpcsto.ini

    Agent Storeサービス起動情報ファイル

    jpcsto.ini.model

    Agent Storeサービス起動情報ファイルのモデルファイル

    *.DAT

    データモデル定義ファイル

    dump

    エクスポート先フォルダ

    import

    標準のデータベースインポート先フォルダ(Storeバージョン2.0の場合)

    backup

    バックアップ先フォルダ

    log

    ログファイル格納フォルダ

    partial

    標準のデータベース部分バックアップ先フォルダ(Storeバージョン2.0の場合)

    STPD

    PDレコードタイプのパフォーマンスデータ格納先フォルダ(Storeバージョン2.0の場合)

    STPI

    PIレコードタイプのパフォーマンスデータ格納先フォルダ(Storeバージョン2.0の場合)

    注※

    インスタンス環境を構築した時点の設定値に戻したいときに使用します。

  • インスタンス環境のサービスID

    インスタンス環境のサービスIDは次のようになります。

    • Agent Collectorサービス:QAインスタンス番号 インスタンス名 [ホスト名]

    • Agent Storeサービス:QSインスタンス番号 インスタンス名 [ホスト名]

    PFM - Agent for Microsoft SQL Serverの場合,インスタンス名にはjpcconf inst setupコマンドで指定したインスタンス名が表示されます。

    例えば,ホスト名が「host1」で,インスタンス名に「default」を指定した場合,サービスIDは次のようになります。

    • Agent Collectorサービス:QA1default [host1]

    • Agent Storeサービス:QS1default [host1]

    サービスIDについては,マニュアル「JP1/Performance Management 設計・構築ガイド」の,付録に記載されている命名規則を参照してください。

  • インスタンス環境のWindowsのサービス名

    インスタンス環境のWindowsのサービス名は次のようになります。

    • Agent Collectorサービス:PFM - Agent for Microsoft(R) SQL Server インスタンス名論理ホスト名

    • Agent Storeサービス:PFM - Agent Store for Microsoft(R) SQL Server インスタンス名論理ホスト名

    PFM - Agent for Microsoft SQL Serverの場合,インスタンス名にはjpcconf inst setupコマンドで指定したインスタンス名が表示されます。

    例えば,論理ホスト名が「lhost」で,インスタンス名に「default」を指定した場合,サービス名は次のようになります。

    • Agent Collectorサービス:PFM - Agent for Microsoft(R) SQL Server default[lhost]

    • Agent Storeサービス:PFM - Agent Store for Microsoft(R) SQL Server default[lhost]

    Windowsのサービス名については,マニュアル「JP1/Performance Management 設計・構築ガイド」の,付録に記載されている命名規則を参照してください。

    また,論理ホストで運用する場合のWindowsのサービス名については,マニュアル「JP1/Performance Management 運用ガイド」の,クラスタシステムでの構築と運用について説明している章を参照してください。

(b) Windows認証を使用する場合の設定

インスタンス環境構築時にPFM - Agent for Microsoft SQL Serverサービスのログインアカウントは,「ローカルシステムアカウント」で作成されます。

インスタンス情報のSQL_USER項目でWindows認証を選択した場合,PFM - Agent for Microsoft SQL Serverサービスのログインアカウントで認証を行います。

他のアカウントを用意する場合,監視対象のMicrosoft SQL Serverに接続可能である必要があります。監視対象のMicrosoft SQL Serverにログインできることを確認するには,Microsoft SQL Serverに付属するManagement Studioやsqlcmdコマンドを使用する方法などがあります。詳細については,Microsoft SQL Serverのマニュアルを参照してください。

アカウントの変更手順を次に示します。

  1. Windowsの[スタート]メニューから表示される[管理ツール]−[サービス]を選択し,[サービス]画面を表示する

  2. [サービス]画面でPFM - Agent for Microsoft(R) SQL Server インスタンス名の[プロパティ]を表示する

  3. [ログオン]タブの「アカウント」を選択し,アカウントとパスワードを入力する

詳細については,OSのマニュアルを参照してください。

注意

PFM - Agent Store for Microsoft(R) SQL Server インスタンス名のアカウントの変更は不要のため変更しないでください。

(c) Microsoft SQL Serverのログインの権限

PFM - Agent for Microsoft SQL Serverを運用するには,特定のMicrosoft SQL Server Databaseの権限を持つユーザーアカウントが必要です。

PFM - Agent for Microsoft SQL Serverが,Microsoft SQL Server Databaseから性能情報を取得するために必要な権限を次に示します。

sysadmin固定サーバロールを設定できる場合

sysadmin固定サーバロールが設定されたユーザーアカウントを使用してすべてのレコードを取得できます。

sysadmin固定サーバロールを設定できない場合

監視で使用するユーザーアカウントに,すべてのデータベースへのCONNECT権限を設定した上で,次の表に示す権限が必要です。

なお,sysadmin固定サーバロールを設定できない場合は,SQL Text(PD_SQL)レコードを取得することはできません。

表2‒6 PFM - Agent for Microsoft SQL ServerがMicrosoft SQL Server Databaseから性能情報を収集するために必要な権限

権限

内容

サーバロール

レコード取得時に使用するオブジェクトごとに必要なサーバ権限です(詳細は表2-7を参照)。

データベースの権限またはオブジェクトの権限

次のどちらかの権限が必要です。

  • データベースの権限

    取得するレコードごとに必要なデータベースの権限です(詳細は表2-8を参照)。

  • オブジェクトの権限

    レコード取得時に使用するオブジェクトごとに必要な権限です(Microsoft SQL Server 2014以前に接続する場合は,表2-9を,Microsoft SQL Server 2016以降に接続する場合は表2-10を参照)。

データベースに対して権限が設定できる場合には「■データベースの権限またはオブジェクトの権限」の「データベースの権限を設定する場合」を参照して必要な権限を設定してください。データベースの権限より詳細にオブジェクト単位で権限を設定したい場合には,「■データベースの権限またはオブジェクトの権限」の「オブジェクトの権限を設定する場合」を参照して必要な権限を付与してください。

■ サーバロール

監視で使用するユーザーアカウントに対して,PFM - Agent for Microsoft SQL Serverのレコード取得に必要なサーバの権限を次の表に示します。

なお,PD_SQLレコードを収集する場合には,sysadmin固定サーバロールが必要です。付与しない場合はPD_SQLレコードの取得はできません。

表2‒7 PFM - Agent for Microsoft SQL Serverのレコード取得時に必要なサーバ権限

レコード

レコード取得に必要なサーバ権限

監視対象のSQL Serverのバージョンが2014までの場合

監視対象のSQL Serverのバージョンが2016以降の場合

SQL Text (PD_SQL)

収集できません。

  • Database Detail (PD_DD)

  • Database Space Detail (PD_DS)

  • Server Space Detail (PD_SS)

  • Server Space Interval (PI_SI)

  • Database Interval (PI_DI)

  • VIEW SERVER STATE

  • VIEW ANY DEFINITION

  • VIEW SERVER STATE

  • VIEW ANY DEFINITION

  • VIEW ANY DATABASE

  • Lock Detail (PD_LD)

  • Process Detail (PD_PDET)

  • User Process Detail (PI_USER)

  • VIEW SERVER STATE

  • VIEW ANY DEFINITION

  • Server Detail (PD)

  • Database Replication Detail (PD_RD)

  • Replication Summary Detail (PD_RS)

  • VIEW SERVER STATE

  • VIEW SERVER STATE

  • VIEW ANY DATABASE

  • Global Server Summary (PI)

  • Global Server Summary 2 (PI_PI2)

  • Licensing Detail (PD_LIC)

  • User-Defined Counter Overview (PI_UCTR)

  • Server Overview (PI_SERV)

  • Server Overview 2 (PI_SRV2)

  • Server Locks Detail (PD_LOCK)

  • Transaction Log Overview (PI_TLOG)

  • VIEW SERVER STATE

  • Replication Published Database Overview (PI_RPDB)

  • Procedure Cache Detail (PD_PCAC)

  • Config Detail (PD_CD)

  • Job History Detail (PD_JH)

  • Errorlog Error Detail (PD_EE)

  • Errorlog Summary Detail (PD_ES)

  • Instance Availability (PD_IA)

サーバロールの権限は不要です。

■ データベースの権限またはオブジェクトの権限

• データベースの権限を設定する場合

監視で使用するユーザーアカウントに対して,次の表に記載しているレコードごとに必要なデータベースの権限を設定してください。

表2‒8 PFM - Agent for Microsoft SQL Serverのレコード取得に必要なデータベースの権限

レコード

レコード取得に必要なデータベース権限

PD_SQL

収集できません。

PD_PCAC

masterデータベースに対してdb_ownerデータベースロールが必要です。

PI_RPDB

  • masterデータベースに対してdb_ownerデータベースロールが必要です。

  • すべてのデータベースに対してSELECT権限を設定しておく必要があります。

PD_DS,PD_SS,PI_SI,PI_DI,PD_RS

  • すべてのデータベースに対してSELECT権限を設定しておく必要があります。

  • masterデータベースに対してEXEC権限を設定しておく必要があります。

PD_DD,PD_RD,PD_LD

すべてのデータベースに対してSELECT権限を設定しておく必要があります。

PD_CD

masterデータベースに対してEXEC権限を設定しておく必要があります。

PD,PI,PI_PI2,PD_LIC,PI_UCTR,PI_SERV,PI_SRV2,PD_LOCK,PD_PDET,PD_USER

masterデータベースに対してSELECT権限を設定しておく必要があります。

PD_JH

msdbデータベースに対してSELECT権限を設定しておく必要があります。

PD_EE,PD_ES,PD_IA, PI_TLOG

データベースの権限は不要です。

• オブジェクトの権限を設定する場合

監視で使用するユーザーアカウントに対して,次の表に記載しているレコードごとに必要なオブジェクトの権限を設定してください。

Microsoft SQL Server 2014以前に接続する場合は「表2-9」に,Microsoft SQL Server 2016以降に接続する場合は「表2-10」に示します。

なお,PD_PCAC,PI_RPDBレコードを取得する場合には,masterデータベースのdb_ownerデータベースロールが必要です。設定しない場合は取得できません。

表2‒9 PFM - Agent for Microsoft SQL Serverのレコード生成時に使用するオブジェクトごとに必要な権限(Microsoft SQL Server 2014以前の場合)

レコード

レコード取得に必要なユーザーに付与するオブジェクト権限

PD_SQL,PD_PCAC,PI_RPDB

収集できません。

PD_DD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysdatabases

    ・sysprocesses

    ・syslogins

    ・sysusers

    ・spt_values

    ・sysfiles

    ・syslockinfo

    ・sysperfinfo

  • masterデータベースの次のオブジェクトに対するEXEC権限を設定しておく必要があります。

    ・sp_databases(sp_inst.sqlを実行していない場合)

    ・A4QHITACHIPROCSPDATABASES(sp_inst.sqlを実行している場合)

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.indexes

PD_DS,PD_SS,PI_SI

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysdatabases

    ・spt_values

    ・sysfiles

  • masterデータベースの次のオブジェクトに対するEXEC権限を設定しておく必要があります。

    ・sp_databases(sp_inst.sqlを実行していない場合)

    ・A4QHITACHIPROCSPDATABASES(sp_inst.sqlを実行している場合)

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.indexes

    ・sys.allocation_units

    ・sys.partitions

    ・sys.internal_tables

PI_DI

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysdatabases

    ・sysprocesses

    ・syslogins

    ・sysusers

    ・spt_values

    ・sysfiles

    ・sysperfinfo

  • masterデータベースの次のオブジェクトに対するEXEC権限を設定しておく必要があります。

    ・sp_databases(sp_inst.sqlを実行していない場合)

    ・A4QHITACHIPROCSPDATABASES(sp_inst.sqlを実行している場合)

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.indexes

    ・sys.allocation_units

    ・sys.partitions

    ・sys.internal_tables

PD_LD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysprocesses

    ・syslogins

    ・sysusers

    ・sys.dm_tran_locks

    ・syslockinfo

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.all_objects

PD_PDET

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・syslockinfo

    ・sysprocesses

    ・syslogins

    ・sysusers

PD_USER

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysprocesses

    ・syslogins

    ・sysusers

    ・syslockinfo

PD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysdatabases

    ・sysprocesses

    ・syslogins

    ・sysusers

    ・spt_values

    ・syslockinfo

    ・sysperfinfo

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

PD_RD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysdatabases

    ・spt_values

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・MSdistribution_history

    ・sys.indexes

    ・sysarticles

    ・syspublications

    ・syssubscriptions

    ・all_objects

PD_RS

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysdatabases

    ・spt_values

  • masterデータベースの次のオブジェクトに対するEXEC権限を設定しておく必要があります。

    ・sp_databases(sp_inst.sqlを実行していない場合)

    ・A4QHITACHIPROCSPDATABASES(sp_inst.sqlを実行している場合)

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・MSdistribution_history

    ・sys.indexes

    ・sysarticles

    ・syspublications

    ・syssubscriptions

    ・all_objects

PI,PI_PI2,PD_LIC,PI_UCTR,PI_SERV,PI_SRV2

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysperfinfo

PD_LOCK

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・syslockinfo

    ・sysprocesses

    ・syslogins

    ・sysusers

PD_CD

  • masterデータベースの次のオブジェクトに対するEXEC権限を設定しておく必要があります。

    ・sp_configure

PD_JH

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysjobhistory

    ・sysjobsteps

    ・sysjobs

    ・all_objects

PI_TLOG,PD_EE,PD_ES,PD_IA

すべてのユーザーが実行できます。

表2‒10 PFM - Agent for Microsoft SQL Serverのレコード生成時に使用するオブジェクトごとに必要な権限(Microsoft SQL Server 2016以降の場合)

レコード

レコード取得に必要なユーザーに付与するオブジェクト権限

PD_SQL,PD_PCAC,PI_RPDB

収集できません。

PD_DD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.databases

    ・sys.dm_tran_locks

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

    ・spt_values

    ・sys.dm_os_performance_counters

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.indexes

PD_DS,PD_SS,PI_SI

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.databases

    ・sys.database_files

    ・spt_values

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.indexes

    ・sys.allocation_units

    ・sys.partitions

    ・sys.internal_tables

PI_DI

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.databases

    ・spt_values

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

    ・sys.database_files

    ・sys.dm_os_performance_counters

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.indexes

    ・sys.allocation_units

    ・sys.partitions

    ・sys.internal_tables

PD_LD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.dm_tran_locks

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.all_objects

    ・sys.partitions

PD_PDET

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.dm_tran_locks

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

PD_USER

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.dm_tran_locks

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

    ・sys.server_role_members

PD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.databases

    ・sys.dm_tran_locks

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

    ・sys.dm_os_performance_counters

    ・spt_values

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・backupset

PD_RD

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.databases

    ・spt_values

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・MSdistribution_history

    ・sys.indexes

    ・sysarticles

    ・syspublications

    ・syssubscriptions

    ・sys.all_objects

PD_RS

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.databases

    ・spt_values

  • すべてのデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・MSdistribution_history

    ・sys.indexes

    ・sysarticles

    ・syspublications

    ・syssubscriptions

    ・sys.all_objects

PI,PI_PI2,PD_LIC,PI_UCTR,PI_SERV,PI_SRV2

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.dm_os_performance_counters

PD_LOCK

  • masterデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sys.dm_tran_locks

    ・sys.dm_exec_requests

    ・sys.dm_exec_sessions

    ・sys.dm_os_tasks

    ・sys.dm_os_waiting_tasks

    ・sys.server_principals

    ・sys.database_principals

PD_CD

  • masterデータベースの次のオブジェクトに対するEXEC権限を設定しておく必要があります。

    ・sp_configure

PD_JH

  • msdbデータベースの次のオブジェクトに対するSELECT権限を設定しておく必要があります。

    ・sysjobhistory

    ・sysjobsteps

    ・sysjobs

    ・sys.all_objects

PI_TLOG,PD_EE,PD_ES,PD_IA

すべてのユーザーが実行できます。

(3) ストアドプロシージャの登録[図データ]

監視対象のMicrosoft SQL Serverインスタンスのmasterデータベースに,次に示すストアドプロシージャを登録します。

A4QHITACHIPROCSPDATABASESは,PFM - Agent for Microsoft SQL Serverが提供しているsp_inst.sqlスクリプトを実行して登録できます。登録手順を次に示します。

  1. Microsoft SQL Serverのsqlcmdユーティリティが実行できる環境を設定する。

    sqlcmdユーティリティはMicrosoftが提供しています。Microsoft SQL Serverの環境設定については,Microsoft SQL Serverのマニュアルを参照してください。

  2. sp_inst.sqlスクリプトの格納先フォルダに移動する。

    格納先フォルダを次に示します。

    インストール先フォルダ\agtq\sql
  3. 監視対象のMicrosoft SQL Serverを指定して,スクリプトを実行する。

    sp_inst.sqlスクリプトの実行方法は,監視するMicrosoft SQL Serverのインスタンスの種類,およびMicrosoft SQL Serverへ接続する際の認証方法によって異なります。それぞれの場合の実行方法は次のとおりです。

    • Microsoft SQL Serverが既定のインスタンスの場合

      認証方法

      sp_inst.sqlスクリプトの実行方法

      SQL Server認証

      sqlcmd -S ホスト名 -U ユーザー名 -P パスワード -d master -i sp_inst.sql

      Windows認証

      sqlcmd -S ホスト名 -E -d master -i sp_inst.sql

    • Microsoft SQL Serverが名前付きインスタンスの場合

      認証方法

      sp_inst.sqlスクリプトの実行方法

      SQL Server認証

      sqlcmd -S ホスト名\インスタンス名 -U ユーザー名 -P パスワード -d master -i sp_inst.sql

      Windows認証

      sqlcmd -S ホスト名\インスタンス名 -E -d master -i sp_inst.sql

      注※

      指定する内容は次のとおりです。

      ホスト名 : 監視対象のMicrosoft SQL Serverが稼働しているホスト名。

      インスタンス名 : 監視対象のMicrosoft SQL Serverのインスタンス名。

      ユーザー名 : saまたはsaと同等の権限を持つユーザーアカウント(固定サーバロールsysadminメンバーアカウント)

      パスワード : 指定したユーザー名に対応するパスワード

A4QHITACHIPROCSPDATABASESの削除手順については,「付録I ストアドプロシージャの削除」を参照してください。

(4) ネットワークの設定[図データ]

Performance Managementを使用するネットワーク構成に応じて,変更する場合に必要な設定です。

ネットワークの設定には次の2つの項目があります。

(5) ログのファイルサイズ変更[図データ]

Performance Managementの稼働状況を,Performance Management独自のログファイルに出力します。このログファイルを「共通メッセージログ」と呼びます。共通メッセージログは,デフォルトで2,048キロバイトのファイルが2ファイル使用されます。このファイルサイズを変更したい場合に,必要な設定です。

詳細については,マニュアル「JP1/Performance Management 設計・構築ガイド」の,インストールとセットアップについて説明している章を参照してください。

(6) パフォーマンスデータの格納先の変更[図データ]

PFM - Agent for Microsoft SQL Serverで管理されるパフォーマンスデータを格納するデータベースの保存先,バックアップ先,エクスポート先,またはインポート先のフォルダを変更したい場合に,必要な設定です。

パフォーマンスデータは,デフォルトでは次の場所に保存されます。

論理ホストで運用する場合のデフォルトの保存先については,「インストール先フォルダ」を「環境フォルダ\jp1pc」に読み替えてください。

注※

Storeバージョン2.0使用時だけ設定できます。

詳細については,「2.4.1 パフォーマンスデータの格納先の変更」を参照してください。

(7) PFM - Agent for Microsoft SQL Serverの接続先PFM - Managerの設定

PFM - Agentがインストールされているホストで,そのPFM - Agentを管理するPFM - Managerを設定します。接続先のPFM - Managerを設定するには,jpcconf mgrhost defineコマンドを使用します。

重要
  • 同一ホスト上に,複数のPFM - Agentがインストールされている場合でも,接続先に指定できるPFM - Managerは,1つだけです。PFM - Agentごとに異なるPFM - Managerを接続先に設定することはできません。

  • PFM - AgentとPFM - Managerが同じホストにインストールされている場合,接続先PFM - ManagerはローカルホストのPFM - Managerとなります。この場合,接続先のPFM - ManagerをほかのPFM - Managerに変更できません。

手順を次に示します。

  1. Performance Managementのプログラムおよびサービスを停止する。

    セットアップを実施する前に,ローカルホストでPerformance Managementのプログラムおよびサービスが起動されている場合は,すべて停止してください。サービスの停止方法については,マニュアル「JP1/Performance Management 運用ガイド」の,Performance Managementの起動と停止について説明している章を参照してください。

    jpcconf mgrhost defineコマンド実行時に,Performance Managementのプログラムおよびサービスが起動されている場合は,停止を問い合わせるメッセージが表示されます。

  2. 接続先のPFM - Managerホストのホスト名を指定して,jpcconf mgrhost defineコマンドを実行する。

    例えば,接続先のPFM - Managerがホストhost01上にある場合,次のように指定します。

    jpcconf mgrhost define -host host01

    ここでは,対話形式の実行例を示していますが,jpcconf mgrhost defineコマンドは非対話形式でも実行できます。jpcconf mgrhost defineコマンドの詳細については,マニュアル「JP1/Performance Management リファレンス」のコマンドについて説明している章を参照してください。

(8) 動作ログ出力の設定[図データ]

アラーム発生時に動作ログを出力したい場合に必要な設定です。動作ログとは,システム負荷などのしきい値オーバーに関するアラーム機能と連動して出力される履歴情報です。

設定方法については,「付録J 動作ログの出力」を参照してください。