Ubuntu20.04にCactiをインストールして構成する方法

Cactiは、オープンソースのWebベースのネットワーク監視およびシステム監視グラフ作成ツールです。 これは、RRDTool(時系列データベース(TSDB))のフロントエンドです。

Cactiを使用すると、サーバーや、サーバー、ルーター、スイッチなどのネットワークデバイスを監視できます。 SNMPプロトコルを使用してネットワークトラフィックを収集および監視します。 CPU、メモリディスク容量、帯域幅使用率など、さまざまなシステムメトリックを監視できます。 また、システムが停止した場合に電子メール通知を受信するようにアラートを設定することもできます。 さらに、問題が発生した場合の応答時間を短縮できます。

LAMPスタックを使用して、LinuxディストリビューションにCactiをインストールできます。 また、NginxおよびIISWebサーバーもサポートしています。 収集されたデータは、MySQLまたはMariaDBデータベースに保存されます。 データ収集フレームワークは完全に分散されており、フォールトトレラントでスケーラブルです。

このガイドでは、次の方法について説明します。 Cactiをインストールして構成します オン Ubuntu 20.04

ステップ1:インストール Apache Webサーバー

次のコマンドを使用してシステムパッケージを更新することから始めます。

$ sudo apt update -y

Cacti MonitoringツールにはWebブラウザーを介してアクセスし、Webサーバーをセットアップする必要があります。 Apache2Webサーバーをインストールします。

$ sudo apt install apache2 -y

開始して有効にする Apache コマンドで:

$ sudo systemctl start apache2
$ sudo systemctl enable apache2

ステップ2:MariaDBデータベースサーバーをインストールする

Cactiは、ネットワークデバイスから収集されたすべてのデータをデータベースに保存します。 このガイドでは、MySQLからフォークされた堅牢なオープンソースのリレーショナルデータベースであるMariaDBをインストールします。

MariaDBはUbuntu20.04リポジトリで利用できます。 次のコマンドを使用してMariaDBをインストールするだけです。

$ sudo apt install mariadb-server mariadb-client

Cactiを最適に実行するには、MariaDBデータベースサーバーを調整する必要があります。 アクセスする 50-server.cnf 構成ファイル。

$ sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf

下 [ mysqld ] セクションに、次の行を追加します。

collation-server = utf8mb4_unicode_ci
character-set-server=utf8mb4
max_heap_table_size = 128M
tmp_table_size = 64M
innodb_buffer_pool_instances=9
join_buffer_size = 64M
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_buffer_pool_size = 1G
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
innodb_io_capacity = 5000
innodb_io_capacity_max = 10000

Save 終了します。 次に、変更を適用するためにMariaDBをリロードします。

$ sudo systemctl restart mariadb

ステップ3:PHPと必要なPHP拡張機能をインストールする

Cactiモニタリングツールのフロントエンドは完全にPHP駆動型です。 したがって、次のようにPHPと関連するPHPモジュールをインストールする必要があります。

$ sudo apt install libapache2-mod-php php-mysql php-xml php-gd php-snmp php-json php-intl php-mbstring php-ldap php-gmp -y

次に、max_execution時間とメモリ制限を調整し、希望するタイムゾーンをオンに設定します /etc/php/7.4/apache2/php.ini/etc/php/7.4/cli/php.ini ファイル。

$ sudo vim /etc/php/7.4/apache2/php.ini

date.timezone = Africa/Nairobi
memory_limit = 512M
max_execution_time = 60

同様に、変更を複製します /etc/php/7.4/cli/php.ini ファイル。

ステップ4:SNMPとRRDToolをインストールする

このステップでは、システムパフォーマンスメトリックの収集とグラフ化に使用されるRRDtoolとSNMPをインストールします。 次のコマンドを実行します。

$ sudo apt install rrdtool snmp snmpd snmp-mibs-downloader libsnmp-dev

ステップ5:Cactiデータベースを作成する

Cactiは、収集したすべてのデータを保存するためのデータベースを必要とします。 まず、MariaDBにログインします

$ sudo mysql -u root -p

次に、cactiのデータベースとデータベースユーザーを作成し、次のようにユーザーにすべての権限を付与します。

CREATE DATABASE cactidb;

GRANT ALL ON cacti.* TO ‘cacti_user’@’localhost’ IDENTIFIED BY ‘cactipassword’;


FLUSH PRIVILEGES;


EXIT;

ステップ6:Cactiをダウンロードして構成する

次に、図のように公式サイトからCactiアーカイブファイルをダウンロードします。

$ wget https://www.cacti.net/downloads/cacti-latest.tar.gz

この記事を書いている時点で、最新のCactiバージョンはバージョン1.2.18です。

次に、CactiのWebルートディレクトリとして/ var / www / html /にCactiディレクトリを作成します。

$ sudo mkdir /var/www/html/cacti

図のように、tarファイルを上記のディレクトリに解凍します。

$ sudo tar xzf cacti-latest.tar.gz -C /var/www/html/cacti

次に、cactiディレクトリの所有者をに設定します www-data 示されているようにwebrootディレクトリ:

$ sudo chown -R www-data: /var/www/html/cacti/

次に、デフォルトのデータベースをcactiデータベースにインポートします。

$ sudo mysql -u root -p cacti < /var/www/html/cacti/cacti.sql

次に、図のようにMySQLタイムゾーンデータをMariaDBにインポートします

$ sudo mysql -u root -p mysql < /usr/share/mysql/mysql_test_data_timezone.sql

ここで、MariaDBデータベースに戻ります

$ sudo mysql -u root -p

mysqlタイムゾーンにアクセスするためのselect権限をcactiデータベースユーザーに付与します。 走る:

GRANT SELECT on mysql.time_zone_name to cacti_user@localhost;

FLUSH PRIVILEGES;


EXIT;

ステップ7:Cactiデータベース接続の詳細を構成する

次に、Cacti構成ファイルを編集します。 config.phpファイルを開きます。

$ sudo vim /var/www/html/cacti/include/config.php

次に、構成ファイルのデータベースの詳細を更新します。 上記の手順5でデータベースを作成するときに設定した値を反映するように、詳細を変更します。

$database_type = ‘mysql’;
$database_default = ‘cacti’;
$database_hostname = ‘localhost’;
$database_username = ‘cacti_user’;
$database_password = ‘cactipasswd’;
$database_port = ‘3306’;

ステップ8:サボテンを作成する Apache 構成

このステップでは、Cactiサイトの新しい仮想ホストファイルを作成します。

$ sudo vim /etc/apache2/sites-available/cacti.conf

次の行を追加します

Alias /cacti    /var/www/html/cacti
<Directory /var/www/html/cacti/>
<IfModule mod_authz_core.c>
Require all granted
</IfModule>
</Directory>

Save 終了します。 再起動 Apache 適用される変更について

$ sudo systemctl restart apache2

素晴らしい。 現在残っているのは、ブラウザにCactiを設定することだけです。

ステップ9:ブラウザでCactiを設定する

この時点で、すべてのCacti構成が完了しました。 次に、WebブラウザでCactiのインストールを完了する必要があります。 Cactiセットアップウィザードは、プロセスを段階的にガイドします。
次のアドレスを使用してサボテンにアクセスします。

https://server-ip-address/cacti

以下のようなログインページが表示されます。 デフォルトの資格情報でログインします。

ユーザー名: admin

パスワード: admin

次に、パスワードをリセットするように求められます。 セキュリティ上の理由から、必ず強力なパスワードを設定し、「」をクリックしてください。Save’ ボタン。

サボテンパスワード変更

次に、チェックボックスのGPLライセンスに同意します。 クリック ‘始める‘インストールを続行します。

サボテンは使用許諾契約に同意します

次に、Cactiはインストール前のチェックを実行して、cactiが正しく機能するために必要なPHPモジュールとデータベース設定がシステムにあることを確認します。 すべての構成が整っている場合は、[‘]をクリックします。」

サボテンのプレインストールチェック

次に、 ‘を選択します新しいプライマリサーバー‘インストールオプションを選択し、続行する前にローカルデータベース接続パラメータが正しいことを再確認してください。[次へ]をクリックします。

サボテンローカルデータベース接続の詳細

ディレクトリのアクセス許可のチェックが正しいことを確認してから、[‘]をクリックしてください。。」 そうでない場合は、手順6に戻り、指示に従ってアクセス許可を設定します。

cactiディレクトリのアクセス許可チェック

次に、表示される重要なバイナリパスとバージョンの詳細が正しいことを確認し、をクリックします ‘次’

サボテンの重要なバイナリの場所とバージョン

次のステップでは、入力検証ホワイトリスト保護の概要が表示されます。 データ入力メソッドをホワイトリストに登録するために実行するいくつかの手順を示しています。[このステートメントを読みました]チェックボックスをオンにして、インストールを続行します。

サボテン入力検証ホワイトリスト保護

次の手順では、ポーリングソースのデータソースプロファイルを選択できます。 サブネットに対応するようにネットワーク範囲を変更することもできます。

cactiのデフォルトの自動化ネットワーク

Cactiは、ルーター、Linux、Windowsサーバーなどのさまざまなデバイスを監視およびグラフ化するためのテンプレートを提供します。 デフォルトでは、必要なすべてのテンプレートを確実に取得するために、すべての設定がチェックされています。 クリック ‘‘ 続行します。

Cactiのデフォルトのテンプレート設定

次に、インストーラーはサーバーとデータベースの照合がUTF8に準拠しているかどうかを確認します。 クリック ‘次‘。

Cactiサーバーとデータベースの照合

次に、 ‘を確認しますインストールを確認する‘ボックスをクリックし、’インストール ‘ボタンをクリックして、インストールプロセスを開始します。

サボテンはインストールを確認します

インストールが開始され、完了するまでに約1分かかります。

Cactiサーバーのインストール

インストールが正常に完了すると、次の画面が表示されます。

Cactiのインストールが完了しました

クリックしてください ‘始めましょう‘ ボタン。 サボテンが稼働しています。 Cactiダッシュボードは次のように表示されます。

Cactiのデフォルトダッシュボード

結論

これで、Ubuntu20.04にCactiが正常にインストールおよび構成されました。 これで、デバイスの追加と監視を開始できます。