Cactiは、LAN内のさまざまなITリソースの時系列メトリックを監視およびグラフ化するために使用される無料のオープンソースフロントエンドネットワーク監視ツールです。 RRDtoolを使用します 指定された間隔でサービスをポーリングし、その後、直感的なグラフでサービスを表現します。
Cactiは、CPU、メモリと帯域幅の使用率、ディスクスペース、ファイルシステム、実行中のプロセスなどのさまざまなメトリックを監視します。サーバー、ルーター、スイッチ、さらにはファイアウォールなどのデバイスを監視できます。さらに、システムのダウンタイムが発生した場合に電子メールで通知を受信できるようにアラートを構成できます。このガイドでは、CentOS 8 / RHEL 8へのCacti監視ツールのインストールについて説明します。このチュートリアルを書き留めた時点で、最新のCactiバージョンはバージョン1.2.14です。
ステップ1)ApacheWebサーバーをインストールします
CactiはWebベースのグラフ作成ツールであるため、監視ツールを実行するWebサーバーをインストールする必要があります。ここでは、ApacheWebサーバーをインストールします。これを行うには、次のコマンドを実行します。
$ sudo dnf install httpd -y
ステップ2)PHPと追加のPHP拡張機能をインストールします
Cactiモニタリングツールのフロントエンドは純粋にPHP駆動であり、それに伴い、PHPと必要なPHPモジュールをインストールする必要があります。したがって、次のコマンドを実行します。
$ sudo dnf install -y php php-xml php-session php-sockets php-ldap php-gd php-json php-mysqlnd php-gmp php-mbstring php-posix php-snmp php-intl
ステップ3)MariaDBデータベースサーバーをインストールする
インストール中に、Cactiはファイルを保存するために独自のデータベースを必要とします。さらに、グラフの作成に必要なすべての必要なデータを保存するためのデータベースが必要です。
MariaDBは、MySQLのフォークおよびドロップイン代替品です。より堅牢で機能が豊富であると考えられており、MySQLは引き続き機能しますが、MariaDBを強くお勧めします。 MariaDBサーバーをインストールするには、次のコマンドを実行します。
$ sudo dnf install -y mariadb-server mariadb
ステップ4)SNMPおよびRRDツールをインストールします
次に、システムメトリックの収集と処理に不可欠なSNMPとRRDtoolをインストールします。
$ sudo dnf install -y net-snmp net-snmp-utils net-snmp-libs rrdtool
ステップ5)サービスを開始して有効にする
Cactiの実行に必要なすべてのサービスをインストールしたら、次のようにサービスを開始します。
$ sudo systemctl start httpd $ sudo systemctl start snmpd $ sudo systemctl start mariadb
さらに、起動時または再起動時に自動的に起動するように、起動時に有効にしてください。
$ sudo systemctl enable httpd $ sudo systemctl enable snmpd $ sudo systemctl enable mariadb
ステップ6)Cactiのデータベースを作成する
このステップでは、cactiのデータベースとユーザーを作成し、後でcactiユーザーにすべての特権を付与します。次のコマンドを実行します:
CREATE DATABASE cactidb; GRANT ALLONcactidb。*[email protected] IDENTIFIED BY‘cactipassword’; FLUSH PRIVILEGES; EXIT;
データベース名、ユーザー、パスワードは、インストールプロセスの後半で必要になるため、必ず書き留めておいてください。
次に、図のようにmysql_test_data_timezone.sqlをmysqlデータベースにインポートする必要があります。
$ mysql -u root -p mysql次に、mysqlデータベースにログインし、cactiユーザーにmysql.time_zone_nameテーブルへのアクセスを許可します。
GRANT SELECT ON mysql.time_zone_name TO [email protected]; FLUSH PRIVILEGES; EXIT;
最適なパフォーマンスを得るには、データベースの調整をお勧めします。図のように、[mysqld]セクションの下のmariadb-server.cnfファイルに次の行を追加します。
$ sudo vi /etc/my.cnf.d/mariadb-server.cnf ............ collation-server =utf8mb4_unicode_cicharacter-set-server =utf8mb4max_heap_table_size =32Mtmp_table_size =32Mjoin_buffer_size =64M#システム全体の25%メモリinnodb_buffer_pool_size =1GB#pool_size / 128、1GB未満のメモリinnodb_buffer_pool_instances =10innodb_flush_log_at_timeout =3innodb_read_io_threads =32innodb_write_io_threads =16innodb_io_capacity =5000innodb_file pre>構成ファイルを保存して終了します
ステップ7)Cacti監視ツールのインストールと構成
データベースが整っていて、他のすべての前提条件が満たされているので、Cactiをインストールしましょう。
CactiパッケージはデフォルトのCentOS8/ RHEL 8リポジトリでは利用できず、EPELリポジトリで利用できます。したがって、以下のコマンドを実行してepelリポジトリを有効にします
$ sudo dnf install epel-release -yCacti監視ツールをインストールするには、次のコマンドを実行します:
$ sudo dnf install cacti -yインストール後、次のコマンドを実行して、サボテンのインストールを確認できます。
$ rpm -qi cactiCactiパッケージのいくつかに言及するために、バージョン、リリース、サイズ、およびベンダーを示す詳細な出力を取得する必要があります。
次に、デフォルトのサボテンデータベーステーブルを手順6で作成したサボテンデータベースにインポートします。デフォルトデータベースのパスを確認するには、次のコマンドを実行します。
$rpm-qlサボテン| grep cacti.sqlパスを取得したら、次のコマンドを使用してデフォルトのデータベースをインポートします。
$ mysql -u root -p cactidb
次に、サボテン構成ファイルを編集し、次のようにデータベースの詳細を指定します。
$ sudo vim /usr/share/cacti/include/config.phpデータベース名、ユーザー名、パスワードを設定し、残りのオプションはそのままにしておきます。
変更を保存して、構成ファイルを終了します。その後、図のようにphp.iniファイルを編集してタイムゾーンを設定します。
$ sudo vim /etc/php.ini ................................. date.timezone =Asia / Dubaimemory_limit =512Mmax_execution_style =60 .................................ファイルを保存して終了します。
次に、図のようにcronエントリを編集します
$ sudo vim /etc/cron.d/cactiこの行のコメントを解除して、Cactiが5分ごとにデータをポーリングし、構成を保存するようにします
* / 5 * * * * apache /usr/bin/php /usr/share/cacti/poller.php> / dev / null 2>&1次に、Apacheの構成ファイルを変更して、Cactiのリモートインストールを有効にします。
$ sudo vim /etc/httpd/conf.d/cacti.conf次のhttpdACLを変更して、リモートユーザーにアクセスを許可します
[ホストローカルホストを要求する]を[すべての許可を要求する]に変更します
localhostからの許可を[ネットワークサブネット]からの許可に変更
ネットワークサブネットについては、必ず独自のネットワークサブネットを指定してください。この場合、サブネットは192.168.2.0/24
です。
有効にするために行われたすべての変更について、次を実行します。
$ sudo systemctl restart httpd $ sudo systemctl restart php-fpmステップ8)Cactiのファイアウォールルールを構成する
最終的にCactiを設定する前に、次のようにファイアウォールでHTTPサービスを許可します。
$ sudo Firewall-cmd --permanent --add-service =http $ sudo Firewall-cmd --reloadステップ9)ブラウザからCactiを設定する
Cactiの設定を完了するには、図のようにサーバーのIPにアクセスします
http:// server-ip / cacti
図のようにページが表示されます。表示された資格情報を使用してログインします
ユーザー名 :管理者
パスワード :管理者
[ログイン]をクリックして続行します。
次に、独自のパスワードを入力して、デフォルトのログインパスワードを変更する必要があります。強力なパスワード(大文字、小文字、数字、特殊文字の組み合わせ)を必ず提供してください。次に、[保存]をクリックします。
次のステップで、[GPLライセンス契約に同意する]チェックボックスをオフにして、[開始]をクリックします。
Cactiはインストール前のチェックを実行し、必要なPHPモジュールがインストールされ、正しいデータベース設定が構成されているかどうかを確認します。すべてが良さそうな場合は、[次へ]をクリックします。何かがおかしい場合は、[前へ]ボタンをクリックして構成ファイルに戻り、不足しているものを追加してください。
その後、インストールする[新しいプライマリサーバー]オプションを選択し、続行する前にデータベース接続の詳細が正しいことを確認します。
次のステップでは、ディレクトリの問題を調べて、正しいアクセス許可が設定されていることを確認します。すべて問題がなければ、[次へ]をクリックします。それ以外の場合は、[前へ]をクリックして、問題を修正します。
次に、インストーラーは、必要なパッケージのすべてのバイナリパスがインストールされているかどうかを確認します。
Cactiの最新バージョンでは、もう1つの重要なステップが導入されています。それは、データ入力メソッドの検証です。これにより、データ入力メソッドをホワイトリストに登録するためにサボテンをインストールした後に従うべきいくつかの手順が提供されます。手順を注意深く読み、[このステートメントを読みました]ボタンを確認してください。
次の手順では、デバイスをスキャンするためのcron間隔を選択し、図のようにネットワークサブネットを定義します。次に、[次へ]をクリックします。
Cactiには、Ciscoデバイス(ルーターとスイッチ)、Linux、Windowsマシンなど、ネットワーク内のさまざまなデバイスを監視およびグラフ化する機能を提供するテンプレートが付属しています。デフォルトでは、すべてのオプションがチェックされ、必要なすべてのテンプレートが含まれています。満足している場合は、[次へ]をクリックしてください。
その後、インストーラーはデータベース照合がUTF8に準拠しているかどうかを確認します。 [次へ]をクリックします。
インストールを開始するには、[インストールの確認]チェックボックスをクリックし、[インストール]をクリックします。
Cactiのインストールが開始され、約5分かかります。気軽に休憩して少しストレッチをしてください。
必要なパッケージのインストールが完了したら、[開始]ボタンをクリックします。
これにより、図のようにCactiダッシュボードに直接移動します。
Cactiは、デフォルトで、Cactiがインストールされているローカルサーバーのリソース使用率グラフを作成します。グラフにアクセスするには、次の手順に進みます。
グラフ–>デフォルトツリー–>ローカル–>デバイスを選択します。
グラフが入力されるまで約10分待ちます。
これで、このチュートリアルは終了です。個人的には、Cactiを使用してさまざまなデバイスを監視しており、複数のデバイスを監視し、システムのダウンタイムが発生した場合にアラートを送信する効率を証明できます。
Cent OS