Zabbix企业应用之服务端与客户端的安装

一、简介

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题

zabbix有2部分组成,zabbix server和zabbix agent(可选组件)

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,,AIX,Free BSD,Open BSD,OS X等平台上

二、安装zabbix服务

1、查看系统和内核版本

[[email protected] ~]# cat /etc/centos-release 
CentOS release 6.4 (Final)
[[email protected] ~]# uname -r
2.6.32-358.el6.x86_64

2、关闭本地的iptables和selinux防火墙

[[email protected] ~]# /etc/init.d/iptables status
iptables:未运行防火墙。
[[email protected] ~]# getenforce
Disabled

3、安装LAMP环境并启动服务

[[email protected] ~]# yum install -y httpd mysql mysql-server mysql-devel php php-mysql php-common php-mbstring php-gd php-odbc php-xml php-pear
[[email protected] ~]# service mysqld start
[[email protected] ~]# service httpd start

4、下载zabbix-2.0.6.tar.gz并启动服务

[[email protected] ~]# yum -y install wget
[[email protected] ~]# wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.0.6/zabbix-2.0.6.tar.gz

5、安装zabbix所需的组件(server,agent)

[[email protected] ~]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI

6、创建zabbix服务启动用户(server,agent)

[[email protected] ~]# groupadd zabbix
[[email protected] ~]# useradd -g zabbix -s /sbin/nologin zabbix

7、创建zabbix数据库并导入zabbix数据库(server)

[[email protected] ~]# tar xf zabbix-2.0.6.tar.gz 
[[email protected] ~]# mysql
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all on zabbix.* to [email protected]‘localhost‘ identified by ‘zabbix‘;
mysql> flush privileges;
mysql> use zabbix
mysql> source /root/zabbix-2.0.6/database/mysql/schema.sql
mysql> source /root/zabbix-2.0.6/database/mysql/images.sql
mysql> source /root/zabbix-2.0.6/database/mysql/data.sql
mysql> \q
Bye

8、编译安装,如果是客户端安装选择--enable-agent就行了

[[email protected] ~]# cd /root/zabbix-2.0.6
[[email protected] zabbix-2.0.6]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
[[email protected] zabbix-2.0.6]# make install

9、配置zabbix

[[email protected] ~]# cd /usr/local/zabbix/etc/
[[email protected] etc]# cp zabbix_server.conf zabbix_server.conf.bak
[[email protected] etc]# grep -v ‘^#‘ zabbix_server.conf |sed ‘/^$/d‘
LogFile=/tmp/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock

10、启动zabbix服务

[[email protected] ~]# /usr/local/zabbix/sbin/zabbix_server 
[[email protected] ~]# ps -ef |grep zabbix
zabbix    9734     1  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9736  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9737  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9738  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9739  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9740  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9741  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9744  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9745  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9746  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9747  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9748  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9749  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9750  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9751  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9757  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9758  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9759  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9760  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9761  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9762  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9763  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9764  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9765  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9766  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9767  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
zabbix    9768  9734  0 13:27 ?        00:00:00 /usr/local/zabbix/sbin/zabbix_server
root      9788  1593  0 13:28 pts/0    00:00:00 grep zabbix

11、配置php并重启服务

[[email protected] ~]# sed -i ‘s/^\(.*\)date.timezone =.*$/date.timezone = Asia\/Shanghai/g‘ /etc/php.ini
[[email protected] ~]# sed -i ‘s/^\(.*\)post_max_size =.*$/post_max_size = 16M/g‘ /etc/php.ini
[[email protected] ~]# sed -i ‘s/^\(.*\)max_execution_time =.*$/max_execution_time = 300/g‘  /etc/php.ini
[[email protected] ~]# sed -i ‘s/^\(.*\)max_input_time =.*$/max_input_time = 300/g‘ /etc/php.ini

[[email protected] ~]# /etc/init.d/httpd restart

12、复制zabbix的web程序到www目录

[[email protected] ~]# mkdir /var/www/html/zabbix
[[email protected] ~]# cp -a /root/zabbix-2.0.6/frontends/php/* /var/www/html/zabbix/

三、安装zabbix web界面

注意:URL地址为 http://ip/zabbix

选择next

1、查看哪个不ok就解决

报错:根据提示修改/etc/php.ini文件里的参数

[[email protected] ~]# yum -y install php-bcmath
[[email protected] ~]# /etc/init.d/httpd restart
Stopping httpd: [  OK  ]
Starting httpd: [  OK  ]

我这个是全部ok,直接next

2、输入的数据库连接信息

3、测试连接数据库

如果test connection为ok就代表成功

4、输入你的zabbix服务信息

选择next

5、之前操作的汇总

没有问题,选择next

6、先下载这个文件,然后在传到服务器里,给与777权限,修改用户与组为zabbix

[[email protected] ~]# cp zabbix.conf.php /var/www/html/zabbix/conf/

然后点击retry

7、没有问题了,选择finish

默认的账户为Admin,密码为zabbix,之后就进入zabbix界面了


四、客户端的安装

客户端分为Linux和Windows,分别介绍

客户端为Linux系统

1、编译zabbix安装agent

[[email protected] zabbix-2.0.6]# ./configure --prefix=/usr/local/zabbix --enable-agent
因为上述编译安装zabbix的时候,已经同时安装了server和agent,所以这里就不在编译安装了

2、建立启动脚本

[[email protected] ~]# mkdir /var/log/zabbix
[[email protected] ~]# chown -R zabbix.zabbix /var/log/zabbix/
[[email protected] ~]# cp /root/zabbix-2.0.6/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
[[email protected] ~]# chmod +x /etc/init.d/zabbix_agentd

3、修改默认的配置文件

[[email protected] ~]# vim /etc/init.d/zabbix_agentd 
BASEDIR=/usr/local/zabbix

4、配置zabbix的客户端agentd

[[email protected] ~]# grep -v ‘^#‘ /usr/local/zabbix/etc/zabbix_agentd.conf |sed  ‘/^$/d‘
LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1              #添加server端的ip地址
ServerActive=127.0.0.1:10051  #添加server端的ip+端口号
Hostname=Zabbix server
UnsafeUserParameters=1

5、启动客户端agentd服务

[[email protected] ~]# service zabbix_agentd start
Starting zabbix_agentd:                                    [确定]

6、用zabbix_get命令在Server端检测是否可以监控,有输出就表示OK

[[email protected] ~]# cd /usr/local/zabbix/bin/
[[email protected] bin]# ./zabbix_get -s 127.0.0.1 -p10050 -k"net.if.in[eth1,bytes]"
111590501

摘自网上的脚本

#!/bin/bash
LANG=C
###check adapter name
zabbix_user=‘zabbix‘
zabbix_install_dir=‘/usr/local/zabbix‘
zabbix_agent_hostname=$(hostname)
zabbix_server_port=‘10051‘
zabbix_agent_ip=$(/sbin/ifconfig|grep ‘inet addr:‘|grep -Ev ‘127.0.0.1‘ | cut -d: -f2 | awk ‘{if ($1~/^10.*/) {print $1} else {print $1}}‘|head -n 1)
zabbix_agent_header=$(/sbin/ifconfig|grep ‘inet addr:‘|grep -Ev ‘127.0.0.1‘ | cut -d: -f2 | awk ‘{if ($1~/^10.*/) {print $1} else {print $1}}‘|head -n 1|cut -d . -f1)
glibc_version=$(/usr/bin/ldd --version|awk ‘NR==1{print $NF}‘|cut -d . -f2)
function server_agent {
#check zabbix server ip
if [[ $zabbix_agent_header -eq 10 ]] && [[ $(ping -c 2 10.10.10.8 >>/dev/null 2>&1;echo $?) -eq 0 ]];then
    zabbix_server_ip=‘10.10.10.8‘
else
    zabbix_server_ip=‘111.111.111.149‘
fi
}
function proxy_agent {
#check zabbix server ip
if [[ $zabbix_agent_header -eq 10 ]] && [[ $(ping -c 2 10.10.10.15 >>/dev/null 2>&1;echo $?) -eq 0 ]];then
    zabbix_server_ip=‘10.10.10.15‘
else
    zabbix_server_ip=‘222.222.222.82‘
fi
}
function base {
# Check if user is root
if [ $(id -u) != "0" ]; then
    echo -e "\033[1;31m Error: You must be root to run this script!\033[0m"
    exit 1
fi
#check network
ping -c 2 www.baidu.com >>/dev/null 2>&1
if [ $? -ne 0 ];then
    echo -e "\033[1;31m Error: The host can‘t connect to Inetnet!\033[0m"
    exit 1
fi
#check wget software
which wget >>/dev/null 2>&1
if [ $? -ne 0 ];then
        echo -e "\033[1;31m Error: The wget isn‘t install,now i will auto install one!\033[0m"
    if [ $(grep -i -c "ubuntu" /etc/issue) = 0 ];then
        yum install wget -y
    else
        apt-get install wget -y
    fi
fi
which wget >>/dev/null 2>&1
if [ $? -ne 0 ];then
        echo -e "\033[1;31m Error: The wget install fail,please manual install wget!\033[0m"
    exit 1
fi
#create user for zabbix
if [ $(grep -i -c "ubuntu" /etc/issue) = 1 ];then
        /usr/sbin/useradd $zabbix_user -M -s /usr/sbin/nologin
else
        /usr/sbin/useradd $zabbix_user -M -s /sbin/nologin
fi
#create directory for install zabbix
/bin/mkdir $zabbix_install_dir
local_dir=$(pwd)
#check system version
system_version=$(uname -m)
#check glibc version
if [ $glibc_version -gt 5 ];then
    if [ $system_version == ‘x86_64‘ ];then
        #download zabbix agent by system version x86_64
        wget http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz
        #unpack zabbix agent to /usr/loca/zabbix
        tar zxf zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz -C $zabbix_install_dir
    else
        #download zabbix agent by system version i686
        wget http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.linux2_6_23.i386.tar.gz
        #unpack zabbix agent to /usr/loca/zabbix
        tar zxf zabbix_agents_2.0.6.linux2_6_23.i386.tar.gz -C $zabbix_install_dir
    fi
else
    if [ $system_version == ‘x86_64‘ ];then
        #download zabbix agent
        wget http://www.zabbix.com/downloads/2.0.3/zabbix_agents_2.0.3.linux2_6.amd64.tar.gz
        wget http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz
        #unpack zabbix agent to /usr/loca/zabbix
        tar zxf zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz -C /tmp/
        tar zxf zabbix_agents_2.0.3.linux2_6.amd64.tar.gz -C $zabbix_install_dir
    else
        #download zabbix agent by system version x86_64
        wget http://www.zabbix.com/downloads/2.0.3/zabbix_agents_2.0.3.linux2_6.i386.tar.gz
        wget http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.linux2_6_23.i386.tar.gz
        #unpack zabbix agent to /usr/loca/zabbix
        tar zxf zabbix_agents_2.0.6.linux2_6_23.i386.tar.gz -C /tmp/
            tar zxf zabbix_agents_2.0.3.linux2_6.i386.tar.gz -C $zabbix_install_dir
    fi
    mv /tmp/conf $zabbix_install_dir
fi
#mondiy zabbix agent conf
cd $zabbix_install_dir/conf
sed -i ‘s#Hostname=Zabbix server#Hostname=‘$zabbix_agent_hostname‘#‘ zabbix_agentd.conf
sed -i ‘[email protected]# [email protected]=‘$zabbix_agent_ip‘@‘ zabbix_agentd.conf
sed -i ‘s#Server=.*#Server=‘$zabbix_server_ip‘#‘ zabbix_agentd.conf
sed -i ‘s#ServerActive=.*#ServerActive=‘$zabbix_server_ip‘:‘$zabbix_server_port‘#‘ zabbix_agentd.conf
#Disable requiretty
sed -i ‘s/^Defaults.*.requiretty/#Defaults    requiretty/‘ /etc/sudoers
#add check_lvm.sh content
cat >>$zabbix_install_dir/bin/check_lvm.sh <<EOF
#!/bin/bash
SIZE_1=102400
SIZE_2=1024
# Total lvm available
total=\`/sbin/pvdisplay|grep ‘PV Size‘|gawk ‘{print \$3}‘|head -n 1\`
# Total lvm used
used=\`/sbin/vgdisplay|grep  ‘Alloc PE / Size‘|gawk ‘{print \$7}‘|head -n 1\`
# Calc total minus used
free=\`/sbin/vgdisplay|grep ‘Free  PE / Size‘|gawk ‘{print \$7}‘|head -n 1\`
free_2=\`/sbin/vgdisplay|grep ‘Free  PE / Size‘|gawk ‘{print \$7,\$8}‘|head -n 1\`
free_3=\$(echo "\$free*\$SIZE_2*\$SIZE_2"|bc)
FREESIZE_1=\$(echo "\$free*\$SIZE_1"|bc)
FREESIZE_2=\$(echo "\$total*\$SIZE_2"|bc)
percent=\$(echo "\$FREESIZE_1 / \$FREESIZE_2"|bc)
case \$1 in
lvm_total)
echo \$total
;;
lvm_used)
echo \$used
;;
lvm_free)
echo \$free_3
;;
lvm_percent)
echo \$percent
;;
*)
echo "Usage:\`basename \$0\` {lvm_total|lvm_used|lvm_free|lvm_percent}"
;;
esac
EOF
#add UserParameter
cat >>$zabbix_install_dir/conf/zabbix_agentd.conf<<EOF
UserParameter=memcached_stats[*],(echo stats; sleep 0.1) | telnet 127.0.0.1 \$1 2>&1 | awk ‘/STAT \$2 / {print \$NF}‘
UserParameter=mysql[*],mysql -h 127.0.0.1 -P 3306 -uzabbix -pzabbix -e "show global status"|grep "\<\$1\>"|cut  -f2
UserParameter=redis_stats[*],redis-cli -h $zabbix_agent_ip -p \$1 info|grep \$2|cut -d : -f2
UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$4}‘
UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$7}‘
UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$8}‘
UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$11}‘
UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$12}‘
UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$13}‘
UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$6}‘
UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep \$1 | head -1 | awk ‘{print \$\$10}‘
UserParameter=MongoDB.Status[*],/bin/echo "db.serverStatus().\$1" | /usr/bin/mongo admin | grep "\$2"|awk -F: ‘{print \$\$2}‘|awk -F, ‘{print \$\$1}‘
UserParameter=check_service_number[*],ps aux|grep "\$1"|grep -v grep|wc -l
UserParameter=check_lvm[*],/usr/bin/sudo $zabbix_install_dir/bin/check_lvm.sh \$1
EOF
#check check_lvm.sh in the /etc/sudoer
cmd=$(grep check_lvm /etc/sudoers|wc -l)
if [ $cmd -eq 0 ];then
    echo "zabbix ALL=NOPASSWD:$zabbix_install_dir/bin/check_lvm.sh" >>/etc/sudoers
fi
#grant 755 to check_lvm.sh
chmod 755 $zabbix_install_dir/bin/check_lvm.sh
#mondiy zabbix install dir user
chown -R $zabbix_user:$zabbix_user $zabbix_install_dir
#start zabbix agent server
$zabbix_install_dir/sbin/zabbix_agentd -c $zabbix_install_dir/conf/zabbix_agentd.conf
#insert boot start to start zabbix agent server
check_rc=$(grep -c "$zabbix_install_dir/sbin/zabbix_agentd -c $zabbix_install_dir/conf/zabbix_agentd.conf" /etc/rc.local)
if [ $check_rc -eq 0 ];then
    echo "$zabbix_install_dir/sbin/zabbix_agentd -c $zabbix_install_dir/conf/zabbix_agentd.conf">>/etc/rc.local
fi
#delete rubbish
rm -rf $local_dir/zabbix_agents_2.0.3.linux2_6.amd64.tar.gz
rm -rf $local_dir/zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz
rm -rf /tmp/bin
rm -rf /tmp/sbin
rm -rf $local_dir/$(basename $0)
#check zabbix agent status
if [ $(ps -ef|grep zabbix_agentd|grep -v grep|wc -l) -gt 0 ];then
    echo -e "\033[1;32mZabbix agent is start!\033[0m"
    exit 0
else
    echo -e "\033[1;31mZabbix agent is stop!please check!\033[0m"
    exit 1
fi
}
case $1 in
install_server_agent)
server_agent
base
;;
install_proxy_agent)
proxy_agent
base
;;
*)
echo "Usage:`basename $0` {install_server_agent|install_proxy_agent}"
;;
esac

脚本解释:

其中10.10.10.8为server端的内网ip,111.111.111.149为server端的外网ip,这个是server-client直连模式

10.10.10.15为使用proxy模式的proxy内网ip,222.222.222.82为proxy模式proxy的外网ip

注意:如果在redhat或centos系统,请使用shinstall_zabbix_agent.sh module,如果是debian或者ubuntu的话,请使用bash install_zabbix_agent.sh module。

比如你想安装agent直接连接server模式,如果是在centos系统,可以使用shinstall_zabbix_agent.sh install_server_agent,如果在ubuntu里安装可以使用bashinstall_zabbix_agent.sh install_server_agent

同时注意,如果你公司有内网dns并且能在所有zabbix的agent与server里使用的话,那么Hostname填写主机名+域名,如果没有dns,那么就使用ip。

介绍:

本脚本除了能自动化的安装zabbixagent还能实现以下功能:

1、检测当前执行脚本的用户是否为root,如果不为root就退出并提示(此安装脚本需要进行添加监控用户、修改安装目录权限等);

2、现在不需要选择网卡名称,可以自动检测出客户端的ip;

3、可以针对客户端的ip来选择zabbix服务端的ip是走内网监控的还是走外网的ip监控;

4、此脚本均能在centos、redhat、ubuntu系统上运行;

5、此脚本能自动识别本机的glibc版本,如果低于或等于2.5版本,则自动安装zabbixagent的2.03版本(此版本的zabbix agent不要求glibc版本),如果高于2.5版本就安装最新的2.04版本(此版本要求你的glibc大于2.5,如果小于的话就报glibc错误,一般centos6以上都是2.12,而ubuntu server 12.04都是2.15版本)

6、根据不同的系统,在安装zabbix用户的时候,选择不同是nologin方式;

7、增加智能判断/etc/rc.local是否有开机启动zabbix服务;

8、增加智能删除下载的安装包文件;

9、增加代理安装agent,可以选择安装server-agent模式与proxy-agent模式。

10、增加了外网连接检测,如果无法上网则停止运行脚本。

11、增加检测wget软件是否安装,没有安装会按照不同的系统使用不同的方式安装;

12、增加所有监控模板里所有服务监控的用户自定义的UserParameter到zabbix_agentd.conf里;

13、增加监控lvm参数;

14、增加选择32位系统与64位系统来下载不同的软件安装包。

客户端为Windows系统

@echo off
Set zabbix_server_ip=10.10.13.8
Set zabbix_server_port=10051
for /f "tokens=2 delims=:" %%b in (‘ipconfig^|find /i "ip"^|find /i "ipv4"^|find /i "10"‘) do set fsip=%%b
Set fsip=%fsip: =%
echo Creating zabbix dir
mkdir c:\zabbix
mkdir c:\zabbix\conf
mkdir c:\zabbix\bin
mkdir c:\zabbix\log
echo Copying config
copy /y zabbix\conf\zabbix_agentd.win.conf C:\zabbix\confecho Modiy config
echo LogFile=c:\zabbix\log\zabbix_agentd.log >> C:\zabbix\conf\zabbix_agentd.win.conf
echo SourceIP=%fsip% >> C:\zabbix\conf\zabbix_agentd.win.conf
echo Server=%zabbix_server_ip% >> C:\zabbix\conf\zabbix_agentd.win.conf
echo ServerActive=%zabbix_server_ip%:%zabbix_server_port% >> C:\zabbix\conf\zabbix_agentd.win.conf
echo Hostname=%COMPUTERNAME% >> C:\zabbix\conf\zabbix_agentd.win.conf
echo Copy start file
if exist %windir%\SysWOW64 (set system_bit=64) else set system_bit=32
if %system_bit% EQU 32 copy /y zabbix\bin\win32 C:\zabbix\binif %system_bit% EQU 64 copy /y zabbix\bin\win64 C:\zabbix\binecho install zabbix service
C:\zabbix\bin\zabbix_agentd.exe -i -c C:\zabbix\conf\zabbix_agentd.win.conf
echo start zabbix service
net start "Zabbix Agent"
echo set  zabbix service auto
sc config "Zabbix Agent" start= auto
echo open firewall for zabbix
netsh firewall set allowedprogram  C:\zabbix\bin\zabbix_agentd.exe zabbix ENABLE

使用dos命令+bat脚本,其中10.10.13.8为server端的内网ip,采用server-client直连模式

安装的话,直接双击脚本就可以(请注意,想使用windows安装的话,使用附件里的zabbix_agent_install.rar,然后解压后双击脚本就可以安装)。

目前已经在windows 2008与2012系统上都成功运行

目前客户端为linux与windows的自动安装脚本都给大家,但请使用的时候,根据自己的需求修改下。

学习来源:

http://dl528888.blog.51cto.com/2382721/1316142

http://yijiu.blog.51cto.com/433846/1549693

时间: 2024-08-26 18:02:22

Zabbix企业应用之服务端与客户端的安装的相关文章

zabbix服务端以及客户端的安装

环境准备 centos 6.x selinux关闭 防火墙关闭 可访问外网 zabbix服务端的安装 参考zabbix官方安装文档 安装实战 安装epel源(以备不需) wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo 安装mysql服务端 yum install mysql-server 安装zabbix的官方源 rpm -ivh http://repo.zabbix.com/zabbix

SVN 服务端和客户端的安装及使用

SVN是一种集中式管理代码的版本控制系统,原理就是把代码都保存到一个固定的位置,每次从这个位置拷贝更新代码,进行编辑:再把修改后的代码提交到该目录中.多人协作开发也是如此.相当于用来存放代码的数据库.https://www.visualsvn.com/visualsvn/download/ -------------------------------SVN下载网址第一步.先下载SVN的服务端(32位的系统就下32位的)!第二步.双击下载的安装包,点击NEXT(下一步) 第三步.勾上点击next

zabbix服务端与客户端搭建搭建

#zabbix作用:数据采集(存储),邮件报警,数据展示 服务端 预安装 #确保iptables策略允许,selinux关闭 #确保mysql.php.httpd已安装 #同步时间 #确保服务端与客户端时间一致且为正确 crontab -e */30 * * * *  /usr/sbin/ntpdate time.nist.gov; hwclock -w yum源配置 base源要使用网络源,避免依赖包版本不一致 将zabbix源移到samaba的koorey家目录下 确保epel vim za

部署zabbix服务端和客户端和网页

一:安装zabbix服务端 1.部署准备 命令:iptables -F     #关闭防火墙命令:systemctl stop firewalld    #关闭防火墙 设置解析,自建yum源 命令:cd /etc/yum.repos.d/ 命令:curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo      #zabbix源链接 命令:curl -o /etc/yum.repo

关于ntp(时间同步协议)服务端和客户端的配置说明

本文主要写了一些在Linux(CentOS)服务器上配置ntp的经验,事件缘由来源于配置Zabbix监控ntp服务时的测试配置. NTP时间同步协议的服务端(ntpd服务)和客户端(ntpdate服)不能同时运行,即在运行ntpd服务后不能运行ntpdate服务,否则ntpdate服务会提示启动失败,而且日志中也会提示"the NTP socket is in use, exiting",如下图所示. 但客户端运行时,服务端可以运行,但服务端运行时,客户端不能运行,要运行客户端服务,就

grpc(3):使用 golang 开发 grpc 服务端和客户端

1,关于grpc-go golang 可以可以做grpc的服务端和客户端. 官网的文档: http://www.grpc.io/docs/quickstart/go.html https://github.com/grpc/grpc-go 和之前写的java的grpc客户端调用相同.也需要使用protobuf的配置文件. 但是golang下面的类库非常的简单,而且golang的性能也很强悍呢. 有些简单的业务逻辑真的可以使用golang进行开发. 性能强悍而且,消耗的资源也很小.java感觉上已

socket服务端和客户端

#!/usr/bin/env python#encoding: utf-8import socketdef handle_request(client): buf = client.recv(1024) client.send("HTTP/1.1 200 OK\r\n\r\n") client.send("Hello, World") def main(): sock = socket.socket(socket.AF_INET, socket.SOCK_STREA

用Java实现HTTP Multipart的服务端和客户端

今天简单介绍一下如何用Java支持HTTP Multipart的request和response. 整个项目的代码可以在https://github.com/mcai4gl2/multi下载. 在这个程序里,我们的业务场景很简单.在服务端有一个随机数生成器,可以生成随机的Integer和Guid,客户端通过服务,可以请求一个或多个随机数.同时,客户端可以向服务端发送一个或多个随机数,这些随机数会被加入到一个队列中,被其他的客户端通过请求获得.以下是我们的随机数Bean的定义: [java] vi

C# Socket服务端和客户端互相send和receive

服务端 1 using System; 2 using System.Collections.Generic; 3 using System.Text; 4 using System.Net.Sockets; 5 using System.Net; 6 using System.Threading; 7  8 namespace Controller 9 {10     public static class SocketServer11     {12         private stat