snmp安装zabbix

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了snmp安装zabbix相关的知识,希望对你有一定的参考价值。

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。  zabbix由2部分构成,zabbix server与可选组件zabbix agent。
  zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
  无论安装什么软件程序,最好是安装稳定版,不能只是为了一味追求最新版本,忽略了软件程序的稳定性,我个人的安装习惯是在最新版本的基础上往前推一两个版本,安装它的稳定版。
1.编译安装nginx
1)编译安装pcre,nginx安装需要pcre的支持。

1
2
3
4
5
6
7
8
[[email protected] ~]# mkdir -p /taokey/tools
[[email protected] ~]# cd /taokey/tools/
[[email protected] tools]# yum install -y gcc gcc-c++
[[email protected] tools]# tar -zxf pcre-8.33.tar.gz 
[[email protected] tools]# cd pcre-8.33
[[email protected] pcre-8.33]# ./configure
[[email protected] pcre-8.33]# make && make install
[[email protected] pcre-8.33]# cd ..



2)创建nginx普通用户,下载并解压nginx源码包。

1
2
3
4
5
[[email protected] ~]# useradd nginx -s /sbin/nologin -M
[[email protected] tools]# wget http://nginx.org/download/nginx-1.6.3.tar.gz
[[email protected] tools]# tar -zxf nginx-1.6.3.tar.gz 
[[email protected] tools]# cd nginx-1.6.3
[[email protected] nginx-1.6.3]# yum -y install openssl openssl-devel



3)编译安装nginx,然后启动nginx。

1
2
3
4
5
6
7
8
9
10
11
12
[[email protected] nginx-1.6.3]# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
[[email protected] nginx-1.6.3]# make && make install
[[email protected] nginx-1.6.3]# echo /usr/local/lib >>/etc/ld.so.conf
[[email protected] nginx-1.6.3]# ldconfig 
[[email protected] nginx-1.6.3]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[[email protected] nginx-1.6.3]# /usr/local/nginx/sbin/nginx 
[[email protected] nginx-1.6.3]# ps -ef | grep nginx
root     11456     1  0 14:39 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx    11457 11456  0 14:39 ?        00:00:00 nginx: worker process      
root     11459  1794  0 14:39 pts/1    00:00:00 grep nginx



2.yum安装mysql,启动MySQL。

1
2
3
4
5
6
7
8
[[email protected] ~]# yum install -y mysql-server mysql-devel mysql
[[email protected] ~]# /etc/init.d/mysqld start
[[email protected] ~]# ps -ef | grep mysql
root     11567     1  0 14:41 pts/1    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql    11669 11567  1 14:41 pts/1    00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
root     11693  1794  0 14:42 pts/1    00:00:00 grep mysql
[[email protected] ~]# netstat -anpt | grep 3306
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      11669/mysqld



3.yum安装php

1
2
3
4
5
6
7
8
9
10
11
12
13
[[email protected] ~]# yum install -y php php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt libmcrypt-devel php-fpm php-pecl* 
[[email protected] ~]# sed -i ‘s/^user =.*/user = nginx/g‘ /etc/php-fpm.d/www.conf
[[email protected] ~]# sed -i ‘s/^group =.*/group = nginx/g‘ /etc/php-fpm.d/www.conf
[[email protected] ~]# /etc/init.d/php-fpm start
正在启动 php-fpm:[确定]
[[email protected] ~]# ps -ef | grep php
root     11746     1  0 14:45 ?        00:00:00 php-fpm: master process (/etc/php-fpm.conf)
nginx    11747 11746  0 14:45 ?        00:00:00 php-fpm: pool www            
nginx    11748 11746  0 14:45 ?        00:00:00 php-fpm: pool www            
nginx    11749 11746  0 14:45 ?        00:00:00 php-fpm: pool www            
nginx    11750 11746  0 14:45 ?        00:00:00 php-fpm: pool www            
nginx    11751 11746  0 14:45 ?        00:00:00 php-fpm: pool www            
root     11754  1794  0 14:45 pts/1    00:00:00 grep php



4.配置nginx,结合php环境。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
vi /usr/local/nginx/conf/nginx.conf
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm index.php;
        }
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
            include        fastcgi.conf;
        }
}     
[[email protected] ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[[email protected] ~]# /usr/local/nginx/sbin/nginx -s reload



5.测试一下php环境是否可以正常运行。(测试如图,php环境没有问题)

1
2
3
4
5
[[email protected] ~]# cat > /usr/local/nginx/html/index.php  <<EOF
<?php
phpinfo();
?>
EOF



<ignore_js_op>技术分享 
6.安装zabbix server端软件包。
1)安装相应的库和软件包,并且创建zabbix用户。

1
2
[[email protected] ~]# yum -y install libcurl-devel net-snmp-devel
[[email protected] ~]# useradd zabbix -s /sbin/nologin



2)下载zabbix源码包,编译安装zabbix。

1
2
3
4
[[email protected] tools]# tar -zxf zabbix-2.2.9.tar.gz 
[[email protected] tools]# cd zabbix-2.2.9
[[email protected] zabbix-2.2.9]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl
[[email protected] zabbix-2.2.9]# make install



7.在MySQL中创建zabbix所需数据库,以及账号密码。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[[email protected] zabbix-2.2.9]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
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 zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on zabbix.* to [email protected]‘%‘ identified by ‘zabbix‘;
Query OK, 0 rows affected (0.01 sec)

mysql> delete from mysql.user where user=""; 
Query OK, 2 rows affected (0.00 sec)

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



8.zabbix数据导入创建好的zabbix数据库中。

1
2
3
[[email protected] zabbix-2.2.9]# mysql -uzabbix -pzabbix -h127.0.0.1 zabbix < database/mysql/schema.sql
[[email protected] zabbix-2.2.9]# mysql -uzabbix -pzabbix -h127.0.0.1 zabbix < database/mysql/images.sql
[[email protected] zabbix-2.2.9]# mysql -uzabbix -pzabbix -h127.0.0.1 zabbix < database/mysql/data.sql



9.拷贝zabbix服务端和客户端的启动文件。

1
2
[[email protected] zabbix-2.2.9]# cp misc/init.d/fedora/core/zabbix_server /etc/init.d/
[[email protected] zabbix-2.2.9]# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/



10.修改配置文件及启动文件。

1
2
3
4
5
[[email protected] zabbix-2.2.9]# sed -i ‘s/^DBUser=.*$/DBUser=zabbix/g‘ /usr/local/zabbix/etc/zabbix_server.conf
[[email protected] zabbix-2.2.9]# sed -i ‘s/^.*DBPassword=.*$/DBPassword=zabbix/g‘ /usr/local/zabbix/etc/zabbix_server.conf
[[email protected] zabbix-2.2.9]# sed -i ‘s/^.*DBHost=.*$/DBHost=127.0.0.1/g‘ /usr/local/zabbix/etc/zabbix_server.conf
[[email protected] zabbix-2.2.9]# sed -i ‘s/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g‘ /etc/init.d/zabbix_server
[[email protected] zabbix-2.2.9]# sed -i ‘s/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g‘ /etc/init.d/zabbix_agentd



11.在/etc/services文件中,添加zabbix服务端口。

1
2
3
4
5
6
7
8
9
10
11
[[email protected] zabbix-2.2.9]# 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
[[email protected] zabbix-2.2.9]# tail -4 /etc/services 
zabbix-agent    10050/tcp               #Zabbix Agent
zabbix-agent    10050/udp               #Zabbix Agent
zabbix-trapper  10051/tcp               #Zabbix Trapper
zabbix-trapper  10051/udp               #Zabbix Trapper



12.复制zabbix程序文件端到nginx的指定web目录下,并且设置相应权限。

1
2
[[email protected] zabbix-2.2.9]# cp -ra frontends/php/ /usr/local/nginx/html/zabbix
[[email protected] zabbix-2.2.9]# chown -R nginx.nginx /usr/local/nginx/html/zabbix



13.启动zabbix server和zabix agent。

1
2
3
4
5
6
7
[[email protected] zabbix-2.2.9]# /etc/init.d/zabbix_server start
[[email protected] zabbix-2.2.9]# /etc/init.d/zabbix_agentd start
[iyun[email protected] zabbix-2.2.9]# netstat -anpt | grep 10050
tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      19850/zabbix_agentd 
[[email protected] zabbix-2.2.9]# netstat -anpt | grep 10051
tcp        0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      19786/zabbix_server 
tcp        0      0 127.0.0.1:10051             127.0.0.1:37229             TIME_WAIT   -



14.在浏览器输入:http://192.168.1.40/zabbix/setup.php 安装zabbix server的web界面。
<ignore_js_op>技术分享 

点击Next:


<ignore_js_op>技术分享 

php安装会遇到几个报错,解决方法:
15.修改php配置满足zabbix安装要求。

1
2
3
4
5
[[email protected] zabbix-2.2.9]# sed -i ‘s/^\(.*\)date.timezone =.*$/date.timezone = Asia\/Shanghai/g‘ /etc/php.ini
[[email protected] zabbix-2.2.9]# sed -i ‘s/^\(.*\)post_max_size =.*$/post_max_size = 16M/g‘ /etc/php.ini
[[email protected] zabbix-2.2.9]# sed -i ‘s/^\(.*\)max_execution_time =.*$/max_execution_time = 300/g‘ /etc/php.ini
[[email protected] zabbix-2.2.9]# sed -i ‘s/^\(.*\)max_input_time =.*$/max_input_time = 300/g‘ /etc/php.ini
[[email protected] zabbix-2.2.9]# /etc/init.d/php-fpm restart



修改完之后,然后再重新刷新页面,如图所示:

<ignore_js_op>技术分享 

然后再点击Next,进行下一步:

<ignore_js_op>技术分享 

输入相应的数据库信息,然后测试连接, 没有问题,继续下一步:

<ignore_js_op>技术分享 

此页面,可以设置成默认的Host和Port,然后点击下一步:

<ignore_js_op>技术分享 

继续点击下一步 Next:

<ignore_js_op>技术分享 

安装到这里,说明已经安装完成了,最后点击Finish,完成安装即可。

<ignore_js_op>技术分享 

Zabbix默认的账号admin,默认密码是zabbix,咱们登陆进去。


<ignore_js_op>技术分享 

zabbix2.2.9安装之后语言选项中没有Chinese (zh_CN) 选项,虽然不建议使用这个汉化版本,但是对于有日文选项而没有中文来说。还是有些不爽,好了,修改方式如下:
在zabbix服务端的安装目录下找到/usr/local/nginx/html/zabbix/include/locales.inc.php 把false修改成true,然后保存退出即可。

1
2
[[email protected] zabbix-2.2.9]# vim /usr/local/nginx/html/zabbix/include/locales.inc.php +58
‘zh_CN‘ => array(‘name‘ => _(‘Chinese (zh_CN)‘),        ‘display‘ => true),



此时,刷新页面,就可以找到中文版本。
<ignore_js_op>技术分享 

保存之后,就成为了汉化版本的zabbix页面。

<ignore_js_op>技术分享 

zabbix server安装到此结束,谢谢。

以上是关于snmp安装zabbix的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 7上安装Zabbix(高速安装监控工具Zabbix)

CentOS 7上安装Zabbix(快速安装监控工具Zabbix)

zabbix专题:第十章 zabbix之SNMP方式监控

zabbix-3.2.6之snmp监控(无需安装agent也能监控)

centos6 安装 zabbix 2.4

zabbix安装以及监控