Host Agent インストール
1. モジュール説明
exemONE Host Agent(exem-host-agent)は、サーバー(Linux、Windows、Unixなど)のシステムパフォーマンス指標を収集し、exemONE収集サーバー(Receiver)へ送信するエージェントです。
前提条件:
rootアカウントでインストールする必要があり、一般userの権限でインストールするとサービス登録およびプロセスのディスクread/write情報収集ができません。
2. 対応環境
| 項目 | 内容 |
|---|---|
| OS (Go) | Linux kernel 2.6.32以上 Windows 7 / Server 2008 R2以上 |
| OS (C) | Linux kernel 2.6以上 AIX 5.3 ~ 7.1 HP-UX 11.23 ~ 11.31 Solaris 5.10以上 Windows XP / Server 2003 SP1以上 |
| Distro (Go) | CentOS 6以上 RHEL 6以上 Rocky 8以上 Ubuntu 12.04以上 Debian 6以上 SUSE 11以上 Fedora 13以上 Amazon Linux |
| Distro (C) | CentOS 4以上 SUSE 10以上 Debian 4以上 Ubuntu 6.06以上 |
| Arch | 64bit 32bit (Linux Kernel 2.6.32以上、AIX 5.3) |
| Protocol (Go) | gRPC 9009 → Receiver |
| Protocol (C) | TCP 9010 → Receiver |
| Prereq | NPM: Linux Kernel 4.18以上 (eBPF) Container: Linux Kernel 3.2以上 (Docker) |
| Limitation | GPU / Container: Windows、Unix非対応 NPM: Windows非対応 (v3.0.28未満はpcap対応)、Unix非対応 TCPポートモニタリング: Unix非対応 |
Docker
- host-agent 3.0.24以上の場合、Docker version 28.xまで対応 (API Version 1.42まで)
3. 通信ポート
| 対象 | 送信元 | 送信先 | プロトコル | Port | 説明 |
|---|---|---|---|---|---|
| exem-host-agent | Linux、Windows機器 | exemONE収集サーバー (Receiver) | gRPC | 9009 | 汎用gRPCリクエストおよびレスポンス |
| exem-host-agent | Unix機器 (AIX、HP-UX、SunOS) | exemONE収集サーバー (Receiver) | TCP | 9010 | 汎用TCPリクエストおよびレスポンス |

4. Linux環境のインストール方法
注意事項
- rootアカウントでのインストールを推奨します。
- 一般userの権限でインストールするとサービス登録およびプロセスのディスクread/write情報収集ができません。
段階別インストール手順
手順1. setupファイルの実行

- [install(patch)]を選択
手順2. インストールオプションの設定

- 環境変数の設定
| NO | Name | Required | Default | Description |
|---|---|---|---|---|
| 1 | EXEM_NAME | O | setupファイル実行位置にexemフォルダを追加 | exemONE agentをインストールするディレクトリの設定 |
| 2 | RECEIVER_IP | O | X (デフォルト値なし) | host agentが接続するreceiverのip |
| 3 | RECEIVER_PORT | O | Linux: 9009(gRPC) / Unix: 9010(TCP) | host agentが接続するreceiverのport |
手順3. インストール完了
手順4. exem-host-agentの実行
実行/終了方法
- 基本的に
${EXEM_HOME}/hostディレクトリのstart.shとstop.shを使用して実行/終了します。
case 1) rootアカウントの場合
- start/stop時にそれぞれサービス登録および実行、サービス削除および終了を行います。
- 実行: ${EXEM_HOME}/host/start.sh
- 終了: ${EXEM_HOME}/host/stop.sh
case 2) sudo権限のある一般userアカウントの場合
- start/stop時にそれぞれサービス登録および実行、サービス削除および終了を行います。
- 各スクリプト実行時は必ずsudoを付けてください。(該当userにsudo権限付与時、NOPASSWDを設定していない場合パスワードを求められることがあります)
- 実行: sudo ${EXEM_HOME}/host/start.sh
- 終了: sudo ${EXEM_HOME}/host/stop.sh
case 3) sudo権限のない一般userアカウントの場合 非推奨
- start/stop時は単純にエージェントの実行および終了のみ行います。(サービス利用不可)
- 各スクリプト実行時、サービスの登録/削除ができない旨のメッセージが出力されます。
- 実行: ${EXEM_HOME}/host/start.sh
- 終了: ${EXEM_HOME}/host/stop.sh
正常実行の確認方法
- サービス登録時の確認方法
Linux (systemctlを使用する場合)
systemctl status exem-host-agent
Linux (service、chkconfigを使用する場合)
chkconfig --list exem-host-agent
サービス登録なしで実行した場合の確認方法
ps -ef | grep exem-host-agent
バージョン確認方法
簡易バージョン確認方法 (Linux & Unix共通)
${EXEM_HOME}/host/pkg_version.sh
詳細バージョン確認方法 (Linux & Unix共通)
${EXEM_HOME}/host/bin/exem-host-agent -v
5. Linux環境のパッチ方法
注意事項
- パッチ実行時、既存に設定した
${EXEM_HOME}ディレクトリは変更せずに進める必要があります。 - パッチ時に
${EXEM_HOME}/host/data/host_idファイルが維持されて初めて、既存と同一のhostとして認識されます。 - 該当ファイルがない場合、新しいhost_idが発行され、パッチ以前のデータと連結されないことがあるため、手動パッチ時は該当ファイルをバックアップして
${EXEM_HOME}/host/dataフォルダに保存してから起動する必要があります。 - setupファイルのpatchメニュー使用時は自動的に既存のhost_idが維持されるため、setupファイルを使用したパッチを推奨します。
段階別インストール手順
手順1. setupファイルの実行

- [install(patch)]を選択
手順2. インストールオプションの設定

1) 設定していたEXEM_HOMEを入力: setupファイルが実行された位置を基準にdefault値が設定されます。
2) 既にインストールされているか確認後、パッチの可否を選択
3) EXEM_HOMEを除く残りのオプションは既存にインストールしていたオプションどおりdefault値が設定されます
- 注意事項: インストール後に変更されたオプション(例: RECEIVER_IP/PORT)は反映されないため、該当設定値を必ず確認してから進める必要があります。
手順2. パッチ完了
6. Windows環境のインストール方法
注意事項
- インストールおよび実行は管理者権限で行う必要があります。
段階別インストールおよびパッチ
手順1. setup exeファイルの実行

- [次へ > ]を選択
該当サーバーに既にインストールされている場合、自動検知して以下のポップアップが発生(パッチ)
- [はい(Y)]を選択した場合、最後のインストール過程で既存のエージェントを削除して新しいバージョンをインストールします。(インストールファイルを途中でキャンセルした場合、既存のエージェントを維持)
- [いいえ(N)]を選択した場合、インストールファイルが終了します。
手順2. インストールパスの設定

① [インストールフォルダ]の設定 -> デフォルトパスはC:\Program Files (x86)\exem
② [次へ > ]を選択
手順3. Receiver IP & Portの設定

① [RECEIVER_ADDR]を入力
- {IP}:{port}形式で入力します。
例) 10.10.10.10:9009 - デフォルト値の設定がないため必ず設定する必要があります。
- Windows host agentはgRPC port (default 9009)を使用する必要があります。
② [次へ]を選択
手順4. Receiver IP & Portの確認

① [はい(Y)]を選択
- インストールを開始します。 ② [いいえ(N)]を選択
- 再度Receiver IP & Portを入力できます。
手順5. サービス登録の可否選択

① [ⓥ]を選択
- サービス登録を行います。 ② [インストール]を選択
- 参考: インストール時にサービス登録した場合、exem-host-agentが異常終了した際に自動再起動されます。
手順6. インストール完了

① [閉じる]を選択
- 上記❺サービス登録の可否選択でサービスを登録した場合のみ、インストール完了後に自動的にexem-host-agentが実行されて動作します。(サービス登録していない場合は手動で実行する必要があります。)
exem-host-agentの削除
削除に関する参考事項
- 削除時、既存に実行中のhost agentは自動終了後に削除処理が進行します。
- 既存のhost idを維持するため、
C:\Users\[ユーザー]\AppData\Local\exem\host\data パスに$EXEM_HOME\host\data\host_idファイルが自動でバックアップされます。 - host_id以外のファイルは削除時にバックアップされないため、ログなど重要なデータは削除前にバックアップが必要です。
削除方法
- [方法1] $EXEM_HOST_HOMEパスのUninstall.exeを実行
- [方法2] コントロールパネル ➝ プログラムのアンインストール ➝ exem-host-agentを選択 ➝ 右クリック ➝ アンインストール/変更(U)を選択
手順1. Uninstall.exeの実行

① [次へ > ]を選択
手順2. 削除対象の確認

① [削除対象]を確認
既存にインストールしたパス\hostが自動設定 ② [削除]を選択
手順3. 削除完了

exem-host-agent実行に関する参考事項
正常実行の確認方法
タスクマネージャー ➝ プロセスで「exem-host-agent」があるか確認します。

バージョン確認方法
- [簡易バージョン確認] Windows PowerShellを実行して$EXEM_HOST_HOMEフォルダへ移動後、
.\pkg_version.batコマンドでexem-host-agentのバージョン情報を確認できます。
- [詳細バージョン確認] Windows PowerShellを実行して$EXEM_HOST_HOME/binフォルダへ移動後、
.\exem-host-agent_win_64.exe -vコマンドでexem-host-agentのバージョン情報を確認できます。
- タスクマネージャー ➝ プロセスで実行プロセス名からexem-host-agentのバージョン情報を確認できます。

サービス登録の確認
- サービスにEXEM HOST AGENTとして以下のように設定されます。

7. 収集項目
Host Agentは以下の項目を収集します:
基本収集項目
| カテゴリ | 収集項目 |
|---|---|
| CPU | CPU使用率、CPU User、System、Wait、Idleなど |
| Memory | メモリ総量、使用量、使用率、Available、Free、Buffer、Cachedなど |
| Disk | ディスク使用量、使用率、I/O Read/Write |
| Network | ネットワークインターフェースごとのIn/Outトラフィック、Packetなど |
| File System | ファイルシステムごとの使用量、残量、マウント情報 |
| Process | プロセスごとのCPU、Memory、Disk Read/Write使用量 |
| System Info | OS情報、Hostname、IP、Uptimeなど |
| Installed Package | インストール済みパッケージ一覧 (Summary最大100文字) |
追加収集項目 (Config設定が必要)
| 機能 | Config Key | 説明 |
|---|---|---|
| TCP Portモニタリング | HOST_INTERVAL_PORT_MONITORING、HOST_PORT_MONITORING_LIST | 指定ポートのLISTENING状態モニタリング |
| GPUモニタリング | HOST_INTERVAL_GPU_MONITORING | GPU使用率、温度、メモリ、電力、プロセスなど |
| ネットワークドライブ | HOST_COLLECT_WINDOWS_NETWORK_DRIVE (Windows) | Windowsネットワークドライブの使用量収集 |
| NFS (Linux) | HOST_RECEIVER_SESSION_TIMEOUT | Linux NFSファイルシステムの収集 |
GPU収集データ詳細 (Host Agent 3.0.23以上)
- Metadata: GPU Index、Driver Version、Model Name、Vbios Version、Bus ID、UUID
- Metric: GPU Utilization(%)、Memory Utilization(%)、Encoder/Decoder Utilization(%)、FB Memory Usage、GPU Temperature、Clock情報(mem/sm/graphic/video)、Power使用量、Fan Speed
- Process: PID、Process Name、Type、Used Memory、GPU Instance ID、Compute Instance ID
8. 設定
default IPの手動設定
ファイルパス: $EXEM_HOME/host/data/manual_ip.conf
# IPを直接指定
default_ip=10.20.30.40
# またはネットワークインターフェース名で指定
default_name=bond0
スクリプトによる設定:
# IPで設定
./set_manual_ip.sh --ip 10.20.30.40
# ネットワーク名で設定
./set_manual_ip.sh --name bond0
# 設定を解除
./set_manual_ip.sh --unset
9. 追加注意事項
- root権限必須: 一般ユーザーでインストールすると、サービス登録およびプロセスのディスクI/O収集ができません。
- ファイアウォール設定: Linux/WindowsはgRPC 9009ポート、UnixはTCP 9010ポートが収集サーバー方向に開いている必要があります。
- Unix系の制約: AIX、HP-UX、SunOSは現在基本SMSデータのみ収集可能で、Log Monitoring/Script Manager/プロセス監視は今後対応予定です。
- ulimit設定: AIXなどUnix環境で
data sizeなどulimit値が小さいとAgentが正常に動作しない場合があります。ulimit -d unlimitedコマンドで調整が必要です。(トラブルシューティング参照) - Memory使用率算出式: デフォルト値は
(total-available)/total*100であり、必要に応じてPostgreSQLでhostUsedAvailable値を変更して算出方式を調整できます。(メモリ使用率の変更) - Windowsネットワークドライブ収集時はサービスではなくBinaryで実行しないと収集できません。(Network Driveモニタリング)