zabbix (一:zabbix服务端)
默认情况下zabbix有5个进程:
zabbix_agent zabbix_get zabbix_proxy zabbix_sender zabbix_server,另外一个zabbix_java_gateway是可选,这个需要另外安装。
zabbix_agentd:客户端守护进程,此进程收集客户端数据,例如cpu负载、内存、硬盘使用情况等
zabbix_get:zabbix工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令。通常用户排错。例如在server端获取不到客户端的内存数据,我们可以使用zabbix_get获取客户端的内容的方式来做故障排查。
zabbix_sender:zabbix工具,用于发送数据给server或者proxy,通常用于耗时比较长的检查。很多检查非常耗时间,导致zabbix超时。于是我们在脚本执行完毕之后,使用sender主动提交数据。
zabbix_server:zabbix服务端守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway的数据最终都是提交到server
备注:当然不是数据都是主动提交给zabbix_server,也有的是server主动去取数据。
zabbix_proxy:zabbix代理守护进程。功能类似server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交/被提交到server里。
zabbix_java_geteway:zabbix2.0之后引入的一个功能。顾名思义:Java网关,类似agentd,但是只用于Java方面。需要特别注意的是,它只能主动去获取数据,而不能被动获取数据。它的数据最终会给到server或者proxy。
时间同步:
[root@zabbix_server ~]# crontab -e
00 00 * * * /usr/sbin/ntpdate -u 192.168.1.62 #zabbix_server IP
需要环境lnmp或lamp环境,其中zabbix对php参数 php模块有特殊要求:
./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 --with-mysql=mysqlnd \
--enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath
make 的时候如果有 报错 可能是:http://www.cnblogs.com/bass6/p/5512035.html
php的参数设置:
vi php.ini
max_execution_time = 300
memory_limit = 123M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone PRC
zabbix服务端安装:
所有版本下载地址:http://www.zabbix.com/download.php
[root@zabbix_server ~]# yum install -y net-snmp-devel libxml2-devel libcurl-devel #一 定先装依赖
[root@zabbix_server src]# tar -xvf zabbix-3.0.3.tar.gz
[root@zabbix_server zabbix-3.0.3]# pwd
/usr/local/src/zabbix-3.0.3
[root@zabbix_server zabbix-3.0.3]# ls
aclocal.m4 ChangeLog config.sub database INSTALL Makefile.in NEWS
AUTHORS compile configure depcomp install-sh man README
bin conf configure.ac frontends m4 misc src
build config.guess COPYING include Makefile.am missing upgrades
[root@zabbix_server zabbix-3.0.3]# ./configure --prefix=/usr/local/zabbix-3.0.3 --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
zabbix server 一般充当两个角色:server,agent,所以上面的配置参数也同时加上了--enable-agent. 备注:请安装好MySQL,snmp,curl开发库。
报错:
configure: error: MySQL library not found
[root@zabbix_server zabbix-3.0.3]# yum install mysql-devel
问题解决!
[root@zabbix_server zabbix-3.0.3]# make && make install
创建用户:
安全考虑zabbix只使用普通用户运行,假如你当前用户叫bass,那么你运行他,他便使用bass身份。但是如果你在root环境下运行zabbix,那么zabbix将会主动使用zabbix用户运行。但是如果你的系统没有zabbix用户,这需要新建一个:
[root@zabbix_server ~]# groupadd zabbix
[root@zabbix_server ~]# useradd -g zabbix zabbix
初始化数据库:
zabbix server 与proxy需要数据库,angent不需要。尤其要注意的是proxy只需要导入一个sql文件,而server为3个sql文件。
mysql> create database zabbix default charset utf8;
Query OK, 1 row affected (0.00 sec)
# mysql -uroot -pttlsapwd zabbix < database/mysql/schema.sql
# mysql -uroot -pttlsapwd zabbix < database/mysql/images.sql
# mysql -uroot -ppttlsapwd zabbix < database/mysql/data.sql
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| zabbix |
+--------------------+
5 rows in set (0.00 sec)
配置zabbix:
[root@zabbix_server etc]# ls
zabbix_agentd.conf zabbix_agentd.conf.d zabbix_server.conf zabbix_server.conf.d
[root@zabbix_server etc]# mkdir /etc/zabbix
[root@zabbix_server etc]# cp zabbix_server.conf /etc/zabbix/
[root@zabbix_server etc]# vi /etc/zabbix/zabbix_server.conf
# vim /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=123456
DBPort=3306
DBHost=192.168.1.3 #数据库地址
[root@zabbix_server ~]# ln -s /usr/local/zabbix-3.0.3/sbin/* /usr/local/sbin/
[root@zabbix_server ~]# ln -s /usr/local/zabbix-3.0.3/bin/* /usr/local/bin/
[root@zabbix_server ~]# find / -name mysql_config
/usr/bin/mysql_config
/usr/local/src/mysql-5.5.20/scripts/mysql_config
/usr/local/mysql/bin/mysql_config
/usr/lib64/mysql/mysql_config
如果没有mysql_config,需要安装 mysql-devel
添加zabbix服务对应的端口:
[root@zabbix_server ~]# vi /etc/services #追加下面代码
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
修改zabbix配置文件:
[root@zabbix_server ~]# cd /usr/local/zabbix-3.0.3/etc
[root@zabbix_server etc]# ls
zabbix_agentd.conf zabbix_server.conf
zabbix_agentd.conf.d zabbix_server.conf.d
[root@zabbix_server etc]# pwd
/usr/local/zabbix-3.0.3/etc
[root@zabbix_server etc]# vi zabbix_server.conf vi /usr/local/zabbix/etc/zabbix_server.conf DBName=zabbix #数据库名称 DBUser=zabbix #数据库用户名 DBPassword=123456 #数据库密码 ### Option: DBHost
# Database host name.
# If set to localhost, socket is used for MySQL.
# If set to empty string, socket is used for PostgreSQL.
#
# Mandatory: no
# Default:
# DBHost=localhost
DBHost=192.168.1.117#DB数据库的IP AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录
[root@zabbix_server etc]# vi /usr/local/zabbix-3.0.3/etc/zabbix_agentd.conf
加上:
Include=/usr/local/zabbix/etc/zabbixagentd.conf.d/
# UnsafeUserParameters=0
UnsafeUserParameters=1
[root@zabbix_server etc]# cp /usr/local/src/zabbix-3.0.3/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server
[root@zabbix_server etc]# cp /usr/local/src/zabbix-3.0.3/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
[root@zabbix_server etc]# chmod +x /etc/rc.d/init.d/zabbix_server
[root@zabbix_server etc]# chmod +x /etc/rc.d/init.d/zabbix_agent
[root@zabbix_server etc]# chkconfig zabbix_server on
[root@zabbix_server etc]# chkconfig zabbix_agent on
修改zabbix开机启动脚本中的zabbix安装目录:
[root@zabbix_server etc]# vi /etc/rc.d/init.d/zabbix_server
# Zabbix-Directory
BASEDIR=/usr/local/zabbix-3.0.3/ #zabbix安装目录
[root@zabbix_server etc]# vi /etc/rc.d/init.d/zabbix_agentd
# Zabbix-Directory
BASEDIR=/usr/local/zabbix-3.0.3/ #编辑客户端配置文件
[root@zabbix_server nginx]# cp -r /usr/local/src/zabbix
/frontends/php /usr/html/
[root@zabbix_server nginx]# cd /usr/html/
[root@zabbix_server html]# ls
50x.html index.html index.php php
[root@zabbix_server html]# mkdir zabbix
[root@zabbix_server html]# ls
50x.html index.html index.php php zabbix
[root@zabbix_server html]# mv php/ zabbix/
[root@zabbix_server html]# ls
50x.html index.html index.php zabbix
[root@zabbix_server html]# chown www.www -R /usr/html/zabbix
[root@zabbix_server etc]# service zabbix_agentd start
Starting zabbix_agentd: [ OK ]
[root@zabbix_server etc]# service zabbix_server start
Starting zabbix_server: [ OK ]
[root@zabbix_server etc]#
先看看php用的是php.ini文件的位置通过<?php phpinfo();
Configuration File (php.ini) Path /usr/local/php/etc
可见是在/usr/local/php/etc/php.ini如果每没有cp /etc/php.ini /usr/local/php/etc/
[root@zabbix_server etc]# vi /etc/php.ini
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
[root@zabbix_server etc]# vi /usr/local/php/etc/php-fpm.conf
request_terminate_timeout = 300
[root@zabbix_server php]# service php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm done
[root@zabbix_server php]# whereis php
php: /etc/php.d /etc/php.ini /usr/lib64/php /usr/loca
[root@zabbix_server php]# pwd
/usr/html/zabbix/php
http://192.168.1.122/zabbix/php/setup.php
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| zabbix |
+--------------------+
5 rows in set (0.07 sec) mysql> grant all privileges on zabbix.* to zabbix@"%" identified by"123456";
Query OK, 0 rows affected (0.00 sec) mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
[root@ok tmp]# scp zabbix.conf.php root@192.168.1.122:/usr/html/zabbix/php/conf/zabbix.conf.php
root@192.168.1.122's password:
zabbix.conf.php 100% 423 0.4KB/s 00:00
注意zabbix.conf.php的权限!!(我给的是777)
zabbix默认登录帐户:admin
zabbix默认登录密码:zabbix
注意:selinux一定要关不然会报错!!!
[root@zabbix_server php]# setenforce 0
[root@zabbix_server ~]# netstat -lnutp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 2192/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 2854/zabbix_server
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 1486/php-fpm
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2665/mysqld
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1924/nginx
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1510/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1853/master
tcp 0 0 :::22 :::* LISTEN 1510/sshd
tcp 0 0 ::1:25 :::* LISTEN 1853/master
udp 0 0 0.0.0.0:68 0.0.0.0:* 1244/dhclient
udp 0 0 0.0.0.0:636 0.0.0.0:* 1323/portreserve
注意:看zabbix的日志
[root@zabbix_server ~]# tail -f /tmp/zabbix_server.log
zabbix (一:zabbix服务端)的更多相关文章
- Zabbix 3.4 服务端安装部署
关于zabbix的安装部署官方也提供了详细的安装文档,链接如下: https://www.zabbix.com/download 选择zabbix的版本,服务器平台及使用的数据库 安装和配置zabbi ...
- centos 7 上zabbix 3.0 服务端安装
zabbix服务端安装 安装完毕mysql-5.6.php5.6 mysql-5.6安装:https://www.cnblogs.com/xzlive/p/9771642.html 创建zabbix ...
- linux centos安装zabbix 4.0服务端
1.服务器安装docker sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manag ...
- Zabbix配置文件详解之服务端zabbix_server
zabbix作为运维邻域不可缺少的一员,它的各种文档可是数不胜数啊,但是关于配置文件的解释与说明就有点少.这里列出zabbix配置文件篇之zabbix_server. Zabbix Server端配置 ...
- 使用Zabbix服务端本地邮箱账号发送报警邮件及指定报警邮件操作记录
邮件报警有两种情况:1)Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:root@localhost.localdomain), ...
- 运用Zabbix实现内网服务器状态及局域网状况监控(3) —— Zabbix服务端安装
1. Zabbix服务端安装,基于LNMP PHP5.5+Nginx1.9安装配置:http://www.cnblogs.com/vurtne-lu/p/7707536.html MySQL5.5编译 ...
- zabbix 服务端安装(server)
zabbix版本:Zabbix 2.2 LTS 备注:Linux下安装zabbix需要有LAMP或者LNMP运行环境 准备篇: 一.Web环境:Nginx+MySQL+PHP CentOS 7.0编译 ...
- centos6.5安装部署zabbix监控服务端和客户端
部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql,关于LNMP环境部署,可以参考我的另一遍文章:http://www.cnblogs.c ...
- 监控和安全运维 1.8 zabbix服务端安装
1. Zabbix简介基于web的开源软件,开源监控系统状态也可以监控网络设备.和nagios不同的是zabbix会把获取的数据保存在数据库中,所以zabbix需要有数据库支持 Zabbix还可以自动 ...
随机推荐
- Xcode7中新技术
Xcode7真加了两个重要的debug功能:1:Address Sanitizer: 再也不用担心 EXC_BAD_ACCESS 在项目的Scheme中Diagnostics下,选中enable ad ...
- input type="submit" 和"button"有什么区别?
http://www.zhihu.com/question/20839977 在一个页面上画一个按钮,有四种办法: <input type="button" /> 这就 ...
- intent属性
private String mAction;private Uri mData;private String mType;private String mPackage;private Compon ...
- MyEclipse------如何在特定目录下创建文件夹
Directory.jsp <%@ page language="java" import="java.util.*" pageEncoding=&quo ...
- 锋利的jQuery-7--$.extend()
$.extend()主要有两个功能: 1.扩展jQuery对象 jQuery.extend({ min: function(a, b) { return a < b ? a : b; }, }) ...
- Office Web Apps资源
http://www.cnblogs.com/poissonnotes/p/3277280.html#!comments http://www.cnblogs.com/poissonnotes/p/3 ...
- 用 Java 实现断点续传 (HTTP)
断点续传的原理 其实断点续传的原理很简单,就是在 Http 的请求上和一般的下载有所不同而已. 打个比方,浏览器请求服务器上的一个文时,所发出的请求如下: 假设服务器域名为 wwww.sjtu.edu ...
- 域名在微信朋友圈内分享需要ICP备案 杜绝不良信息传播
就在刚刚,腾讯微信团队发布公告表示域名在朋友圈内分享需要ICP备案,杜绝打击不良互联网信息的传播.公告称根据互联网管理相关规定,即日起在微信朋友圈内分享的域名,请在2014年12月31日前完成ICP备 ...
- memcached工作原理
1.Memcached处理的原子是每一个(key,value)对(以下简称kv对),key会通过一个hash算法转化成hash-key,便于查找.对比以及做到尽可能的散列.同时,memcached用的 ...
- [Effective JavaScript 笔记]第48条:避免在枚举期间修改对象
注册列表示例 一个社交网络有一组成员,每个成员有一个存储其朋友信息的注册列表. function Member(name){ this.name=name; this.friends=[]; } va ...