サーバー監視 · 2 min read · Nov 01, 2025
Cactiを使用してCentOS 7サーバーを監視する方法
Cactiは無料でオープンソースのネットワークグラフ作成ソリューションです。データ収集とグラフ作成にはRRDToolを使用します。リモートおよびローカルデータコレクター、ネットワーク発見、デバイス管理の自動化、グラフテンプレートなど、多くの機能を提供します。
このチュートリアルでは、CentOS 7サーバーにCactiをインストールします。
前提条件
- 最小限のCentOS 7サーバー
- ルート権限
ステップ1 - Apacheのインストール
パッケージをインストールする前にサーバーを更新することをお勧めします。これにより、既存のパッケージとリポジトリが更新されます。
yum -y updateシステムが更新されたら、Apacheウェブサーバーのインストールに進むことができます。
yum -y install httpd次に、以下のコマンドを使用してApacheウェブサーバーを起動し、ブート時に自動的に起動するように設定します。
systemctl start httpdsystemctl enable httpdステップ2 - PHPのインストール
CactiはPHP 5.3より大きいすべてのバージョンをサポートしています。しかし、このチュートリアルでは、PHP v5.3がサポート終了となったため、PHP 7.1をインストールします。最新のPHPバージョンをインストールすることで、アプリケーションの最大のセキュリティとパフォーマンスが確保されます。
CentOSのデフォルトYUMリポジトリにはPHP 7.1が含まれていないため、Webtaticリポジトリをシステムに追加する必要があります。WebtaticリポジトリはEPELリポジトリが必要です。EPELリポジトリをインストールするために、以下のコマンドを実行します。
yum -y install epel-releaseyum -y updateWebtaticリポジトリをインストールするためのコマンドを入力します。
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpmyum -y update必要な依存関係とともにPHP 7.1をインストールするためのコマンドを入力します。
yum -y install php71w php71w-snmp php71w-mysqli php71w-cli php71w-ldap php71w-xml php71w-session php71w-sockets php71w-pcre php71w-gd php71w-dom php71w-posix php71w-mbstringPHPが正常にインストールされたかどうかを確認するには、次のコマンドを実行できます。
php -v次のような出力が得られるはずです。
[root@liptan-pc ~]# php -v
PHP 7.1.6 (cli) (built: Jun 10 2017 07:28:42) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
次に、PHPのいくつかの設定を構成する必要があります。お好みのテキストエディタを使用してPHP設定ファイルphp.iniを開きます。このチュートリアルでは、nanoエディタを使用します。nanoがインストールされていない場合は、yum -y install nanoを実行できます。
nano /etc/php.ini次の行を見つけて、コメントを解除し、地域に応じてタイムゾーンを設定します。例えば:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Kolkata
ステップ3 - MariaDBのインストール
MariaDBはMySQLデータベースのフォークです。サーバーにMariaDBをインストールするには、次のコマンドを実行します。
yum -y install mariadb mariadb-server次のコマンドを実行してMariaDBを起動し、ブート時に自動的に起動するように設定します。
systemctl start mariadbsystemctl enable mariadb次に、MariaDBのインストールを保護するために次のコマンドを実行します。
mysql_secure_installation上記のコマンドは、新しいMariaDBインストールを保護するためのスクリプトを実行します。このスクリプトは、既存のrootユーザーのパスワードを尋ねます。MariaDBをインストールしたばかりなので、rootパスワードは設定されていません。次に進むにはEnterを押してください。
スクリプトは、MariaDBインストールのためのrootパスワードを設定するかどうかを尋ねます。yを選択し、インストールのために強力なパスワードを設定します。ほとんどの質問は自己説明的であり、すべての質問に対してはいまたはyと答えるべきです。出力は以下のようになります。
データベースを作成するには、まずMySQLコマンドラインにログインする必要があります。同じために次のコマンドを実行します。
mysql -u root -p上記のコマンドは、rootユーザーのMySQLシェルにログインします。rootユーザーのパスワードを求められます。ログインするためにパスワードを提供します。次に、Cactiインストール用の新しいデータベースを作成するために次のクエリを実行します。
CREATE DATABASE cacti_data;上記のクエリは、cacti_dataという名前の新しいデータベースを作成します。別の名前を使用しても構いません。クエリは常にセミコロンで終了するため、各クエリの最後にセミコロンを使用してください。
データベースが作成されたら、新しいユーザーを作成し、そのユーザーにデータベースへのすべての権限を付与できます。新しいデータベースユーザーを作成するには、次のクエリを実行します。
CREATE USER 'cacti_user'@'localhost' IDENTIFIED BY 'StrongPassword';上記のクエリは、ユーザー名cacti_userのユーザーを作成します。cacti_userの代わりに任意のユーザー名を使用できます。StrongPasswordを非常に強力なパスワードに置き換えます。次に、作成したデータベースに対してデータベースユーザーにすべての権限を付与します。次のコマンドを実行します。
GRANT ALL PRIVILEGES ON cacti_data.* TO 'cacti_user'@'localhost';次に、データベース権限に対する変更を即座に適用するために次のコマンドを実行します。
FLUSH PRIVILEGES;次のコマンドを使用してMySQLプロンプトから退出します。
EXIT;タイムゾーンテーブルをポピュレートする必要があります。次のコマンドを実行してタイムゾーンテーブルをポピュレートします。
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql続行するためにMySQLのrootパスワードを提供します。テーブルがポピュレートされたら、Cactiユーザーアカウントに対してテーブルへの選択アクセスを提供する必要があります。再度MySQLプロンプトにログインします。
mysql -u root -p次に、次のクエリを実行します。
GRANT SELECT ON mysql.time_zone_name TO 'cacti_user'@'localhost';FLUSH PRIVILEGES;上記のクエリは、cacti_userに対してSELECTアクセスを付与します。
ステップ4 - Cactiのインストールと構成
Cactiはさらにいくつかの依存関係を必要とします。次のコマンドを実行してインストールします。
yum -y install net-snmp rrdtool net-snmp-utilsすべての依存関係が準備できたので、Cactiウェブサイトからインストールパッケージをダウンロードできます。
cd /var/www/htmlwget http://www.cacti.net/downloads/cacti-1.1.10.tar.gzCactiのダウンロードページでアプリケーションの最新バージョンへのリンクを常に見つけることができます。次のコマンドを使用してアーカイブを抽出します。
tar xzvf cacti*.tar.gz次のコマンドを使用してCactiフォルダーの名前を変更します。
mv cacti-1*/ cacti/次に、次のコマンドを実行してCactiデータベースをインポートします。
cd /var/www/html/cactimysql cacti_data < cacti.sql -u root -p上記のコマンドは、ユーザーrootを使用してcacti_dataにcacti.sqlデータベースをインポートします。データベースをインポートする前にrootユーザーのパスワードを尋ねられます。
次に、次のコマンドを実行してCacti設定を編集します。
nano /var/www/html/cacti/include/config.php次に、次の行を見つけて、MySQLデータベースの資格情報に応じて編集します。
/* make sure these values reflect your actual database/host/user/password */
$database_type = 'mysql';
$database_default = 'cacti_data';
$database_hostname = 'localhost';
$database_username = 'cacti_user';
$database_password = 'StrongPassword';
$database_port = '3306';
$database_ssl = false;
ステップ5 - 権限とファイアウォールの設定
次に、次のコマンドを使用してアプリケーションの所有権をウェブサーバーユーザーに提供する必要があります。
chown -R apache:apache /var/www/html/cactiファイアウォールを実行している場合は、ポート80でHTTPトラフィックを許可する必要があります。同じために次のコマンドを実行します。
firewall-cmd --zone=public --permanent --add-service=httpfirewall-cmd --reload次に、SELinuxを無効にする必要があります。プロキシ構成はSELinuxポリシーでは機能しません。サーバーを再起動せずにSELinuxを一時的に無効にするには、次のコマンドを実行します。
setenforce 0SELinuxを完全に無効にするには、/etc/selinux/configファイルを編集する必要があります。
nano /etc/selinux/config次の行を見つけます。
SELINUX=enforcing次のように変更します。
SELINUX=disabled次に、ウェブブラウザを使用してインストールを完了します。お好みのウェブブラウザを使用して次のリンクに移動します。
http://Your_Server_IP/cacti次のページが表示されます。

ライセンス契約に同意して次に進みます。
次のインターフェースでは、事前インストールが表示され、すべての必要な依存関係が満たされています。

次のインターフェースに進みます。
インストールタイプで、新しいプライマリサーバーを選択し、次に進みます。

次のインターフェースでは、バイナリの場所を提供する必要があります。RRDToolとPHPバイナリへのパスは正しいです。他のすべてのバイナリには、/usr/bin/binary_nameのパスを提供します。例えば、snapwalkバイナリの場合、パスは/usr/bin/snmpwalkです。

次のインターフェースでは、サーバーがすべての必要なフォルダーへの書き込みアクセス権を持っていることが表示されます。

テンプレート設定で、ローカルLinuxマシンを選択し、完了をクリックします。

ログインページに移動します。ユーザー名adminとパスワードadminを使用してログインすると、ダッシュボードに移動します。

Cactiのインストールは完了しました。インタラクティブなグラフを使用してサーバーを監視するためにアプリケーションを使用できます。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。