웹사이트 검색

RHEL/CentOS 8/7 및 Fedora 30에 Cacti(네트워크 모니터링) 설치


Cacti 도구는 IT 비즈니스를 위한 오픈 소스 웹 기반 네트워크 모니터링 및 시스템 모니터링 그래프 솔루션입니다. Cacti를 사용하면 사용자는 RRDtool을 사용하여 결과 데이터에 대한 그래프를 생성하기 위해 정기적으로 서비스를 폴링할 수 있습니다. 일반적으로 네트워크 대역폭 사용률, CPU 로드, 실행 중인 프로세스, 디스크와 같은 측정항목의 시계열 데이터를 그래프로 표시하는 데 사용됩니다. 공간

이 방법에서는 RHEL, CentOSFedora 시스템 사용 YUM 및 DNF 패키지 관리자 도구.

선인장 필수 패키지

Cacti를 사용하려면 RHEL/CentOS/Fedora와 같은 Linux 운영 체제에 다음 패키지를 설치해야 합니다.

  1. Apache: PHPRRDTool로 생성된 네트워크 그래프를 표시하는 웹 서버입니다.
  2. MySQL: 선인장 정보를 저장하는 데이터베이스 서버입니다.
  3. PHP: RRDTool을 사용하여 그래프를 생성하는 스크립트 모듈입니다.
  4. PHP-SNMP: 데이터에 액세스하기 위한 SNMPPHP 확장입니다.
  5. NET-SNMP : SNMP(Simple Network Management Protocol)는 네트워크를 관리하는 데 사용됩니다.
  6. RRDTool: CPU 로드, 네트워크 대역폭 등과 같은 시계열 데이터를 관리하고 검색하는 데이터베이스 도구입니다.

참고: 여기에 표시된 설치 지침은 CentOS 7.5 Linux 배포판을 기반으로 작성되었습니다.

RHEL/CentOS/Fedora에 Cacti 필수 패키지 설치

먼저, 표시된 대로 기본 패키지 관리자 도구를 사용하여 다음 종속성 패키지를 하나씩 설치해야 합니다.

아파치 설치

yum install httpd httpd-devel   [On RHEL/CentOS 7/6]
dnf install httpd httpd-devel   [On RHEL/CentOS 8 and Fedora 30]

MySQL 설치

yum install mysql mysql-server      [On RHEL/CentOS 6]

MariaDBMySQL 데이터베이스 프로젝트의 커뮤니티 개발 포크이며 MySQL을 대체합니다. 이전에 공식적으로 지원되는 데이터베이스는 RHEL/CentOSFedora의 MySQL이었습니다.

최근 RedHat은 MySQL에서 MariaDB로 새로운 트랜잭션을 생성합니다. 이는 MariaDB가 RHEL/CentOS 8/7Fedora 19 에서 MySQL의 기본 구현이기 때문입니다. 앞으로.

yum install mariadb-server -y		[On RHEL/CentOS 7]
dnf install mariadb-server -y         [On RHEL/CentOS 8 and Fedora 30]

PHP 설치

yum install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli
OR
dnf install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli

PHP-SNMP 설치

yum install php-snmp
OR
dnf install php-snmp         

NET-SNMP 설치

yum install net-snmp-utils net-snmp-libs
OR
dnf install net-snmp-utils net-snmp-libs

RRDTool 설치

yum install rrdtool
OR
dnf install rrdtool

Apache, MySQL 및 SNMP 서비스 시작

선인장 설치에 필요한 모든 소프트웨어를 설치했으면 다음 명령을 사용하여 하나씩 시작해 보겠습니다.

RHEL/CentOS 6 및 Fedora 18-12
[root@tecmint ~]# service httpd start
[root@tecmint ~]# service mysqld start
[root@tecmint ~]# service snmpd start
RHEL/CentOS 8/7 및 Fedora 19 이상
[root@tecmint ~]# systemctl start httpd.service
[root@tecmint ~]# systemctl start mariadb.service
[root@tecmint ~]# systemctl start snmpd.service

시스템 시작 링크 구성

부팅 시 시작되도록 Apache, MySQLSNMP 서비스를 구성합니다.

RHEL/CentOS 6 및 Fedora 18-12
[root@tecmint ~]# /sbin/chkconfig --levels 345 httpd on
[root@tecmint ~]# /sbin/chkconfig --levels 345 mysqld on
[root@tecmint ~]# /sbin/chkconfig --levels 345 snmpd on
RHEL/CentOS 8/7 및 Fedora 19 이상
[root@tecmint ~]# systemctl enable httpd.service
[root@tecmint ~]# systemctl enable mariadb.service
[root@tecmint ~]# systemctl enable snmpd.service

RHEL/CentOS/Fedora에 Cacti 설치

여기서 EPEL 리포지토리를 설치하고 활성화해야 합니다. 저장소를 활성화한 후 다음 명령을 입력하여 Cacti 애플리케이션을 설치하세요.

yum install cacti         [On RHEL/CentOS 7]
dnf install cacti         [On RHEL/CentOS 8 and Fedora 30]

Cacti 설치를 위한 MySQL 서버 구성

Cacti에 대해 MySQL을 구성해야 합니다. 이를 위해서는 새로 설치된 MySQL 서버를 보호한 다음 Cacti를 생성해야 합니다. 사용자가 Cacti인 데이터베이스입니다. MySQL이 이미 설치되어 보호되어 있다면 다시 설치할 필요가 없습니다.

mysql_secure_installation

MySQL Cacti 데이터베이스 생성

새로 생성된 비밀번호로 MySQL 서버에 로그인하고 Cacti 사용자로 Cacti 데이터베이스를 생성하고 비밀번호를 설정하세요.

RHEL/CentOS 6 및 Fedora 18-12
[root@tecmint ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database cacti;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'tecmint';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit;
Bye
RHEL/CentOS 8/7 및 Fedora 19 이상
[root@tecmint ~]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.41-MariaDB MariaDB Server
Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database cacti;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'tecmint';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> FLUSH privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit;
Bye

MySQL에 Cacti 테이블 설치

RPM 명령을 사용하여 데이터베이스 파일 경로를 찾고, 새로 생성된 선인장 데이터베이스에 선인장 테이블을 설치하려면 다음 명령을 사용하십시오.

rpm -ql cacti | grep cacti.sql
샘플 출력:
/usr/share/doc/cacti-1.2.6/cacti.sql
OR
/usr/share/doc/cacti/cacti.sql

이제 Cacti.sql 파일의 위치를 확인했습니다. 다음 명령을 입력하여 테이블을 설치합니다. 여기에 Cacti 사용자 비밀번호를 입력해야 합니다.

[root@tecmint ~]# mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql
Enter password:

Cacti에 대한 MySQL 설정 구성

아무 편집기에서나 /etc/cacti/db.php라는 파일을 엽니다.

vi /etc/cacti/db.php

다음과 같이 변경하고 파일을 저장합니다. 비밀번호를 올바르게 설정했는지 확인하세요.

/* make sure these values reflect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "your-password-here";
$database_port = "3306";
$database_ssl = false;

선인장에 대한 방화벽 구성

RHEL/CentOS 6 및 Fedora 18-12
[root@tecmint ~]# iptables -A INPUT -p udp -m state --state NEW --dport 80 -j ACCEPT
[root@tecmint ~]# iptables -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
[root@tecmint ~]# service iptables save
RHEL/CentOS 8/7 및 Fedora 19 이상
[root@tecmint ~]# firewall-cmd --permanent --zone=public --add-service=http
[root@tecmint ~]# firewall-cmd --reload

선인장 설치를 위한 Apache 서버 구성

원하는 편집기를 사용하여 /etc/httpd/conf.d/cacti.conf라는 파일을 엽니다.

vi /etc/httpd/conf.d/cacti.conf

로컬 네트워크 또는 IP 수준별로 선인장 애플리케이션에 대한 액세스를 활성화해야 합니다. 예를 들어, 로컬 LAN 네트워크 172.16.16.0/20에 대한 액세스를 활성화했습니다. 귀하의 경우에는 다를 것입니다.

Alias /cacti    /usr/share/cacti
 
<Directory /usr/share/cacti/>
        Order Deny,Allow
        Deny from all
        Allow from 172.16.16.0/20
</Directory>

최신 버전의 Apache(예: Apache 2.4)에서는 다음 설정에 따라 변경해야 할 수 있습니다.

Alias /cacti    /usr/share/cacti

<Directory /usr/share/cacti/>
        <IfModule mod_authz_core.c>
                # httpd 2.4
                Require all granted
        </IfModule>
        <IfModule !mod_authz_core.c>
                # httpd 2.2
                Order deny,allow
                Deny from all
                Allow from all
        </IfModule>
</Directory>

마지막으로 Apache 서비스를 다시 시작합니다.

[root@tecmint ~]# service httpd restart				[On RHEL/CentOS 6 and Fedora 18-12]
[root@tecmint ~]# systemctl restart httpd.service		[On RHEL/CentOS 8/7 and Fedora 19 onwards]

선인장에 대한 Cron 설정

/etc/cron.d/cacti 파일을 엽니다.

vi /etc/cron.d/cacti

다음 줄의 주석 처리를 해제하세요. poller.php 스크립트는 5분마다 실행되며 Cacti 애플리케이션에서 그래프를 표시하는 데 사용되는 알려진 호스트의 데이터를 수집합니다.

#*/5 * * * *    cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

Cacti 설치 프로그램 설정 실행

마지막으로 Cacti가 준비되었습니다. http://YOUR-IP-HERE/cacti/로 이동하여 다음 화면을 통해 설치 프로그램 지침을 따르세요. 기본 로그인 세부정보를 입력하고 Enter 버튼을 누르세요.

User: admin
Password: admin

다음으로 기본 Cacti 비밀번호를 변경하세요.

Cacti 라이센스 계약에 동의하세요.

다음으로 화면에 Cacti 설치를 위한 사전 설치 확인이 표시됩니다. 표시된 대로 /etc/php.ini 파일에서 제안된 설정을 수정하고 변경 후 Apache를 다시 시작하십시오.

memory_limit = 800M
max_execution_time = 60
date.timezone = Asia/Kolkata

마찬가지로 Cacti 사용자에게 MySQL TimeZone 데이터베이스에 대한 액세스 권한을 부여하여 데이터베이스가 전역 TimeZone 정보로 채워지도록 해야 합니다.

mysql> use mysql;
mysql> GRANT SELECT ON mysql.time_zone_name TO cacti@localhost;
mysql> flush privileges;

설치 유형을 '새 설치'로 선택하세요.

계속하기 전에 다음 디렉터리 권한이 모두 올바른지 확인하세요.

계속하기 전에 중요 바이너리 위치 및 버전 값이 모두 올바른지 확인하세요.

폴링 소스에 사용할 기본 데이터 소스 프로필을 선택하세요.

Cacti 설치 후 사용하려는 기기 템플릿을 선택하세요.

[mysqld] 섹션 아래 MySQL 구성 파일 /etc/my.cnf에서 서버 데이터 정렬을 다음과 같이 설정합니다.

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

Cacti 서버가 거의 준비되었습니다. 계속 진행할 것인지 확인해 주세요.

더 많은 정보와 사용법을 원하시면 Cacti 페이지를 방문해 주세요.