監視

注釈

グローバル管理者、Monitor 管理者 (monitor_admin ロールを持つユーザー)、および対象の環境に対する Monitor 権限を持つユーザーのみが監視操作を実行できます。詳細については、「 認可 」を参照してください。

注釈

この機能を使用する前に、 Denodo Security Token Server と通信できるように、Denodo Platform の インストール環境を構成 してください。

Solution Manager を使用すると、 Denodo Monitor を起動して、1 つの Virtual DataPort サーバーから、あるいはクラスタまたは環境内のすべてのサーバーから実行ログを収集できます。

環境、クラスタ、またはサーバーを監視するには、監視するエレメントをクリックして、[Start Monitor] をクリックします。監視対象のエレメントの名前の横に「目」のアイコンが付きます。

Start Denodo Monitor for an environment

環境に対する Denodo Monitor の起動

環境、クラスタ、またはサーバーで Denodo Monitor を停止するには、停止するエレメントをクリックして、[Stop Monitor] をクリックします。

以下の点を考慮してください。

  • サーバーを監視している場合、そのクラスタまたは環境の監視を開始することはできません。

  • クラスタを監視している場合、その環境またはそのいずれかのサーバーで監視を開始することはできません。

  • 環境を監視している場合、そのいずれかのクラスタまたはサーバーで監視を開始することはできません。

  • 監視の実行中に、監視対象のクラスタや環境のサーバーのリストが変更される可能性があります。たとえば、ユーザーがサーバーを追加または削除した場合や、自動クラウドモードの環境でオートスケーリングに応じてサーバー数が調整された場合などです。Denodo Monitor は、Solution Manager のカタログに生じた変更を認識し、それに応じて監視対象のサーバーのリストを自動的に更新します。

  • 自動クラウドモードの監視対象クラスタが停止した場合、Denodo Monitor は一時停止し、そのクラスタが再び起動するとすぐに再開されます。

  • 監視対象の環境、クラスタ、またはサーバーが削除された場合、Denodo Monitor は停止します。これは特に、自動クラウドモードの環境に属するサーバーを監視している場合に重要です。このシナリオでは、クラスタの再起動、デプロイの実行、更新プログラムのインストールといった操作では、現在のサーバーが削除されて新規サーバーが追加されるためです。


監視しているエレメントのリストを確認するには、[Monitoring] メニュー > [Active Monitoring] をクリックします。

Active monitoring table

アクティブな監視を示すテーブル

このテーブルの各行は、監視しているエレメントです。エレメントがクラスタまたは環境の場合、Denodo Monitor は、そのクラスタまたは環境内のすべてのサーバーに接続します。

1 つのサーバーの監視を停止するには stop-btn をクリックします。複数の行を選択して、[Stop Monitors] をクリックすることもできます。


デフォルトでは、Solution Manager をシャットダウンしても Denodo Monitor は動作を続けます。Denodo Monitor を常時動作させておくことは、Denodo サーバーのアクティビティの履歴を保持するうえで有用です。たとえば、組織のすべての Virtual DataPort サーバーが実行するクエリをすべてログに記録する場合などです。

ただし、Solution Manager をシャットダウンしたときに Denodo Monitor が自動的にシャットダウンされるように構成することもできます。これは、以下の手順に従って実施してください。

  1. Solution Manager を停止します。

  2. <SOLUTION_MANAGER_HOME>/conf/solution-manager/SMConfigurationParameters.properties ファイルを編集します。

  3. 次のプロパティを true に設定します。

    com.denodo.solutionmanagerserver.monitoring.stopRunningMonitorsOnShutdown
    
  4. Solution Manager を起動します。

この変更後、次回 Solution Manager をシャットダウンすると、Denodo Monitor もシャットダウンされます。Solution Manager を再起動する際には、シャットダウン前に動作していたモニターを手動で起動してから、Solution Manager を再起動する必要があります。


Denodo Monitor は、 <SOLUTION_MANAGER_HOME>/resources/solution-manager-monitor/work フォルダに次のログファイルを生成します。

  • 環境のログファイル: <EnvironmentName>/logs

  • クラスタのログファイル: <EnvironmentName>/<ClusterName>/logs

  • サーバーのログファイル: <EnvironmentName>/<ClusterName>/<ServerName>/logs

たとえば、「本番」環境を監視する場合、ログは、 <SOLUTION_MANAGER_HOME>/resources/solution-manager-monitor/work/Production/logs フォルダに保存されます。

注釈

ログファイルを保存するディレクトリを変更する場合は、ファイル <SOLUTION_MANAGER_HOME>/conf/solution-manager/SMConfigurationParameters.properties のプロパティ com.denodo.solutionmanagerserver.monitoring.workDir の値を変更してください。変更を適用するには、Solution Manager サーバーを再起動します。

監視の構成

Solution Manager の Denodo Monitor の構成ファイルは 2 つあり、それらは <SOLUTION_MANAGER_HOME>/conf/solution-manager/denodo-monitor フォルダに保存されます。

  1. ConfigurationParametersGeneral.template: 全般的な構成テンプレートファイル

  2. ConfigurationParametersServer.template: 特定のサーバープロパティ (ping のタイムアウト、モニター、ping を実行するデータソースのリストなど) が含まれる構成テンプレートファイル

Solution Manager は、これらのテンプレートファイルに基づいて、監視を実行するたびに構成ファイルを生成します。生成されたファイルは ConfigurationParameters.properties という名前が付けられ、監視対象エレメントの作業フォルダ内にある conf フォルダに保存されます。

JDBC ログの構成

Queries Monitor と Cache Monitor のいずれかまたは両方によって生成された情報をデータベースに保存するように Denodo Monitor を構成できます。この機能を有効にすると、Denodo Monitor は、常にこの情報をログファイルに保存するようになります。

この機能を有効にするには、以下の手順に従って実施してください。

  1. Denodo サーバー、クラスタ、または環境を初めて監視する場合は、1 つのサーバーの監視を開始します。これにより、このモジュールの構成が初期化されます。

  2. データベースの JDBC ドライバー (つまり、データベースの 1 つ以上の jar ファイル) を <SOLUTION_MANAGER_HOME>/resources/solution-manager-monitor/denodo-monitor/lib フォルダにコピーします。

  3. <SOLUTION_MANAGER_HOME>/resources/solution-manager-monitor/denodo-monitor/sql フォルダに移動し、ログを保存するデータベースのスクリプトを選択します。

  4. データベースでこの SQL スクリプトを実行します。このスクリプトによって、テーブル REQUEST_NOTIFICATION および CACHE_NOTIFICATION が作成されます。

  5. <SOLUTION_MANAGER_HOME>/conf/solution-manager/denodo-monitor/ConfigurationParametersGeneral.template ファイルを編集します。

  6. 「Queries Monitor」の情報をデータベースに保存するには、以下の操作を行います。

    1. vdpqueries.jdbcagent.enable プロパティを true に設定します。

    2. 使用するデータベースのプロパティグループを見つけて、それらのプロパティのコメントを解除します。たとえば、MySQL を使用する場合、「JDBC Agent Parameters: MySQL」を探し、その下にある 9 つのプロパティのコメントを解除します。次のプロパティを変更します (その他のプロパティは変更しないでください)。

      1. vdpqueries.jdbcagent.url: このデータベースの URL に設定します。

      2. vdpqueries.jdbcagent.user: このデータベースに接続するユーザー名に設定します。

      3. vdpqueries.jdbcagent.password: このデータベースに接続するユーザー名のパスワードに設定します。

        暗号化されたパスワードを入力するには、コマンドラインを開き、以下を実行します。

        Windows の場合:

        cd <SOLUTION_MANAGER_HOME>\resources\solution-manager-monitor\denodo-monitor\bin
        encrypt_password "<password of the database>"
        

        Linux の場合:

        cd <SOLUTION_MANAGER_HOME>/resources/solution-manager-monitor/denodo-monitor/bin
        ./encrypt_password.sh "<password of the database>"
        

        このプログラムの結果を vdpqueries.jdbcagent.password プロパティにコピーして、 vdpqueries.jdbcagent.password.encryptedtrue に設定します。

  7. 「Cache Monitor」の情報をデータベースに保存するには、以下の操作を行います。

    1. vdploadcacheprocesses.jdbcagent.enable プロパティを true に設定します。

    2. 前述の手順と同じ手順を繰り返しますが、名前の先頭が vdploadcacheprocesses になっているプロパティに対して実施します。

Kerberos 構成

Kerberos 資格情報を使用するように、JDBC コネクションを構成できます。サポートするオプションは、ユーザーとパスワード、またはユーザーとキータブです。Kerberos による JDBC コネクションを使用するには、次のプロパティを確立してください。

  • [vdpqueries|vdploadcacheprocesses].jdbcagent.useKerberos: true の場合、クエリモニターやキャッシュモニターが作成した情報が、Kerberos による JDBC コネクションの作成を試みます。

  • [vdpqueries|vdploadcacheprocesses].jdbcagent.krbUser: Kerberos ユーザー。

  • [vdpqueries|vdploadcacheprocesses].jdbcagent.krbPassword[vdpqueries|vdploadcacheprocesses].jdbcagent.krbPassword.encrypted: Kerberos パスワード。

  • [vdpqueries|vdploadcacheprocesses].jdbcagent.krbKeyTab: Kerberos キータブのパス。

  • [vdpqueries|vdploadcacheprocesses].jdbcagent.krbConfigFile: デフォルトパスを使用しない場合の、krb5.ini ファイルへのパス。

  • [vdpqueries|vdploadcacheprocesses].jdbcagent.krbDriverOptions: Kerberos による JDBC コネクションを確立する際に、ドライバーが使用するカスタムプロパティ。設定されている場合、ネイティブにサポートされた接続プロパティを無効にします。次のフォーマットを使用する必要があります。prop1=value1;prop2=value2;...

クラウド保存の構成

デフォルトでは、Denodo Monitor はログファイルをローカルファイルシステムに保存しますが、クラウド (AWS S3) にログファイルを保存するように構成することも可能です。

前提条件として、S3 バケットを作成して、そのバケットの AWS リージョン、バケット名、バケット内のログファイル保存先へのパスを取得する必要があります。

この機能を有効化するには、 <SOLUTION_MANAGER_HOME>/conf/solution-manager/denodo-monitor/ConfigurationParametersGeneral.template ファイルを編集し、以下の変更を加えます。

  • プロパティ monitors.cloudStorage.provider をコメント解除して、値を AWS_S3 に変更します。

  • 以下のプロパティをコメント解除して、S3 アカウントのキーとシークレットをそれぞれの値に設定します。

    monitors.cloudStorage.s3.credentials.awsKey
    monitors.cloudStorage.s3.credentials.awsSecret
    
  • 以下のプロパティをコメント解除して、値を設定します。

    monitors.cloudStorage.s3.destination.region
    monitors.cloudStorage.s3.destination.bucket
    monitors.cloudStorage.s3.destination.path
    

    これらのプロパティはそれぞれ、AWS バケットのリージョン、バケット名、バケット内のログファイル保存先へのパスを表します。

  • ログを圧縮してから AWS に保存するには、プロパティ monitors.cloudStorage.compression.enabled をコメント解除し、値を true に変更します。

  • プロパティ monitors.cloudStorage.buffer.size は Denodo Monitor が S3 に保存する前にメモリ上に保持するログイベントの最大数を制御します。ほとんどの場合はデフォルト値を使用できますが、変更するにはプロパティをコメント解除してください。

  • プロパティ monitors.cloudStorage.buffer.age は Denodo Monitor がログイベントを S3 に保存する前にメモリ上に保持する時間 (分単位) を制御します。ほとんどの場合はデフォルト値を使用できますが、変更するにはプロパティをコメント解除してください。

「プロパティをコメント解除」するには、行の先頭の記号 # を削除してください。

ここで説明したプロパティは、ほとんどの場合デフォルト値を使用できます。