Zabbix实战-简易教程(4)--Server端安装

zabbix server安装

在数据库安装完成后,接着开始安装server端了。

3.2.1 安装rpm源

Zabbix 2.2 for RHEL5, Oracle Linux 5, CentOS 5:

#rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/5/x86_64/zabbix-release-2.2-1.el5.noarch.rpm

Zabbix 2.2 for RHEL6, Oracle Linux 6, CentOS 6:

#rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm

3.2.2 安装mysql

上面已经完成。

3.2.3 安装server

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

3.2.4 初始化数据库

Create zabbix database and user on MySQL.

# mysql -uroot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;
mysql> exit

Import initial schema and data.

# cd /usr/share/doc/zabbix-server-mysql-2.2.0/create
# mysql -uroot -p zabbix < schema.sql
# mysql -uroot -p zabbix < images.sql
# mysql -uroot -p zabbix < data.sql

3.2.5 配置文件修改

# vi /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

Start Zabbix server process.

# service zabbix-server start

3.2.6 配置zabbix web前端

Apache configuration file for Zabbix frontend is located in /etc/httpd/conf.d/zabbix.conf. Some PHP settings are already configured.

php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
date.timezone = Asia/Shanghai

3.2.7 安装nginx

nginx-1.6.2.tar.gz
openssl-1.0.1c.tar.gz
pcre-8.34.tar.gz
zlib-1.2.8.tar.gz
yum -y install openssl openssl-devel
./configure --user=nginx --group=nginx --prefix=/usr/local/nginx  --with-http_stub_status_module  --with-http_ssl_module
可能会提示libpcre.so.1找不到
ln -s /usr/local/lib/libpcre.so.1 /lib64/
安装php-fpm
yum install php php-fpm
 

3.2.8 初始化web

chown -R nginx:nginx /usr/share/zabbix/
chown -R nginx:nginx /etc/zabbix/web/
# cat nginx.conf|grep -v "#"
user  nginx;
worker_processes  4;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        charset utf-8;
        access_log  /var/log/nginx/zabbix.access.log;
        error_log   /var/log/nginx/zabbix.error.log;
        location / {
             root   /usr/share/zabbix/;
             allow 你的IP;
             deny all;
             index  index.php index.html index.htm;
        }

        location ~ \.php$ {
            root           /usr/share/zabbix/;
             fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/share/zabbix$fastcgi_script_name;
            include        fastcgi_params;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
   }

}

设置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

3.2.9 Server端web配置


 
时间: 2024-12-29 06:54:21

Zabbix实战-简易教程(4)--Server端安装的相关文章

Zabbix实战-简易教程(5)--Proxy和Agent端安装

3.3.1 zabbix proxy安装(源码方式) 1.创建目录 mkdir -p /usr/local/zabbix 2.安装必要软件 yum install -y fping(若安装不成功) 或 wget http://pkgs.repoforge.org/fping/fping-3.1-1.el6.rf.i686.rpm yum install -y gcc make cmake mysql-server mysql-devel php php-gd php-devel php-mysq

Zabbix实战-简易教程--排错(持续收集中)

一.安装错误 1.zabbix 安装故障之无法跳到下一步 执行命令:chownnginx:nginx /var/lib/php/session/ -R 2.proxy上无法采集交换机数据 yum install net-snmp net-snmp-utils 3.2.2.4升级到3.0,提示缺少参数HistoryIndexCacheSize 21076:20160714:115534.776 [file:dbcache.c,line:2610] zbx_mem_realloc(): please

zabbix实战-简易教程(1)

玩zabbix已经几年了,一直准备分享一些相关的使用心得,但是总是因为各种借口而拖延,最近准备重新整理,记录一些实际工作环境中的示例,希望能够帮助正在学习或者正在寻找这方面资料的朋友,也算是对自己学习的一些记录吧. 以下是大概内容: ====================一.总流程===================== 环境安装->添加hosts/items/模板->获取items->入库.存档->对比触发器阈值->触发报警->执行动作->触发器阈值恢复正常

Zabbix实战-简易教程--动作(Actions)--自动注册

一.概述 之前已经讲述了自动发现功能,自动注册和自动发现非常类似,但是比自动发现更精确.因为自动注册,是在Agent上自定义元数据,然后Agent将元数据发送给server进行匹配,如果匹配一致,则进行下一步的动作(添加主机.模板之类的操作),所以从流程上来说,主动注册比自动发现更加精确. 二.配置 1.指定服务器 在agent配置文件中指定Zabbix server - zabbix_agentd.conf ServerActive=1.0.0.1 如果你没有在zabbix_agentd.co

Zabbix实战-简易教程(6)--Server端高可用

3.4 server前端高可用 至此,单台Zabbix server环境已经搭建完成,为了达到高可用效果,我们需要通过2台服务器之间通过HA软件进行探测,一旦检测到主的server挂掉后,从的server会立即顶替.我们这里采用keepalived软件来实现. 3.4.1 Keepalived安装 直接yum安装即可 Yum install keepalived 3.4.2 keepalived配置 Master上的keepalived配置如下: [Master] cat /etc/keepal

Zabbix实战-简易教程(3)--DB安装和表分区

一.安装环境 主机角色 主机IP VIP 操作系统版本 软件版本 ServerA(Master) 192.168.1.101 192.168.1.100 (keepalived+脚本) CentOS 6.5 64bit Zabbix-2.2.4 ServerB(Backup) 192.168.1.102 CentOS 6.5 64bit Zabbix-2.2.4 Master A 192.168.1.97 (主从) CentOS 6.5 64bit mysql-5.6.21 Slave B 19

Zabbix实战-简易教程--中间件ZooKeeper监控

一.监控思路 通过zabbix trapper方式监控,之前看到网友们都是通过定时任务进行主动上传数据,但是,zabbix还有另外一神器--自动发现,也能达到同样的功能. 二.实现步骤 1.准备脚本 https://github.com/loveqx/zabbix-doc/blob/master/zabbix-scripts/zabbix-template-zookeeper/zookeeper-monitor-lld.py 2.安装依赖包 #Centos6 rpm -ivh http://re

Zabbix实战-简易教程--低层次发现(LLD)

一.概述 自动发现(LLD)提供了一种在为不同实体自动创建监控项,触发器和图形的方法.例如,Zabbix可以在你的机器上自动监控磁盘或网卡,而无需为每个磁盘或网卡手动创建监控项.(LLD) 此外,可以配置Zabbix根据定期执行发现后的得到实际结果,来移除不需要的监控项.(根据正则过滤) 二.类型 在Zabbix中,支持六种类型的发现项目: 系统文件的发现: 网络接口的发现: CPU和CPU内核的发现 SNMP OID的发现 使用ODBC SQL查询的发现 Windows服务的发现 三.流程 发

Zabbix实战-简易教程--宏变量(Macro)

一.概述 Zabbix支持许多在多种情况下使用的宏.宏是一个变量,由如下特殊语法标识:MACRO 有效地使用宏可以节省时间,并使Zabbix变地更加高效. 在一个的典型用途中,宏可以用于模板中.因此,模板的触发器可能命名为"{HOST.NAME}的mysql{#MYSQLPORT} 端口已宕掉,请注意查看!". 当这个模板应用在主机( 飞龙在天roledb-192.168.1.100)时,并且当触发器展示在监控页面上时,触发器的名称将解析为"飞龙在天roledb-192.16