2013-11-25 3 views
3

나는 collectd.conf에서 LoadPlugin dbi 주석,하지만 지금 collectd를 다시 시작하는 것은 나에게 제공했습니다collectd - dbi 플러그인 설치 방법?

Stopping collectd:           [ OK ] 
Starting collectd: Could not find plugin dbi. 
                  [ OK ] 

어떻게 플러그인이 가능합니까? OS는 6.4 yum list allcollectd-dbi 플러그인 표시되지 않습니다에 CentOS입니다 : 내가 없어진 libdbi-dbd-mysql을 설치 한

[[email protected] ~]# yum list all | grep collectd | grep dbi 
[[email protected] ~]# 

을,하지만 아무것도 변경하지 않았다.

답변

4

CentOS 6.3에서도 동일한 문제가있었습니다. 문제는 EPEL yum repo에 collectd-dbi rpm이 없다는 것입니다. dbi 플러그인을 다른 곳에서 가져와야합니다. 설치 한 collectd 버전

점검

$ yum info collectd 

이 결과는 나에게 당신은 누군가가 내장되어 있다는 RPM의 웹 주변 검색을 시도 할 수 있습니다

Loaded plugins: fastestmirror 
Loading mirror speeds from cached hostfile 
Installed Packages 
Name  : collectd 
Arch  : x86_64 
Version  : 4.10.7 
Release  : 1.el6 
Size  : 1.3 M 
Repo  : installed 
From repo : epel 

을 위해 무엇인지,하지만에서 나의 경우 정확한 버전을 찾지 못했습니다. 이 때문에 유일한 해결책은 소스에서 collectd를 컴파일하는 것입니다. 다음 collectd를 컴파일하고 DBI 플러그인

복제에게 collectd의 REPO를 설치 얻을 이미 collectd를 컴파일 할

git clone https://github.com/collectd/collectd.git 
cd collectd/ 
git checkout collectd-4.10.7 

설치 종속성을 설치 한 버전을 체크 아웃하기 위해 내가 수행 한 단계입니다. 아래는 이것을 컴파일하기 위해 설치해야하는 모든 것이지만 설치가 더 필요할 수도 있습니다. libdbi-devel이 필요합니다. 설치되지 않으면 configure 스크립트를 실행할 때 dbi 플러그인이 활성화되지 않고 컴파일되지 않습니다.

sudo yum install autoconf automake flex ppl cloog-ppl cpp libgomp mpfr glibc-devel glibc-headers kernel-headers gcc libtool libtool-ltdl libtool-ltdl-devel libgcrypt-devel libgpg-error-devel libdbi libdbi-devel bison byacc db4-cxx db4-devel gdbm-devel perl-ExtUtils-MakeMaker perl-ExtUtils-ParseXS perl-Test-Harness perl-devel 

에 오류

./build.sh && ./configure && make 

컴파일 아무 문제가 없었다 가정이없는 다음을 실행하고 있는지 확인하십시오, 당신은 컴파일 된 DBI 플러그인이 있어야합니다. 당신은 모든 링크 된 라이브러리가 좋으면, 당신이 그렇게 같은 collectd lib 디렉토리에 공유 객체입니다 dbi.so를 설치할 수 있습니다

$ ldd src/.libs/dbi.so 
linux-vdso.so.1 => (0x00007fff109ff000) 
libdbi.so.0 => /usr/lib64/libdbi.so.0 (0x00007fca4a53c000) 
libdl.so.2 => /lib64/libdl.so.2 (0x00007fca4a338000) 
libc.so.6 => /lib64/libc.so.6 (0x00007fca49fa3000) 
libm.so.6 => /lib64/libm.so.6 (0x00007fca49d1f000) 
/lib64/ld-linux-x86-64.so.2 (0x00007fca4a95a000) 

를 설치 한 src/.libs/dbi.so

점검에서 찾을 수 있습니다 :

sudo install -o root -g root src/.libs/dbi.so /usr/lib64/collectd/ 

이제 collectd를 다시 시작할 수와 DBI 라이브러리

$ sudo service collectd restart 
Stopping collectd:           [ OK ] 
Starting collectd:           [ OK ] 
로드해야

도움이 되길 바랍니다

+0

우수 답변, 감사합니다. –

관련 문제