【構築手順】CactiをCentOS 7で構築する(MySQL使用)

はじめに

CactiをCentOS 7で構築してみようと思います。LAMP(Linux、Apache、MySQL、PHP)もインストールすることになり、バージョンは以下の通りとなっています。

ソフトウェア バージョン
CentOS 7.7.1908 (Core)
Apache 2.4.6
MySQL 5.7.28
PHP 5.4.16

 

本記事のゴールはCactiのWEBインターフェース画面にログインするところまでです。

 

CentOS 7のインストールと設定

CentOS 7は最小限のインストールでインストールを行いました。インストール後は以下の設定をしてあります。

  • IPアドレスの設定
  • NetworkManagerの無効化
  • DNSの設定
  • ホスト名の設定
  • 「net-tools」パッケージのインストール
  • 「yum update」コマンドの実行
  • SELinuxの無効化

 

rpmリポジトリ(REMIとEPEL)の追加

REMIとEPELのrpmリポジトリを追加します。

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm を取得中
警告: /var/tmp/rpm-tmp.NgIypx: ヘッダー V3 RSA/SHA256 Signature、鍵 ID 352c64e5: NOKEY
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:epel-release-7-12                ################################# [100%]
# rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
https://rpms.remirepo.net/enterprise/remi-release-7.rpm を取得中
警告: /var/tmp/rpm-tmp.wtIFCO: ヘッダー V4 DSA/SHA1 Signature、鍵 ID 00f97f56: NOKEY
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:remi-release-7.7-1.el7.remi      ################################# [100%]

※rpmコマンドのオプションについて
 -U:パッケージをアップグレードする。
 -v:処理中のパッケージを表示する。
 -h:進行状況を表示する。

ちなみにレポジトリのURLは下記から取得しました。

 

Apacheのインストール

  1. ApacheをEPELとREMIのリポジトリを指定してインストールします。
    # yum --enablerepo=epel,remi install httpd
  2. 自動起動するように設定し、Apacheを開始します。
    # systemctl enable httpd
    Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
    # systemctl start httpd

 

Cactiのインストール

ここでCactiをインストールします。後から足りないPHPモジュールをインストールします。CactiがサポートしているPHPは5.4.16のようです。最新の7.3を使用して何とかしようとしたらハマりました。
補足ですが、「RRDTool」も「net-snmp」も「net-snmp-utils」も自動的に入ってくれます。公式ドキュメントでは個別に案内されてました。

  1. yumコマンドでCactiをインストールします。
    # yum install cacti
    
    ~~~(省略)~~~
    
    依存性を解決しました
    
    ============================================================================================================================================
     Package                                 アーキテクチャー   バージョン                                  リポジトリー                   容量
    ============================================================================================================================================
    インストール中:
     cacti                                   noarch             1.2.6-1.el7                                 epel                           20 M
    依存性関連でのインストールをします:
     cairo                                   x86_64             1.15.12-4.el7                               base                          741 k
     dejavu-fonts-common                     noarch             2.33-6.el7                                  base                           64 k
     dejavu-sans-fonts                       noarch             2.33-6.el7                                  base                          1.4 M
     dejavu-sans-mono-fonts                  noarch             2.33-6.el7                                  base                          433 k
     fontconfig                              x86_64             2.13.0-4.3.el7                              base                          254 k
     fontpackages-filesystem                 noarch             1.44-8.el7                                  base                          9.9 k
     fribidi                                 x86_64             1.0.2-1.el7                                 base                           79 k
     graphite2                               x86_64             1.3.10-1.el7_3                              base                          115 k
     harfbuzz                                x86_64             1.7.5-2.el7                                 base                          267 k
     libX11                                  x86_64             1.6.7-2.el7                                 base                          607 k
     libX11-common                           noarch             1.6.7-2.el7                                 base                          164 k
     libXau                                  x86_64             1.0.8-2.1.el7                               base                           29 k
     libXdamage                              x86_64             1.1.4-4.1.el7                               base                           20 k
     libXext                                 x86_64             1.3.3-3.el7                                 base                           39 k
     libXfixes                               x86_64             5.0.3-1.el7                                 base                           18 k
     libXft                                  x86_64             2.3.2-2.el7                                 base                           58 k
     libXpm                                  x86_64             3.5.12-1.el7                                base                           55 k
     libXrender                              x86_64             0.9.10-1.el7                                base                           26 k
     libXxf86vm                              x86_64             1.1.4-1.el7                                 base                           18 k
     libglvnd                                x86_64             1:1.0.1-0.8.git5baa1e5.el7                  base                           89 k
     libglvnd-egl                            x86_64             1:1.0.1-0.8.git5baa1e5.el7                  base                           44 k
     libglvnd-glx                            x86_64             1:1.0.1-0.8.git5baa1e5.el7                  base                          125 k
     libicu                                  x86_64             50.2-3.el7                                  base                          6.9 M
     libjpeg-turbo                           x86_64             1.2.90-8.el7                                base                          135 k
     libthai                                 x86_64             0.1.14-9.el7                                base                          187 k
     libwayland-client                       x86_64             1.15.0-1.el7                                base                           33 k
     libwayland-server                       x86_64             1.15.0-1.el7                                base                           39 k
     libxcb                                  x86_64             1.13-1.el7                                  base                          214 k
     libxshmfence                            x86_64             1.2-1.el7                                   base                          7.2 k
     libxslt                                 x86_64             1.1.28-5.el7                                base                          242 k
     libzip                                  x86_64             0.10.1-8.el7                                base                           48 k
     lm_sensors-libs                         x86_64             3.4.0-8.20160601gitf9185e5.el7              base                           42 k
     mesa-libEGL                             x86_64             18.3.4-5.el7                                base                          109 k
     mesa-libGL                              x86_64             18.3.4-5.el7                                base                          165 k
     mesa-libgbm                             x86_64             18.3.4-5.el7                                base                           39 k
     mesa-libglapi                           x86_64             18.3.4-5.el7                                base                           45 k
     mysql-community-libs-compat             x86_64             5.7.28-1.el7                                mysql57-community             1.3 M
     net-snmp                                x86_64             1:5.7.2-43.el7                              base                          331 k
     net-snmp-agent-libs                     x86_64             1:5.7.2-43.el7                              base                          706 k
     net-snmp-libs                           x86_64             1:5.7.2-43.el7                              base                          750 k
     net-snmp-utils                          x86_64             1:5.7.2-43.el7                              base                          199 k
     pango                                   x86_64             1.42.4-4.el7_7                              updates                       280 k
     perl-Data-Dumper                        x86_64             2.145-3.el7                                 base                           47 k
     php-cli                                 x86_64             5.4.16-46.el7                               base                          2.7 M
     php-common                              x86_64             5.4.16-46.el7                               base                          565 k
     php-gd                                  x86_64             5.4.16-46.el7                               base                          128 k
     php-intl                                x86_64             5.4.16-46.el7                               base                           97 k
     php-ldap                                x86_64             5.4.16-46.el7                               base                           53 k
     php-mbstring                            x86_64             5.4.16-46.el7                               base                          505 k
     php-mysqlnd                             x86_64             5.4.16-46.el7                               base                          174 k
     php-pdo                                 x86_64             5.4.16-46.el7                               base                           99 k
     php-process                             x86_64             5.4.16-46.el7                               base                           56 k
     php-snmp                                x86_64             5.4.16-46.el7                               base                           53 k
     php-xml                                 x86_64             5.4.16-46.el7                               base                          126 k
     pixman                                  x86_64             0.34.0-1.el7                                base                          248 k
     rrdtool                                 x86_64             1.4.8-9.el7                                 base                          440 k
     t1lib                                   x86_64             5.1.2-14.el7                                base                          166 k
    
    トランザクションの要約
    ============================================================================================================================================
    インストール  1 パッケージ (+57 個の依存関係のパッケージ)
    
    総ダウンロード容量: 41 M
    インストール容量: 127 M
    Is this ok [y/d/N]:y
    
    ~~~(省略)~~~
    
    完了しました!
  2. Cactiをインストールで依存性の解決のためにインストールされたPHPを確認します。
    [root@CCTIVM03 conf]# yum list installed | grep php
    php-cli.x86_64                       5.4.16-46.el7                  @base
    php-common.x86_64                    5.4.16-46.el7                  @base
    php-gd.x86_64                        5.4.16-46.el7                  @base
    php-intl.x86_64                      5.4.16-46.el7                  @base
    php-ldap.x86_64                      5.4.16-46.el7                  @base
    php-mbstring.x86_64                  5.4.16-46.el7                  @base
    php-mysqlnd.x86_64                   5.4.16-46.el7                  @base
    php-pdo.x86_64                       5.4.16-46.el7                  @base
    php-process.x86_64                   5.4.16-46.el7                  @base
    php-snmp.x86_64                      5.4.16-46.el7                  @base
    php-xml.x86_64                       5.4.16-46.el7                  @base

    細かいのですが、Cactiの公式ドキュメントに記載されているPHPの必要なモジュールを下記の表にまとめました。これらのパッケージの中で、※1は「php-common」に含まれており、※2の「php-pdo_mysql」は、インストールされた「php-mysqlnd」と衝突します。つまり「php-pdo_mysql」パッケージ該当するものが「php-mysqlnd」となります。

    必要なモジュール
    php
    php-snmp
    php-ldap
    php-xml
    php-session(※1 php-commonに含まれてる?)
    php-sockets(※1 php-commonに含まれてる?)
    php-pdo
    php-pdo_mysql(※2 php-mysqlndでやる)
    php-mbstring
    php-pcre(※1 php-commonに含まれてる?)
    php-json(※1 php-commonに含まれてる?)
    php-openssl(※1 php-commonに含まれてる?)
    php-gd
    php-gmp(※1 php-commonに含まれてる?)
    php-zlib(※1 php-commonに含まれてる?)

    つまりCactiのインストールによって一緒にインストールされないPHPパッケージは「php」となります。
    念のため、「php」パッケージだけ追加でインストールしておきます。

    # yum install php
    
    ~~~(省略)~~~
    
    依存性を解決しました
    
    ============================================================================================================================================
     Package                      アーキテクチャー                バージョン                                リポジトリー                   容量
    ============================================================================================================================================
    インストール中:
     php                          x86_64                          5.4.16-46.el7                             base                          1.4 M
    
    トランザクションの要約
    ============================================================================================================================================
    インストール  1 パッケージ
    
    総ダウンロード容量: 1.4 M
    インストール容量: 4.4 M
    Is this ok [y/d/N]:y
    
    ~~~(省略)~~~
    
    完了しました!
  3. 再度インストールされたPHPモジュールを確認しておきます。「php」が追加されました。
    [root@CCTIVM03 conf]# yum list installed | grep php
    php.x86_64                           5.4.16-46.el7                  @base
    php-cli.x86_64                       5.4.16-46.el7                  @base
    php-common.x86_64                    5.4.16-46.el7                  @base
    php-gd.x86_64                        5.4.16-46.el7                  @base
    php-intl.x86_64                      5.4.16-46.el7                  @base
    php-ldap.x86_64                      5.4.16-46.el7                  @base
    php-mbstring.x86_64                  5.4.16-46.el7                  @base
    php-mysqlnd.x86_64                   5.4.16-46.el7                  @base
    php-pdo.x86_64                       5.4.16-46.el7                  @base
    php-process.x86_64                   5.4.16-46.el7                  @base
    php-snmp.x86_64                      5.4.16-46.el7                  @base
    php-xml.x86_64                       5.4.16-46.el7                  @base
  4. 「/etc/php.ini」ファイルのタイムゾーンを”Asia/Tokyo”に変更します。
    # vi /etc/php.ini
    ~~~(省略)~~~
    [Date]
    ; Defines the default timezone used by the date functions
    ; http://php.net/date.timezone
    date.timezone = "Asia/Tokyo"
    ~~~(省略)~~~




MySQLのインストール

  1. MySQLをインストールする前に、mariaDBを削除します。
    # yum list installed | grep maria
    mariadb-libs.x86_64                   1:5.5.64-1.el7                   @base
    # yum remove mariadb-libs
    
  2. MySQLをのレポジトリを追加します。まず、CentOSのバージョンを確認します。
    # cat /etc/redhat-release
    CentOS Linux release 7.7.1908 (Core)

    「7.7.1908」というところを覚えておきます。

  3. https://dev.mysql.com/downloads/repo/yum/」にアクセスします。
  4. OSのバージョンは「7」だったので、バージョン7の右の「DownLoad」ボタンを右クリックし、「リンクのアドレスをコピー」をクリックします。(ブラウザはChromeを使用しています)
  5. コピーしたURLを指定して、yumコマンドでリポジトリをインストールします。
    # yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
  6. 下記コマンドでMySQLのYumリポジトリが正常に追加されたことを確認できます。
    # yum repolist enabled | grep "mysql.*-community.*"
    mysql-connectors-community/x86_64 MySQL Connectors Community                 128
    mysql-tools-community/x86_64      MySQL Tools Community                      100
    mysql80-community/x86_64          MySQL 8.0 Community Server                 145
  7. 下記コマンドで、MySQLのYumリポジトリのすべてのサブリポジトリを表示し、有効と無効を確認できます。
    # yum repolist all | grep mysql
    mysql-cluster-7.5-community/x86_64 MySQL Cluster 7.5 Community      無効
    mysql-cluster-7.5-community-source MySQL Cluster 7.5 Community - So 無効
    mysql-cluster-7.6-community/x86_64 MySQL Cluster 7.6 Community      無効
    mysql-cluster-7.6-community-source MySQL Cluster 7.6 Community - So 無効
    mysql-cluster-8.0-community/x86_64 MySQL Cluster 8.0 Community      無効
    mysql-cluster-8.0-community-source MySQL Cluster 8.0 Community - So 無効
    mysql-connectors-community/x86_64  MySQL Connectors Community       有効:    128
    mysql-connectors-community-source  MySQL Connectors Community - Sou 無効
    mysql-tools-community/x86_64       MySQL Tools Community            有効:    100
    mysql-tools-community-source       MySQL Tools Community - Source   無効
    mysql-tools-preview/x86_64         MySQL Tools Preview              無効
    mysql-tools-preview-source         MySQL Tools Preview - Source     無効
    mysql55-community/x86_64           MySQL 5.5 Community Server       無効
    mysql55-community-source           MySQL 5.5 Community Server - Sou 無効
    mysql56-community/x86_64           MySQL 5.6 Community Server       無効
    mysql56-community-source           MySQL 5.6 Community Server - Sou 無効
    mysql57-community/x86_64           MySQL 5.7 Community Server       無効
    mysql57-community-source           MySQL 5.7 Community Server - Sou 無効
    mysql80-community/x86_64           MySQL 8.0 Community Server       有効:    145
    mysql80-community-source           MySQL 8.0 Community Server - Sou 無効
  8. ここで、「mysql80-community/x86_64 MySQL 8.0 Community Server」を無効にし、「mysql57-community/x86_64 MySQL 5.7 Community Server」を有効にしてみます。
    # vi /etc/yum.repos.d/mysql-community.repo
    [mysql55-community]
    name=MySQL 5.5 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/7/$basearch/
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
    
    # Enable to use MySQL 5.6
    [mysql56-community]
    name=MySQL 5.6 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
    
    # Enable to use MySQL 5.7
    [mysql57-community]
    name=MySQL 5.7 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
    enabled=1 #"1"に変える。デフォルトでは"0"。
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
    
    [mysql80-community]
    name=MySQL 8.0 Community Server
    baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
    enabled=0 #"0"に変える。デフォルトでは"1"。
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
    
    ~~~(下省略)~~~
  9. 再度どのリポジトリが有効になっているか確認します。MySQL 5.7が有効になりました。
    # yum repolist enabled | grep mysql
    mysql-connectors-community/x86_64 MySQL Connectors Community                 128
    mysql-tools-community/x86_64      MySQL Tools Community                      100
    mysql57-community/x86_64          MySQL 5.7 Community Server                 384
  10.  MySQLをインストールします。
    # yum install mysql-community-server
  11. MySQLを開始します。
    # systemctl enable mysqld
    # systemctl start mysqld
  12. MySQLが開始したことを確認します。
    # systemctl status mysqld
     mysqld.service - MySQL Server
       Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
       Active: active (running) since 月 2019-10-14 19:25:23 JST; 7s ago
         Docs: man:mysqld(8)
               http://dev.mysql.com/doc/refman/en/using-systemd.html
      Process: 17707 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
      Process: 17657 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
     Main PID: 17710 (mysqld)
       CGroup: /system.slice/mysqld.service
               mq17710 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
    
    10月 14 19:24:54 CCTIVM03 systemd[1]: Starting MySQL Server...
    10月 14 19:25:23 CCTIVM03 systemd[1]: Started MySQL Server.
  13.  MySQLのrootのテンポラリパスワードを確認します。
    # cat /var/log/mysqld.log | grep "temporary password"
    2019-10-14T10:24:56.618460Z 1 [Note] A temporary password is generated for root@localhost: "ここに出る"
  14.  MySQLのrootのパスワードを変更します。
    # mysql -u root -p
    mysql> set password for root@localhost=password('新しいパスワード入れて');
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    mysql> quit
  15.  Cacti用のデータベースを作成します。ここでは”cacti_db”としました。また、”cactiuser”も作成します。
    # mysql -u root -p
    mysql> create database cacti_db;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> create database cacti_db;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | cacti_db           |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    5 rows in set (0.01 sec)
    
    mysql> CREATE USER cactiuser IDENTIFIED BY 'cactiuser用のパスワード';
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> quit
  16. mysqlデータベースにタイムゾーンをロードし、cactiuserに「mysql.time_zone_name」テーブルの参照権限を付与します。また、cactiuserにcacti_dbへのGRANT権限を付与します。
    # mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
    Enter password:
    Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it.
    Warning: Unable to load '/usr/share/zoneinfo/leapseconds' as time zone. Skipping it.
    Warning: Unable to load '/usr/share/zoneinfo/tzdata.zi' as time zone. Skipping it.
    Warning: Unable to load '/usr/share/zoneinfo/zone.tab' as time zone. Skipping it.
    Warning: Unable to load '/usr/share/zoneinfo/zone1970.tab' as time zone. Skipping it.
    
    # mysql -u root -p
    
    mysql> grant select on mysql.time_zone_name to cactiuser@localhost identified by 'cactiuserのパスワード';
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    
    mysql> GRANT ALL ON cacti_db.* TO cactiuser@localhost IDENTIFIED BY 'cactiuserのパスワード';
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> quit
  17. 「cacti.sql」を使用して、cacti_dbへテーブルをインポートします。
    # mysql -u cactiuser -p cacti_db < /usr/share/doc/cacti-1.2.6/cacti.sql
  18.  「/usr/share/cacti/include/config.php」を編集します。データベースの名前のcactiuserのパスワードを修正しています。
    # vi /usr/share/cacti/include/config.php
    
    ~~~(省略)~~~
    
    /*
     * Make sure these values reflect your actual database/host/user/password
     */
    
    $database_type     = 'mysql';
    $database_default  = 'cacti_db';
    $database_hostname = 'localhost';
    $database_username = 'cactiuser';
    $database_password = 'cactiuserのパスワード';
    $database_port     = '3306';
    $database_retries  = 5;
    $database_ssl      = false;
    $database_ssl_key  = '';
    $database_ssl_cert = '';
    $database_ssl_ca   = '';
    
    ~~~(省略)~~~
  19.  「/etc/httpd/conf.d/cacti.conf」を編集します。デフォルトではローカルからのアクセスしか許可しないようになっているので、すべての場所からのアクセスを許可します。
    # vi /etc/httpd/conf.d/cacti.conf
    
    ~~~(省略)~~~
    
    Alias /cacti    /usr/share/cacti
    
    <Directory /usr/share/cacti/>
            <IfModule mod_authz_core.c>
                    # httpd 2.4
                    # Require host localhost
                    Require all granted
            </IfModule>
            <IfModule !mod_authz_core.c>
                    # httpd 2.2
                    Order deny,allow
                    Deny from all
                    # Allow from localhost
                    Allow from all
            </IfModule>
    </Directory>
    
    
    ~~~(省略)~~~
  20.  ApacheとMySQLを再起動します。
    # systemctl restart mysqld
    # systemctl restart httpd




CactiのWebコンソールにログイン(不足している必要条件の確認)

ここまでくれば、CactiのWebコンソールにログインできます。ログインした後、Cactiインストールの必要条件を確認します。

  1. 「http://[IPアドレス]/cacti/」にブラウザでアクセスします。するとユーザ名とパスワードが求められるので、どちらも”admin”を入力して「ログイン」をクリックします。
  2. パスワードの変更が求められるので、変更後のパスワードを入力して「保存」をクリックします。
  3. 「Accept GPL License Agreement」にチェックを入れて、「Begin」をクリックします。
  4. 下記の画面が表示されますが、赤い手のマークがついているところが修正必須の個所です。下図でいうとMySQLのSettingsで必要条件を満たせていません。

    せっかくなので、警告を含めてある程度の必要条件を満たそうと思います。

 

PHP – Recommendations (web)と(cli)

上記の図より、「memory_limit」と「max_execution_time」の値が足りていませんので修正します。

  1. TeratermでCactiサーバにログインし、「/etc/php.ini」ファイルをviエディタで開きます。
    # vi /etc/php.ini
  2. 「memory_limit = 128M」と記載されているところがあるので、ここを”800M”に変更します。
    ~~~(省略)~~~
    
    ; Maximum amount of memory a script may consume (128MB)
    ; http://php.net/memory-limit
    memory_limit = 800M
    
    ~~~(省略)~~~
  3. 「max_execution_time = 30」となっている個所を、”60″にします。そのあと保存して閉じます。
    ~~~(省略)~~~
    
    ; Maximum execution time of each script, in seconds
    ; http://php.net/max-execution-time
    ; Note: This directive is hardcoded to 0 for the CLI SAPI
    max_execution_time = 60
    
    ~~~(省略)~~~

 

MySQL – Settings

上記の図から、必要条件を満たしていないのは下記です。赤字以外は解決します。

パラメータ 現在値 必要値
collation_server latin1_swedish_ci utf8mb4_unicode_ci
character_set_client latin1 utf8mb4
max_allowed_packet 4194304 16777216 以上
max_heap_table_size 16M 122M 以上
tmp_table_size 16M 122M 以上
join_buffer_size 0M 244M 以上
innodb_buffer_pool_size 128M 1907M 以上
innodb_flush_log_at_timeout 1 3 以上
innodb_read_io_threads 4 32 以上
innodb_write_io_threads 4 16 以上
innodb_buffer_pool_instances 1 2 以上
innodb_io_capacity 200 5000 以上
innodb_io_capacity_max 2000 10000 以上
  1. TeratermでCactiサーバにログインし、「/etc/my.cnf」をviエディタで開きます。
    # vi /etc/my.cnf
  2. 下記を追記して保存して閉じます。
    ~~~(省略)~~~
    
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
    
    character_set_server=utf8mb4
    collation_server=utf8mb4_unicode_ci
    max_allowed_packet=16M
    max-heap-table-size=123M
    tmp-table-size=123M
    join-buffer-size=245M
    innodb-buffer-pool-size=1907M
    innodb_flush_log_at_timeout=3
    innodb_read_io_threads=32
    innodb_write_io_threads=16
    
  3. MySQLとApacheを再起動します。
    # systemctl restart mysqld
    # systemctl restart httpd




Cactiのインストール~Webコンソールログイン

  1. 再度「http://CactiサーバのIPアドレス/cacti/」にアクセスして進むと、ワーニングが消えていますので、「Next」をクリックします。
  2. 内容を確認して「Next」をクリックします。
  3. 「Next」をクリックします。
  4. 「Next」をクリックします。
  5. 「Next」をクリックします。
  6. 「Next」をクリックします。
  7. 「Next」をクリックします。
  8. 「Confirm Installation」にチェックを入れて、「Install」をクリックします。
  9. プログレスが表示されるので、完了するまで待ちます。
  10. 完了したら、「Get Started」をクリックします。
  11. CactiのWebコンソール画面が表示されます!

 

最後に

本記事をお読みいただきありがとうございます。

今回はWebコンソールログインまででしたが、今後グラフの作成やデバイスの管理の設定などを見ていきたいと思います。