Debian および Ubuntu で Cacti-Spine を使用して Cacti をインストールする方法
このチュートリアルでは、Debian と Ubuntu 16.04 LTS の最新バージョンに Cacti ネットワーク監視ツールをインストールして設定する方法を学びます。このガイドでは、Cacti がソース ファイルからビルドおよびインストールされます。
Cacti は、ネットワーク、特に SNMP プロトコルを介してスイッチ、ルーター、サーバーなどのネットワーク デバイスを監視するために作成されたオープン ソース監視ツールです。 Cacti はエンドユーザーと対話し、Web ツール インターフェイスを介して管理できます。
要件
- Debian 9 にインストールされた LAMP スタック
- Ubuntu 16.04 LTS にインストールされた LAMP スタック
ステップ 1: Cacti の前提条件をインストールして構成する
1. Debian 9 で、ソース リスト ファイルを開いて編集し、contrib および 非フリー リポジトリを追加します。次の行を変更してファイルを編集します。
nano /etc/apt/sources.list
次の行をsources.list ファイルに追加します。
deb http://ftp.ro.debian.org/debian/ stretch main contrib non-free
deb-src http://ftp.ro.debian.org/debian/ stretch main
deb http://security.debian.org/debian-security stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security stretch/updates main
2. その後、以下のコマンドを発行してシステムを更新してください。
apt update
apt upgrade
3. LAMP スタックで、次の PHP 拡張機能がシステムに存在することを確認します。
apt install php7.0-snmp php7.0-xml php7.0-mbstring php7.0-json php7.0-gd php7.0-gmp php7.0-zip php7.0-ldap php7.0-mcrypt
4. 次に、以下のコマンドを実行して、PHP 構成ファイルを編集し、サーバーの物理的な場所に一致するようにタイム ゾーン設定を変更します。
echo "date.timezone = Europe/Bucharest" >> /etc/php/7.0/apache2/php.ini
5. 次に、LAMP スタック インストールから MariaDB または MySQL データベースにログインし、Cacti をインストールするためのデータベースを作成します。 > 次のコマンドを発行します。
cacti データベース名、ユーザー、パスワードを独自の構成に一致するように置き換え、cacti データベース用の強力なパスワードを選択します。
mysql -u root -p
mysql> create database cacti;
mysql> grant all on cacti.* to 'cactiuser'@'localhost' identified by 'password1';
mysql> flush privileges;
mysql> exit
6. また、以下のコマンドを発行して、cacti ユーザーに MySQL の data.timezone 設定へのアクセス許可を選択できるようにします。
mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql
mysql -u root -p -e 'grant select on mysql.time_zone_name to cactiuser@localhost'
7. 次に、MySQL サーバー構成ファイルを開き、ファイルの最後に次の行を追加します。
nano /etc/mysql/mariadb.conf.d/50-server.cnf [For MariaDB]
nano /etc/mysql/mysql.conf.d/mysqld.cnf [For MySQL]
次の行を 50-server.cnf または mysqld.cnf ファイルの末尾に追加します。
max_heap_table_size = 98M
tmp_table_size = 64M
join_buffer_size = 64M
innodb_buffer_pool_size = 485M
innodb_doublewrite = off
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
MariaDB データベースの場合は、50-server.cnf ファイルの末尾に次の行も追加します。
innodb_additional_mem_pool_size = 80M
8. 最後に、MySQL サービスと Apache サービスを再起動してすべての設定を適用し、次のコマンドを発行して両方のサービスのステータスを確認します。
systemctl restart mysql apache2
systemctl status mysql apache2
ステップ 2: Cacti インストールをダウンロードして準備する
9. 次のコマンドを実行して、最新バージョンの Cacti アーカイブをダウンロードして解凍し、すべての抽出ファイルを Apache Web ドキュメント ルートにコピーして、ソースから Cacti のインストールを開始します。
wget https://www.cacti.net/downloads/cacti-latest.tar.gz
tar xfz cacti-latest.tar.gz
cp -rf cacti-1.1.27/* /var/www/html/
10. /var/www/html ディレクトリから index.html ファイルを削除し、Cacti ログ ファイルを作成し、Web への書き込み権限を Apache に付与します。ルートパス。
rm /var/www/html/index.html
touch /var/www/html/log/cacti.log
chown -R www-data:www-data /var/www/html/
11. 次に、cacti 構成ファイルを編集し、以下の例に示すように次の行を変更します。
nano /var/www/html/include/config.php
Cacti のconfig.php ファイルのサンプル。 cacti データベース名、ユーザー、パスワードを適宜置き換えてください。
$database_type = 'mysql';
$database_default = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'password1;
$database_port = '3306';
$database_ssl = false;
$url_path = '/';
12. 次に、以下のコマンドを実行して、/var/www/html/ ディレクトリの cacti.sql スクリプトを cacti データベースに追加します。
mysql -u cactiuser cacti -p < /var/www/html/cacti.sql
13. 次に、Cacti エンジンが SNMP プロトコル経由でデバイス データを収集し、RRDtool を使用してグラフィックを表示するため、いくつかの追加リソースをインストールします。次のコマンドを発行して、それらをすべてインストールします。
apt install snmp snmpd snmp-mibs-downloader rrdtool
14. 以下のコマンドを発行して snmpd デーモンを再起動し、SNMP サービスが稼働しているかどうかを確認します。 snmpd デーモンのステータスと開いているポートも確認してください。
systemctl restart snmpd.service
systemctl status snmpd.service
ss -tulpn| grep snmp
ステップ 3: Cacti-Spine をダウンロードしてインストールする
15. Cacti-Spine は、デフォルトの cmd.php ポーラーを C で書かれた代替品です。 Cacti-Spine は実行時間を短縮します。ソースから Cacti-Spine プーラーをコンパイルするには、以下の必要な依存関係をシステムにインストールします。
---------------- On Debian 9 ----------------
apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev librrds-perl libsnmp-dev libmariadb-dev libmariadbclient-dev
---------------- On Ubuntu ----------------
apt install build-essential dos2unix dh-autoreconf help2man libssl-dev libmysql++-dev librrds-perl libsnmp-dev libmysqlclient-dev libmysqld-dev
16. 上記の依存関係をインストールした後、Cacti-Spine アーカイブの最新バージョンをダウンロードし、tarball を抽出して、次の一連のコマンドを実行して cacti-spine をコンパイルします。 。
wget https://www.cacti.net/downloads/spine/cacti-spine-latest.tar.gz
tar xfz cacti-spine-latest.tar.gz
cd cacti-spine-1.1.27/
17. 次のコマンドを発行して、ソースから Cacti-Spine をコンパイルしてインストールします。
./bootstrap
./configure
make
make install
18. 次に、スパイン バイナリが root アカウントによって所有されていることを確認し、次のコマンドを実行してスパイン ユーティリティの suid ビットを設定します。
chown root:root /usr/local/spine/bin/spine
chmod +s /usr/local/spine/bin/spine
19. 次に、Cacti Spine 構成ファイルを編集し、以下の例に示すように、Cacti データベース名、ユーザー、およびパスワードを Spine 構成ファイルに追加します。
nano /usr/local/spine/etc/spine.conf
次の設定をspine.confファイルに追加します。
DB_Host localhost
DB_Database cacti
DB_User cactiuser
DB_Pass password1
DB_Port 3306
DB_PreG 0
ステップ 4: Cacti インストール ウィザードのセットアップ
20. Cacti をインストールするには、ブラウザを開いて、次の URL でシステムの IP アドレスまたはドメイン名に移動します。
http://your_IP/install
まず、使用許諾契約に同意するにチェックを入れ、次へボタンをクリックして続行します。
21. 次に、システム要件を確認し、次へ ボタンをクリックして続行します。
22. 次のウィンドウで [新しいプライマリ サーバー] を選択し、[次へ] ボタンをクリックして続行します。
23. 次に、重要なバイナリの場所とバージョンを確認し、Spine バイナリ パスを /usr/local/spine/bin/spine に変更します。終了したら、[次へ] ボタンを押して続行します。
24. 次に、すべての Web サーバー ディレクトリのアクセス許可が設定されているか (書き込みアクセス許可が設定されているか) を確認し、次へ ボタンをクリックして続行します。
25. 次のステップでは、すべてのテンプレートを確認し、完了 ボタンをクリックしてインストール プロセスを終了します。
26. 以下のスクリーンショットに示すように、以下に示すデフォルトの資格情報を使用して Cacti Web インターフェイスにログインし、管理者パスワードを変更します。
Username: admin
Password: admin
27. 次に、[コンソール] -> [構成] -> [設定] -> ポーラーに移動し、ポーラーの種類をcmd.php<から変更します。 を Spine バイナリに移動し、保存 ボタンまで下にスクロールして構成を保存します。
28. 次に、[コンソール] -> [構成] -> [設定] -> [パス] に移動し、次のパスをCacti-Spine 構成ファイルに追加します。
/usr/local/spine/etc/spine.conf
[保存] ボタンを押して設定を適用します。
29. Cacti ポーラーが監視対象デバイスからデータの収集を開始できるようにする最後のセットアップは、5 分ごとに SNMP 経由で各デバイスにクエリを実行するための新しい crontab タスクを追加することです。
crontab ジョブはwww-data アカウントによって所有されている必要があります。
crontab -u www-data -e
Cron ファイルエントリを追加します。
*/5 * * * * /usr/bin/php /var/www/html/poller.php
30. Cacti がデータを収集するまで数分間待ち、[グラフ] -> [デフォルト ツリー] に移動すると、監視対象デバイスについて収集されたグラフが表示されます。
それだけです! Debian 9 と Ubuntu 16.04 の最新リリースで、ソースから Cacti-Spine プーラーを使用して Cacti をインストールし、構成しました。 LTSサーバー。