zoukankan      html  css  js  c++  java
  • Zabbix安装和配置

    前言:最近一直忙着监控系统的事,现在最大的感受是,环境搭建不是最难的,难的是后期的怎么去监控,怎么利用监控系统把众多服务器监控器起来,怎么开发脚本和Zabbix配合去监控上层服务,如中间件,数据库,JVM等;这些是后话,不多说了,下面是Zabbix 3.2.4的部署方法,做一下简单总结。

    这里使用C/S架构:

    环境:

    服务器软件:Linux(RED HAT)6.5、Nginx 1.10.3、PHP 5.6.29、Mysql 5.5.53

    应用软件:Zabbix 3.2.4

    或者使用(Linux+Apache+PHP+Mysql)可换成其他数据库,Zabbix支持众多数据库,大家可以到官方网站去查询。

    1 Mysql部署

    这里使用mysql-5.5.53 glibc格式安装

    1.1 创建用户

    # groupadd -r -g mysql

    # useradd -g mysql -M -r mysql

    1.2 创建数据目录

    # mkdir -pv /mydata/data

    # chown -R mysql.mysql /mydata/data/

    1.3 安装并初始化

    # tar -xf mysql-5.5.53-linux2.6-x86_64.tar.gz -C /usr/local/

    # cd /usr/local/

    # ln -sv mysql-5.7.15-linux-glibc2.5-x86_64/ mysql

    # cd mysql

    # chown -R mysql.mysql .

    # scripts/mysql_install_db --user=mysql --datadir=/mydata/data

    # chown -R root  .

    1.4为mysql提供主配置文件

    # cd /usr/local/mysql

    # cp support-files/my-large.cnf /etc/my.cnf

    添加如下行指定mysql数据文件的存放位置:

    datadir = /mydata/data

    1.5为mysql提供sysv服务脚本

    # cd /usr/local/mysql

    # cp support-files/mysql.server  /etc/rc.d/init.d/mysqld

    # chmod +x /etc/rc.d/init.d/mysqld

    添加至服务列表:

    # chkconfig --add mysqld

    # chkconfig mysqld on

    而后就可以启动服务测试使用了。

    1.6设置root密码

    设置root密码:

    # ./bin/mysqladmin -u root password 'new-password'

    2 Zabbix部署

    2.1 编译安装

    # yum install cc gcc –y

    # yum insatll libxml2-devel.x86_64 –y

    # yum install net-snmp-devel.x86_64 -y

    # tar xf zabbix-3.2.4.tar.gz

    # cd zabbix-3.2.4

    configure:

    ./configure --prefix=/usr/local/zabbix-3.2.4/

    --enable-server

    --enable-agent

    --with-mysql

    --with-net-snmp

    --with-libcurl

    --with-libxml2

    --enable-proxy

    --enable-java

    根据情况,安装缺少的开发库。

    编译安装:

    # make install

    2.2 创建zabbix用户

    # groupadd –r zabbix

    # useradd -g zabbix –r zabbix

    2.3 初始化zabbix数据库

    zabbix server与 proxy需要数据库agent不需要。尤其要注意的是 proxy只需要导入一个sql 文件而server一共要导入3个sql文件。

    # mysql -uroot –pzabbix

    mysql> create database zabbix default charset utf8;

    新建用户:

    mysql> CREATE USER 'zabbix'@'127.0.0.1' IDENTIFIED BY 'zabbix';

    mysql> GRANT all privileges ON zabbix.* TO 'zabbix'@'127.0.0.1' WITH GRANT OPTION;

    mysql> flush privileges;

    mysql> quit;

    # mysql -uzabbix –pzabbix zabbix < database/mysql/schema.sql

    创建数据库请别忘记加 default charset utf8

    如果你仅仅是初始化 proxy 的数据库,那么够了。如果初始化 server,那么接着导入下面两个 sql

    # mysql -uzabbix -pzabbix zabbix < database/mysql/images.sql

    # mysql -uzabbix -pzabbix zabbix < database/mysql/data.sql

    2.4 配置zabbix_server

    配置zabbix_server配置文件,zabbix 源码目录下

    # mkdir /etc/zabbix

    # cp config/zabbix_server.conf /etc/zabbix/

    # vim /etc/zabbix/zabbix_server.conf

    ListenPort=10051

    DBHost=127.0.0.1

    DBName=zabbix

    DBUser=zabbix

    DBPassword= zabbix

    DBPort=3306

    2.5 启动服务

    # /usr/local/zabbix-3.2.4/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf

    默认端口 10051

    3 PHP部署

    3.1 安装依赖包

    yum install gd-devel libjpeg-devel libxml2-devel bzip2-devel libcurl-devel –y

    yum install libpng-devel.x86_64 –y

    yum install freetype-devel.x86_64 -y

    3.2 编译安装

    # yum install libxml2 -y

    # tar -xf php-5.6.29.tar.gz

    # cd php-5.6.29

    # ./configure --prefix=/usr/local/php-5.6.29

    --with-config-file-path=/usr/local/php-5.6.29/etc

    --with-bz2

    --with-curl

    --enable-ftp

    --enable-sockets

    --disable-ipv6

    --with-openssl

    --with-gd

    --with-jpeg-dir=/usr/local

    --with-png-dir=/usr/local

    --with-freetype-dir=/usr/local

    --enable-gd-native-ttf

    --with-iconv-dir=/usr/local

    --enable-mbstring

    --enable-calendar

    --with-gettext

    --with-libxml-dir=/usr/local

    --with-zlib

    --with-pdo-mysql=mysqlnd

    --with-mysqli=mysqlnd

    --with-mysql=mysqlnd --enable-dom

    --enable-xml

    --enable-fpm

    --with-libdir=lib64

    --enable-bcmath

    编译安装:

    make

    make install

    3.3 配置php

    # cp /usr/local/php-5.6.29/etc/php.ini-production /usr/local/php-5.6.29/etc/php.ini

    # cp /usr/local/php-5.6.29/etc/php-fpm.conf.default /usr/local/php-5.6.29/etc/php-fpm.conf

    PHP 配置参数

    打开 php.ini 配置文件,修改如下参数为如下值,否则 zabbix 安装不了。

    max_execution_time = 300

    memory_limit = 128M

    post_max_size = 16M

    upload_max_filesize = 2M

    max_input_time = 300

    date.timezone = PRC

    3.4 启动服务

    # /usr/local/php-5.6.29/sbin/php-fpm

    查看是否启动:

    # netstat -lnt | grep 9000

    tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN

    4 Nginx部署

    4.1 解决依赖关系

    yum -y install pcre-devel.x86_64

    yum -y install openssl-devel.x86_64

    4.2 创建nginx用户

    添加用户nginx,实现以之运行nginx服务进程
    # groupadd -r nginx
    # useradd -g nginx -r nginx

    4.3 编译和安装

    # tar xf nginx-1.10.3.tar.gz

    # cd nginx-1.10.3

    根据需求,需要哪些模块,选择模块去编译

    ./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre --with-file-aio

    # make

    # make install

    4.4 配置nginx

    # vim /etc/nginx/nginx.conf

    server {

    listen 80;

    server_name zabbix.com;

    index index.html index.php index.html;

    root /var/www/zabbix.com;

    location /

    {

    try_files $uri $uri/ /index.php?$args;

    }

    location ~ ^(.+.php)(.*)$ {

    fastcgi_split_path_info ^(.+.php)(.*)$;

    include fastcgi.conf;

    fastcgi_pass 127.0.0.1:9000;

    fastcgi_index index.php;

    fastcgi_param PATH_INFO $fastcgi_path_info;

    }

    }

    4.5 启动服务

    /usr/sbin/nginx

    5 在线配置Zabbix

    5.1 访问配置页面

    拷贝前端文件:

    # mkdir -pv /var/www/zabbix.com/zabbix

    # cp –rf ./zabbix-3.2.4/frontends/* /var/www/zabbix.com/zabbix/

    # chown -R zabbix.zabbix /var/www/zabbix.com

    浏览器打开 http://zabbix.com/zabbix

    欢迎界面:

     

    5.2 PHP配置需求

     

    出现上述错误解决方法:找到CFrontendSetup.php添加$current = -1;

    /include/classes/setup/CFrontendSetup.php

     

     

    5.3 Mysql配置

     

    5.4 Zabbix服务器详情信息

     

    5.5 Zabbix安装前信息列表

     

    5.6 安装完成

     

    5.7 登录系统

     

    默认:admin zabbix

    修改语言为中文,乱码问题解决方法:

    拷贝windows下C:WindowsFonts simkai.ttf到zabbix站点目录fonts下

    修改include/defines.inc.php文件:

    define('ZBX_FONT_NAME', 'DejaVuSans');后的结果:

    define('ZBX_FONT_NAME', 'simkai');

    修改define('ZBX_GRAPH_FONT_NAME',          'DejaVuSans');后的结果:

    define('ZBX_GRAPH_FONT_NAME',           'simkai');

    登陆后的界面如下:

     

     总结:环境搭建时,注意按照自己业务的需求去编译软件,可以选择不同的web服务器或数据库去搭建;

        被监控服务器Zabbix-agentd安装和配置这里不再赘述,使用rpm包安装即可;

        上述文档中没有配置sysV风格的服务脚本,也可以自己编写或寻找服务器启动的脚本;

        如果被监控服务器数量较多,服务器分布在不同的地区,可以选择分布式监控。

  • 相关阅读:
    ubuntu下安装配置apache2(含虚拟主机配置)
    ubuntu安装软件包apt-get和dpkg方法
    python日期,时间函数
    python多线程
    截取utf8中文字符串
    python解析json
    sqlite读写
    lambda,map,filter,reduce
    pyinstaller生成exe可执行程序
    对象练习
  • 原文地址:https://www.cnblogs.com/jjzd/p/6617690.html
Copyright © 2011-2022 走看看