Zabbix安装及基本配置
#zabbix #监控
Cent OS 6.8基于LAMP平台安装Zabbix3.0.8
1、通过yum工具安装LAMP平台和所需要的软件包
yum install -y mysql mysql-server mysql-devel httpd libxml2 libxml2-devel net-snmp net-snmp-devel
rpm -Uvh http://download.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum install -y --enablerepo=remi,remi-php56 php php-opcache php-pecl-apcu php-devel php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit php-pecl-xdeb ug php-pecl-xhprof php-pdo php-pear php-fpm php-cli php-xml php-bcmath php-proce ss php-gd php-common
mysqladmin -u root password 123456
service mysqld start
vim /etc/httpd/conf/httpd.conf
……
DirectoryIndex index.html index.html.var index.php
……
AddType application/x-gzip .gz .tgz
addType application/x-httpd-php .php
vim /var/www/html/index.php
<?php
phpinfo();
?>
service httpd start2、安装zabbix
tar -zxf zabbix-3.0.8.tar.gz
cd zabbix-3.0.8
# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libxml2 --enable-java
#make && make install
#mysql -u root -p
mysql>create database zabbix default charset utf8;
mysql>grant all privileges on zabbix.* to zabbix@’localhost’identified by ‘654321’;
mysql>flush prifileges;
mysql>show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| zabbix |
+--------------------+
#mysql -uroot -p 123456 zabbix < database/mysql/schema.sql
#mysql -uroot -p 123456 zabbix < database/mysql/images.sql
#mysql -uroot -p 123456 zabbix < database/mysql/data.sql
#cd frontends
#cp -r php /var/www/html/zabbix
#cd /usr/local/zabbix/sbin
#./zabbix_server访问http://ip/zabbix 进入网页安装页面,根据页面提示调整PHP配置、输入对应的mysql数据库名称和密码,最后将配置文件zabbix.conf.php下载后上传到/var/www/html/zabbix/conf/目录 修改字体:将windows系统中个人喜欢的字体复制到服务器/var/www/html/zabbix/fonts/目录下,改名成默认的字体文件名并重启zabbix服务,就能解决中文显示乱码问题
Docker部署Zabbix
docker run --name zabbix-server-5.0 --restart=always -v /etc/localtime:/etc/localtime:ro -e DB_SERVER_HOST="172.23.210.21" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="jiaparts-admin" -e MYSQL_DATABASE="zabbix" -d -p 10051:10051 zabbix/zabbix-server-mysql
docker run --name zabbix-web-5.0 --restart=always -p 84:8080 -e DB_SERVER_HOST="172.23.210.21" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="jiaparts-admin" -e ZBX_SERVER_HOST="172.23.210.21" -e MYSQL_DATABASE="zabbix" -e PHP_TZ="Asia/Shanghai" -d zabbix/zabbix-web-nginx-mysql
docker cp /root/sh/DejaVuSans.ttf zabbix-web-5.0:/usr/share/zabbix/assets/fonts/
# DejaVuSans.ttf 是zabbix图形默认使用的字体名称,从自己电脑复制一个自己喜欢的中文字体改成这个名称并复制到zabbix-web中的/usr/share/zabbix/assets/fonts/进行替换即可解决图形中文显示乱码的问题OneAlert报警
使用容器部署zabbix服务端时,如果使用OneAlert报警,需要到容器内安装,安装方法跟本机安装一样,可以参考文档
安装步骤
1.切换到zabbix脚本目录:
cd /usr/local/zabbix-server/share/zabbix/alertscripts补充:查看zabbix脚本目录方法:
vi /etc/zabbix/zabbix_server.conf查看AlertScriptsPath 2.获取OneITSM agent包:
wget http://www.onealert.com/agent/release/oneitsm_zabbix_release-1.2.0.tar.gz3.解压、安装。
tar -zxf oneitsm_zabbix_release-1.2.0.tar.gz cd oneitsm/bin bash install.sh --【--处填入您新建应用时生成的appkey】 注:在安装过程中根据安装提示,输入zabbix管理/监控/web登陆地址、管理员用户名、密码。
4.当提示"安装成功"时表示安装成功!
zabbix 使用主动模式时,添加主机时的主机名称必须跟agent端配置文件中的hostname保持一至(区分大小写),不然客户端主动发送的信息服务端无法收到
部分服务监控配置
[[Zabbix监控MySQL配置]] [[Zabbix监控Nginx配置]] [[Zabbix监控Docker容器配置]]
更新大版本导致字符集不一致,报如下错误
zabbix Unsupported charset or collation for tables: acknowledges, actions, alerts, application_discovery, application_prototype, applications, auditlog, auditlog_details, autoreg_host, conditions, config, config_autoreg_tls, corr_condition_tag, corr_condition_tagpair, corr_condition_tagvalue, correlation, dashboard, dchecks, drules, dservices, event_tag, events, expressions, functions, globalmacro, graph_theme, graphs, graphs_items, group_discovery, group_prototype, history_log, history_str, history_text, host_discovery, host_inventory, host_tag, hostmacro, hosts, housekeeper, hstgrp, httpstep, httpstep_field, httptest, httptest_field, icon_map, icon_mapping, ids, images, interface, interface_snmp, item_condition, item_discovery, item_preproc, item_rtdata, items, lld_macro_path, lld_override, lld_override_condition, lld_override_operation, lld_override_ophistory, lld_override_opperiod, lld_override_optag, lld_override_optrends, maintenance_tag, maintenances, mappings, media, media_type, media_type_message, media_type_param, module, opcommand, opconditions, operations, opmessage, problem, problem_tag, profiles, proxy_autoreg_host, proxy_dhistory, proxy_history, regexps, screens, screens_items, scripts, services, services_times, sessions, slides, slideshows, sysmap_element_url, sysmap_shape, sysmap_url, sysmaps, sysmaps_elements, sysmaps_link_triggers, sysmaps_links, tag_filter, task_data, task_remote_command, task_remote_command_result, task_result, trigger_tag, triggers, users, usrgrp, valuemaps, widget, widget_field.解决办法
ALTER DATABASE zabbix CHARACTER SET = utf8 COLLATE = utf8_bin; # 修改字符集为uft8_bin
SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin; ') AS alter_sql FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'zabbix'; # 创建命令更新所有表
# 会出现类似如下的结果,将下面的结果在zabbix库执行即可
ALTER TABLE zabbix.acknowledges CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
ALTER TABLE zabbix.actions CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
ALTER TABLE zabbix.alerts CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
ALTER TABLE zabbix.application_discovery CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
ALTER TABLE zabbix.application_prototype CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
ALTER TABLE zabbix.application_template CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
ALTER TABLE zabbix.applications CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
……解决zabbix 无法添加中文主机名
进到zabbix web目录,一般在/var/www/zabbix或者/usr/share/zabbix下,修改/usr/share/zabbix/include/defines.inc.php文件中修改,加入中文字符支持,原始正则:
define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-]+)');修改为:
// \x80-\xff:匹配用GBK (GB2312/GB18030)编码的所有汉字和标点符号
define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-\x{80}-\x{ff}]+)');修改后,主机名和监控项名都可以输入中文了。
容器部署时监控本机配置注意事项
通过容器部署zabbix服务端时,如果也需要监控容器宿主本机,需要在agent的配置文件中Server= 处加上容器内IP,例如,zabbix-server容器内IP为172.17.0.4,宿主机本机IP为192.168.1.4,则zabbix-agent.conf中的服务器配置为
Server=192.168.1.4,172.17.0.4然后重启zabbix-agent
最后更新于