zabbix 布署实践【1 server安装】

时间:2023-02-02 14:49:56
通过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,端口,帐号和密码
zabbix 布署实践【1 server安装】
然后一直点下一步,直到完成
 
重新打开,
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 布署实践【1 server安装】
 
但是使用过程中发现,在浏览图形页面当有,如有中文时,图中的中文会变成方块
如下图所示:
zabbix 布署实践【1 server安装】
 
这个问题是由于zabbix的web端没有中文字库,我们还需要把中文字库加上即可
解决办法如下
1.从windows下控制面板->字体->选择一种中文字库例如“楷体”
 
2.把它拷贝到zabbix的web端的fonts目录下例如:/usr/share/zabbix/fonts,并且把TTF后缀改为ttf
zabbix 布署实践【1 server安装】
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 端安装结束
 
zabbix 布署实践【1 server安装】
zabbix 布署实践【1 server安装】
zabbix 布署实践【1 server安装】
zabbix 布署实践【1 server安装】
zabbix 布署实践【1 server安装】