通过openstack环境,开通了2台只有根分区的虚拟机,
目的是为了监控公司所有的物理机,网络设备,虚拟机,总计300个台以上,推荐配置,zabbix官方文档是有给出指引的
环境:CentOS7
zabbix版本,3.0.X (3版本开始支持中文界面)
IP:10.40.150.150
镜像默认关闭防火墙,selinux ,NetworkManager,调高了文件句柄,和线程数
办公网环境开通1台虚拟机,配置4核-8G内存-40G硬盘,用于Server端--总服务端
科兴IDC生产网环境开通1台虚拟机,配置4核-4G内存-40G硬盘,用于Proxy端--代理端
Server端
先安装LAMP ,http 和 PHP 和数据库的相关
# yum install php php-gd php-mysql php-bcmath php-mbstring php-xml php-xmlreader php-xmlwriter php-session php-net-socket php-gettext php-ldap curl curl-devel net-snmp net-snmp-devel perl-DBI php-ctype php-pear-MDB2-Driver-mysqli httpd mariadb mariadb-server -y
添加zabbix的yum 源
# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm -----CentOS7的源
安装zabbix Server相关
# yum install zabbix-server-mysql zabbix-web-mysql zabbix-java-gateway.x86_64 zabbix-agent zabbix-get
第一步,启动数据库
systemctl start mariadb.service
systemctl enable mariadb.service
初始化数据库,设置root密码,开放访问权限等
mysql_secure_installation
创建数据库
create database zabbix character set utf8 collate utf8_bin;
赋权
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'venic8888';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'venic8888';
flush PRIVILEGES;
set GLOBAL max_connections=10000;
grant all privileges on *.* to root@'%' identified by 'venic8888';
flush privileges;
退出数据库,导入zabbix自带的表结构
# cd /usr/share/doc/zabbix-server-mysql-3.0.1/
# zcat create.sql.gz | mysql -uroot -p zabbix
# vi /etc/zabbix/zabbix_server.conf
配置server配置文件修改以下内容,不要清空整个文件,以下的带有Start字样开始的配置,是启动某个功能时给它定义的线程数,默认可以配置为Server端的CPU倍数,
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=visn8888
StartPollers=16
StartTrappers=8
StartPingers=8
StartDiscoverers=8
StartHTTPPollers=8
StartTimers=8
StartEscalators=8
JavaGateway=0.0.0.0
JavaGatewayPort=10052
StartJavaPollers=8
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
StartSNMPTrapper=1
ListenIP=0.0.0.0
MaxHousekeeperDelete=0
CacheSize=512M
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
启动zabbix-server服务
# systemctl start zabbix-server
加入开机自启动
# systemctl enable zabbix-server
CentOS 7安装zabbix 3.0 无法启动zabbix-server的问题,并且在journalctl -xn命令定位看如下信息
zabbix_server[46512]: segfault at 18 ip 00007f78842b4bd0 sp 00007fff1995a818 error 4 in libpthread-2.17.so[7f78842ab000+16000]
则参考http://www.cnblogs.com/liushen/p/5775857.html 的修复方法,降级gnutls
启动java-gateway
# systemctl start zabbix-java-gateway
加入开机自启动
# systemctl enable zabbix-java-gateway
服务器端,也可以启动agent端,也就是server端同时也是客户端,默认上报地址为127.0.0.1,客户端上报给自己
service zabbix-agent start
chkconfig zabbix-agent on
修改LAMP相关其它参数
vi /etc/httpd/conf.d/zabbix.conf
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
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai
修改 /etc/php.ini
date.timezone ='Asia/Shanghai'
启动http
# systemctl start httpd
# systemctl enable httpd
打开
http://10.40.150.150/zabbix
进入安装界面
跟以下这条链接里的图形页所显示的
http://www.tuicool.com/articles/JRVVniM
基本一致,主要是数据库访问的IP,端口,帐号和密码
然后一直点下一步,直到完成
重新打开,
http://10.40.150.150/zabbix/
用默认用户Admin 密码:zabbix登录。
接下来需要修改中文支持:
zabbix实际是有中文语言的,我们可以通过修改web端源文件来开启中文语言。
修改你的/usr/share/zabbix/include/locales.inc.php这个文件
'zh_CN' => ['name' => _('Chinese (zh_CN)'), 'display' => true], #也就是把false改为true,后续的zabbix 3.0版本已默认打开了这个选项。
php为动态实时更新,无需重启http服务,刷新浏览页面,在管理--用户更改语言为zh_CN。刷新浏览页面即可。
但是使用过程中发现,在浏览图形页面当有,如有中文时,图中的中文会变成方块
如下图所示:
这个问题是由于zabbix的web端没有中文字库,我们还需要把中文字库加上即可
解决办法如下
1.从windows下控制面板->字体->选择一种中文字库例如“楷体”
2.把它拷贝到zabbix的web端的fonts目录下例如:/usr/share/zabbix/fonts,并且把TTF后缀改为ttf
3.修改zabbix的web端/usr/share/zabbix/include/defines.inc.php
更改
- //define('ZBX_FONT_NAME', 'DejaVuSans');
为
- define('ZBX_FONT_NAME', 'SIMKAI');
更改
- //define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
为
- define('ZBX_GRAPH_FONT_NAME', 'SIMKAI'); // font file name
其中SIMKAI为字库名字,不包含ttf后缀,并且大小写有分
chmod +x SIMKAI.ttf
再回到图形页,测试显示正常:
至此,zabbix-server 端安装结束