美文网首页运维的那点事
zabbix从安装到应用(基础篇)

zabbix从安装到应用(基础篇)

作者: 无字天书 | 来源:发表于2019-05-15 09:29 被阅读223次

    参考官方文档

    1,工具准备

    zabbix:http://www.zabbix.com/download_sources

    linux==>CentOS Linux release 7.4.1708 (Core)

    php==> php-5.4.16

    nginx==>nginx-1.12.2

    mariadb==>mariadb-5.5.60  

    2,lnmp环境搭建

    实验前准备

    [root@zabbix101 iso]# yum -y install epel-realease

    [root@zabbix101 iso]# vim /etc/selinux/config

    SELINUX=disabled

    [root@zabbix101 iso]# systemctl stop firewalld

    [root@zabbix101 iso]# systemctl disable firewalld

    [root@zabbix101 iso]#yum  -y install iptables-services

    [root@zabbix101 iso]# iptables -F

    [root@zabbix101 iso]# service iptables save

    1)nginx

    [root@zabbix101 iso]# yum -y install zlib-devel openssl-devel pcre-devel gcc-c++

    [root@zabbix101 iso]# tar -xvf nginx-1.12.2.tar.gz

    [root@zabbix101 iso]# useradd -s /sbin/nologin nginx

    [root@zabbix101 iso]# cd nginx-1.12.2

    [root@zabbix101 nginx-1.12.2]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module

    [root@zabbix101 nginx-1.12.2]#make && make install

    [root@zabbix101 ~]# vim /usr/local/nginx/conf/nginx.conf

    … …

    http{

    … …

    fastcgi_buffers 8 16k;                      //缓存php生成的页面内容,8个16k

    fastcgi_buffer_size 32k;                      //缓存php生产的头部信息

    fastcgi_connect_timeout 300;                 //连接PHP的超时时间

    fastcgi_send_timeout 300;                     //发送请求的超时时间

    fastcgi_read_timeout 300;                        //读取请求的超时时间

    location ~ \.php$ {

                    root           html;

                    fastcgi_pass   127.0.0.1:9000;

                    fastcgi_index  index.php;

                    include        fastcgi.conf;

            }

    … …

    [root@zabbix101 ~]# ln -s /usr/local/nginx/sbin/nginx /sbin/

    [root@zabbix101 ~]# nginx

    [root@zabbix101 ~]# ss -tunlp | grep :80

    tcp    LISTEN    0      128      *:80                    *:*                  users:(("nginx",pid=10245,fd=6),("nginx",pid=10244,fd=6))

    2)php

    [root@zabbix101 ~]# yum -y install php-gettext net-snmp-devel curl-devel libevent-devel php-gd php-xml php-bcmath php-mbstring

    [root@zabbix101 iso]# yum -y install php php-fpm php-mysql

    [root@zabbix101 ~]# vim /etc/php.ini

    date.timezone = Asia/Shanghai                //设置时区

    max_execution_time = 300                    //最大执行时间,秒

    post_max_size = 32M                        //POST数据最大容量

    max_input_time = 300                        //服务器接收数据的时间限制

    memory_limit = 128M                        //内存容量限制

    [root@zabbix101 iso]# systemctl restart php-fpm

    [root@zabbix101 iso]# systemctl enable php-fpm

    [root@zabbix101 ~]# ss -tunlp | grep php-fpm

    tcp    LISTEN    0      128    127.0.0.1:9000                  *:*                  users:(("php-fpm",pid=10353,fd=0),("php-fpm",pid=10352,fd=0),("php-fpm",pid=10351,fd=0),("php-fpm",pid=10350,fd=0),("php-fpm",pid=10349,fd=0),("php-fpm",pid=10347,fd=6))

    3)mariadb

    [root@zabbix101 ~]# yum -y install mariadb mariadb-server mariadb-devel

    [root@zabbix101 ~]# vim /etc/my.cnf

    [mysqld]

    character_set_server=utf8

    [root@zabbix101 ~]# systemctl restart mariadb

    [root@zabbix101 ~]# systemctl enable mariadb

    [root@zabbix101 ~]# ss -tunlp | grep :3306

    tcp    LISTEN    0      50        *:3306                  *:*                  users:(("mysqld",pid=28223,fd=13))

    3,服务端

    1)安装

    [root@zabbix101 iso]# wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/4.0.7/zabbix-4.0.7.tar.gz

    [root@zabbix101 iso]# ls

    zabbix-4.0.5.tar.gz

    [root@zabbix101 iso]# tar -xvf zabbix-4.0.5.tar.gz

    [root@zabbix101 iso]# yum -y install zlib-devel pcre-devel openssl-devel gcc-c++ libxml2 libxml2-devel

    [root@zabbix101 iso]# useradd -s /sbin/nologin zabbix

    [root@zabbix101 zabbix-4.0.5]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/bin/mysql_config --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-net-snmp

    // --enable-server安装部署zabbix服务器端软件

    // --enable-agent安装部署zabbix被监控端软件

    // --enable-proxy安装部署zabbix代理相关软件

    // --with-mysql配置mysql_config路径

    // --with-net-snmp允许zabbix通过snmp协议监控其他设备

    // --with-libcurl安装相关curl库文件,这样zabbix就可以通过curl连接http等服务,测试被监控主机服务的状态

    //自Zabbix 2.2.0起,支持虚拟机监视所需的--with-libcurl和--with-libxml2配置选项。

    [root@zabbix101 zabbix-4.0.5]# make install

    [root@zabbix101 ~]# vim /usr/local/zabbix/etc/zabbix_server.conf

    DBHost=localhost

    //数据库主机,默认该行被注释

    DBName=zabbix

    //设置数据库名称

    DBUser=zabbix

    //设置数据库账户

    DBPassword=zabbix

    //设置数据库密码,默认该行被注释

    LogFile=/tmp/zabbix_server.log    

    //设置日志,仅查看以下即可

    2)初始化数据库

    [root@zabbix101 zabbix-4.0.5]# mysql

    MariaDB [(none)]> create database zabbix character set utf8;

    MariaDB [(none)]> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';

    [root@zabbix101 mysql]# pwd

    /iso/zabbix-4.0.5/database/mysql

    [root@zabbix101 mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql

    [root@zabbix101 mysql]# mysql -uzabbix -pzabbix zabbix < images.sql

    [root@zabbix101 mysql]# mysql -uzabbix -pzabbix zabbix < data.sql

    [root@zabbix101 mysql]# cd /iso/zabbix-4.0.5/frontends/php/

    [root@zabbix101 php]# cp -r * /usr/local/nginx/html/

    [root@zabbix101 php]# chown -R nginx:nginx /usr/local/nginx/html/

    3)启动并访问

    [root@zabbix101 ~]# /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf

    [root@zabbix101 ~]# ss -tunlp | grep :10051

    tcp    LISTEN    0      128      *:10051   .......

    提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_server,

    一定要先使用killall zabbix_server关闭服务后,再重新启动一次。

    [root@zabbix101 ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf

    Server=127.0.0.1,192.168.68.101                  //允许哪些主机监控本机

    ServerActive=127.0.0.1,192.168.68.101               //允许哪些主机通过主动模式监控本机

    Hostname=zabbix_server                        //设置本机主机名

    LogFile=/tmp/zabbix_server.log                    //设置日志文件

    UnsafeUserParameters=1                        //是否允许自定义key

    [root@zabbix101 ~]# /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf

    [root@zabbix101 ~]# ss -tunlp | grep zabbix_agent

    tcp    LISTEN    0      128      *:10050 ......

    提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_agentd,

    一定要先使用killall zabbix_agentd关闭服务后,再重新启动一次。

    浏览器访问http://192.168.68.101/index.php

    下载配置文件到下载放到对应路径下即

    [root@zabbix101 ~]# ls /usr/local/nginx/html/conf/zabbix.conf.php

    /usr/local/nginx/html/conf/zabbix.conf.php

    然后点击下一步如下图

    4,客户端安装

    [root@web50 iso]# yum -y install gcc pcre-devel

    [root@web50 ~]# useradd -s /sbin/nologin zabbix

    [root@web50 iso]# tar -xvf zabbix-4.0.5.tar.gz

    [root@web50 iso]# cd zabbix-4.0.5

    [root@web50 zabbix-4.0.5]# ./configure --enable-agent

    [root@web50 zabbix-4.0.5]# make install

    [root@web50 ~]# vim /usr/local/etc/zabbix_agentd.conf

    Server=127.0.0.1,192.168.68.101                //谁可以监控本机(被动监控模式)

    ServerActive=127.0.0.1,192.168.68.101                  //谁可以监控本机(主动监控模式)

    Hostname=zabbixclient_web50                    //被监控端自己的主机名

    EnableRemoteCommands=1    

    //监控异常后,是否允许服务器远程过来执行命令,如重启某个服务

    UnsafeUserParameters=1                                 //是否允许自定义key监控

    [root@web50 ~]# zabbix_agentd

    [root@web50 ~]# ss -tunlp | grep zabbix_agentd

    tcp    LISTEN    0      128      *:10050 。。。。

    5,添加受监控主机到服务端上

    总结

    本次教程主要分享简单的zabbix搭建与使用,下一篇将和大家分享zabbix从安装到应用(实战篇)

    温馨提示

    zabbix安装配置界面点击next step没反应

    修改/var/lib/php/session/宿主或者添加777权限


    看官福利:


    结束语:

    更多精彩内容持续更新中,关注我,有你更精彩。

    相关文章

      网友评论

        本文标题:zabbix从安装到应用(基础篇)

        本文链接:https://www.haomeiwen.com/subject/gxaraqtx.html