Link Agentとsystemdの連携

Link Agentをsystemdサービスとして実行するには、次のテンプレートを実行環境に応じてカスタマイズして使用します。

[Unit]
Description=mabl Link Agent
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
Restart=always
RestartSec=1
User=mabl
ExecStart=/opt/mabl/link-agent/bin/link-agent -a <your-api-key> -n <your-agent-name>

[Install]
WantedBy=multi-user.target

🚧

このサービスファイルは使用前にカスタマイズが必要です

少なくとも、ExecStartパラメータの内容を、実際のAPIキー、Link Agent名、Link Agentがインストールされているパスに更新する必要があります。

推奨される方法としては、mabl (または同様の名前) というユーザーとグループを別に作成し、chownを使用して、このユーザー/グループだけがLink Agentのインストールディレクトリに対して読み取り/書き込みを実行できるようにします。mabl以外のユーザーを使用する場合は、サービスファイル内のUserパラメータを更新してください。

📘

JAVA_HOME の追記

Javaのパスが自動的に取得されない場合や、システムのデフォルトと異なるJavaのバージョンを指定する必要がある場合は、サービスファイルの [Service] セクションの下に次の1行を挿入します。

Environment="JAVA_HOME=/path/to/java/base/directory"

たとえば、使用するJavaのバージョンが/usr/lib/jvm/openjdk-bin-17にインストールされている場合、この行は次のようになります。

Environment="JAVA_HOME=/usr/lib/jvm/openjdk-bin-17"

Link Agent を実行するシステムと環境に合わせて上記のテンプレートをカスタマイズしたら、サービスファイルが定義されているシステム上の場所 (例: /etc/systemd/system) にlink-agent.serviceという名前でファイルを保存した後、次のコマンドを実行します。

systemctl enable link-agent
systemctl start link-agent

Link Agent が正しく起動したことを確認するには、journalctlコマンドを使用します。

journalctl -u link-agent -r

また、Link Agent がインストールされているディレクトリにあるlogs/agent.logファイルを参照することでも起動を確認できます。