估計你jmx介面沒有配置或者type類型沒有選,網上抄的吧,自己也都了解一下,最好把配置的圖貼出來,不然誰知道你配置是不是正確
B. 裝zabbix時報錯
方法/步驟
yum install zabbix-server-mysql-3.4.9-1.el7.x86_64.rpm
提示Requires: libiksemel.so.3()(64bit)
C. 生產環境中 zabbix yum安裝好 還是 源碼安裝好
1、YUM安裝可以看成是在線安裝的一種方式,只需要yum install 軟體名,系統就自動根據yum源配置文件中的鏡像位置去下載安裝包了,並可以自動分析所需的軟體依賴關系,自動安裝所需的依賴軟體包。此方式適合初學者,簡單方便,不用考慮依賴關系
D. 如何安裝Zabbix
方法:
1.下載zabbix;
2.安裝zabbix所需的組件
#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
3.資料庫創建並導入數據
#tar zxf zabbix 1.8.2.tar.gz
#cd zabbix 1.8.2
#mysql -uroot -p
>create database zabbix;
>grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
>flush privileges;
#mysql -uroot zabbix<create/schema/mysql.sql
#mysql -uroot zabbix<create/data/data.sql
#mysql -uroot zabbix<create/data/images_mysql.sql
//為zabbix創建自己的資料庫,以便zabbix可以把收集到的數據信息存放在那裡調用。
4.編譯安裝
#./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/mysql-5.1.56/bin/mysql_config --with-net-snmp --with-libcurl
//--prefix指定zabbix安裝目錄,--enable-server 支持zabbix伺服器
--enable-agent支持zabbix代理
--enable-proxy 支持zabbix代理伺服器
--with-mysql 使用MySQL客戶端庫可以選擇指定路徑mysql_config
--with-net-snmp 使用net - snmp軟體包,擇性地指定路徑NET - SNMP配置
--with-libcurl 使用curl包
#make && make install
5.添加zabbix服務對應的埠(可以省略,但是官方建議有)
#cat >>/etc/services<<EOF
zabbix-agent 10050/tcp Zabbix Agent
zabbix-agent 10050/udp Zabbix Agent
zabbix-trapper 10051/tcp Zabbix Trapper
zabbix-trapper 10051/udp Zabbix Trapper
EOF
6.拷貝zabbix的配置文件到etc下,web相關文件拷貝到web目錄下
#cd zabbix-1.8.2
#mkdir /etc/zabbix
#cp misc/conf/* etc/zabbix
#cp -r frontends/php /var/www/html/zabbix
修改zabbix連接的資料庫的用戶名和密碼
#vi /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBUDBPassword=zabbix
7.為zabbix的啟動、關閉和重啟的腳本文件做鏈接,方便系統可以找得到
#cd /usr/local/zabbix/bin/
#for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
#cd /usr/local/zabbix/sbin/
#for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
8.把mysql的lib庫文件添加到系統動態庫配置文件中,方便系統可以找到mysql的lib庫。
#echo 「/usr/local/mysql-5.1.56/lib/mysql/」 >>/etc/ld.so.conf
#ldconfig //使上面的操作立即生效
9.將zabbix相關的啟動腳本等文件拷貝的/etc/init.d/下,方便日後對zabbix的啟動關閉操作
#cp misc/init.d/redhat/8.0/zabbix_server /etc/init.d/
#chmod +x /etc/init.d/zabbix_server //賦予可執行許可權
#cp misc/init.d/redhat/8.0/zabbix_agentd /etc/init.d/
#chmod +x /etc/init.d/zabbix_agentd
修改zabbix server和agentd程序目錄的位置:
#vi /etc/init.d/zabbix_server
progdir="/usr/local/zabbix/sbin/"
#vi /etc/init.d/zabbix_agentd
progdir="/usr/local/zabbix/sbin/"
10.添加開機啟動服務
#chkconfig --add zabbix_server
#chkconfig --add zabbix_agentd
#chkconfig --level 345 zabbix_server on
#chkconfig --level 345 zabbix_agentd on
7、修改php相關參數
# vi /etc/php.ini
max_input_time = 600
max_execution_time = 300
date.timezone = Asia/Shanghai
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
重啟apache
#service httpd restart
E. zabbix server 與mysql分離怎麼編譯安裝
首先安裝zabbix的時候不影響mysql 官網提供如何安裝zabbix Centos_6.5 安裝zabbix 2.4版本
F. 如何在ubuntu下編譯安裝zabbix系統
第一部分,php\nginx\mysql組件安裝
1,php-cgi
zabbix的web前端是用php寫成的,需要php來運行
view sourceprint?1 jcwu@ubuntu:~$ sudo apt-get update
2 jcwu@ubuntu:~$ sudo apt-get install php5-cgi
3 jcwu@ubuntu:~$ sudo useradd www #php運行用戶
php-cgi控制腳本
view sourceprint?01 jcwu@ubuntu:~$ cat /etc/init.d/php-fcgi
02 #!/bin/bash
03
04 BIND=127.0.0.1:9000
05 USER=www
06 PHP_FCGI_CHILDREN=15
07 PHP_FCGI_MAX_REQUESTS=1000
08 PHP_CGI=/usr/bin/php-cgi
09 PHP_CGI_NAME=`basename $PHP_CGI`
10 PHP_CGI_ARGS="- USER=$USER PATH=/usr/bin PHP_FCGI_CHILDREN=$PHP_FCGI_CHILDREN PHP_FCGI_MAX_REQUESTS=$PHP_FCGI_MAX_REQUESTS $PHP_CGI -b $BIND"
11 RETVAL=0
12
13 start() {
14 echo -n "Starting PHP FastCGI: "
15 start-stop-daemon --quiet --start --background --chuid "$USER" --exec /usr/bin/env -- $PHP_CGI_ARGS
16 RETVAL=$?
17 echo "$PHP_CGI_NAME."
18 }
19 stop() {
20 echo -n "Stopping PHP FastCGI: "
21 killall -q -w -u $USER $PHP_CGI
22 RETVAL=$?
23 echo "$PHP_CGI_NAME."
24 }
25
26 case "$1" in
27 start)
28 start
29 ;;
30 stop)
31 stop
32 ;;
33 restart)
34 stop
35 start
36 ;;
37 *)
38 echo "Usage: php-fastcgi {start|stop|restart}"
39 exit 1
40 ;;
41 esac
42 exit $RETVAL
43
44 jcwu@ubuntu:~$ sudo update-rc.d php-fcgi defaults #添加至系統啟動項
2,nginx
參考http://wiki.nginx.org/Install
view sourceprint?01 jcwu@ubuntu:~$sudo vi /etc/apt/source.list
02 #在文件尾添加以下2行
03 deb http://nginx.org/packages/ubuntu/ lucid nginx
04 deb-src http://nginx.org/packages/ubuntu/ lucid nginx
05 #############官方文檔中如下#######################################
06 su -s
07 nginx=stable # use nginx=development for latest development version
08 add-apt-repository ppa:nginx/$nginx
09 # add-apt-repository 安裝命令為 apt-get install python-software-properties
10 apt-get update
11 apt-get install nginx
12 #############我的安裝命令########################################
13 jcwu@ubuntu:~$ sudo apt-get update
14 jcwu@ubuntu:~$ sudo apt-get install nginx
設置php-cgi
view sourceprint?1 sudo vi /etc/nginx/conf.d/default.conf
將root html提前到server_name下面
將location /中的index 指令後加上index.php
設置php解析
view sourceprint?01 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
02 #
03 location ~ \.php$ {
04 root html;
05 fastcgi_pass 127.0.0.1:9000;
06 fastcgi_index index.php;
07 #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
08 #fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
09 fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
10 include fastcgi_params;
11 }
測試
view sourceprint?1 sudo vi /usr/share/nginx/html/info.php
2 #添加
3 <!--?php phpinfo(); ?-->
4 #然後reload nginx
5 sudo kill -HUP $(cat /var/run/nginx.pid)
在瀏覽器中打開http://192.168.1.115/info.php
這樣就OK了
3,mysql
用來存儲監控數據,這里可以選很多種db2、mysql、oracle、postgresql、sqlite
view sourceprint?1 jcwu@ubuntu:~$ sudo apt-get install mysql-server
第二部分,zabbix編譯安裝和web前面配置
0-准備工作
view sourceprint?1 #安裝編譯套件
2 sudo apt-get install build-essential
3 #安裝php前端需要的包
4 sudo apt-get install libmysqlclient15-dev php5-gd php5-mysql
5 #安裝zabbix需要的包,snmp\curl\ssl\fping
6 sudo apt-get install snmp libsnmp-dev snmpd libcurl4-openssl-dev fping
1-添加用戶,並添加到admin用戶組
view sourceprint?1 sudo adser zabbix
2 sudo adser zabbix admin
2-獲取zabbix 1.8.11 源碼包,並解壓
view sourceprint?1 cd /usr/src && wget http //prdownloads sourceforge net/zabbix/zabbix-1.8.11.tar.gz?download
2 sudo mv zabbix-1.8.11.tar.gz?download zabbix-1.8.11.tar.gz
3 tar xvf zabbix-1.8.11.tar.gz
3-mysql資料庫初始化
view sourceprint?1 mysql -uroot -p -e"create database zabbix;"
2 mysql -uroot -p -e"grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
3 mysql -D zabbix -uzabbix -pzabbix < zabbix-1.8.11/create/schema/mysql.sql
4 mysql -D zabbix -uzabbix -pzabbix < zabbix-1.8.11/create/data/data.sql
5 mysql -D zabbix -uzabbix -pzabbix < zabbix-1.8.11/create/data/images_mysql.sql
4-編譯安裝
view sourceprint?1 cd zabbix-1.8.11/
2 ./configure --prefix=/usr/local --with-mysql --with-net-snmp \
3 --with-libcurl --enable-server --enable-agent && \
4 make
5 sudo make install
6 #--with-net-snmp是啟用SNMP協議
7 #--with-libcurl是監控web網站用的
8 #--enable-server只可在服務端上使用
9 #其它還有IPMI等,參閱./configure --help
5-系統其它設置
view sourceprint?1 sudo vi /etc/services
2 #添加
3 zabbix_agent 10050/tcp # Zabbix ports
4 zabbix_trap 10051/tcp
6-設置zabbix配置文件目錄
view sourceprint?1 sudo mkdir /etc/zabbix
2 sudo chown -R zabbix.zabbix /etc/zabbix/
3 cp misc/conf/zabbix_* /etc/zabbix/
修改配置文件zabbix_server.conf
view sourceprint?1 vi /etc/zabbix/zabbix_server.conf
搜索DBUser DBPassword這兩個關鍵字,替換為前面mysqlDB中設置的用戶和密碼(這里都是zabbix\zabbix)
7-設置zabbix開機啟動
view sourceprint?1 sudo cp misc/init.d/debian/zabbix-server /etc/init.d
2 sudo cp misc/init.d/debian/zabbix-agent /etc/init.d
3 cd !$
4 sudo chmod 755 zabbix-*
5 sudo update-rc.d zabbix-server defaults
6 sudo update-rc.d zabbix-agent defaults
其實misc/init.d/ubuntu/下面還有2個conf配置文件,但這個扔/etc/init.d里來啟動zabbix會報錯
8-zabbix web界面安裝設置
view sourceprint?1 sudo mkdir /usr/share/nginx/html/zabbix/
2 cd /usr/src/zabbix-1.8.11/frontends/ && sudo cp -r php /usr/share/nginx/html/zabbix
在瀏覽器中打開http://192.168.1.115/zabbix開始web界面的setup
這里有2個重要的地方,一是 zabbix會檢查php的設置
如下圖,圖中標紅的是默認需要修改的參數,php的設置文件為/etc/php5/cgi/php.ini
改完後記得
view sourceprint?1 sudo service php-fcgi restart
二是mysql db的設置
最後,要手動將生成的設置文件zabbix.conf.php上傳到/usr/share/nginx/html/zabbix/conf
gnome終端對rz支持不好,我就不上傳了,而是直接將下載的zabbix.conf.php的內容進行Ctl+C,直接在伺服器上vi zabbix.conf.php然後再Shift+Insert粘貼進去
然後再點幾個Next.就安裝完了
zabbix默認用戶是admin,密碼是zabbix,登陸後一定要修改。
G. ZABBIX在編譯過程中報錯:configure: error: libcurl is not available for static linking
./configure --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix
這是正確的安裝方式
H. 如何查看zabbix是否編譯安裝snmp
配置SNMP監控
使用SNMP來監視設備,需要完成以下步驟
1. 創建主機
創建一個使用SNMP介面的主機(請參考zabbix創建主機),創建主機過程中你可以選擇相應的模板,路由器、交換機這些設備的監控itme,zabbix已經默認自帶了
2. 找出你想監控的SNMP字元串(或者OID)
如果你想獲取SNMP字元串,你可以使用命令snmpwalk來實現,當然在安裝zabbix的時候你需要增加snmp的支持
1
# snmpwalk -v 2c -c public .
2c表示SNMP標准版本,snmp推出了v1,v2,v3版本,你也可以 寫成1,表示使用1版本.上面的命令會獲取到一個SNMP的列表,包含鍵值,默認情況下我們snmp不加密,使用public作為共同體即可,這些列表中 有你需要的一些監控數據.但是線上環境我們不可能獲取所有的鍵值,如果需要獲取特定的數據,例如像獲取交換機第三個埠的入口流量,需要使用IF-MIB::ifInOctets.3字元串,如下:
1
IF-MIB::ifInOctets.3 = Counter32: 3409739121
然後使用snmpget命令來獲取IF-MIB::ifInOctets.3的OID。命令如下
1
# snmpget -v 2c -c public -On 10.62.1.22 IF-MIB::ifInOctets.3
最後一個數字3表示埠3,如果你想監控埠23那就寫上23. 請參考: Dynamic indexes.
會輸出如下值:
1
.1.3.6.1.2.1.2.2.1.10.3 = Counter32: 3472126941
同理,OID的最後一個數字3表示埠號,要特別注意的是3COM的埠號1是101,3是是103,但是cisco還是不變,1號還是數字1.
創建監控項item
回 到zabbix的主機列表中,在你需要配置的主機那行,點擊監控項item,在右上角點擊「create item」,和普通的監控項創建方法差不多,僅有幾個地方不同,type選擇SNMP v2或者v1,v3,一般選擇v2,snmp community使用默認的public,port不填寫默認為161. SNMP OID寫上OID,例如」.1.3.6.1.2.1.2.2.1.10.3"。然後其他內容和其他item type一樣,然後保存即可。最後去看看是否獲取到了數據。
I. 如何查看zabbix編譯安裝的參數
1、進入zabbix的源碼文件夾,比如:/usr/local/src/zabbix-3.2.6
2、查看 config.log,即可發現當初編譯安裝的參數。如下例所示:
This file contains any messages proced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by Zabbix configure 3.2.6, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --enable-ipv6 --with-net-snmp --with-libcurl --enable-smtp
## --------- ##
## Platform. ##
## --------- ##
hostname = hostname.domain
uname -m = x86_64
uname -r = 2.6.32-696.3.2.el6.x86_64
uname -s = Linux
uname -v = #1 SMP Tue Jun 20 01:26:55 UTC 2017
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = x86_64