8675645 发表于 2017-9-18 09:49:44

部署zabbix环境的搭建

配置LAMP环境(因为之前已经搭建过了lnmp所以这里就不一一演示了)
也可以yum源安装:
#yum install make mysql-server httpd php mysql-devel gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml unixODBC-devel OpenIPMI-devel libxml2-devel
下载zabbix安装包:
wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.7/zabbix-3.2.7.tar.gz


1、新建一个zabbix账户:useradd zabbix -s /sbin/nologin

2、创建zabbix数据库、并赋给咱必须权限:mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';

flush privileges;

下载zabbix,并且导入数据库,

# cd /usr/local/src/zabbix-2.2.2
# cd database/mysql/
# mysql -uzabbix -pzabbix zabbix < schema.sql
# mysql -uzabbix -pzabbix zabbix < images.sql
# mysql -uzabbix -pzabbix zabbix < data.sql
4、编译安装zabbix_server:# ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi --with-unixodbc --prefix=/usr/local/zabbix
# make && make install

5、编辑nginx.conf支持index.php(假如使用apache的时候就改apache下的配置文件原理一样)
# vim /usr/local/nginx/conf/nginx.conf
server {
      listen       80;
      server_namelocalhost;

      #charset koi8-r;

      #access_loglogs/host.access.logmain;

      location / {
            root   /web;
            indexindex.php index.html index.htm;
      }
………………………………
location ~ \.php$ {###(把location里面的前面注释#去掉后修改成)
            root         /web;   ###(index.php存放的目录)
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_indexindex.php;
            fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
            include      fastcgi_params;
      }
6、修改zabbix文件对应的数据库账号和密码:# vim /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
7、复制启动脚本,并修改相应选项:# cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/
# cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
修改两个配置文件把
# vim /etc/init.d/zabbix_agentd
ZABBIX_BIN="/usr/local/sbin/zabbix_agentd" 改成ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"
# vim /etc/init.d/zabbix_server
ZABBIX_BIN="/usr/local/sbin/zabbix_server"改成ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"

启动:
# /etc/init.d/zabbix_server start
# /etc/init.d/zabbix_agentd start
# chkconfig zabbix_agentd on
# chkconfig zabbix_server on
8、修改php.ini文件支持大小,不然web也没容易报错:# vim /usr/local/php/etc/php.ini
max_execution_time = 300
max_input_time = 300
date.timezone =Asia/Shanghai
post_max_size = 32M
重启nginx使php配置生效

9、复制zabbix的php项目早http目录下,并且给权限:# cd /usr/local/src/zabbix-3.2.7/frontends/
#
# cp -rf php /web
# chown -R apache.apache /web
在这里我是使用nginx+php的所以在php配置文件:vim/usr/local/nginx/conf/nginx.conf修改网页主目录:
location ~ \.php$ {
            root         /web;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_indexindex.php;
            fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
            include      fastcgi_params;
      }

所以php网页目录就要放在/web目录下 以上操作改为nginx实现。


重启服务:
启动php服务:
ps -ef | grep php | awk '{print $2}' | xargs kill-9

想要达到php不会自动挂掉就执行
/usr/local/php/sbin/php-fpm --daemonize -c /usr/local/php/etc/php.ini &
####--daemonize:关闭终端php不会down掉 -c:指定配置文件& :后台运行
启动nginx:
/usr/local/nginx/sbin/nginx -s reload

# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp      0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      50648/zabbix_agentd
tcp      0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      50584/zabbix_server
tcp      0      0 0.0.0.0:9000                0.0.0.0:*                   LISTEN      35148/php-fpm      
tcp      0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      35053/mysqld      
tcp      0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      24389/nginx         
tcp      0      0 0.0.0.0:6000                0.0.0.0:*                   LISTEN      1852/X            
tcp      0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      2327/sshd         
tcp      0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      26396/master      
tcp      0      0 :::6000                     :::*                        LISTEN      1852/X            
tcp      0      0 :::22                     :::*                        LISTEN      2327/sshd         
tcp      0      0 ::1:25                      :::*                        LISTEN      26396/master

端口:80 9000 10050 10051起来了就可以!
10、然后访问web: http://IP/php/index.php默认下一步:11、安装gettext扩展模块(有时候会出现很多模块没安装上网查找一下就ok)面对的问题:
在安装zabbix时碰到如下错误:
PHP gettext extension missing (PHP configuration parameter --with-gettext)

分析可知道在编译安装php时,没有加上--with-gettext


扩展安装gettext时:
1、先进入php源文件中在cd /usr/local/src/php-5.5.38/ext/gettext目录下
2、在执行/usr/local/PHP/bin/phpize
3、./configure –with-php-config=/usr/local/php/bin/php-config
4、make && make install
6、系统缺少gettext-devel工具库,或者已经编译安装了gettext但是在编译php时没找到路径
vim /usr/local/php/etc/php.ini
找到extensions选项,添加如下项:
extension = "gettext.so"
5、重启php,nginx服务

安装成功,登录的账号默认为:Admin,密码为:zabbix:
访问zabbix:




12、agent安装步骤:客户端安装的话不用依赖LAMP环境,直接装上就好

(1)添加账户:
# useradd zabbix -s /sbin/nologin

(2)编译安装zabbix_agent:
# ./configure --with-net-snmp --with-libcurl --enable-agent --prefix=/usr/local/zabbix
# make && make install

(3)设置启动项和修改配置文件:
# cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/
# chmod 700 /etc/init.d/zabbix_agentd
# vim /etc/init.d/zabbix_agentd
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

(4)修改zabbix指向的服务器:
# vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.10.205

# pwd
/var/www/html/zabbix/fonts
上传一个字体:替换
# mv simhei.ttf DejaVuSans.ttf


页: [1]
查看完整版本: 部署zabbix环境的搭建