반응형
Cacti Poller 설정으로 성능을 향상하는 방법
Cacti는 기본적으로 PHP 기반 cmd.php / poller.php 방식으로 데이터를 수집합니다.
모니터링 대상 장비가 많아질수록 Polling 시간이 증가하고 수집 지연 또는 그래프 누락이 발생할 수 있습니다.
1. Spine Poller란?
Spine은 Cacti 공식 고성능 Poller입니다.
장점
- 빠른 SNMP 수집 속도
- 멀티스레드 지원
- 대규모 장비 환경에 적합
- Polling 지연 최소화
- 그래프 누락 감소
추천 환경
- 장비 수 100대 이상
- 인터페이스 수집량 많음
- Poller 시간이 5분 주기를 초과하는 환경
2. Spine 다운로드
소스 디렉터리로 이동합니다.
cd /usr/local/src
Spine 패키지를 다운로드합니다.
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.8a.tar.gz
3. 설치
압축 해제
tar xvfz cacti-spine-0.8.8a.tar.gz
디렉터리 이동
cd cacti-spine-0.8.8a
컴파일 환경 구성
./configure
설치 진행
make && make install
4. 설정 파일 생성
기본 설정 파일을 복사합니다.
cp /usr/local/spine/etc/spine.conf.dist /usr/local/spine/etc/spine.conf
설정 파일 수정
vim /usr/local/spine/etc/spine.conf
5. DB 접속 정보 입력
Cacti의 config.php와 동일한 DB 정보를 입력합니다.
DB_Host localhost
DB_Database cacti
DB_User cactiuser
DB_Pass cactiuser
DB_Port 3306
DB_PreG 0
계정 정보는 실제 운영 환경에 맞게 수정합니다.
728x90
6. 웹에서 Spine 경로 설정
Cacti 관리자 페이지 접속 후 아래 메뉴로 이동합니다.
Console → Configuration → Settings → Paths
Poller Path 항목에 Spine 경로를 입력합니다.
/usr/local/spine/bin/spine

7. Poller 방식 변경
다음 메뉴로 이동합니다.
Console → Configuration → Settings → Poller

Poller Type을 다음과 같이 변경합니다.
Spine
8. Cron 설정
5분마다 Poller가 실행되도록 Crontab 설정합니다.
crontab -e
*/5 * * * * /usr/bin/php /home/cacti.sangchul.kr/public_html/cacti/poller.php > /dev/null 2>&1
9. 적용 확인
Poller 로그 확인
tail -f /var/log/cron
또는 Cacti 로그 메뉴에서 확인합니다.
정상 적용 시
- Polling 시간 단축
- 그래프 누락 감소
- SNMP 응답 지연 해소
10. 성능 튜닝 팁
Thread 수 조정
vim spine.conf
Threads 10
환경에 따라 10 ~ 50 조정 가능
DB 튜닝 병행
- MariaDB/MySQL Buffer Pool 조정
- 인덱스 최적화
- Slow Query 점검
특히 대규모 서버/네트워크 장비를 모니터링하는 환경이라면 기본 PHP Poller 대신 Spine 적용을 강력히 권장합니다.
728x90
반응형
'리눅스' 카테고리의 다른 글
| cut 명령어 (1) | 2013.07.19 |
|---|---|
| cacti plugin monitor 설치 (0) | 2013.07.18 |
| NET-SNMP Cannot find SNMP headers 오류 (0) | 2013.07.18 |
| MySQL Cannot find MySQL headers 오류 (0) | 2013.07.18 |
| [cacti] cacti plugin realtime 설치 (0) | 2013.07.16 |