#前提条件
- エージェントインストールの前提条件を確認するには エージェントインストール前提条件の確認 を参照ください。
- SixthSense コレクタの URL/IP(カスタマーサポートから提供されるテナント URL)
- SixthSense ポータルからのアクセストークン
- SixthSense JMX エージェント JRE 1.8以上
- ActiveMQ Artemis の JMX ホストとポートの詳細
#ActiveMQ 監視の有効化
SixthSenseエージェントにより ActiveMQ がリモート監視されます。エージェントは別プロセスとして実行され、ActiveMQ が公開する JMX ポートに接続してメトリクスを取得します。以下の手順にて ActiveMQ 監視を有効化します。
- 環境変数 / JVM 引数を使用し、ActiveMQ のリモート JMX サポートを有効化します。詳細は ActiveMQ で JMX サポートを有効化する を参照ください。
- (オプション) JMX リモート監視用に ActiveMQ が公開するポートで認証を有効化します。詳細は 公開ポートで認証を有効化する を参照ください。
- SixthSense エージェントをダウンロードします。詳細は エージェントのダウンロード を参照ください。
- SixthSense エージェントを設定・実行します。詳細は エージェントの設定 を参照ください。
#ActiveMQ で JMX サポートを有効化する。
JMX リモートサポートは、環境変数または JVM 引数で有効化することができます:
JMX リモートサポートを有効化するには、”sun.management.jmxremote” を true に設定します。JMX リモートの設定に必要なその他の JVM 引数は以下の通りです。これらの JVM 引数は、再起動後に artemis によって選択されます。
引数
DEBUG_ARGS="-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=127.0.0.1
-Dcom.sun.management.jmxremote.port=9010"
これにより、非認証モードでの JMX サポートが有効化されます。このポートでの認証を有効化するには、次のセクションを参照ください。
- “java.rmi.server.hostname" にノード / ホストの IP アドレスを設定します。
#公開ポートでの認証の有効化
これは Java が提供するローカル JMX 認証メソッドによって実行され、認証情報を保存し、ローカルファイルを使用してアクセス制御を行います。
- jmxremote という名称で新しいフォルダを作成します。
> mkdir -vp /etc/jmxremote
> cat /etc/jmxremote/jmxremote.password
sixthsense R@kuten@1234
この段階では、パスワード 「R@kuten@1234 」を持つユーザー “sixthsense” が登録されます。
- このアクセスファイルには、誰にどのようなアクションを許可するかという認証情報が格納されます。
> cat jmxremote/jmxremote.access
sixth
- 両方のファイルのアクセス権を変更し、オーナーのみが編集・閲覧できるようにします。
> chmod -R 600 /etc/jmxremote/jmxremote.*
以下を追加します。
sun.management.jmxremote.authenticate=true,
com.sun.management.jmxremote.access.file=/etc/jmxremote/jmxremote.acces”s
com.sun.management.jmxremote.password.file=/etc/jmxremote/jmxremote.password” in JVM_ARGS.
以下の画面が表示されることを確認します:
DEBUG_ARGS="-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=127.0.0.1
-Dcom.sun.management.jmxremote.port=9010 "
-Dcom.sun.management.jmxremote.access.file=/etc/jmxremote/jmxremote.access
-Dcom.sun.management.jmxremote.password.file=/etc/jmxremote/jmxremote.password"
#エージェントのダウンロード
前提条件
- オンボーディングチームから提供されるプライベートトークン
- 特定のバージョンをダウンロードするためのリンク
エージェントをダウンロードするには、以下の手順を実行します。
- インターネット / SixthSense からのイングレスが有効であることを確認します。
- curl を使用してエージェントをダウンロードします。
curl --header "PRIVATE-TOKEN: <TOKEN> " --output sixthsense-activemq -agent.zip https://artifacts-observability.sixthsense.rakuten.com/api/v4/projects/32/packages/generic/ActiveMQ-Agent/latest/ActiveMQ-Agent.zip
#エージェントの設定
- ダウンロードしたエージェントを解凍します。
- agent.config ファイル(Agent フォルダ / config/agent.config ファイル)に移動します。agent.config ファイルに情報を追加することで、エージェントを設定することができます。
以下の agent.config ファイルでは、ブローカ JMX ホストとポートの詳細を更新する必要があります。
brokerConfigs:
- brokerUrl: ${SS_BROKER1_URL:localhost}
brokerPort: ${SS_BROKER1_PORT:1100}
username: ${SS_BROKER1_USERNAME:sixthsense}
password: ${SS_BROKER1_PASSWORD:R@kuten@1234}
- brokerUrl: ${SS_BROKER2_URL:localhost}
brokerPort: ${SS_BROKER2_PORT:1200}
username: ${SS_BROKER2_USERNAME:sixthsense}
password: ${SS_BROKER2_PASSWORD:R@kuten@1234}
以下のagent.configファイルで、エージェントの一般設定を更新する必要があります。
agentConfig:
serviceName: ${SS_SERVICE_NAME:Artemis}
collectorBackendService: ${SS_AGENT_COLLECTOR_BACKEND_SERVICES:127.0.0.1:11800}
agentAuthentication: ${SD_AGENT_AUTHENTICATION: <add token here>}
agentForceTls: ${SD_AGENT_FORCE_TLS:true}
logFileName: ${SS_LOGGING_FILE_NAME:sixthsense-api.log}
logLevel: ${SS_LOGGING_LEVEL:INFO}
# Logging max_file_size, default: 5 * 1024 * 1024 = 5242880 // 5 MB
logMaxFileSize: ${SW_LOGGING_MAX_FILE_SIZE:5242880}
OneCloud Platform の場合は、以下のコマンドを使用します:
agentConfig:
serviceName: ${SS_SERVICE_NAME:Artemis}
collectorBackendService: ${SS_AGENT_COLLECTOR_BACKEND_SERVICES:133.237.176.44:80}
# For connectivity to backend using onecloud private network: 100.99.116.221:80
# For connectivity to backend using intra public network: 133.237.176.44:80
agentAuthentication: ${SD_AGENT_AUTHENTICATION: <add token here>}
agentForceTls: false
logFileName: ${SS_LOGGING_FILE_NAME:sixthsense-api.log}
logLevel: ${SS_LOGGING_LEVEL:INFO}
# Logging max_file_size, default: 5 * 1024 * 1024 = 5242880 // 5 MB
logMaxFileSize: ${SW_LOGGING_MAX_FILE_SIZE:5242880}
環境変数を使用して設定された場合、エージェントはこれらの設定値を上書きします。
#エージェントの実行
エージェントは別プロセスとして実行され、ActiveMQ artemis が公開するポートに接続されます。以下のコマンドでエージェントを実行します。
> java -jar sixthsense-jmx-agent.jar