Hitachi

JP1 Version 13 JP1/Integrated Management 3 - Manager 導入・設計ガイド


3.15.7 統合エージェント基盤

統合エージェント基盤は,エージェントの管理,統合マネージャーホストと統合エージェントホスト間の通信の代理,コマンド実行などを行います。

統合エージェント基盤は,JP1/IM - Managerに同梱されている統合マネージャーホストで動作するモジュールと,JP1/IM - Agentとして提供される統合エージェントホストで動作するモジュールで構成されます。

〈この項の構成〉

(1) 共通機能

統合エージェント基盤は,統合マネージャーホストと統合エージェントホストに組み込まれ,統合エージェントホストの稼働情報を統合マネージャーホストに送ったり,統合マネージャーホストの指示でコマンド実行を統合エージェントホスト上で行うことなどができます。

統合マネージャーホスト側で動作する統合エージェント基盤を「統合エージェント管理基盤」と呼びます。統合エージェント側で動作する統合エージェント基盤を「統合エージェント制御基盤」と呼びます。

統合エージェント基盤の共通機能は,統合エージェント基盤の各機能(コマンド実行,エージェント管理など)で共通で使用する次の機能を提供します。

統合エージェント基盤のプロセス名と役割を次に示します。

基盤名

プロセス名

役割

統合エージェント管理基盤

imbase

  • 登録エージェントの管理

  • 統合マネージャーホストと統合エージェントホスト間の通信中継

  • 統合マネージャーホストと統合エージェントホスト間のファイル転送

  • データ転送量の少ないREST API(イベント転送など)

imbaseproxy

  • 統合マネージャーホストと統合エージェントホスト間の通信中継

  • データ量の多いREST APIの転送用(トレンドデータ(リモートライト)の転送)

統合エージェント制御基盤

imagent

  • 統合マネージャーホストと統合エージェントホスト間の通信中継

  • 統合マネージャーホストと統合エージェントホスト間のファイル転送

  • 統合エージェントホストでのコマンド実行

  • 統合マネージャーホスト上で動作するサービスのREST APIプロキシ

  • データ転送量の少ないREST API(イベント転送など)

imagentproxy

  • 統合マネージャーホストと統合エージェントホスト間の通信中継

  • データ量の多いREST APIの転送用(トレンドデータ(リモートライト)の転送)

imagentaction

コマンド実行機能を実現する

(a) HTTP認証

統合エージェント基盤では,次の通信でHTTP認証(RFC 7235,HTTP 認証フレームワークによる認証)を行います。

通信

認証情報

対応するHTTP認証スキーム

HTTPプロキシサーバ←統合エージェント管理基盤(imagent,imagentproxy)間

HTTP-Proxyサーバに登録されたユーザーパスワード

Basic認証

(凡例)←:通信方向を示します。

Exporterが行うHTTP認証については,各Exporterの説明を参照してください。

(b) 初期シークレットによる認証

統合エージェント制御基盤は,統合エージェント管理基盤に初回アクセスするときに,初期シークレットを使用して接続します。このとき,統合エージェント管理基盤からエージェントクライアントシークレットを配布してもらい,それ以降はライセンス情報を使用してアクセスします。

統合エージェント制御基盤では,初期シークレットとライセンス情報を,シークレット難読化機能で管理します。シークレット難読化機能の詳細については,「3.15.10 シークレット難読化機能」を参照してください。

なお,統合エージェントホストで,統合エージェント制御基盤をインストールしたあと,統合エージェント制御基盤の初回起動までの間に,初期シークレットを変更した場合は,統合エージェントをアンインストールして再度インストールする必要があります。

(c) 暗号通信

統合エージェント管理基盤(imbase,imbaseproxy)と統合エージェント制御基盤(imagent,imagentproxy)間の暗号通信について説明します。

Exporterで行う暗号通信については各Exporterの仕様を参照してください。

■ サポートする証明書ファイル

統合エージェント基盤で使用する公開鍵証明書は,ユーザーが用意します。

用意する証明書およびキーファイルのファイル形式を,次に示します。

ファイル

形式

  • CA証明書ファイル

  • サーバ証明書ファイル

pkcs7形式のX509公開鍵証明書をPEM形式でエンコードしたものです。

サーバ証明書キーファイル

pkcs1又はpkcs8形式の秘密鍵をPEM形式でエンコードしたものです。

パスワードで保護したものは使用できません。

暗号通信する場合は,統合エージェント管理基盤側のサーバ証明書ファイルおよびサーバ証明書キーファイルは必須です。サーバ証明書を検証する場合は,統合エージェント制御基盤側にCA証明書ファイルが必須です。

CA証明書は認証局(CA:Certificate Authority)からユーザーが入手します。サーバ証明書ファイルおよびサーバ証明書キーファイルの作成方法は,マニュアル「JP1/Base 運用ガイド」を参照してください。

統合エージェント基盤がサポートする,証明書内に記載された公開鍵の暗号アルゴリズムは次のとおりです。

  • RSA

  • ECDSA

  • Ed25519

統合エージェント基盤がサポートする,署名済み証明書で用いられた署名アルゴリズムは次のとおりです。

証明書のデジタル署名アルゴリズム

割当コード

備考

rsa_pss_rsae_sha256

0x0804

暗号技術:RSA(PSS) ハッシュ技術:SHA256

rsa_pss_rsae_sha384

0x0805

暗号技術:RSA(PSS) ハッシュ技術:SHA384

rsa_pss_rsae_sha512

0x0806

暗号技術:RSA(PSS) ハッシュ技術:SHA512

rsa_pkcs1_sha256

0x0401

暗号技術:RSA(PKCS1) ハッシュ技術:SHA256

rsa_pkcs1_sha384

0x0501

暗号技術:RSA(PKCS1) ハッシュ技術:SHA384

rsa_pkcs1_sha512

0x0601

暗号技術:ECDSA ハッシュ技術:SHA512

ecdsa_secp256r1_sha256

0x0403

暗号技術:ECDSA ハッシュ技術:SHA256

ecdsa_secp384r1_sha384

0x0503

暗号技術:ECDSA ハッシュ技術:SHA384

ecdsa_secp521r1_sha512

0x0603

暗号技術:ECDSA ハッシュ技術:SHA512

ed25519

0x0807

暗号技術:EdDSA ハッシュ技術:SHA512

Subject Alternative Nameにホスト名が設定されていない証明書では,サーバ認証を行うことができません。

■ サポートする暗号スイート

TLSバージョン

1.2〜1.3をサポートしています。

1.0,1.1はサポートしていません。

暗号スイート
  • "TLS_RSA_WITH_AES_128_CBC_SHA"(TLS1.2まで)

  • "TLS_RSA_WITH_AES_256_CBC_SHA"(TLS1.2まで)

  • "TLS_RSA_WITH_AES_128_GCM_SHA256"(TLS1.2だけ)

  • "TLS_RSA_WITH_AES_256_GCM_SHA384"(TLS1.2だけ)

  • "TLS_AES_128_GCM_SHA256"(TLS1.3だけ)

  • "TLS_AES_256_GCM_SHA384"(TLS1.3だけ)

  • "TLS_CHACHA20_POLY1305_SHA256"(TLS1.3だけ)

  • "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA"(TLS1.2まで)

  • "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA"(TLS1.2まで)

  • "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA"(TLS1.2まで)

  • "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA"(TLS1.2まで)

  • "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"(TLS1.2だけ)

  • "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"(TLS1.2だけ)

  • "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"(TLS1.2だけ)

  • "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"(TLS1.2だけ)

  • "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"(TLS1.2だけ)

  • "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256"(TLS1.2だけ)

■ TLS再ネゴシエーション

暗号通信(TLS通信)の再ネゴシエーションを受け付けません。

(d) ログ出力

ログ定義の設定内容に従って,指定したディレクトリにログを出力します。

ログ定義に指定した最大ファイルサイズに達した場合は,ログ定義に指定したファイル面数の範囲で,ログファイルをローテーションして切り替えます。

ログレベル,最大ファイルサイズ,ファイル面数の設定方法を,次に示します。

ホスト

プログラム

設定方法

統合マネージャーホスト

統合エージェント管理基盤(imbase)

imbase設定ファイル(jpc_imbase.json)のlogで設定します。

統合エージェント管理基盤(imbaseproxy)

imbaseproxy設定ファイル(jpc_imbaseproxy.json)のlogで設定します。

統合エージェントホスト

統合エージェント制御基盤(imagent)

imagent設定ファイル(jpc_imagent.json)のlogで設定します。

統合エージェント制御基盤(imagentproxy)

imagentproxy設定ファイル(jpc_imagentproxy.json)のlogで設定します。

統合エージェント制御基盤(imagentaction)

imagentaction設定ファイル(jpc_imagentaction.json)のlogで設定します。

注※

各設定ファイルの詳細については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「2. 定義ファイル」の,該当するファイルの説明を参照してください。

各設定ファイルは,プロセスの起動時にロードされます。

(e) コマンド実行機能

コマンド実行機能については,「3.15.7(3)統合エージェントアクション実行機能」の「3.15.7(3)(g)コマンド実行機能」を参照してください。

(f) パスワード難読化

統合エージェント制御基盤側の定義ファイルに記載するプロキシサーバ認証パスワードについては,難読化して保存します。詳細については「3.15.10 シークレット難読化機能」を参照してください。

(g) 通信機能

■HTTPプロキシサーバを介した通信

統合エージェント基盤では,統合エージェント管理基盤(imbase,imbaseproxy)と統合エージェント制御基盤(imagent,imagentproxy)で,HTTPプロキシサーバを介して通信できます。

HTTPプロキシ認証の認証方式は,Basic認証だけに対応しています。

注※

HTTPプロキシ認証の通信は,HTTPS(TLS)通信による暗号化の範囲外であるため,HTTPプロキシと統合エージェント制御基盤(imagent,imagentproxy)の間は信頼できるネットワークでつないでください。

統合エージェント制御基盤(imagent,imagentproxy)からの通信を受け取れるように,HTTPプロキシサーバ側で,次に示す設定を行ってください。

  • 統合エージェント制御基盤からのHTTP認証で利用できるHTTPプロキシのユーザー設定

  • 統合マネージャーホストの統合エージェント管理基盤の通信ポートへの通信許可

HTTPプロキシサーバ側で,次に示すように80や443ポートの設定をしていて,imbaseとimbaseproxyの通信ポートが許可されていない場合や,統合マネージャーホストへの通信が許可されていない場合は,上記の設定が必要となります。

■ネットワークバインドのIPアドレス

統合エージェント基盤のプロセスは,すべてTCPのリッスン状態で接続を待ち受けます。

リッスンポートは,デフォルトでは,「付録C.1(2) JP1/IM - Agentが使用するポート番号」で示したポートを使います。使用するポートは設定で変更できます。

一方,バインドするIPアドレスは,ホスト名からIPアドレスを取得して,取得したIPアドレスでバインドします。そのため,バインドするIPアドレスは変更できません。

統合エージェント基盤プロセスは,次の方式でIPアドレスを取得してバインドします。

統合エージェント管理基盤プロセスの動作は次のとおりです。

標準構成(非クラスタ構成)の場合
  1. ホスト名をJP1_DEFAULTと仮定し,下記の「クラスタ構成の場合」の手順2以降を実行します。

クラスタ構成の場合
  1. 次の優先順位で論理ホスト名を取得します。設定されていない場合は,JP1_DEFAULTを論理ホスト名として仮定します。

    • プログラムの起動パラメタ(コマンドラインのオプション)で論理ホスト名を取得します。

    • 環境変数JPC_HOSTNAMEの指定値を論理ホスト名として取得します。

  2. 取得したホスト名を用いてJP1/Baseの共通情報定義からバインド方式を取得します。

  3. バインド方式がANYの場合はANYバインドでバインドします。

  4. バインド方式がIPの場合は,取得したホスト名(取得できていない場合はOSから自ホスト名を取得)からプログラム内でIPアドレスリストを取得します。jp1hosts,およびjp1hosts2.confに対応しています。両方ともで定義されている場合は,jp1hosts2.confを優先します。

  5. 取得したIPアドレスリストのIPアドレスでIPバインドします。バインドするIPアドレス数は共通情報定義に従います。

論理ホスト名は,jco_start.clusterのパラメーターまたはWindowsサービスの起動パラメーターで指定したものです。

統合エージェント制御基盤プロセスの動作は次のとおりです。

標準構成(非クラスタ構成)の場合
  1. jpc_imagent.json,jpc_imagentproxy.json,およびjpc_imagentaction.jsonのJP1_BIND_ADDRを取得します。

  2. JP1_BIND_ADDRがANYの場合は,ANYバインドします

  3. JP1_BIND_ADDRがIPの場合は,自ホスト名をOSから取得し,IPアドレスリストを取得します。

  4. 取得したIPアドレスリストのIPアドレスでバインドします。※1

クラスタ構成の場合
  1. jpc_imagent.json,jpc_imagentproxy.json,およびjpc_imagentaction.jsonのJP1_BIND_ADDRを取得します。

  2. JP1_BIND_ADDRがANYの場合は,ANYバインドします。

  3. JP1_BIND_ADDRがIPの場合は,プログラムの起動パラメーター(コマンドラインのオプション)で論理ホスト名を取得します。

  4. 取得したホスト名からプログラム内でIPアドレスリストを取得します。

  5. 取得したIPアドレスリストのIPアドレスでバインドします。

論理ホスト名は,jco_start.clusterのパラメーターまたはWindowsサービスの起動パラメーターで指定したものです。

注※

jpc_imagent.json,jpc_imagentproxy.json,およびjpc_imagentaction.jsonのCOM_LISTEN_ALL_ADDRが1の場合,IPアドレスリストの先頭からCOM_MAX_LISTEN_NUM個のIPアドレスでバインドします。1以外の場合は,IPアドレスリストの最初のIPアドレスでバインドします。

また,バインドするIPアドレスは,統合エージェントの起動時の設定値ログに出力します。詳細については,マニュアル「JP1/Integrated Management 3 - Manager運用ガイド」の「12.2.2(7)(b)起動時の設定値ログ」を参照してください。

■ホスト名の解決

統合エージェントでは,次のようにホスト名からIPアドレス変換を行います。

マネージャーホストで稼働するプログラム(統合エージェント管理基盤)

次の順にホスト名に対応するIPアドレスを探して取得します。

優先順位

参照先

1

jp1hosts2定義ファイル

2

jp1hosts定義ファイル

3

OSの情報(hostsファイル,DNSなど)

注 優先順位はOSの仕様に従います。

なお,名前解決にはJP1/Baseのライブラリを使用します。

エージェントホストで稼働するプログラム(統合エージェント制御基盤,Prometheus server,各種Exporter,Alertmanager,およびFluentd)

OSの情報(hostsファイル,DNSなど)から,ホスト名に対応するIPアドレスを探して取得します。名前解決はGo言語のライブラリ内で行います。

(2) エージェント管理機能

統合マネージャーは,統合エージェントホスト管理データベースに,統合エージェントに関する情報(どのホストにエージェントが存在するか,バージョンやアドオンプログラムの情報など)を記録します。

システム管理者は,記録された統合エージェントの情報を,統合オペレーション・ビューアーから表示できる[統合エージェント一覧]画面で一覧表示できます。次のようなことができます。

[統合エージェント一覧]画面の詳細については,マニュアル「JP1/Integrated Management 3 - Manager 画面リファレンス」の「2.2.1[統合エージェント一覧]画面」を参照してください。

(3) 統合エージェントアクション実行機能

統合エージェントアクション実行機能は,アクション実行要求元機能(JP1/IM - Managerの対処アクションの自動実行機能,対処アクションの手動実行機能,または定義ファイル操作機能)の指示で,次に示すアクションを実行して,アクションの実行結果を返却する機能です。

(a) 対処アクションの自動実行機能

対処アクションの自動実行機能のアクション種別とアクション同時実行可否を次に示します。

機能種別

アクション種別

アクション同時実行可否

対処アクションの自動実行機能

コマンド実行

不可(デフォルト)/可

アクション実行要求の受付

アクション実行要求の内容,統合エージェントホストの登録状況,および統合エージェントホストの接続状況に問題がなければ,アクション最大同時実行数に関係なく,アクションを受け付けます。

アクションの実行(アクション同時実行可否:不可の場合)

アクションを受け付けた順に,アクションを順次処理します。

先に受け付けたアクションが終了している場合は,あとに受け付けたアクションを実行可能状態にします。

先に受け付けたアクションが終了していない場合は,先に受け付けたアクションの実行が終了するまで,あとに受け付けたアクションは実行されません。先に受け付けたアクションの実行が終了してから,あとに受け付けたアクションを実行可能状態にします。

実行可能状態になったアクションの実行については,「3.15.7(3)(e)アクション最大同時実行数」を参照してください。

アクションの実行(アクション同時実行可否:可の場合)

アクションを受け付けた順に,アクションを並列処理します。

アクションを受け付けた順に,アクションを実行可能状態にします。実行可能状態になったアクションの実行については,「3.15.7(3)(e)アクション最大同時実行数」を参照してください。

アクションの実行結果は,実行が終了したアクションから順に返却されるため,同時実行不可のアクションの実行と異なり,アクションの実行順序は保証されません。

(b) 対処アクションの手動実行機能

対処アクションの手動実行機能のアクション種別とアクション同時実行可否を次に示します。

機能種別

アクション種別

アクション同時実行可否

対処アクションの手動実行機能

コマンド実行

アクション実行要求の受付

対処アクションの自動実行機能と同じです。

アクションの実行

対処アクションの自動実行機能(アクション同時実行可否:可の場合)と同じです。

(c) 定義ファイル操作機能のアクション実行

定義ファイル操作機能のアクション種別とアクション同時実行可否を次に示します。

機能種別

アクション種別

アクション同時実行可否

定義ファイル操作機能

定義ファイルの一覧取得

定義ファイルの取得

不可

定義ファイルの削除

不可

定義ファイルの更新

不可

アクション実行要求の受付

対処アクションの自動実行機能と同じです。

アクションの実行(アクション同時実行可否:不可の場合)

対処アクションの自動実行機能(アクション同時実行可否:不可の場合)と同じです。

例えば,先に受け付けたアクション(定義ファイルの削除)の実行が終了するまで,あとに受け付けたアクション(定義ファイルの更新)は実行されません。先に受け付けたアクション(定義ファイルの削除)の実行が終了したら,あとに受け付けたアクション(定義ファイルの更新)を実行可能状態にします。実行可能状態になったアクションの実行については,「3.15.7(3)(e) アクション最大同時実行数」を参照してください。

アクションの実行(アクション同時実行可否:可の場合)

対処アクションの自動実行機能(アクション同時実行可否:可の場合)と同じです。

補足事項

アクションを受け付けた順に処理する以外に,同時実行可と同時実行不可のアクションに依存関係はありません。

(d) 「対処アクションの自動実行機能」のアクション同時実行可否の変更

対処アクションの自動実行機能のアクション同時実行可否(デフォルト:同時実行不可)は,統合エージェントホスト単位に設定します。対処アクションの自動実行機能のアクション同時実行可否を変更するには,imagent設定ファイル(jpc_imagent.json)で,対処アクションの自動実行機能のアクション同時実行可否を同時実行不可(デフォルト)/同時実行可に変更して,統合エージェント制御基盤を再起動します。imagent設定ファイル(jpc_imagent.json)については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「imagent設定ファイル(jpc_imagent.json)」(2. 定義ファイル)を参照してください。

なお,対処アクションの自動実行機能のアクション同時実行可否を同時実行可から同時実行不可に変更した場合でも,アクション同時実行可否が同時実行可のときに実行可能状態になったアクションは並列処理されます。

(e) アクション最大同時実行数

実行可能状態になったアクションを,アクション最大同時実行数の範囲内で実行します。アクション最大同時実行数に空きがない場合は,アクション最大同時実行数に空きが出るまで実行可能状態のままになります。

統合エージェントホスト単位に次のアクション最大同時実行数を設定します。

  • 対処アクションの自動実行機能/対処アクションの手動実行機能のアクション最大同時実行数

  • 定義ファイル操作機能のアクション最大同時実行数

統合エージェントホストのアクション最大同時実行数は,次に示す同時実行数の総和です。なお,アクション同時実行可否が同時実行不可のアクションの同時実行数は1です。

対処アクションの自動実行機能/対処アクションの手動実行機能のアクション最大同時実行数
  • 対処アクションの自動実行機能のコマンド実行の同時実行数

  • 対処アクションの手動実行機能のコマンド実行の同時実行数

定義ファイル操作機能のアクション最大同時実行数
  • 定義ファイル操作機能の定義ファイルの一覧取得の同時実行数

  • 定義ファイル操作機能の定義ファイルの取得の同時実行数

  • 定義ファイル操作機能の定義ファイルの削除の同時実行数

  • 定義ファイル操作機能の定義ファイルの更新の同時実行数

アクション最大同時実行数を変更するには,imagent設定ファイル(jpc_imagent.json)で,次の設定を変更して,統合エージェント制御基盤を再起動します。

  • 対処アクションの自動実行機能/対処アクションの手動実行機能のアクション最大同時実行数

  • 定義ファイル操作機能のアクション最大同時実行数

imagent設定ファイル(jpc_imagent.json)については,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「imagent設定ファイル(jpc_imagent.json)」(2. 定義ファイル)を参照してください。

(f) アクションを実行するユーザー

アクションを実行するユーザーを次に示します。

アクション

アクションを実行するユーザー

JP1/IM - Managerの対処アクションの自動実行機能,または対処アクションの手動実行機能からのコマンド実行

統合エージェントホスト単位に,コマンド実行時の実行ユーザーを1つ設定することができます。各エージェントホストのimagent設定ファイル(jpc_imagent.json)に設定します。

Windowsの場合

  • ユーザー名,ドメイン名,パスワードを設定します。

  • パスワードはjimasecretコマンドを使用して登録します。

  • 指定するユーザーはログイン可能である必要があります。

  • 指定するユーザーのホームディレクトリが存在する必要があります(ホームディレクトリは1度Windowsにログインすると作成されます)。

  • 指定するユーザーはローカルセキュリティポリシーの[ローカルログオンの許可]の権限を持っている必要があります。

Linuxの場合

  • ユーザー名とシェルを設定します。

  • 指定するユーザーはログイン可能である必要があります。

  • 指定するユーザーのホームディレクトリが存在する必要があります。

上記以外のアクション

Windowsの場合:SYSTEM(固定)

Linuxの場合:root(固定)

(g) コマンド実行機能

アクション実行機能が「コマンド実行」のアクション実行要求を受けた場合,統合エージェント上のコマンドを実行します。

■コマンド実行先ホスト

統合エージェントホストをコマンド実行先ホストとして指定します。

指定した統合エージェントホストが,統合エージェント管理基盤で管理されていない場合は,エラーとなり,コマンド実行要求を受け付けません。

指定した統合エージェントホストの接続を確認できない場合は,エラーとなり,コマンド実行要求を受け付けません。

コマンド実行要求を受け付けたあとに,統合エージェントホストの接続切断,統合エージェントホストの削除を検知した場合は,実行を開始していないコマンドのアクション実行状態を実行失敗にして,コマンド実行結果にKNBC00612-Eを出力します。実行中のコマンドのアクション実行状態を状態不明にして,コマンド実行結果にKNBC00625-Eを出力します。

■コマンドを実行するユーザー

3.15.7(3)(f)アクションを実行するユーザー」を参照してください。

■実行できるコマンド

実行できるコマンドの種類を次に示します。

コマンドを実行するホストがWindowsの場合
  • 実行形式ファイル(.com,.exe)

  • バッチファイル(.bat)

  • JP1/Script のスクリプトファイル(.spt)(ただし,.spt ファイルが実行できるよう関連づけが設定されていること)

  • 自動アクションで実行できるアプリケーションに関連づけられているファイルタイプ(拡張子)を持つデータファイル(.vbs など)

  • 日本語環境の場合,コマンドの標準出力や標準エラー出力の内容をShiftJIS文字コードで出力するコマンド

  • 中国語環境の場合,コマンドの標準出力や標準エラー出力の内容をGB18030文字コードで出力するコマンド

コマンドを実行するホストがUNIXの場合
  • UNIX のコマンド

  • シェルスクリプト

ただし,次のようなコマンドは実行できません。

  • 対話操作を必要とするコマンド

  • 画面を表示するコマンド

  • エスケープシーケンスや制御コードを伴うコマンド

  • デーモンなどの,終了しないコマンド

  • Windows メッセージ機構やDDE など,デスクトップとの対話が必要なコマンド(Windows の場合)

  • shutdown やhalt など,OS をシャットダウンするコマンド

子プロセスを生成するようなコマンドを実行した場合,コマンドの子プロセスが終了していなくても,コマンドが終了した時点でアクション実行は完了となります。

■コマンドの実行方法

統合エージェントのコマンド実行機能は,次の処理によりコマンドを実行します。

Windowsの場合
cmd.exe /c 実行コマンド
UNIXの場合

OSユーザーのログインシェルを使用します。

ログインシェルが/bin/shの場合の例を次に示します。

/bin/sh -c 実行コマンド
注意事項

ログインシェルとして「/sbin/false」,「/bin/false」,「/bin/true」,「/sbin/nologin」などが設定されている場合は正常に実行できません。

cmd.exe /c 実行コマンド」や「シェル -c 実行コマンド」で実行できないコマンドは,統合エージェントのコマンド実行機能でも実行できません。

カレントディレクトリは実行ユーザーのホームディレクトリになります。

■環境変数

コマンド実行時に環境変数ファイルを指定しない場合は,次の環境変数が使われます。

Windowsの場合

Windowsのシステム環境変数が,コマンド実行時の環境変数として使われます。OSユーザーのプロファイルは読み込まれません。

UNIXの場合

imagentプロセスの環境変数が,コマンド実行時の環境変数として使われます。OSユーザーのプロファイルは読み込まれません。

コマンド実行時に環境変数ファイルを指定した場合は,環境変数ファイルで設定した環境変数が,コマンド実行時の環境変数として使われます。環境変数ファイルについては,マニュアル「JP1/Integrated Management 3 - Manager コマンド・定義ファイル・APIリファレンス」の「環境変数ファイル(任意のファイル名)」(2. 定義ファイル)を参照してください。

コマンド実行時に環境変数ファイルを指定した場合は,統合エージェントホスト上の指定した環境変数ファイルを読み込んでコマンド実行時の環境変数に設定します。環境変数ファイルが存在しない場合は,エラーメッセージ(KNBC20032-E)を出力してコマンドを実行しません。指定した環境変数ファイルの内容を読込めなかった場合は,警告メッセージ(KAVB2065-W)を出力してコマンドを実行します。この場合,環境変数ファイルの内容は有効になりません。

■文字コードについて

統合エージェント管理基盤の文字コードはUTF-8です。統合エージェント制御基盤のコマンド実行機能でサポートする文字コードを次に示します。

ロケールの変更については,マニュアル「JP1/Integrated Management 3 - Manager運用ガイド」の「2.10 統合エージェントホストのロケールを変更する場合に必要な作業」の記載を参照してください。

OS

システムロケール

文字コード

Windows

日本語

SJIS

英語

C(ISO-8859-1)

中国語

GB18030

上記以外

C(ISO-8859-1)

Linux

UTF-8

下記は,上記の表に記載した文字コードで動作する必要があります。

  • 実行するコマンド

    実行するコマンドは,上記の表に記載した文字コードで標準出力/標準エラー出力する必要があります。

  • 環境変数ファイル

    環境変数ファイルは,上記の表に記載した文字コードで定義する必要があります。

■コマンド実行結果

コマンド実行結果は,コマンド実行要求を受け付けた統合エージェント管理基盤(統合マネージャーホストまたは下位マネージャーホスト)上の対処アクション結果管理DBで管理します。統合エージェント制御基盤(統合エージェントホスト)上では管理されません。統合エージェント制御基盤では,ユーザーが参照できる形式でコマンド実行ログ(コマンド名とコマンド引数を合わせたコマンド文字列とコマンド実行結果)を出力します。なお,当該ログファイルの内容をコマンド実行結果として確認する機能は提供していません。

3.15.7(3)(j) トラブルシューティング」の想定するトラブルが発生した場合は,コマンド実行結果は対処アクション結果管理DBで管理されません。コマンド実行結果を対処アクション結果管理DBに格納できなかった旨を統合エージェント制御基盤のコマンド実行ログに出力します(統合エージェント制御基盤が強制終了される場合を除く)。

■imagentサービスの終了時に実行中のコマンドの扱い

アクション実行中のコマンドプロセスが存在するときにimagentサービスを停止させた場合,コマンドプロセスの強制終了を試みます。

強制終了に失敗してもリトライは行いません。

(h) 定義ファイル操作機能

定義ファイル操作機能については,「3.6.5 定義ファイル操作機能」を参照してください。

(i) アクション結果保存機能

アクションの実行状態や実行結果を対処アクション結果管理DBに保存します。対処アクション結果管理DBについては,JP1/IM - Managerの「2.7.7 対処アクション結果管理DB」を参照してください。対処アクションSIDについては,「7. 対処アクションの自動実行と手動実行(JP1/IM - Agent連携)」の「対処アクションSID」について記載している個所を参照してください。

■ アクション共通データ

表3‒32 アクション共通データ

項番

項目

説明

1

対処アクションSID

対処アクション結果管理DB内で,アクションを一意に識別する文字列を管理します。

2

アクション受付日時

統合エージェント管理基盤が,アクション実行要求を受け付けた日時を管理します。

3

アクション実行開始日時

統合エージェント制御基盤が,アクションの実行を開始した日時を管理します。

4

アクション実行終了日時

統合エージェント制御基盤が,アクションの実行を終了した日時を管理します。

5

機能種別

アクション実行要求元機能の機能種別を管理します。

  • 対処アクションの自動実行機能の識別子

  • 対処アクションの手動実行機能の識別子

  • 定義ファイル操作機能の識別子

6

アクション種別

アクション種別を管理します。

  • コマンド実行の識別子

  • 定義ファイルの一覧取得の識別子

  • 定義ファイルの取得の識別子

  • 定義ファイルの削除の識別子

  • 定義ファイルの更新の識別子

7

アクション実行先ホスト名

アクションを実行する統合エージェントホスト名を管理します。

8

アクション

アクションの内容を管理します。

  • コマンド実行の場合

    コマンド名とコマンド引数を合わせたコマンド文字列

  • 定義ファイルの一覧取得の場合

    なし(空白)

  • 定義ファイルの取得の場合

    なし(空白)

  • 定義ファイルの削除の場合

    なし(空白)

  • 定義ファイルの更新の場合

    なし(空白)

9

アクション実行状態

アクションの実行状態を管理します。

  • 受付済みの識別子

  • 先行終了待ちの識別子

  • キューイングの識別子

  • 実行中の識別子

  • 実行終了の識別子

  • 実行失敗の識別子

10

終了コード

アクションの終了コードを管理します。

  • コマンド実行の場合

    コマンドの終了コード/アクションの終了コード

  • 定義ファイルの一覧取得の場合

    アクションの終了コード

  • 定義ファイルの取得の場合

    アクションの終了コード

  • 定義ファイルの削除の場合

    アクションの終了コード

  • 定義ファイルの更新の場合

    アクションの終了コード

11

アクション実行要求元ホスト名

アクションの実行を要求した統合マネージャーホスト名を管理します。

12

JP1ユーザー名

予約フィールド

13

OSユーザー名

予約フィールド

■ アクション詳細(コマンド実行)

表3‒33 アクション詳細(コマンド実行)

項番

項目

説明

1

対処アクションSID

対処アクション結果管理DB内で,アクションを一意に識別する文字列を管理します。

2

環境変数ファイル名

環境変数ファイル名を管理します。

3

プロセスID

コマンドのプロセスIDです。

■ アクション詳細(定義ファイルの一覧取得)

なし

■ アクション詳細(定義ファイルの取得)

なし

■ アクション詳細(定義ファイルの削除)

なし

■ アクション詳細(定義ファイルの更新)

なし

■ 実行結果データ

表3‒34 実行結果データ

項番

項目

説明

1

対処アクションSID

対処アクション結果管理DB内で,アクションを一意に識別する文字列を管理します。

2

通番

メッセージの番号を管理します。

3

メッセージ発生日時

対処アクション結果管理DBにメッセージを書き込んだ日時を管理します。

4

メッセージ種別

メッセージ種別を管理します。

  • コマンド実行要求受付を表す識別子

  • コマンド実行開始を表す識別子

  • コマンドの標準出力/標準エラー出力を表す識別子

  • コマンド実行終了を表す識別子

  • その他を表す識別子

5

メッセージ

アクションの実行時に出力するメッセージを管理します。

  • コマンド実行の場合

    コマンドの標準出力/標準エラー出力,またはアクションのメッセージ

  • 定義ファイルの一覧取得の場合

    アクションのメッセージ

  • 定義ファイルの取得の場合

    アクションのメッセージ

  • 定義ファイルの削除の場合

    アクションのメッセージ

  • 定義ファイルの更新の場合

    アクションのメッセージ

(j) トラブルシューティング

アクション実行要求元機能からアクション実行要求を受け付けた後,統合エージェントアクション実行機能では,下記に示すトラブルが発生する場合があります。このようなトラブルが発生したときのトラブルシューティングについて説明します。

表3‒35  想定するトラブル

想定するトラブル

システムの状況

ケース1

システム設計時の想定以上に自動対処アクションが発生し,不要な対処アクションが大量に蓄積されてしまった。

  • トラブル発生時の状況

    キューイング,実行中の対処アクションが大量に滞留している。

  • トラブル解消後の状況

    滞留している対処アクションが終了状態(キューイングから実行失敗,実行中から状態不明)になり,新たに発生した対処アクションを実行できるようになります。

ケース2

実行したコマンドプロセスが終了しない。

  • 実行できないコマンド(「3.15.7(3)(g) コマンド実行機能」を参照)を誤って実行してしまい,コマンドが実行中のまま終了しなくなった。

  • 対処アクションの自動実行機能で実行したコマンドがハングアップまたは想定以上に時間が掛かったため,後続の対処アクションが実行されなくなった。

  • トラブル発生時の状況

    コマンドプロセスが実行中のまま終了しない(対処アクションが実行中のままになります)。

  • トラブル解消後の状況

    実行中の対処アクションが終了状態(実行中→実行終了)になり,後続の対処アクションを実行できるようになります。

ケース3

対処アクションの実行中にクラスタ構成の統合エージェントホスト(統合エージェント制御基盤)でフェイルオーバーが発生した。JP1イベントで統合エージェント制御基盤の停止を確認できない。

  • トラブル発生時の状況

    対処アクションが実行中のままになります。

    JP1イベントで統合エージェント制御基盤の停止を確認できません。

  • トラブル解消後の状況

    対処アクションが終了状態(キューイングから実行失敗,実行中から状態不明)になり,新たに発生した対処アクションを実行できるようになります。

ケース4

次の事象またはシステムエラーが発生した。

  • 統合エージェントホストを削除した。

  • 統合エージェント制御基盤が停止した。

  • 統合エージェント制御基盤から統合エージェント管理基盤にネットワーク接続できなくなった(ネットワークエラー)。

  • トラブル発生時の状況

    対処アクションが終了状態(キューイングから実行失敗,実行中から状態不明)になります。

  • トラブル解消後の状況

    新たに発生した対処アクションを実行できるようになります。

ケース5

対処アクションの実行中に次のシステムエラーが発生した。

  • 統合エージェント管理基盤(JP1/IM - Manager)が停止した。

  • インテリジェント統合管理データベースが停止した。

  • トラブル発生時の状況

    対処アクションが実行中のままになります。

  • トラブル解消後の状況

    統合エージェント管理基盤(JP1/IM - Manager)を起動後,統合エージェント制御基盤の接続を確認できたとき,かつ対処アクションの動作を確認できないときは,対処アクションが終了状態(実行中から状態不明)になり,後続の対処アクションを実行できるようになります。対処アクションが動作しているときは,実行中のままになります。

統合エージェント管理基盤(JP1/IM - Manager)を起動後,統合エージェント管理基盤が,統合エージェント制御基盤の接続を確認できないときは,対処アクションが終了状態(キューイングから実行失敗,実行中から状態不明)になり,新たに発生した対処アクションを実行できるようになります。

想定するトラブルの説明とユーザーの対処について説明します。ユーザーの対処においては,統合エージェントホストでコマンドプロセスの状態を確認して,トラブル解消後にコマンド(対処アクション)を再実行するかどうかを判断する必要があります。

■ケース1

説明

ユーザーは統合エージェントホストで統合エージェント制御基盤を停止することでトラブルに対処します。

統合エージェント制御基盤を停止すると,統合エージェント管理基盤が統合エージェント制御基盤の停止を検知して,対処アクションの実行状態が次のように遷移します。

  • 実行中から状態不明に遷移します。

  • キューイングから実行失敗に遷移します。

統合エージェント制御基盤を停止すると,Windowsの場合はCMD.EXEと実行中のコマンド,UNIXの場合はシェルと実行中のコマンドの実行状態が実行中のまま残る場合があります。その場合は,プロセスが自然に終了するのを待つか,プロセスを手動で強制終了してください。

ユーザーの対処
  1. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,キューイング,実行中のアクションを絞り込んでトラブルが発生している統合エージェントホストを特定します。

  2. 統合エージェントホストにログインして,統合エージェント制御基盤を停止します。

  3. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,実行中,状態不明の対処アクションのPIDを確認します。

  4. 統合エージェントホストで3.のPIDのプロセスを確認し,プロセスが自然に終了するのを待つか,プロセスを手動で強制終了します。

  5. 統合エージェントホストで統合エージェント制御基盤を起動します。

■ケース2

説明

コマンドプロセスを手動で強制終了することでトラブルに対処します。コマンドプロセスを強制終了すると,対処アクションの実行状態は実行終了に遷移します。

ユーザーの対処
  1. 統合オペレーション・ビューアーの[対処アクション結果詳細]画面で,終了しないコマンドプロセスのPIDを確認します。

  2. 統合エージェントホストにログインして,1.のPIDのコマンドプロセスを強制終了します。

補足1

imagentはユーザーが指定したコマンドラインを次のように実行します。

  • Linuxの場合

    /bin/sh -c ユーザーが指定したコマンドライン

  • Windowsの場合

    CMD C:\>"ユーザーが指定したコマンドライン"

統合オペレーション・ビューアーの[対処アクション結果詳細]画面の[メッセージ]欄に表示されるKNBC00622-IメッセージのプロセスIDは次の内容を示します。

  • Linuxの場合

    ユーザーが指定したコマンドラインにおいて1つのコマンドが実行される場合,そのコマンドプロセスのPIDが出力されます。

    ユーザーが指定したコマンドラインにおいて複数のコマンドが実行される場合,/bin/shのPIDが出力されます。

  • Windowsの場合

    CMDプロセスのプロセスIDが出力されます。

このため,コマンドプロセスを特定するためにプロセスの親子関係を確認しなければならない場合があります。

補足2

Windowsで拡張子に関連付けていないファイルを実行した場合,対処アクションは終了しますが,OpenWith.exeというプロセスが残存する場合があります。

OpenWith.exeプロセスが残存している場合は,手動で強制終了してください。

補足3

Linuxのバックグラウンド実行やWindowsでSTARTコマンドを使用するバッチファイルなどを実行すると,対処アクションは終了するがコマンドプロセスから実行された子プロセスが残存する場合があります。プロセスが残存している場合は,必要に応じて手動で強制終了してください。

■ケース3

説明

クラスタ構成の統合エージェントホスト(統合エージェント制御基盤)で,電源切断などの理由でフェイルオーバーが発生したときに,統合エージェント管理基盤が,統合エージェント制御基盤の停止を検知できずに,統合エージェント制御基盤が起動した場合は,対処アクションの実行状態が実行中のままになります。

注※

JP1イベントで統合エージェント制御基盤の停止を確認できません。

ユーザーは統合エージェントホストで統合エージェント制御基盤を停止することでトラブルに対処します。

ユーザーの対処
  1. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,実行中のアクションを絞り込んでトラブルが発生している統合エージェントホストを特定します。

  2. 統合エージェントホストにログインして,統合エージェント制御基盤を停止します。

  3. 統合エージェントホストで統合エージェント制御基盤を起動します。

■ケース4

説明

統合エージェント管理基盤が,統合エージェントホストの削除,統合エージェントホスト(統合エージェント制御基盤)の接続切断を検知すると,対処アクションの実行状態が次のように遷移します。

  • 実行中から状態不明に遷移します。

  • キューイングから実行失敗に遷移します。

Windowsの場合はCMD.EXEと実行中のコマンド,UNIXの場合はシェルと実行中のコマンドの実行状態が実行中のまま残る場合があります。その場合は,プロセスが自然に終了するのを待つか,プロセスを手動で強制終了してください。

ユーザーの対処
  1. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,実行失敗,実行中,状態不明のアクションを絞り込んでトラブルが発生している統合エージェントホストを特定します。

  2. システムエラーに対処します。

    ネットワークエラーの場合,統合エージェント制御基盤から統合エージェント管理基盤にネットワーク接続できるように対処します。

  3. 統合エージェントホストにログインして,統合エージェント制御基盤が停止していなければ,統合エージェント制御基盤を停止します。

  4. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,実行中,状態不明の対処アクションのPIDを確認します。

  5. 統合エージェントホストで4.のPIDのプロセスを確認し,プロセスが自然に終了するのを待つか,プロセスを手動で強制終了します。

  6. 統合エージェントホストで統合エージェント制御基盤を起動します。

■ケース5

説明

対処アクションの実行中に,インテリジェント統合管理データベースや統合エージェント管理基盤(JP1/IM - Manager)を停止すると,対処アクションの実行状態が実行中のままになります。

統合エージェント管理基盤(JP1/IM - Manager)を起動することでトラブルに対処します。

システムは統合エージェント管理基盤を起動後,統合エージェント制御基盤の接続確認を行い,接続状況に応じて,対処アクションの実行状態を遷移させます。

統合エージェント管理基盤が統合エージェント制御基盤の接続を確認できたときは,実行中のままになっているアクションに関して,統合エージェント制御基盤にアクションの動作状況を問い合わせ,対処アクションが動作していないときは,対処アクションの実行状態が次のように遷移します。対処アクションが動作しているときは,実行中のままになります。

  • 実行中から状態不明に遷移します。

統合エージェント管理基盤が統合エージェント制御基盤の接続を確認できないときは,対処アクションの実行状態が次のように遷移します。

  • 実行中から状態不明に遷移します。

  • キューイングから実行失敗に遷移します。

ユーザーの対処
  1. インテリジェント統合管理データベースが停止している場合,インテリジェント統合管理データベースを起動します。

  2. JP1/IM - Managerを起動します。

  3. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,実行失敗,実行中,状態不明のアクションを絞り込んで統合エージェントホストを特定します。

  4. 統合オペレーション・ビューアーの[対処アクション結果一覧]画面で,実行中,状態不明の対処アクションのPIDを確認します。

  5. 統合エージェントホストにログインして,4.のPIDのプロセスを確認し,プロセスが自然に終了するのを待つか,プロセスを手動で強制終了します。

(k) 統合エージェント制御基盤の計画停止

統合エージェント制御基盤の計画停止の流れを次に示します。

  1. 計画停止する統合エージェント制御基盤(統合エージェントホスト)をJP1/IM - Managerの共通除外条件に定義して,対処アクションが自動実行されないようにします。

  2. 計画停止する統合エージェント制御基盤(統合エージェントホスト)に,投入されているアクションがないことを確認します。すでに投入されているアクションがあるときはアクションの終了を待ちます。

  3. 統合エージェント制御基盤を計画停止します。