Red Hat Training

A Red Hat training course is available for Red Hat JBoss Operations Network

第7章 エージェントの設定

エージェントは、rhq-agent.sh スクリプトから開くエージェントプロンプトで設定および管理できます。

7.1. エージェントの登録および再登録

エージェントが JBoss ON サーバーに登録すると、エージェント名は一意のリソースキーとして使用され、エージェントを特定します。さらに、サーバーは、登録トークンまたは セキュリティートークンとして使用するためにエージェントに送信するランダムな文字列を生成します。

7.1.1. セキュリティートークンとエージェント登録について

JBoss ON エージェントが起動すると、JBoss ON サーバーに登録され、サーバー情報を送信します。JBoss ON サーバーは、指定のエージェント名、IP アドレス、およびポート番号を基にエントリーを作成します。
JBoss ON サーバーは、エージェント名と IP アドレスとポート番号のペアに関連 する無作為に生成された文字列であるセキュリティートークン も作成します。

図7.1 エージェント登録

エージェント登録
擬似認証の形式として再起動すると、エージェントはそのセキュリティートークンをサーバーに送信します。JBoss ON サーバーは、一意のリソースキー(エージェントの名前)と、そのセキュリティートークンをエージェントアイデンティティーを検証する方法として使用します。
JBoss ON サーバーは、エージェントが起動してサーバーに登録するたびにエージェント名とセキュリティートークンを関連付けます。エージェントが提供する情報が、そのエージェントに対して JBoss ON サーバーが提供する情報と一致しない場合、エージェントの接続試行を拒否します。

図7.2 異なるエージェント接続の試行

異なるエージェント接続の試行
そのため、JBoss ON サーバーがエージェントの登録情報への変更を受け入れるタイミングについて、いくつかのルールがあります。
  • エージェントは、対応するセキュリティートークン なし で既存のエージェント名で登録することはできません。
    既存のエージェント名でエージェントを登録するには、の説明に従って、最初に対応するセキュリティートークンをインストールする必要があり 「失われたセキュリティートークンの再インストール」 ます。
  • エージェントは、対応するセキュリティートークンがなく、元のエージェント名を 使用 すること なく、既存の IP アドレス/ポートの組み合わせで登録することはできません。
    つまり、基本的にエージェントの名前を変更することはできません。エージェントが既存の IP アドレス/ポートの組み合わせに登録されている場合は、元のセキュリティートークンと元の名前の両方を使用する必要があります。これにより、エージェントの元のアイデンティティーが再確立され、あるエージェントが別のエージェントのアイデンティティーを効果的に破棄するのを防ぎます。
  • エージェント名に対応するセキュリティートークンがある場合は、エージェントは既存の名前と新しい IP アドレス/ポートの組み合わせで登録 でき ます。
    再登録時にエージェント名を変更できず、エージェント IP アドレス、エージェントポート、または両方を変更することができます。これは、既存のエージェントが新しい IP アドレスまたはポートで再登録する必要があるクラウド、仮想、または DHCP 環境における一般的かつ便利なシナリオです。
注記
セキュリティートークンはエージェントの Java 設定に保存されます。このセキュリティートークンは、エージェントが再起動されたり、アンインストールされたり、その設定が消去された場合でも永続し --cleanconfigます。これにより、エージェントは簡単に再登録できます。

7.1.2. 失われたセキュリティートークンの再インストール

セキュリティートークンがエージェントの設定から誤って削除されると、エージェントはサーバーと通信できなくなります。エラーの 認証に失敗したと、試行に失敗 します。
失われたセキュリティートークンは、エージェントの設定に手動で追加できます。
  1. エージェントを停止します。
  2. セキュリティーパーミッションの管理を持つユーザーとして Web UI にログインします。
  3. Administration タブをクリックし、左側の Topology セクションの下にある Agents リンクをクリックします。
  4. 一覧からエージェントを選択し、その名前をクリックして詳細ページを開きます。
  5. セキュリティートークンをコピーします。
  6. エージェントを再起動して、-D オプションを使用して rhq.agent.security-token プロパティーをセキュリティートークンに設定します。
    agentRoot/rhq-agent/bin/rhq-agent.sh -Drhq.agent.security-token=abcd1234

7.1.3. 新しいセキュリティートークンを使用したエージェントの再インストール

エージェントは、完全に新しい設定で再インストールおよび再登録できます。エージェントの設定には、エージェントの(ローカル)永続設定、エージェントインベントリー(および関連するリソースデータ)、およびサーバーインベントリーのプラットフォームエントリーの 3 つの点があります。エージェントが正常に再インストールできるようにするには、ローカルマシンの設定と JBoss ON サーバーのエージェントおよびリソース設定の両方をクリアする必要があります。
  • エージェントの永続化された Java 設定はパージされる必要があります。
  • エージェントのインベントリーは、リソースの履歴および設定と共にパージする必要があります。
  • エージェントは JBoss ON インベントリーから削除する必要があります。これには、JBoss ON トポロジー(「エージェントの削除」)からエージェントを削除するか、または platform エントリーを削除します。
  • エージェントの元の識別情報(名前、IP アドレス、およびポート)は変更できます。
エージェントを再インストールするには、以下を実行します。
  1. 元のエージェントインスタンスが正しく削除されていることを確認します。
    1. エージェントプロセスを停止します。
    2. JBoss ON サーバーインベントリーから platform エントリーを削除します。
  2. --fullcleanconfig オプションを指定してエージェントを再起動します。これにより、エージェントに新しいセキュリティートークンと新しい設定が登録されます。
    agentRoot/rhq-agent/bin/rhq-agent.sh --fullcleanconfig
注記
JBoss ON インベントリーからエージェントが削除されない場合、エージェントに無効なセキュリティートークンがあるというエラーで再インストールに失敗します。

7.1.4. 元のセキュリティートークンを使用したエージェント設定のクリーニング

別の再登録パスは、そのセキュリティートークン以外 のエージェント設定を消去します。エージェントはその既存のセキュリティートークンを使用してサーバーを登録するため、基本的に再登録の代わりに登録内容を更新します。
この場合、元のエージェント設定のほとんどが保持されます。
  • エージェントの永続化された Java 設定は消去されます。
  • エージェントのインベントリーと、リソース履歴および設定が保存されています。
  • (プラットフォームエントリー経由)エージェントは JON インベントリーに残ります。
  • エージェントの名前はそのままにする必要があります(ただし、IP アドレスまたはポート番号は変更できます)。
次に主なアクションはエージェント設定が更新され、エージェントエントリー自体が保持されます。
エージェント設定を消去するには、--cleanconfig オプションを指定してエージェントを再起動します。これにより、( conf/agent-configuration.xml ファイルから)エージェントが新しい設定に登録され、以前のセキュリティートークンが再利用されます。
agentRoot/rhq-agent/bin/rhq-agent.sh --fullcleanconfig
注記
エージェント名が異なる場合は、既存のセキュリティートークンを指定の(新しい)エージェント名で検証できないため、再登録の試行に失敗します。