澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

澳门新浦京娱乐场网站:源码安装和配置zabbix,

Zabbix是什么

Zabbix 是由Alexei Vladishev创建,目前由Zabbix SIA在持续开发和支持。

Zabbix 是一个企业级的分布式开源监控方案。

Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。

Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如此。

Zabbix是免费的。Zabbix是根据GPL通用公共许可证第2版编写和发行的。这意味着它的源代码都是免费发行的,可供公众任意使用。

以上是zabbix官方文档的原文介绍。

更多zabbix的特性,请参考zabbix的官网。

官方文档,3.4版本的文档已经有中文版本了。

下面是CentOS 7 LNMP zabbix 3.0 LST版演示

为什么我要选择zabbix 3.0 LST这个比较旧的版本,而不是最新版本。因为这个是LST(Long-Term Support)版本,即长期支持版本。相对来说,支持的时间比较长,也比较稳定。现在最新的版本已经是3.4了。

RedHat 6.2 配置 Zabbix

Zabbix服务器端安装

1.搭建本地YUM源。

# yum -y install httpd php php-mysql mysql-server mysql-client curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath zlib-devel mysql-devel glibc-devel gcc automake libidn-devel openssl-devel net-snmp-devel rpm-devel OpenIPMI-devel php-mbstring

 2.添加用户
[[email protected] src]# useradd zabbix
 [[email protected] src]# passwd zabbix

 3.配置zabbix的MYSQL数据库
#service mysqld start
 [[email protected] src]# mysql -u root -p

 mysql> create database zabbix;
 Query OK, 1 row affected (0.02 sec)
 mysql> grant all on zabbix.* to [email protected] identified by 'zabbix';
 Query OK, 0 rows affected (0.08 sec)
 mysql> quit

解压下的zabbix的源码包
#tar zxvf zabbix-1.8.13.tar.gz
 #cd zabbix-1.8.13
 #mysql -u root zabbix < create/schema/mysql.sql
 #mysql -u root zabbix < create/data/data.sql
 #mysql -u root zabbix < create/data/images_mysql.sql

 4.安装
#./configure -prefix=/opt/zabbix --enable-server --with-mysql --with-net-snmp --with-jabber=/usr/local/ --with-libcurl --with-openipmi --enable-agent

可能会报jabber相关的错误
 解决:安装iksemel。
#wget
 #tar zxvf iksemel-1.4.tar.gz
 #cd iksemel-1.4
 #./configure
 #make
 #make install

再次执行
#./configure -prefix=/opt/zabbix --enable-server --with-mysql --with-net-snmp --with-jabber=/usr/local/ --with-libcurl --with-openipmi --enable-agent

 #make install

安装成功会有提示

5.修改/etc/services文件
# cat >> /etc/services << EOF
 zabbix-trapper 10051/tcp Zabbix Trapper
 zabbix-trapper 10051/udp Zabbix Trapper
 EOF

 6.配置zabbix
 #cd zabbix-1.8.13
 6.1
 #cp misc/init.d/RedHat/zabbix_server_ctl /etc/init.d/zabbix_server
 # mkdir /etc/zabbix
 # cp misc/conf/* /etc/zabbix/
 # vi /etc/zabbix/zabbix_server.conf 
 DBName=zabbix
 DBUser=zabbix
 DBPassword=zabbix

 6.2复制PHP的WEB应用
# mkdir /var/www/html/zabbix
 # cp -r frontends/php/* /var/www/html/zabbix

 6.3修改/etc/zabbix/zabbix_server.conf的
PidFile=
与/etc/init.d/zabbix_server 里的变量
PIDFILE=
相互一致,注意保存目录的权限问题,才能生成pid文件,否则不能正常start,stop,restart服务。

6.4添加到启动服务:
 编辑/etc/init.d/zabbix_server文件,在文件头部的#!/bin/sh行下添加如下两行:
#chkconfig: 35 95 95
 #description:zabbix server
执行
 #chkconfig --add zabbix_server

 7.启动 Zabbix Server
 #service zabbix_server start

启动时可能报错:
libiksemel.so.3: cannot open shared object file: No such file or directory

解决:
#updatedb
 #locate libiksemel.so.3
 #ldd zabbix_server

 8.访问 进行配置页面,一步步走。最后zabbix会给一个配置文件,把配置文件上传zabbix的WEB应用的conf目录。即可。

 可能出现问题。
php-mbstring 不OK

解决:安装
#yum install php-mbstring

 9. 的登录用户名密码是admin/zabbix

 

客户端的安装
 一、直接下载agent包安装过程
zabbix_agents_1.8.5.linux2_6.amd64.tar.gz

 1.
 #groupadd zabbix
 #useradd zabbix -g zabbix

 2.
 #mkdir  /usr/local/zabbix/
 #tar -zxvf zabbix_agents_1.8.5.linux2_6.amd64.tar.gz -C /usr/local/zabbix/

或下载源码包,解压后,执行
#./configure --prefix=/usr/local/zabbix --enable-agent
 #make
 #make install

 

 3.配置zabbix
 * 服务端口定义:
 编辑 /etc/services,在后面追加:
#cat >> /etc/services << EOF
 zabbix-agent 10050/tcp Zabbix Agent
 zabbix-agent 10050/udp Zabbix Agent
澳门新浦京娱乐场网站:源码安装和配置zabbix,源码安装。 EOF

 * 复制配置文件:
#mkdir /etc/zabbix
从zabbix Server上拷贝一份zabbix.agentd.conf

 * 安装启动脚本
#下载并拷贝启动脚本zabbix_agentd到/etc/init.d目录下
#chmod a x /etc/init.d/zabbix_agentd
 * 修改 /etc/init.d/zabbix_agentd 变量定义:
BASEDIR=/usr/local/zabbix

 *修改/etc/zabbix/zabbix.agentd.conf的
PidFile=
与/etc/init.d/zabbix_agentd 里的变量
PIDFILE=
相互一致,注意保存目录的权限问题,才能生成pid文件,否则不能正常start,stop,restart服务。

* 添加到启动服务:
 编辑/etc/init.d/zabbix_agentd文件,在文件头部的#!/bin/sh行下添加如下两行:
#chkconfig: 35 95 95
 #description:zabbix Agent server
执行
 #chkconfig --add zabbix_agentd

 * 启动 Zabbix Agentd
 /etc/init.d/zabbix_agentd start

一些Zabbix相关教程集合:

安装部署分布式监控系统Zabbix 2.06

《安装部署分布式监控系统Zabbix 2.06》

CentOS 6.3下Zabbix安装部署

Zabbix分布式监控系统实践

CentOS 6.3下Zabbix监控apache server-status

CentOS 6.3下Zabbix监控MySQL数据库参数

ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里

本文永久更新链接地址:

6.2 配置 Zabbix Zabbix服务器端安装 1.搭建本地YUM源。 # yum -y install httpd php php-mysql mysql-server mysql-client curl curl-devel net-snmp net-snmp-devel per...

Zabbix监控部署方案

参考:

  1. Zabbix系统部署及使用
  2. zabbix的配置
  3. [Zabbix专区] 关于zabbix 3.4.1 安装手册 for CentOS 7.4

0. 环境

zabbix server端: 192.168.4.243,主机名:L3;一般server端也会安装zabbix agent,因为zabbixe server本身使用的mysql也需要被监控。
zabbix agent端(被监控的主机): 192.168.4.242,主机名:L2
zabbix server站点目录:/data/website/zabbix/

目的:

1. 前提

  1. 安装
    mysql, php, nginx 或 apache
  2. 关闭iptables 和 selinux

1. 安装mysql或mariadb

(略)

搭建数据中心监控环境

2. 安装依赖

  • 安装 开发工具包
    yum groupinstall 'Development Tools'
  • 安装 基本依赖包
    yum install net-snmp-devel libssh2-devel OpenIPMI-devel curl-devel
  • 安装 fping
    yum install fping

2. 安装Nginx

下载,解压

cd /usr/local/src
wget http://nginx.org/download/nginx-1.9.15.tar.gz 
tar -zxvf nginx-1.9.15.tar.gz 

安装依赖,编译安装

yum -y install mysql-devel
cd nginx-1.9.15
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-pcre

make && make install

创建启动脚本,并把附件脚本放到 /etc/init.d/ 下

vim /etc/init.d/nginx

#!/bin/sh
#
# nginx - this script starts and stops the nginx daemin
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse 
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: /usr/local/nginx/logs/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
lockfile=/var/lock/subsys/nginx
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
echo -n $"Starting $prog: "
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $"Stopping $prog: "
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
start
}
reload() {
configtest || return $?
echo -n $"Reloading $prog: "
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case "$1" in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac

修改nginx,支持php

vim  /usr/local/nginx/conf/nginx.conf

找到并修改以下代码

location / {
            root   /data/website/zabbix;  #根据网站目录设置
            index  index.php;
        }

location ~ .php$ {
           root           html;
           fastcgi_pass   127.0.0.1:9000;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  /data/website/zabbix$fastcgi_script_name;
           include        fastcgi_params;
       }

以上的代码由server {}包含的,要把server及一对{}的注释去掉,注意对应的关系。

启动

chmod 777 /etc/init.d/nginx
chkconfig nginx on
service nginx start

初始化系统自动话脚本init.sh

3. 创建用户 和 用户组

  • 创建用户组
    groupadd zabbix
  • 创建用户
    useradd zabbix -g zabbix -s /sbin/nologin

3. 安装PHP

安装依赖包

yum -y install beecrypt beecry-devel curl curl-devel freetype 
freetype-devel fontconfig fontconfig-devel gettext gettext-devel 
ImageMagick ImageMagick-devel mingw32-iconv.noarch libmcrypt 
libmcrypt-devel libpng libpng-devel libxml2 libxml2-devel libxslt 
libxslt-devel mhash mhash-devel mcrypt zlib zlib-devel gd gd-devel 
libjpeg libjpeg-devel pcre pcre-devel openldap openldap-devel

下载,解压

cd /usr/local/src
wget http://cn2.php.net/distributions/php-7.1.8.tar.bz2
tar -jxvf php-7.1.8.tar.bz2

编译

cd php-7.1.8/
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc 
--with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --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 --enable-dom --enable-xml 
--enable-fpm --with-libdir=lib64 --enable-bcmath --with-ldap

make && make install

配置php

cp /usr/local/src/php-7.1.8/php.ini-production  /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default   /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default   /usr/local/php/etc/php-fpm.d/www.conf

启动

cp /usr/local/src/php-7.1.8/sapi/fpm/init.d.php-fpm   /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
chkconfig php-fpm on
service php-fpm start

创建zabbix server的站点

mkdir -p /data/website/zabbix
chmod  w /data/website/zabbix
vim /data/website/zabbix/index-test.php

内容如下:

<?php phpinfo();?>

重载nginx

service nginx reload

这时,在页面上面访问 有PHP相关信息说明配置已搞定。
也可以/usr/local/php/sbin/php-fpm -t --测试php运行状态

LAMP环境部署

4. 安装zabbix-server

  1. 下载源码(from 官网)

    • 3.4.2下载链接(后面可能会失效):
      https://ncu.dl.sourceforge.net/project/zabbix/ZABBIX Latest Stable/3.4.2/zabbix-3.4.2.tar.gz
  2. 安装

    1. 解压并进入源码
      tar -zxvf zabbix-3.4.2.tar.gz && cd zabbix-3.4.2
    2. configure
      • 脚本:
        ./configure --prefix=/opt/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-libcurl --with-net-snmp --with-openipmi --sysconfdir=/etc/zabbix
      • 说明:
        1. 安装目录在/opt/zabbix
        2. 开启server 和 agent
        3. 设置mysql的位置(此处需要查找本机mysql-config的位置,前提已安装mysql)
        4. 配置文件位置:/etc/zabbix
    3. make 和 make install
      sudo make -j && sudo make install
  3. 配置

    1. 配置数据库
      1. 数据库创建 创建用户 授权
        1. 命令行连上数据库
        2. 创建数据库
          create database zabbix charset=utf8;
        3. 创建数据库用户
          create user zabbix identified by password('zabbix');
        4. 对用户进行授权
          grant all on zabbix.* to zabbix;
        5. 刷新权限
          flush privileges;
      2. 导入zabbix自带的.sql文件
        1. 进入zabbix源码目录
        2. 执行
          mysql -uroot -p zabbix < database/mysql/schema.sql
          mysql -uroot -p zabbix < database/mysql/images.sql
          mysql -uroot -p zabbix < database/mysql/data.sql
    2. 为zabbix添加监听端口

      1. 编辑/etc/services
        sudo vim /etc/services
      2. 添加

        zabbix-trapper 10051/tcp Zabbix Trapper
        zabbix-trapper 10051/udp Zabbix Trapper
        zabbix-agent 10050/tcp Zabbix Agent
        zabbix-agent 10050/udp Zabbix Agent
        
    3. 配置文件

      1. 备份原有配置文件
        cd /etc/zabbix && cp zabbix_server.conf zabbix_server.conf.default
      2. 编辑配置文件

        1. 删除全部内容,并填入下列内容

          # 数据库配置部分
          DBHost=localhost
          DBName=zabbix
          DBUser=zabbix
          DBPassword=zabbixpw
          # 数据库所在的socket文件
          DBSocket=/tmp/mysql.sock
          # 默认配置ok
          StartDBSyncers=12
          SenderFrequency=30
          DebugLevel=2
          Timeout=5
          PidFile=/var/tmp/zabbix_server.pid
          # 日志所在位置
          LogFile=/data/logs/zabbix/zabbix_server.log
          LogFileSize=10
          HistoryCacheSize=20M
          LogSlowQueries=3
          # 其他脚本所在位置
          AlertScriptsPath=/etc/zabbix/alert
          ExternalScripts=/etc/zabbix/externalscripts
          FpingLocation=/usr/sbin/fping
          
      3. 添加zabbix启动管理

        1. 进入/etc/init.d
        2. 编辑文件:
          sudo vim zabbix_server_ctl
        3. 填充内容

          #!/bin/sh
          #chkconfig:2345 90 80 
          #description:Zabbix Server
          
          . /etc/rc.d/init.d/functions
          
          BASEDIR=/opt/zabbix
          PIDFILE=/var/tmp/zabbix_server.pid
          ZABBIX_SERVER=$BASEDIR/sbin/zabbix_server
          RETVAL=0
          
          start()
          {
              echo -n $"Starting Zabbix Server: "
              daemon --pidfile=$PIDFILE $ZABBIX_SERVER
              RETVAL=$?
              echo
              [ $RETVAL = 0 ]
              return $RETVAL
          }
          
          stop()
          {
              echo -n $"Stopping Zabbix Server: "
              killproc zabbix_server
              RETVAL=$?
              echo
              [ $RETVAL = 0 ] && rm -f $PIDFILE
          }
          
          case "$1" in
            start)
                  start
                  ;;
            stop)
                  stop
                  ;;
            status)
                  status -p $PIDFILE $ZABBIX_SERVER
                  RETVAL=$?
                  ;;
            restart)
                  stop
                  start
                  ;;
            *)
                  echo $"Usage: service zabbix_server_ctl {start|stop|restart|status}"
                  exit 1
          esac
          
          exit $RETVAL
          
        4. 添加权限
          sudo chmod a x zabbix_server_ctl

        5. 修改文件夹权限
          sudo chown -R zabbix: /etc/zabbix
          sudo chown -R zabbix: /opt/zabbix
          sudo chown -R zabbix: /data/logs/zabbix
        6. 添加开机启动
          chkconfig --add zabbix_server_ctl
          chkconfig zabbix_server_ctl on
        7. 启动
          sudo service zabbix_server_ctl start
      4. web - frontend - 前端管理页面添加

        1. 进入源码根目录
        2. 拷贝前端代码,并进入拷贝后的源码目录
          sudo cp -rf frontends/php /data/www/zabbix && cd /data/www/zabbix
        3. 修改数据库配置文件
          1. 拷贝配置文件
            sudo cp conf/zabbix.conf.php.example conf/zabbix.conf.php
          2. 修改配置文件中数据库 以及 zabbix_server 相应的配置
        4. 修改文件夹权限
          sudo chown -R zabbix: /data/www/zabbix
        5. 配置nginx

          1. 配置内容参考:

            server {
                listen 80;
                server_name zabbix.dev;
                root '/data/www/zabbix';
                index index.php index.html index.htm;
            
                location / {
                                try_files $uri $uri/ /index.php?$query_string;
                }
            
                # 支持php
                include enable-php.conf;
            }
            
          2. 检查并重启nginx
            sudo nginx -t
            sudo nginx -s reload

          3. 浏览器可访问 zabbix.dev(前提配置了该域名的解析),如若发现
      5. 说明:
        1. 默认管理员用户名、密码
          admin 123456
        2. 在Status of Zabbix栏里,看到 如下文字即是成功
          Zabbix server is running Yes localhost:10051

4.安装zabbix server

官方安装文档:

下载,解压

cd /usr/local/src
wget --no-check-certificate https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX Latest Stable/3.0.10/zabbix-3.0.10.tar.gz
tar -zxvf zabbix-3.0.10.tar.gz 

编译

yum install -y net-snmp-devel curl-devel
cd zabbix-3.0.10
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2


make install

根据官方文档,加了--enable-agent参数,会把zabbix_get和zabbix_sender都安装。
Command-line utilities zabbix_get and zabbix_sender are compiled if --enable-agent option is used.

所以如果在被监控主机(客户端)上安装agent编译为:./configure --prefix=/usr/local/zabbix --enable-agent
客户端安装agent也需要建立zabbix用户组和用户。
由于server端也要监控,所以192.168.4.243也安装了zabbix agent。

建立zabbix用户组和用户

groupadd zabbix
useradd -g zabbix zabbix

登录mysql账户,创建zabbix数据库

mysql -uroot -p

官网文档创建数据库时指定了排序规则utf8_bin,这里不使用

mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to ‘zabbix’@‘localhost’ identified by 'zabbix123';
mysql> quit
cd /usr/local/src/zabbix-3.0.10/database/mysql/
mysql -uzabbix -pzabbix123 -Dzabbix < schema.sql
mysql -uzabbix -pzabbix123 -Dzabbix < images.sql
mysql -uzabbix -pzabbix123 -Dzabbix < data.sql

把zabbix server的前端页面复制到zabbix站点下

cp -rp /usr/local/src/zabbix-3.0.10/frontends/php/*   /data/website/zabbix
chown -R zabbix:zabbix zabbix/

创建zabbix的data文件夹(与mysql的data文件类似,用来存放log和pid文件)

mkdir -p  /data/zabbix
chown -R zabbix:zabbix  /data/zabbix

配置zabbix server

vim /usr/local/zabbix/etc/zabbix_server.conf
# 配置以下内容:
LogFile=/data/zabbix/zabbix_server.log
PidFile=/data/zabbix/zabbix_server.pid
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix123
DBPort=3306
Timeout=4
LogSlowQueries=3000

检查

egrep -v '^#|^$'  /usr/local/zabbix/etc/zabbix_server.conf

配置zabbix agent

vim /usr/local/zabbix/etc/zabbix_agentd.conf
# 配置以下内容:
PidFile=/data/zabbix/zabbix_agentd.pid
LogFile=/data/zabbix/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=127.0.0.1
Timeout=10

检查

egrep -v '^#|^$'  /usr/local/zabbix/etc/zabbix_agentd.conf

复制启动脚本到/etc/init.d/下

cp /usr/local/src/zabbix-3.0.10/misc/init.d/tru64/*    /etc/init.d/

修改启动脚本

vim /etc/init.d/zabbix_server

源码安装需要在 #!/bin/sh 后加入如下两行注释,注意要行前要加“#”,否则chkconfig会显示不支持

# chkconfig: - 95 95
# description: Zabbix Server
DAEMON=/usr/local/zabbix/sbin/zabbix_server 

vim /etc/init.d/zabbix_agentd

源码安装需要在 #!/bin/sh 后加入如下两行注释,注意要行前要加“#”,否则chkconfig会显示不支持

# chkconfig: - 86 14
# Description: Zabbix agent
DAEMON=/usr/local/zabbix/sbin/zabbix_agentd

修改为可执行

chmod a x /etc/init.d/zabbix_server
chmod a x /etc/init.d/zabbix_agentd 

启动,server默认端口10051;agent默认端口10050

service zabbix_server start
service zabbix_agentd  start

检查
ps aux | grep zabbix查看有没有进程。
ls /data/zabbix/查看log和pid文件有没有生成。
vim /data/zabbix/zabbix_server.pid进程号是否一致。
检查 tail -f zabbix_server.log 启动日志有没有正常启动或报错。
同理,检查agent。

加入开机自启动

chkconfig --level 2345 zabbix_server on
chkconfig --level 2345 zabbix_agentd on 

安装编译环境,使用一键安装脚本安装lamp或lnmp

5. 安装zabbix-agent

  • 说明:
    1. 安装过程参考 zabbix-server
  • 不同点:

    1. 无需配置 网站 和 mysql那部分,只需要配置 zabbix_server那部分
    2. zabbix_server.conf 换成 zabbix_agentd.conf,且内容填充为:

      # 本机ip
      Server=192.168.33.30
      Hostname=centos
      BufferSize=1024
      Timeout=5
      StartAgents=3
      DebugLevel=2
      PidFile=/var/tmp/zabbix_agentd.pid
      LogFile=/data/logs/zabbix/zabbix_agentd.log
      LogFileSize=10
      EnableRemoteCommands=1
      Include=/etc/zabbix/zabbix_command.conf
      
    3. zabbix_server_ctl 换成 zabbix_agentd_ctl,且内容填充为:

      #!/bin/sh
      #chkconfig:2345 90 90
      #description:Zabbix Agentd
      
      . /etc/rc.d/init.d/functions
      
      BASEDIR=/opt/zabbix
      PIDFILE=/var/tmp/zabbix_agentd.pid
      ZABBIX_AGENTD=$BASEDIR/sbin/zabbix_agentd
      RETVAL=0
      
      start()
      {
          echo -n $"Starting Zabbix Agentd: "
          daemon --pidfile=$PIDFILE $ZABBIX_AGENTD
          RETVAL=$?
          echo
          [ $RETVAL = 0 ]
          return $RETVAL
      }
      
      stop()
      {
          echo -n $"Stopping Zabbix Agentd: "
          killproc zabbix_agentd
          RETVAL=$?
          echo
          [ $RETVAL = 0 ] && rm -f $PIDFILE
      }
      
      case "$1" in
        start)
              start
              ;;
        stop)
              stop
              ;;
        status)
              status -p $PIDFILE $ZABBIX_AGENTD
              RETVAL=$?
              ;;
        restart)
              stop
              start
              ;;
        *)
              echo $"Usage: service zabbix_agentd_ctl {start|stop|restart|status}"
              exit 1
      esac
      
      exit $RETVAL
      

5. 配置zabbix 站点

修改php.ini的参数

vim /usr/local/php/etc/php.ini
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
always_populate_raw_post_data = -1
date.timezone = Asia/Shanghai

检查有没有问题(命令不能转行)

egrep 'max_execution_time|memory_limit|post_max_size|upload_max_filesize|max_input_timealways_populate_raw_post_data|Asia/Shanghai' /usr/local/php/etc/php.ini

重启php服务

service php-fpm restart

zabbix 站点页面设置
打开http:/192.168.4.243可看到zabbix web前端的一些验证,如果参数配置有问题,重复第5步修改。最后会一步会生成一个zabbix.conf.php文件, 自动放在zabbix server站点/data/zabbix/conf/目录下。如果提示无权限操作,可下载该文件把指定目录下,也可手动创建该文件。

#注:脚本使用时要注意软件链接是否失效,以免安装失败。

6. 登录zabbix server站点

默认账号是admin,密码是zabbix。注意:在创建数据库时,按照官方的文档是加了collate utf8_bin,会区分大小写。官方文档:

Lamp安全与优化:

7. 在agent端(192.168.4.242)

安装zabbix agent
在被监控的主机上安装zabbix agent,可以用rpm安装,也可以使用源码安装。如果server端是源码安装的,建议agent端也用编译安装。

scp /usr/local/src/zabbix-3.0.10.tar.gz  root@192.168.4.242:/usr/local/src/
yum install -y net-snmp-devel curl-devel
cd zabbix-3.0.10
./configure --prefix=/usr/local/zabbix  --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

make install

配置zabbix-aget

mkdir -p  /data/zabbix
chown -R zabbix:zabbix /data/zabbix
# Server指允许这个IP来取数据,ServerActive是指主动提交数据的IP。Hostname为被监控的主机名。
vim /usr/local/zabbix/etc/zabbix_agentd.conf
PidFile=/data/zabbix/zabbix/zabbix_agentd.pid
LogFile=/data/zabbix/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.2.243
ServerActive=192.168.4.243:10051
Hostname=192.168.2.242
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

检查

egrep -v '^#|^$'  /usr/local/zabbix/etc/zabbix_agentd.conf

建立zabbix用户组和用户

groupadd zabbix
useradd -g zabbix zabbix

启动,默认端口为10050
复制启动脚本到/etc/init.d/下

cp /usr/local/src/zabbix-3.0.10/misc/init.d/tru64/zabbix_agentd    /etc/init.d/

修改启动脚本

vim /etc/init.d/zabbix_agentd

源码安装需要在 #!/bin/sh 后加入如下两行注释,注意要行前要加“#”,否则chkconfig会显示不支持

# chkconfig: - 86 14
# Description: Zabbix agent
DAEMON=/usr/local/zabbix/sbin/zabbix_agentd

修改为可执行

chmod a x /etc/init.d/zabbix_agentd 

加入开机自启动

chkconfig --level 2345 zabbix_agentd on

编译安装加入到系统开机自动运行的设置
Nginx开机自动运行实现方法
http://professor.blog.51cto.com/996189/1579791/
Zabbix agentd和 Zabbix Server 开机自动运行实现方法
http://os.51cto.com/art/201006/203193.htm
  1. 复制 zabbix 源程序的启动脚本到 /etc/init.d 目录下
cp /usr/local/src/zabbix-3.xxxx/misc/init.d/tru64/zabbix_server   /etc/init.d/
  1. 修改 /etc/init.d/zabbix_service,修改文件路径为make install路径。
SERVICE="Zabbix server"
DAEMON=/usr/local/zabbix/sbin/zabbix_server
PIDFILE=/var/run/zabbix_server.pid
  1. 增加可执行的权限
chmod a x /etc/init.d/zabbix_server 
  1. 修改启动脚本使其支持 redhat 的 chkconfig,分别在两个脚本的#!/bin/sh 后加入如下两行注释,注意要行前要加“#”
vim /etc/init.d/zabbix_server 

# chkconfig: - 95 95
# description: Zabbix Server

如果是agent

vim /etc/init.d/zabbix_agentd

# chkconfig: - 86 14
# Description: Zabbix agent
  1. 使用 chkconfig 将其加入 init 的启动服务
chkconfig --level 2345 zabbix_server on
  1. 检查
chkconfig --list | grep zabbix
  1. 重启系统可以验证是否自启动成功
reboot 后 ps aux | grep zabbix

1.配置disable_function 禁用一些函数

扩展

源码安装zabbix server,通过vim /etc/init.d/zabbix_server查看pid文件默认是放在/tmp/zabbix_server.pid的。这个启动/关闭zabbix server的脚本是通过pid文件去找到进程号,然后直接kill进程的。如果pid文件不存在、目录不正常或启动用户对pid文件的操作权限不足,会造成service zabbix_server stop/stop/restart命令无法启动/关闭zabbix server。

生成log和pid文件由/usr/local/zabbix/etc/zabbix_server.conf文件指定,而启动/关闭去读取 pid文件,则由启动/关闭脚本指定。所以如果要修改log和pid文件的默认/tmp下的路径/data/zabbix,需要修改.conf和启动/关闭脚本文件,显式指定pid的路径,并且保证写入的路径/data/zabbix是有权限的。最好是把/data/zabbix文件夹设置为系统用户zabbix所有。参考mysql的配置也是这样的,会把/data/mysql文件夹设置为系统用户mysql所有。

log和pid文件放到默认的/tmp文件夹下,虽然说权限没有问题,而且大部分情况下也是正常使用的。但由于/tmp是“公共”文件夹,其他程序或人员有可能把这里的文件“误”删了,会导致一些意外的问题。指定其他文件夹,注意权限问题,必要时,可以切换到运行用户(运行用户一般不能登录Linux,另外再设置可登录)去测试权限是否足够。

disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close

2.Mysql配置

开启每表表空间

登录:

#/usr/local/mysql/bin/mysql -S /data/mysql/mysql.sock

mysql>use mysql;

mysql> update user set password=password('123456') where user = 'root';

mysql> flush privileges;

/usr/local/mysql/bin/mysql -uroot -p123456 -S /data/mysql/mysql.sock

Zabbix下载地址:

wget

创建、导入zabbix数据库 

mysql> create database zabbix character set utf8;

grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; #创建zabbix用户

flush privileges; #再次刷新系统授权表

use zabbix #进入数据库

select database();#查看当前数据库

source /usr/local/src/zabbix-3.0.4/database/mysql/schema.sql #导入脚本文件到zabbix数据库

source /usr/local/src/zabbix-3.0.4/database/mysql/images.sql #导入脚本文件到zabbix数据库

source /usr/local/src/zabbix-3.0.4/database/mysql/data.sql #导入脚本文件到zabbix数据库

注意:请按照以上顺序进行导入,否则会出错。

安装zabbix

1、添加用户:

由于安全zabbix只能使用普通用户运行

groupadd zabbix #创建用户组zabbix

useradd -M zabbix -s /sbin/nologin

useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中

cd /usr/local/src/zabbix-3.0.4/ #进入安装目录

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config 

--enable-java #支持jmx监控java类进程

make #编译

make install #安装

说明:find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel

修改zabbix配置文件

cd /usr/local/zabbix/etc

vi etc/zabbix_server.conf

DBName=zabbix #数据库名称

DBUser=zabbix #数据库用户名

DBPassword=123456 #数据库密码

ListenIP=127.0.0.1 #数据库ip地址

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录

:wq! #保存退出

vi /home/sxit/zabbix/etc/zabbix_agentd.conf

Include=/home/sxit/zabbix/etc/zabbix_agentd.conf.d/

UnsafeUserParameters=1 #启用自定义key

:wq! #保存退出

6、添加开机启动脚本

cp /usr/local/src/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server #服务端

cp /usr/local/src/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd #客户端

chmod x /etc/init.d/zabbix_server #添加脚本执行权限

chmod x /etc/init.d/zabbix_agentd #添加脚本执行权限

chkconfig zabbix_server on #添加开机启动

chkconfig zabbix_agentd on #添加开机启动

修改zabbix开机启动脚本中的zabbix安装目录

vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件

BASEDIR=/home/sxit/zabbix/ #zabbix安装目录

:wq! #保存退出

vi /etc/init.d/zabbix_agentd #编辑客户端配置文件

BASEDIR=/home/sxit/zabbix/ #zabbix安装目录

:wq! #保存退出

三、配置web站点

cd /home/sxit/zabbix-3.0.3

cp -r /usr/local/src/zabbix-3.0.4/frontends/php /usr/local/apache/htdoc/zabbix

chown daemon.daemon -R /usr/local/apache/htdoc/zabbix

备注:/home/sxit/apache/htdoc/为apache默认站点目录 daemon为apache运行账户

service zabbix_server start #启动zabbix服务端

service zabbix_agentd start #启动zabbix客户端

四、修改php配置文件参数

1、vi /etc/php.ini #编辑修改

post_max_size =16M

max_execution_time =300

max_input_time =300

:wq! #保存退出

PHP databases supportoffFail

php databases support off fail 经查询是缺少mysqli 

安装mysqli

需要在php源码中编译出模块然后加载

 /usr/local/php/bin/phpize

./configure --prefix=/usr/local/php/mysqli

 --with-php-config=/usr/local/php/bin/php-config

--with-mysqli=/usr/bin/mysql_config

Make &&make install

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/

Installing header files:          /usr/local/php/include/php/

编辑php.ini

#vi etc/php.ini

在最末尾添加一行:

extension= /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/mysqli.so

重启http服务

注:此处可能回报:/usr/local/src/php-5.6.6/ext/mysqli/mysqli_api.c:36:47: error: ext/mysqlnd/mysql_float_to_double.h: No such file or directory

直接修改:mysqli/mysqli_api.c 文件第36行路径为绝对路径

include "/usr/local/src/php-5.6.6/ext/mysqlnd/mysql_float_to_double.h"

PHP gettextoffWarning

手动编译安装gettext模块

 cd /usr/local/src/php-5.6.6/ext/gettext

# /usr/local/php/bin/phpize

#./configure --with-php-config=/usr/local/php/bin/php-config

#make && make install

安装之后会生成一个类似于这样的信息提示:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/

编辑php.ini

#vi etc/php.ini

在最末尾添加一行:

extension= /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/gettext.so

重启http服务

问题:

Zabbix server is runningNo10.0.8.153:10051

Zabbix server is not running:the information displayed may not be current

1、php.ini文件中查找 allow_url_fopen = On;

让你的php支持 opensll扩展

/usr/local/php/bin/phpize

./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/

在最末尾添加一行:

extension= /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/openssl.so

2、开启fsockopen函数就可以了

disable_function 去掉pfsockopen

五、安装web

在浏览器中打开:

登录:

默认用户名:Admin 

密码:zabbix

zabbix agent安装:

./configure --prefix=/usr/local/zabbix_agent --enable-agent

  make && make install 

 cp /usr/local/src/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd #客户端

chmod x /etc/init.d/zabbix_agentd

chkconfig zabbix_agentd on

修改安装目录:vim /etc/init.d/zabbix_agentd

 BASEDIR=/usr/local/zabbix_agent/

zabbix客户端配置

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

# vim /usr/local/zabbix_agent/etc/zabbix_agentd.conf

Server=127.0.0.1(注意,客户机上面这个需要修改为监控机的IP地址)

ServerActive=127.0.0.1(注意,客户机上面这个需要修改为监控机的IP地址)

Hostname=Zabbix server(这里的名字需要和监控机上面配置的一致)

其中Server和ServerActive都指定zabbixserver的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许127.0.0.1这个ip来我这取数据。而serverActive的127.0.0.1的意思是,客户端主动提交数据给他。明白了吗?为什么要分主动和被动?后续再来讨论这个问题!

zabbix agent检测分为主动(agent active)和被动(agent)两种形式,主动与被动的说法均是相对于agent来讨论的。简单说明一下主动与被动的区别如下:

主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy

被动:server向agent请求获取监控项的数据,agent返回数据。

主动配置:监控客户端主动发送数据

Server 192.168.18.223  监控端ip(服务器端)

ServerActive  192.168.18.223:10051  监控端ip:端口

Hostname=Zabbix server(这里的名字需要和监控机上面配置的一致)

被动配置:监控服务器主动收集数据

Server 192.168.18.223  监控端ip(服务器端)

ServerActive  192.168.18.22x:10050  被监控端ip:端口

Hostname=192.168.18.22x(这里的名字需要和监控机上面配置的一致)

测试,下面的命令需要在server端执行,其中10.0.8.152是agent的ip

#/usr/local/zabbix/bin/zabbix_get -s 10.0.8.152 -p10050 -k "system.host"

11163875

#/usr/local/zabbix/bin/zabbix_get -s 10.0.8.152 -p10050 -k "system.hostname"

HOSTNAME

本文由澳门新浦京娱乐场网站发布于澳门新浦京娱乐场网站,转载请注明出处:澳门新浦京娱乐场网站:源码安装和配置zabbix,