クラウドエージェント(Docker)
エージェントデプロイメント
クラウドエージェント(Docker)
プロダクト・ドキュメント
プロダクト・ドキュメント
クラウドエージェント(Docker)
エージェントデプロイメント
クラウドエージェント(Docker)
管理者 | 共同管理者 | アセットマネージャー | 閲覧者 | ||
---|---|---|---|---|---|
エージェント | 追加 | ||||
編集 | (エージェント名の変更は不可) | ||||
削除 | |||||
プロービング割当 | 追加 | ||||
編集 | |||||
削除 |
SEIクラウドエージェントは、Ubuntuサーバ上に構築されたDockerコンテナイメージです。Linuxの上でコンテナランタイムが動作する仮想マシン(VM)にデプロイできるように設計されています。
Service Experience Insightsは、エージェントを実行するためのVMの提供・保守は行いません。パッチの適用やセキュリティの更新など、ホストとなるVMの保守は所有者またはマネージドサービスプロバイダーが責任を持つことになります。
SEIクラウドエージェントをVMにインストールすることは、コンテナのデプロイに慣れているユーザーにとって極めて簡単です。コンテナイメージを取得し、イメージを設定し、デプロイするのみです。
以下では、主要なパブリッククラウド環境でホストされているVMにSEIクラウドエージェントをデプロイする手順を説明します。ここではパブリッククラウドを前提として説明しますが、手順はLinux上でコンテナランタイムが動作するあらゆるVMに広く適用できます。
SEIクラウドエージェントコンテナをデプロイするVMを準備します。
OSイメージ
動作確認済みのUbuntu Server 22.04 LTSがSEIエージェントの推奨動作環境です。
クラウドイメージの詳細については、オフィシャルのUbuntu documentationを参照してください。 CanonicalはUbuntu OSの商用サポートを行っており、Canonicalによってメンテナンスされている”Pro” OSイメージを提供しています。
必要なVMのスペック(インスタンスタイプ)
SEIエージェントは、ネットワークプロービングテストの実行には小さなリソースしか消費しませんが、スピードテストのターゲットとなり同時にたくさんのリクエストに答える場合より多くのリソースを消費します。以下の推奨値を参考に適切なクラウド環境のインスタンスタイプを選択してください。
備考 SEIエージェントがスピードテストのターゲットとなる場合、複数のエージェントから同時にくるリクエストを処理するのに十分なネットワーク帯域が必要です。リソースプランニングはスピードテストエージェントのデプロイ前に行ってください。スピードテストを実行するエージェントの数、スピードテストに使用されるネットワーク帯域を見積もり、データ使用量の推測値のスピードテストのデータ使用量の章を参考に必要なリソースを算出してください。
ネットワーク設定
VMにはSEIコントローラへ接続するためのインターネットアクセスが必要です。ファイアウォールの設定を参照し、ファイアウォールを設定してください。
エージェントを各ホストデバイスごとに作成します。
エージェントビューから エージェントの追加 ボタンをクリックします。
クラウドエージェントのデプロイに関する設定は以下の通りです。詳細はエージェントの記事をご覧ください。
項目名 | 入力形式 | オプション | 説明 | 必須 |
---|---|---|---|---|
名前 | テキスト | -- | エージェントの表示名を入力してください:
| 必須 |
グループ | 単一選択式のドロップダウンメニュー | 既存のグループから選択する |
| |
タグ | 複数選択式のドロップダウンメニュー | 既存または新しいタグを追加する |
| |
タイプ | 単一選択式のドロップダウンメニュー |
|
| 必須 |
ターゲットとして有効化する | チェックボックス | 未チェック(デフォルト) |
| |
IPの種類 | 単一選択式のドロップダウンメニュー |
|
| ターゲット機能を有効にしたエージェントのみ必須 |
IP Version | 単一選択式のドロップダウンメニュー |
|
| ターゲット機能を有効にしたエージェントのみ必須 |
ターゲットプロトコル | 複数選択式のドロップダウンメニュー |
| マネージドターゲットエージェントにおいて、ターゲットプロトコルを1つまたは複数選択してください。 | ターゲット機能を有効にしたエージェントのみ必須 |
UPDポート | テキスト | 5001 (デフォルト) | UPDポートを入力してください。 | ターゲット機能を有効にしたエージェントのみ必須 |
スピードテストポート | テキスト | 8080 (デフォルト) | スピードテストのポートを入力してください。 | ターゲット機能を有効にしたエージェントのみ必須 |
アクティベーション方法 | 単一選択式のドロップダウンメニュー |
|
| 必須 |
表示住所の設定 | 単一選択式のドロップダウンメニュー |
|
| 必須 |
住所 | テキスト | -- |
| 以下の場合必須:
|
連絡先 | テキスト | -- | エージェントソフトウェアのアクティベーションなどに関する担当者名を入力してください。 | |
Eメール | テキスト | -- | エージェントソフトウェアのアクティベーションなどに関する担当者のメールアドレスを入力してください。 | 必須 |
メールの言語 | 単一選択式のドロップダウンメニュー |
| エージェントのアクティベーションメールの言語を選択してください。 | 個別トークンを選択した場合は必須 |
アクティベーション時の通知の省略 | チェックボックス | チェックなし(デフォルト) |
|
Dockerエンジンのインストール
SEIエージェントはDockerコンテナイメージで提供されています。エージェントを実行するためのDockerエンジンがVMに必要です。
Ubuntu Server 22.04 LTSには標準でDocker Engineがインストールされていません。手動でのインストールが必要です。手順はDocker Inc.から提供されているオフィシャルドキュメントinstallation documentationを参照してください。
アクティベーショントークンの取得
共有トークンは、トークン1つで複数のエージェントをアクティベートすることができます。
共有トークンを利用することで、同じスクリプトで複数のエージェントをDockerにデプロイすることができます。
セキュリティ確保のために、共有トークンはアプリケーションに表示されません。
共有トークンのリクエストは、NTTのサポート窓口までご連絡ください。安全な通信手段によって共有トークンをご提供します。
エージェント > アクティベート待ちタブに移動して、新しく作成されたエージェントを検索します。
エージェント名をクリックしてエージェントの詳細を表示してください。
SEIエージェントコンテナの実行
docker run
コマンドでSEIエージェントコンテナを実行します。他のアプリケーション同様に、SEIエージェントもボリュームのマウントや環境変数でのパラメータ設定が必要です。SEIエージェントのコンテナイメージは cloudwan/watchdogagent:latest
になrます。
以下に実行コマンドの例を示します。<ACTIVATION_TOKEN>
を前述の手順で取得した実際のアクティベーショントークンに置き換えて実行してください。
docker run -d --rm --privileged \
--name watchdogagent \
--network host \
-v /opt/watchdog:/etc/watchdog \
-v /lib/modules:/lib/modules \
-v /usr/src:/usr/src \
-e "ACTIVATION_TOKEN=<ACTIVATION_TOKEN>" \
-e "CONTROLLER_DOMAIN=apis.edgelq.com" \
cloudwan/watchdogagent:latest
Notes:
イメージファイルがローカルにない場合は、自動的にダウンロードします。
SEIエージェントコンテナのステータス確認
docker ps
コマンドで、VM上で動作しているコンテナのリストを表示します。ステータスが stopped
のコンテナを表示するには -a
オプションを追加してください。
SEIエージェントコンテナのログ
docker logs
コマンドでコンテナプロセスからのログを表示することができます。上記で実行したSEIエージェントコンテナのログを表示する場合は docker logs watchdogagent
とします。-f
オプション追加するとログの出力を継続します。
$ docker logs watchdogagent
2023-06-29 22:04:01,868 CRIT Supervisor is running as root. Privileges were not dropped because no user is specified in the config file. If you intend to run as root, you can set user=root in the config file to avoid this message.
2023-06-29 22:04:01,870 INFO RPC interface 'supervisor' initialized
2023-06-29 22:04:01,871 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2023-06-29 22:04:01,871 INFO supervisord started with pid 1
2023-06-29 22:04:02,874 INFO spawned: 'watchdogagent' with pid 8
2023-06-29 22:04:02,878 INFO spawned: 'watchdogupdater' with pid 9
SEIエージェントコンテナの停止
docker stop
コマンドでコンテナを停止します。上記で実行したSEIエージェントコンテナを停止する場合は docker stop watchdogagent
とします。--rm
を追加すると停止後にコンテナを削除します。
$ docker stop watchdogagent
watchdogagent
SEIエージェントコンテナの更新
以下2種類の更新方法があります
デフォルトの動作として、SEIエージェントコンテナは、Dockerイメージのバージョンに関係なく、自動的に内部のバイナリファイルを最新に更新するようになっています。
そのため通常SEIエージェントがリリースされると自動的に更新され、手動操作は必要ありません。
特定のバージョンを維持したい場合には、環境変数にDISABLE_AUTO_UPDATE=true
を指定して、自動更新を無効にしてください。
DockerイメージはSEIのバージョンごとにリリースされます。
前述のとおり内部のバイナリファイル更新の仕組みがあるので、Dockerイメージの更新が必要となる頻度は多くありません。ベースイメージのEOLやSEIエージェントへの新コマンドの追加など、特定のケースにのみ手動でのDockerイメージの更新が必要になります。
そのような特定ケースがあった場合には、docker pull cloudwan/watchdogagent:latest
コマンドにて最新のイメージに更新してください。
後方互換性
エージェントのリリース通知
SEIエージェントコンテナイメージの削除
SEIエージェントコンテナだけでなくコンテナイメージの削除が必要になった場合は、docker rmi
コマンドを実行します。上記で作成したイメージファイルを削除する場合は docker rmi cloudwan/watchdogagent:latest
とします。イメージを使用しているコンテナが動作中の場合には、このコマンドは実行できません。
5分ほど待ち、SEIダッシュボードでアクティベーションが成功しているか確認してください。
この記事の内容