The Complete RRDTool-based Graphing Solution Part II

2008/06/15 16:16
여기서는 cacti가 동작하기 위한 필요 팩키지 설치에 대하여 알아본다.
각 배포본에 따른 환경이 조금씩 다를 수 있으며,  오래된 배포본일 수록 설치된 팩키지를 업그레이드 해야 할 수도 있다.

본 설치환경은 Fedora Core 4이다.

리눅스에서 cacti 실행환경 및 의존성
cacti         cacti-0.8.7b.tar.gz
  Apache       httpd-2.0.63.tar.gz
    PHP     php-4.4.8.tar.gz
  MySQL       mysql-5.0.51b.tar.gz
  RRDTool       rrdtool-1.3.0.tar.gz
    cairo     cairo-1.6.4.tar.gz
      pixman   pixman-0.11.4.tar.gz
      freetype   freetype-2.3.6.tar.gz
      fontconfig   fontconfig-2.6.0.tar.gz
    pango     pango-1.21.0.tar.gz
      glib2   glib-2.16.3.tar.gz
  Net-SNMP       net-snmp-5.4.1.1.tar.gz
    beecrypt     beecrypt-devel-4.1.2-8.i386.rpm
    elfutils-libelf-devel     elfutils-libelf-devel-0.108-1.i386.rpm

프로그램 설치
1. 사전 작업
버전 업그레이드 및 설치시 라이브러리를 참조하지 못하는 팩키지는 삭제한후 소스를 다운받아 build한다.
fontconfig-2.2.3-13
freetype-2.1.9-2
freetype-devel-2.1.9-2
glib2-devel-2.6.6-1
glib2-2.6.6-1
pango-1.8.1-2


삭제 방법: 의존성으로 인하여 다른 팩키지를 삭제할 수 있으므로 --nodeps 옵션을 준다.
# rpm -e --nodeps fontconfig-2.2.3-13


2. 설치
컴파일시 라이브러리를 찾지 못 할 수 있으므로 아래와 같이 설정한다.
# export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig


각 라이브러리는 의존성 및 버전에 영향을 받으므로 최하단 부터 설치한다.
rrdtool-1.3rc9
cairo-1.6.4
pixman-0.11.4
freetype-2.3.5
fontconfig-2.6.0
- 소스 컴파일한 위치에서 fontconfig.pc 파일을 /usr/local/lib/pkgconfig로 복사
pango-1.21.2
glib-2.15.4

net-snmp-5.4.1.1
컴파일시 Perl 버전과 매치되지 않아 메시지가 출력되면 아래와 같이 세팅한다.
버전을 맞추어도 된다.
# export NETSNMP_DONT_CHECK_VERSION=1

아래 패키지가 필요하다 다운받아 설치한다.
beecrypt-devel-4.1.2-8.i386.rpm
elfutils-libelf-devel-0.108-1.i386.rpm

./configure
./make
./make install

PHP
net-snmp를 사용하려면 snmp 기능을 사용하기 위해 '--with-snmp' 옵션을 사용해야 한다.
snmp 옵션이 사용되었는지는 phpinfo() 함수를 이용하여 알 수 있다.


3. 환경설정
net-snmp
    컴파일후 소스 디렉토리에 있는 EXAMPLE.conf를 /usr/local/share/snmp에 snmpd.conf로 복사한다.
cp EXAMPLE.CONF /usr/local/share/snmp

   /etc/init.d 에 snmpd 파일을 아래와 같이 생성한다.
#!/bin/sh
#
# Start snmpd
#
start() {
export LD_LIBRARY_PATH=.:/lib:/usr/lib:/usr/local/lib
echo "Starting SNMPD"
/usr/local/sbin/snmpd -c /usr/local/share/snmp/snmpd.conf
}
stop() {
echo "Stopping SNMPD"
killall snmpd > /dev/null 2>&1
killall snmpd > /dev/null 2>&1
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
cleanup)
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?


이로서 cacti를 사용할 기본적인 팩키지를 모두 설치했다.
다음 Part에서 cacti를 설치해본다.

이올린에 북마크하기(0) 이올린에 추천하기(0)

happyness Server Management ,

2008/06/15 16:16 2008/06/15 16:16
Trackback Address:http://blog.htdocs.kr/trackback/104
[로그인][오픈아이디란?]