zabbix_4.0部署篇之使用nginx实现web前端

借鉴博客http://blog.chinaunix.net/uid-20164485-id-5830514.html

一.部署基础lnmp环境

a.安装lnmp软件

yum  -y  install  nginx  mariadb-server  mariadb  php-fpm  php-mysql
# systemctl start mariadb.service ##启动数据库
# mysql_secure_installation   ##安全设置数据库
.. .. 根据提示设好数据库管理密码

b. 配置

[root@mysvr1 ~]# vim  /etc/nginx/nginx.conf   
    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /usr/share/nginx/html;
        index       index.php  index.html;  #//支持默认首页index.php
        include   /etc/nginx/default.d/*.conf;
        location  / {
       }
        location ~ \.php$ {  #//支持fastcgi,可参考 /etc/nginx/nginx.conf.default 文件
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;   #//注意修正这一行
        }
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

c. 起服务

[root@mysvr1 ~]# systemctl  restart  nginx  mariadb  php-fpm   #//启动LNMP组件
[root@mysvr1 ~]# systemctl  enable  nginx  mariadb  php-fpm   #//设开机自启

d. 测试

[root@mysvr1 ~]# vim  /usr/share/nginx/html/test.php  #//创建测试网页
<?php
$link = mysql_connect('localhost','root','密码');  #//测试数据库连接
if($link) echo 'Success!!';  #//如果成功,页面显示Success!!
else echo 'Failure';  #//如果失败,页面显示Failure!!
mysql_close();  #//关闭数据库连接
phpinfo();  #//列出PHP环境信息(5.4.16)
?>

++ 从浏览器访问 地址/ ,显示默认页
++ 从浏览器访问 地址/test.php ,显示 Success!! 及PHP环境

二.部署zabbix

官网部署方式官网跳转
本文档使用的4.0版本 ,其他版本按照官网部署即可。

a. Install Zabbix repository

# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
# yum clean all

b. 安装Zabbix server,Web前端,agent

# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent

c. 创建初始数据库

前提:
确保数据库服务器已经启动并运行
在数据库主机上运行以下代码。

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'zabbix';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;

导入初始架构和数据,系统将提示您输入新创建的密码。

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

d. 为Zabbix server配置数据库

编辑配置文件 /etc/zabbix/zabbix_server.conf

DBPassword=password

e. 为Zabbix前端配置PHP

编辑配置文件 /etc/httpd/conf.d/zabbix.conf, uncomment and set the right timezone for you.

# php_value date.timezone Asia/Shanghai

f. 启动Zabbix server和agent进程

启动Zabbix server和agent进程,并为它们设置开机自启:

# systemctl restart zabbix-server zabbix-agent httpd
# systemctl enable zabbix-server zabbix-agent httpd

三.部署nginx-zabbix前端

a. 配置Nginx和PHP

调整nginx设置,使用 /usr/share/zabbix 作为Web目录
++ 增加 fastcgi 调用的缓存设置,否则安装页面在连数据时可能会无法访问
++ 网页提示 File not found,在/var/log/nginx/error.log日志提示upstream sent too big header

# vim  /etc/nginx/nginx.conf
   server {
        listen       80 default_server;
        .. ..
        root         /usr/share/zabbix;   #//设置zabbix套件Web目录
        index       index.php  index.html;  #//支持默认首页index.php
        location  / {
       }
        location ~ \.php$ {  #//支持fastcgi,可参考 /etc/nginx/nginx.conf.default 文件
            fastcgi_buffer_size 128k;  #//增加此行
            fastcgi_buffers 32 32k;  #//增加此行
            # root           html;  #//此行注释掉(用上面的/usr/share/zabbix目录)
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi.conf;
        }
   }
[root@mysvr1 ~]# systemctl  restart  nginx   #//重启nginx服务

b. 调整 php.ini 参数

修改以下配置,vim命令行模式 /键搜索关键字

[root@mysvr1 ~]# vim  /etc/php.ini
.. ..
memory_limit = 128M
post_max_size = 16M
max_input_time = 300
max_execution_time = 300
.. ..
[root@mysvr1 ~]# systemctl  restart  php-fpm   #//重启php-fpm服务

c. 配置、启动zabbix主控端服务

[root@mysvr1 ~]# vim  /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=数据库密码

[root@mysvr1 ~]# systemctl  enable  zabbix-server  --now

d. 配置、启动zabbix被控端服务

++ 如果本机也需要被监控的话
[root@mysvr1 ~]# vim  /etc/zabbix/zabbix_agent.conf
DBName=zabbix
DBUser=zabbix
DBPassword=数据库密码

[root@mysvr1 ~]# systemctl  enable  zabbix-server  --now
[root@mysvr1 ~]# systemctl  enable  zabbix-agent  --now

e. 配置zabbix网页系统

++ 浏览器访问 地址/ ,可以看到zabbix安装页面,根据提示安装
++ 如果报错,请检查前面的配置是否正确

你可能感兴趣的:(nginx,运维,zabbix)