环境
CentOS版本6.8
操作系统安装过程中选择桌面组件安装
#vim / etc / selinux / config
SELINUX =禁用
#setenforce 0
#/etc/init.d/iptables停止
#chkconfig关闭iptables
#/etc/init.d/NetworkManager停止
#chkconfig NetworkManager关闭
#vim / etc / hosts
将 ZABBIX 的服务器,代理信息加入到文件中。
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
:: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.108 zabbixs
192.168.1.109 agent-1
..........................
注意:同步所有服务器的时间,所有保持时间服务器harmony和谐避免出现时间不同导致的不可用的监控点的数据,最好是统一向NTP 服务器进行校时。
以上配置完成后,最好的英文重启一下操作系统!
安装包准备:
MySQL的 - 21年7月5日 - Linux的glibc2.12-x86_64.tar.gz
ZABBIX-3.4.7.tar.gz
1 创建ZABBIX 用户
处于安全考虑,创建用户以及用户组运行 ZABBIX ,如果ZABBIX 的服务器和代理部署在同一机器上,建议分别使用不同用户,ZABBIX 可以为非登录系统用户。
#groupadd zabbix
#useradd -g zabbix -s / sbin / nologin -M zabbix
2 创建zabbix 使用的数据库(本例中为mysql ,basedir = / opt / mysql,datadir = / opt / data,port = 33060 )
#groupadd mysql
#useradd -g mysql -s / sbin / nologin -M mysql
#tar -zxvf mysql-5.7.21 -linux-glibc2.12-x86_64.tar.gz -C / opt
#ln -s /opt/mysql-5.7.21-linux-glibc2.12-x86_64 / opt / mysql
#chown -R mysql.root / opt / mysql
#chown -R mysql.mysql / opt / data
#cd / opt / mysql
源码包里边没有默认的 my.cnf文件文件,手工创建:
#vim /opt/mysql/my.cnf
[客户]
插座= /选择/数据/的mysql.sock
端口= 33060
的[mysqld]
basedir = / opt / mysql
datadir = / opt / data
端口= 33060
插座= /选择/数据/的mysql.sock
字符集服务器= UTF8
服务器ID = 1
back_log = 300
max_connections = 3000
max_connect_errors = 50
table_open_cache = 4096
max_allowed_packet = 32M
binlog_cache_size = 4M
max_heap_table_size = 128M
read_rnd_buffer_size = 16M
sort_buffer_size = 16M
join_buffer_size = 16M
thread_cache_size = 16
query_cache_size = 128M
query_cache_limit = 4M
ft_min_word_len = 8
thread_stack = 512K
transaction_isolation = REPEATABLE-READ
tmp_table_size = 128M
登录斌= mysql的斌
long_query_time = 6
innodb_buffer_pool_size = 1G
innodb_thread_concurrency = 16
innodb_log_buffer_size = 16M
innodb_log_file_size = 512M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
innodb_file_per_table = on
[mysqldump的]
快
max_allowed_packet = 32M
[MySQL的]
无自动翻版
默认字符集= UTF8
安全更新功能
[myisamchk的]
key_buffer = 16M
sort_buffer_size = 16M
read_buffer = 8M
write_buffer = 8M
[mysqlhotcopy的]
互动超时
[mysqld_safe的]
对数误差= /选择/数据/ mysqld.log
PID文件= /选择/数据/ mysqld.pid
打开文件限制= 8192
#./bin/mysqld --defaults-file = my.cnf --user = mysql --initialize
会出现一条提示临时密码的信息:
[注意]为root @ localhost生成临时密码: #ONdqeA / 4D6R
#./bin/mysqld_safe --defaults-file = my.cnf --user = mysql&
#. /bin/ mysql -uroot -p“ #ONdqeA / 4D6R ”-S /opt/data/mysql.sock
此处密码为前边记录的临时密码
mysql> set password = password(“root123”);
mysql>使用mysql
mysql> update user set host ='%'其中user ='root';
mysql>授予*。*所有权限给'zabbix'@'%',由'zabbix123'标识授予选项;
mysql> flush特权;
mysql> exit
再见
更改后已经无法通过根@本地登录数据库。
测试是否可以正常连接
#./bin/mysql -uroot -proot123 -h192.168.1.108 -P33060
#./bin/mysql -uzabbix -pzabbix123 -h192.168.1.108 -P33060
安装包中自带了一些默认的数据库SQL 文件,直接导入数据。
#tar -zxvf zabbix-3.4.7.tar.gz
#cd zabbix-3.4.7 / database / mysql
#ls
data.sql images.sql schema.sql文件
#./bin/mysql -uzabbix -pzabbix123 -h192.168.1.108 -P33060
mysql>创建数据库zabbix;
查询OK,1行受影响(0.01秒)
mysql>使用zabbix;
数据库改变
mysql> source /opt/zabbix-3.4.7/database/mysql/schema.sql
注意:如果是Zabbix proxy 就导入上边这个 sql 文件就可以了
mysql> source /opt/zabbix-3.4.7/database/mysql/ images.sql
mysql> source /opt/zabbix-3.4.7/database/mysql/data.sql
如果不是源码安装,可以在 / usr / share / doc / zabbix-server-mysql- / create / 目录中找到。
3 源码安装ZABBIX
如果不是网络荫源,使用异源需要2 张安装盘都设置为荫源,有的devel的包在第二张盘中。
#mount -oloop /root/CentOS-6.8-x86_64-bin-DVD1.iso / mnt1
#mount -oloop /root/CentOS-6.8-x86_64-bin-DVD2.iso / mnt2
#cat /etc/yum.repos.d/iso.repo
[ISO]
名称= centosiso1
baseURL时=文件:/// MNT
文件:/// mnt1上
gpgcheck = 1
启用= 0
gpgkey =文件:///等/ PKI / RPM-GPG / RPM-GPG-KEY-的CentOS-6
系统默认 php-5.3 ,zabbix 要求php-5.4 及以上:
#rpm -qa | grep php
如果有包就全部移除:
#rpm -e php php-common php-ldap php-cli php-pear
#wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
电子杂志 http://repo.webtatic.com/yum/el6/x86_64/目录下所有的转包以及repoview 文件,下载后可以拷贝到其他环境方便实施。
#mkdir / root / php 将所有下载的文件放入该目录
#createrepo -g repoview php
回购文件中添加部分内容:
[PHP]
名称= centosphp
baseURL时=文件:///根/ PHP的
gpgcheck = 1
启用= 0
gpgkey =文件:///等/ PKI / RPM-GPG / RPM-GPG-KEY-的CentOS-6
# 荫--disablerepo = \ * --enablerepo = PHP --enablerepo =异安装-y的glibc GCC php71w php71w-GD php71w MySQL的php71w-bcmath时php71w-MBSTRING php71w-XML php71w-LDAP php71w梨
#rpm -qa | grep php
php71w-CLI-7.1.14-1.w6.x86_64
php71w-LDAP的7.1.14-1.w6.x86_64
php71w-共7.1.14-1.w6.x86_64
php71w-XML-7.1.14-1.w6.x86_64
php71w-的mysql-7.1.14-1.w6.x86_64
php71w-PDO-7.1.14-1.w6.x86_64
php71w梨,1.10.4-1.w6.noarch
php71w-MBSTRING-7.1.14-1.w6.x86_64
php71w-GD-7.1.14-1.w6.x86_64
mod_php71w-7.1.14-1.w6.x86_64
php71w过程,7.1.14-1.w6.x86_64
php71w-bcmath时,7.1.14-1.w6.x86_64
安装 ZABBIX 编译需要的其他转包
# 百胜--disablerepo = \ * --enablerepo = PHP --enablerepo = ISO安装-y的httpd的wget用ntpdate的net-snmp * GCC的MySQL社区-devel的的libxml2-devel的 了unixODBC-devel的的net-snmp-devel的的libcurl-devel的libssh2- devel OpenIPMI-devel openssl-devel openldap-devel mysql-devel libevent -devel pcre * gnutls-devel java *
如果编译安装 jabber的支持
http://repo.zabbix.com/non-supported/rhel/6/x86_64/ 电子杂志包
#rpm -ivh iksemel-devel-1.4-2.el6.x86_64.rpm iksemel-1.4-2.el6.x86_64.rpm
#mkdir / opt / zabbix
#cd zabbix-3.4.7
要查看所有支持的配置选项
#./cofnigure --help
如需要指定 / usr / local以外的位置,可在之前的配置源代码的步骤中使用 --prefix 开关,比如 --prefix = / opt / zabbix。守护进程二进制文件会被安装在 / sbin 下,工具会安装在 / bin中下。帮助文件会安装在 /股下。
因为MySQL的客户端的类库不在默认的位置,在需要编译安装 ZABBIX 时指定关于的MySQL 的配置文件中添加可选路径 --with-的MySQL = / << / FONT> 文件路径> / mysql_config 。
这可以有效解决,一个系统上安装了多个版本的 MySQL的或者MariaDB的的情况。
如果需要支持 SSL 连接
#./configure --prefix = / opt / zabbix --enable-server --enable-agent --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc - -with-ssh2 --with-openipmi --with-mysql = / opt / mysql / bin / mysql_config --with-jabber --with-ldap --enable-java --with-openssl
末尾显示如下信息:
组态:
检测到的操作系统: linux-gnu
安装路径: / opt / zabbix
编译arch: linux
编译器: gcc
编译器标志: -g -O2
特定于库的标志:
数据库: -I / opt / mysql / include
libXML2: -I / usr / include / libxml2
unixODBC: -I / usr / include
Net-SNMP: -I / usr / include / rpm -I / usr / local / include -I / usr / lib64 / perl5 / CORE -I。-I / USR /包括
OpenIPMI: -I / usr / include
libssh2: -I / usr / include
TLS: -I / usr / include
LDAP: -I / usr / include
启用服务器: 是的
服务器详情:
使用数据库: MySQL
WEB监控: cURL
原生Jabber: 是的
SNMP: 是的
IPMI: 是的
SSH: 是的
TLS: OpenSSL
ODBC: 是的
链接器标志: -L / opt / mysql / lib -L / usr / lib64 -L / usr / lib64 -L / usr / lib -L / usr / lib -L / usr / lib -L / usr / lib -rdynamic
库: -lmysqlclient -lpthread -lm -lrt -ldl -liksemel -lxml2 -lodbc -lnetsnmp -lssh2 -lOpenIPMI -lOpenIPMIposix -levent -lssl -lcrypto -lldap -llber -lcurl -lm -ldl -lrt -lresolv -lpcreposix -lpcre
启用代理服务器: 否
启用代理: 是的
代理详情:
TLS: OpenSSL
链接器标志: -L / usr / lib -L / usr / lib -rdynamic
库: -lssl -lcrypto -lldap -llber -lcurl -lm -ldl -lrt -lresolv -lpcreposix -lpcre
启用Java网关: 是
Java网关详细信息:
Java编译器: javac
Java归档器: jar
LDAP支持: 是的
IPv6支持: 是的
************************************************** *********
* 现在运行'make install'
*
* 感谢您使用Zabbix!
*
************************************************** *********
开始安装:
#make
#make install
4 开始配置相关文件(涉及ZABBIX ,httpd的,PHP )
zabbix_server.conf
编辑 Zabbix服务器的配置文件。默认路径可能是:/usr/local/etc/zabbix_server.conf 。指定数据库名称,用户名和密码(如果使用的话)。
前边根据数据库的信息对应修改配置文件,注意每一行行首不能有空格。
注释。去掉行以及空行就设置了这几个参数。
#猫 的/ opt / ZABBIX /etc/zabbix_server.conf | grep的-v ^ $ | grep -v ^#
日志文件= / TMP / zabbix_server.log
DBHOST =本地主机这里更改的话,需要对应的/ etc /主机
数据库名= ZABBIX
DBUSER = ZABBIX
DBPASSWORD = zabbix123
DBSocket = /选择/数据/的mysql.sock
DBPort = 33060
超时= 4
LogSlowQueries = 3000
另外还有一些其他参数,如果需要可以进行设置。
StartPollers = 30 #开启多线程数,一般不要超过30 个
StartTrappers = 20 #trapper 线程数
StartPingers = 10 #fping 线程数
StartDiscoverers = 120
MaxHousekeeperDelete = 5000
CacheSize = 1024M #用来保存监控数据的缓存数,根据监控主机的数量适当调整
StartDBSyncers = 8 #数据库同步 时间
HistoryCacheSize = 1024M
TrendCacheSize = 128M #总趋势缓存大小
HistoryTextCacheSize = 512M
AlertScriptsPath =的/ etc / ZABBIX / alertscripts
日志文件=的/ usr /本地/ ZABBIX /日志/ zabbix_server.log
PIDFILE = / TMP / zabbix_server.pid
DBSocket = / TMP /的mysql.sock
包括=在/ usr /本地/ ZABBIX的/ etc / zabbix_server.conf.d / *。CONF
创建 ZABBIX的Web 页面文件夹
本例为源代码安装:
#mkdir / var / www / html / zabbix
#cp -a /opt/zabbix-3.4.7/frontends/php/* / var / www / html / zabbix /
设置 Apache的用户网络接口文件的所有者
# CHOWN -R阿帕奇:阿帕奇/无功/网络/ HTML / ZABBIX
#chmod -R 755 / var / www / html / zabbix
配置PHP 文件,适应ZABBIX 安装所需的参数
vim /etc/php.ini
date.timezone =亚洲/上海
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 0
mysqli.default_port = 33060
mysqli.default_socket = /opt/data/mysql.sock
这里是指定后端访问网页 setup.php时设置数据库localhost连接时出现的参数,这里的参数优先级高,不设置有默认值,然后才是/ opt / zabbix /etc/zabbix_server.conf 的设置参数。
配置Apache的文件,定义安装访问ZABBIX 的虚拟主机
vim /etc/httpd/conf/httpd.conf
ServerName 127.0.0.1
DocumentRoot “/ var / www / html”
ServerName 192.168。1 0.1 08
#service httpd restart
#chkconfig httpd on
#cp /opt/mysql/lib/libmysqlclient.so.20 / usr / lib64
5 进入ZABBIX 的setup.php 界面并配置相关信息
#/ opt / zabbix / sbin / zabbix_server
访问 ZABBIX :HTTP:/ 192.168.1.108 / ZABBIX
6 开始通过zabbix服务器端进行管理
开始通过浏览器访问 zabbix :http:/ 192.168.1.108 / zabbix ,进入的是 index.php ,默认是英文界面。初始化安装的默认账号: Admin ,密码:zabbix
另外,使用英语以外的语言,需要在 Web 服务器上安装该语言对应的语言环境。
可以通过以下命令查看操作系统已经支持了哪些语言。
#locale -a
ZABBIX 在切换成中文的时候,总图形英文有些翻译过来的英文方块形显示:
这个问题是由于 ZABBIX 的网页端没有中文字库,我们最需要把中文字库加上即可,首先从的Windows 拷贝个字体,选择控制面板- > 外观和个性化- > 字体- > 选择一种中文字库,例如 “楷体”。
然后把它拷贝到 zabbix 的web 端的字体目录下例如:/ var / www / html / zabbix / fonts ,并且把TTF 后缀改为ttf 。
#mv STKAITI.TTF / var / www / html / zabbix / fonts /STKAITI.ttf
#chmod -R 755 /var/www/html/zabbix/fonts/STKAITI.ttf
# CHOWN -R阿帕奇:阿帕奇/var/www/html/zabbix/fonts/STKAITI.ttf
如果仍有问题,修改你的 defines.inc.php 这个文件替换 msyh 为你自己的字体文件。
#修改第93 行define('ZBX_FONT_NAME','msyh');
#修改第45 行改为 define('ZBX_GRAPH_FONT_NAME','msyh')
提醒:如果你的zabbix的 web 界面中的历史记录中有中文乱码,那么请修改数据库的字符编码为utf8 。
如果新增加网页方面的设置需要重启服务:
#service httpd restart
从安全方面考虑,必须要禁用来宾用户:
管理,用户,在客人,点击禁用即可
管理,用户群组,在客人组,点击禁用即可
隐藏网页界面上的某些设置项
例如:隐藏 zabbix server web 界面的安装界面
#vim /data/www/coolnull.com/zabbix/include/menu.inc.php 文件,注释以下内容,#为新添加的
阵列(
'url'=>'report4.php',
'label'=> _('Notifications')
)
#array(
# 'url'=>'setup.php',
# 'label'=> _('安装')
#),
zabbix3.0聚合图形设置
http://blog.csdn.net/xiegh2014/article/details/52124179
zabbix3.2监控自定义模板
http://blog.csdn.net/xiegh2014/article/details/53887977
7 安装设置剂
对zabbix服务器端服务器本身进行监控的话,将服务器服务器本身也设置成为一个agent
前边编译安装 ZABBIX 的时候已经加入了 --enable剂参数,所以已经源码安装了代理
。
#cat zabbix_agentd.conf | grep -v ^#| grep -v ^ $
日志文件= / TMP / zabbix_agentd.log
服务器= 127.0.0.1
ServerActive = 127.0.0.1
主机名= Zabbix服务器
可以将 Server = 127.0.0.1 更改为网卡ip :192.168.1.108,也可以不更改。
#/ opt / zabbix / sbin / zabbix_agentd
安装单机的代理
1) 可以通过源码编译安装然后形成分发文件部署在其他的机器上。
2) 可以通过
http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/
http://repo.zabbix.com/non-supported/rhel/6/x86_64/
网址获得转包直接安装
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-agent-3.4.7-1.el6.x86_64.rpm
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-get-3.4.7-1.el6.x86_64.rpm
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-java-gateway-3.4.7-1.el6.x86_64.rpm
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-proxy-mysql-3.4.7-1.el6.x86_64.rpm
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-proxy-pgsql-3.4.7-1.el6.x86_64.rpm
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-proxy-sqlite3-3.4.7-1.el6.x86_64.rpm
#wget http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-sender-3.4.7-1.el6.x86_64.rpm
设置好 yum 源文件,/ etc/yum.repo.d/iso.repo
#yum --disablerepo = \ * --enablerepo = iso install -y wget ntpdate net-snmp * gcc mysql-community-devel libxml2-devel unixODBC-devel net-snmp-devel libcurl -devel libssh2-devel OpenIPMI-devel openssl- devel openldap-devel mysql-devel libevent-devel pcre * gnutls-devel perl -IO-stringy perl-List-MoreUtils perl-Time-HiRes postgresql-libs
安装 zabbix代理包
#rpm -ivh fping-2.4b2-16.el6.x86_64.rpm perl-Config-IniFiles-2.72-2.el6.noarch.rpm snmptt-1.4-1.el6.noarch.rpm zabbix-agent-3.4.7- 1.el6.x86_64.rpm zabbix-proxy-mysql-3.4.7-1.el6.x86_64.rpm zabbix -java-gateway-3.4.7-1.el6.x86_64.rpm zabbix-get-3.4.7-1 .el6.x86_64.rpm zabbix-sender-3.4.7-1.el6.x86_64.rpm
开始设置代理
#猫 /etc/zabbix/zabbix_agentd.conf | grep -v ^ $ | grep -v ^#
PIDFILE = / var / run中/ ZABBIX / zabbix_agentd.pid
日志文件= /无功/日志/ ZABBIX / zabbix_agentd.log
LogFileSize = 0
服务器= 127.0.0.1
ServerActive = 127.0.0.1
主机名= Zabbix服务器
包括=的/ etc / ZABBIX / zabbix_agentd.d / *。CONF
#vim /etc/zabbix/zabbix_agentd.conf
#此处千万别写成了zabbix_agent.conf,否则配置了不生效
服务器= 192.168.1.1 08 #填写服务器的IP 地址 ServerActive = 192.168.1.1 08 #修改为服务器的IP 地址Hostname = agent-1 #填写代理本机的 HostName,注意 Zabbix Server 端要能解析,server 端要能平。通这个主机名添加进入/ etc / hosts文件大全-
Include = / etc / zabbix / zabbix_agentd.d / * 。conf UnsafeUserParameters = 1 #是否允许自定义的密钥,1 为允许,0 为不允许
#/etc/init.d/zabbix_agent开始
网络界面中,配置,主机,创建主机,输入剂-1 的相关信息。
8 最后设置一下开机自启动服务
zabbix_server 开机启动
从源码安装包中拷贝脚本到 /etc/init.d/中目录
#CP /opt/zabbix-3.4.7/misc/init.d/fedora/core5/zabbix_server /etc/init.d/中
#chmod 775 /etc/init.d/zabbix_server
#vim /etc/init.d/zabbix_service
ZABBIX_BIN = “/选择/ ZABBIX / sbin目录/ zabbix_server”
#chkconfig --add zabbix_server
#chkconfig zabbix_server on
创建快捷方式(可不添加)
# LN -s /etc/init.d/zabbix_server在/ usr / bin中/ zabbix_server
zabbix_agentd 开机启动
#CP /opt/zabbix-3.4.7/misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/中
#chmod 775 /etc/init.d/zabbix_agentd
#VIM /etc/init.d/zabbix_ agentd
ZABBIX_BIN = “/选择/ ZABBIX / sbin目录/ zabbix_agentd”
#chkconfig --add zabbix_agentd
#chkconfig zabbix_agentd on
创建快捷方式(可不添加)
# LN -s /etc/init.d/zabbix_agentd在/ usr / bin中/ zabbix_agentd
#cp /opt/mysql/support-files/mysql.server /etc/init.d/mysql.server
#vim /etc/init.d/mysql.server
BASEDIR = /选择/ MySQL的
DATADIR = /选择/数据
#chkconfig --add mysql.server
#chkconfig mysql.server on