エージェント

Servwatchは監視対象サーバにエージェント(Servwatch agent)をインストールすることで、死活監視とメトリクス(リソース)監視が可能になります。

ここでは、エージェントのインストール方法について説明します。

Node.jsインストール

Servwatch agentはnode.js 10.15〜を必要とします。

エージェントを常駐するためのpm2プロセスマネージャーもあわせてインストールします。

各OSディストリビューションごとのインストール手順に従いインストールします。

1 2 3 4 5 6 7 8 9 10 11 yum remove git yum install -y https://repo.ius.io/ius-release-el6.rpm yum install perl-TermReadKey yum install pcre2 yum install perl-Digest-SHA yum install git --enablerepo=ius --disablerepo=base,epel,extras,updates curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash source ~/.bashrc nvm install v10.15.2 nvm alias default v10.15.2 npm install -g pm2

 

1 2 3 4 5 6 yum install git curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash source ~/.bashrc nvm install v10.15.2 nvm alias default v10.15.2 npm install -g pm2
1 2 3 4 5 6 apt update apt-get install git source ~/.bashrc nvm install v10.15.2 nvm alias default v10.15.2 npm install -g pm2
1 2 3 4 5 6 apt update apt-get install git source ~/.bashrc nvm install v10.15.2 nvm alias default v10.15.2 npm install -g pm2
1 2 3 4 5 6 apt update apt-get install git source ~/.bashrc nvm install v10.15.2 nvm alias default v10.15.2 npm install -g pm2

エージェントのデプロイ

Servwatch agentのデプロイは以下スクリプトを監視対象サーバー上で直接実行します。

  1. コンソールへ移動して、”サーバー→"新規サーバー登録"へ移動し"自動登録(通常はこちらを選択)"のStep2以降の手順に従いエージェントを監視対象サーバーへデプロイします。

  2. 監視対象サーバーのターミナルに、スクリプト文字列をroot権限にて実行します。ホスト名は自動設定されますが、手動設定したい場合は赤色の部分を変更して実行してください。

    1. ホスト名を自動設定する場合(通常はこちらを選択してください)

      1 sudo curl -fsSL https://m.thingscale.io/agent/setup_servwatch_agent.sh | SERVWATCH_USERID='****' SERVWATCH_DEVICETOKEN='****' sh
    2. ホスト名を手動設定する場合

      1 sudo curl -fsSL https://m.thingscale.io/agent/setup_servwatch_agent.sh | SERVWATCH_USERID='****' SERVWATCH_DEVICEID='<SET_YOUR_HOSTNAME>' SERVWATCH_DEVICETOKEN='****' sh

       

  3. サーバー管理ページに戻りエージェントの状態が”N/A”およびチャネルが”未登録”になっていれば正常に登録されています。

dockerコンテナへのエージェントデプロイ

dockerコンテナへエージェントをデプロイする場合は、コンテナ起動オプションを以下のようにしてください。

(例:centos7イメージを特権モード・ランレベル付きで起動)

1 docker run -it -d --privileged --name centos7 centos:centos7 /sbin/init


エージェントのアンインストール

Servwatch agentのアンインストール

1 2 pm2 stop servwatch_agent rm -rf /opt/servwatch-agent

pm2 daemonのアンインストールはservwatch-agent以外のnodejsプログラムが動作していない時のみ以下手順にて実行してください。

servwatch-agent以外のプログラムが動作している場合は、お客様でご判断の上アンインストールを実行してください。

pm2 daemonのアンインストール

1 2 3 4 5 6 7 8 9 pm2 status ┌─────┬────────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐ │ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │ ├─────┼────────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤ │ 0 │ servwatch_agent │ default │ N/A │ fork │ 0 │ 0 │ 0 │ stopped │ 0% │ 0b │ root │ disabled │ └─────┴────────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘ service pm2-root stop chkconfig pm2-root off pm2 unstartup

Servwatch agentのアンインストール

1 2 pm2 stop servwatch_agent rm -rf /opt/servwatch-agent

pm2 daemonのアンインストールはservwatch-agent以外のnodejsプログラムが動作していない時のみ以下手順にて実行してください。

servwatch-agent以外のプログラムが動作している場合は、お客様でご判断の上アンインストールを実行してください。

pm2 daemonのアンインストール

1 2 3 4 5 6 7 8 9 pm2 status ┌─────┬────────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐ │ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │ ├─────┼────────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤ │ 0 │ servwatch_agent │ default │ N/A │ fork │ 0 │ 0 │ 0 │ stopped │ 0% │ 0b │ root │ disabled │ └─────┴────────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘ systemctl stop pm2-root systemctl disable pm2-root pm2 unstartup