監視ツールの「netdata」をインストールする
「netdata」について
サーバーの監視ツールではZabbixが有名ですが。複数台のサーバーではなく単一サーバーだったので「netdata」をインストールしました。
Netdata(ネットデータ)とは、サーバーやアプリケーションのパフォーマンスをリアルタイムで監視・可視化するオープンソースのオブザーバビリティ(可観測性)プラットフォームです。
CPU、メモリ、ディスクI/O、ネットワーク、各種ミドルウェア(Apache、MySQLなど)の詳細なメトリクスを秒未満の粒度で自動収集し、美しくインタラクティブなWebダッシュボードで表示。低負荷で動作し、コンテナやIoTデバイスなど幅広い環境に対応し、異常検知やアラート機能も備えています
インストール方法
netdataのインストールは、dnfコマンドで簡単にインストールできます。設定も変更する箇所もすくなくインストールするのは簡単です
1.dnfコマンドでインストールします
$ sudo dnf --enablerepo=epel install netdata
2.外部から接続できるように、「netdata.conf」の設定ファイルを変更します。
「bind to = localhost」をコメントアウトして、「bind to = 0.0.0.0」を設定します
$ sudo vim /etc/netdata/netdata.conf
# bind to = localhost
bind to = 0.0.0.0
3.netdataの起動及び自動起動を有効にします
# netdataを起動します $ sudo systemctl start netdata # エラーなく起動したら自動起動をONにします $ sudo systemctl enable --now netdata
4.firewalldを有効にしている場合は、netdataで使用するポートを利用できるようにします
$ sudo firewall-cmd --add-port=19999/tcp --permanent $ sudo firewall-cmd --reload
5.ブラウザで「http://[IPアドレス]:19999」にアクセスします

BASIC認証を追加する
BASIC認証をかけないと、IPアドレス+ポート番号で、誰でもアクセスできる状態なので、セキュリティを考えてBASIC認証を追加します。
BASIC認証には、Apacheをリバースプロキシを利用します。
また、Apacheとnetdataが同じポートは利用できないので、使用するポートは以下に変更します
- netdata:19998
- apache:19999
1.netdataのlocalhostに戻すのと、ポートを変更します
$ sudo /etc/netdata/netdata.conf
bind to = 127.0.0.1
default port = 19998
2.netdataを再起動します
$ sudo systemctl restart netdata
3.ApacheでBASIC認証のファイルを追加
$ sudo htpasswd -c /etc/httpd/.htpasswd-netdata admin
4.Apacheの設定ファイルを編集します。BASIC認証のファイル指定や、Listenポートを19999を追加します
$ sudo vim /etc/httpd/conf.d/netdata.conf
Listen 19999
<VirtualHost *:19999>
ServerName example.com
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:19998/
ProxyPassReverse / http://127.0.0.1:19998/
<Location />
AuthType Basic
AuthName "Netdata"
AuthUserFile /etc/httpd/.htpasswd-netdata
Require valid-user
</Location>
ErrorLog logs/netdata_error.log
CustomLog logs/netdata_access.log combined
</VirtualHost>
5.apacheの再起動
$ sudo systemctl restart httpd
6.ブラウザで「http://[IPアドレス]:19999」にアクセスします。BASIC認証がかかり、ユーザー・パスワードが必要になります

