zabbix_浅谈

1、zabbix的软件架构

12.png

2、zabbix的安装

a:安装什么版本?

  • 标准版
  • 长期支持版: LTS

b:zabbix的安装

1:安装zabbix的repo源

rpm  -ivh  https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm

2:安装zabbix-server-mysql和zabbix-web-mysql

yum install zabbix-server-mysql zabbix-web-mysql -y
yum install httpd php php-mysql php-mbstring php-gd php-bcmath php-ldap php-xml -y 

3:安装配置数据库 mariadb-server,导入初始数据

#安装数据库
yum install mariadb-server.x86_64 -y 
#设置自动启动数据库
systemctl enable mariadb.service
systemctl start mariadb.service
# 数据库初始化
mysql_secure_installation
# 数据库配置
mysql
# 添加一个新的zabbix的数据库
mysql> create database zabbix charset utf8;
# 授权用户和密码
mysql> grant all on zabbix.* to zabbix@localhost identified by '123456';
# 查看文件的位置
rpm -al zabbix-server-mysql
# 进入数据的文件位置
cd /usr/share/doc/zabbix-server-mysql-4.0.18/
AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
# 查看文件
file create.sql.gz
# 解压文件
gzip -d create.sql.gz
# 把文件导入数据库中的zabbix库中
 mysql -uzabbix -p123456 zabbix < create.sql

4:修改zabbix-server配置文件

vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
# 开启zabbix 
systemctl enable zabbix-server-mysql
systemctl start zabbix-server-mysql
netstat -nltp

5:修改zabbix-web配置文件

# 开启apache
systemctl start httpd
systemctl enable httpd
# 修改配置文件
vim /etc/httpd/conf.d/zabbix.conf
    php_value date.timezone Asia/Shanghai
# 重启apache
 systemctl restat httpd

6:本地浏览器访问IP地址(也就是上述操作的主机地址)

12.png

12.png

上面的最后一个password是自己最开始在命令行设置的zabbix数据库用户zabbix的密码123456

12.png

用户名Admin 密码zabbix

3、添加监控主机

zabbix-server安装agent (自己监控自己,监听的端口是10050)

# zabbix-server主机
yum -y install zabbix-agent
systemctl enable zabbix-agent
systemctl start zabbix-agent
# web主页显示为绿色

12.png

其他主机监控

# 找一个别的主机安装zabbix-agent
rpm  -ivh  https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
yum -y install zabbix-agent

# 修改配置
vim /etc/zabbix/zabbix_agent.conf
	Server=192.168.248.3  # 这里的IP地址是zabbix-server的主机IP地址
systemctl enable zabbix-agent
systemctl start zabbix-agent

12.png

12.png

主机名称,群组自己设定,agent代理程序的接口也就是要被监控的主机的IP地址

12.png

在这里输入 linux选择第一个即可 添加 更新

4、granfa

# 下载granfa
 wget https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/grafana-6.5.2-1.x86_64.rpm

# 安装granfa
 yum localinstall grafana-6.5.2-1.x86_64.rpm -y 
 
# 启动
systemctl start grafana-server
systemctl enable grafana-server

# 搜索grafana的zabbix插件
grafana-cli plugins list-remote | grep zabbix
id: alexanderzobnin-zabbix-app version: 3.10.5

# 解压安装插件
grafana-cli plugins install alexanderzobnin-zabbix-app

# 重启grafana
systemctl restart grafana-server

web页面访问安装grafana的主机IP:3000 用户名和密码都是admin

12.png

12.png

找到zabbix,启用它

5、使用percona监控mysql

插件下载地址:https://www.percona.com/downloads/percona-monitoring-plugins/LATEST/

安装插件:rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm

[root@zabbix-server templates]# pwd
/var/lib/zabbix/percona/templates

[root@zabbix-server templates]# mv userparameter_percona_mysql.conf  /etc/zabbix/zabbix_agentd.d/

# 下载这个文件到自己的电脑上
[root@zabbix-server templates]# sz zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml

导入刚下载下来的模版

12.png

模版不兼容的问题:

1:安装一个低版本的zabbix2.2,导入模版

2:升级zabbix2.2到4.0,导出升级之后的模版

解决:下载下述的模版文件

http://pan.baidu.com/s/1pL1wDYj

给主机导入模版

12.png

zabbix+percona监控MySQL之各个监控项的解释

https://www.jianshu.com/p/516955dd3099

# 重启zabbix-server的agent
systemctl restart zabbix-agent

# 编辑文件
[root@zabbix-server ~]# vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
	$mysql_user = 'zabbix';  数据库zabbix的用户名
	$mysql_pass = '123456';  数据库zabbix的密码

# 修改更新的时间间隔为30s
[root@zabbix-server ~]# vim /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
	if [ `expr $TIMENOW - $TIMEFLM` -gt 30 ]; then
        rm -f $CACHEFILE

6、zabbix版本升级

zabbix2.2升级到zabbix4.0

1、找到zabbix4.0的源,并下载到老版本zabbix的服务器上
  wget https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm

2、修改zabbix源的地址为清华源zabbix的地址
vim /etc/yum.repos.d/zabbix.repo
	baseurl=http://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/$basearch/
	
3、升级zabbix的yum源
rpm -Uvh zabbix-release-4.0-2.el7.noarch.rpm

4、数据库的备份(为了防止升级错误失败,可以有回滚的选择)
mysqldump -B zabbix > zabbix.sql

5、安装包
yum -y install zabbix-server-mysql  zabbix-web-mysql

6、启动zabbix
systemctl start zabbix-server

7、重启apache
systemctl restart httpd

8、web页面访问则显示新的版本的界面

7、zabbix分布式监控

当zabbix server与被监控机器不在同一个机房时,跨公网监控会很麻烦, 也会带来安全隐患(比如有防火墙的情况,需要防火墙开放的端口增多。而且像mysql数据库这类应用是不适合直接被公网连接的)

当监控机主机特别多,甚至分散在不同的地域机房。这个时候zabbix server压力很大,所以可以通过增加zabbix proxy来代理收集每个机房里的主机信息,再统一给zabbix server.

12.png

8、zabbix性能调优

  • 针对mysql,写多读少 mariadb 5.5 innodb 升级 mysql 5.7 tokudb

  • 去掉无用监控项,增加监控项的取值间隔,减少历史数据保存周期

    • 100台主机 100个监控项 10000个监控项/30 * 365 * 24 * 3600 = 10512000000
  • 把被动模式修改为主动模式,增加zabbix-proxy

  • 针对zabbix-server进程调优,谁忙,就加大它的进程数量

  • 针对zabbix-server缓存调优,谁生的内存少,就加大它的缓存值

  • 针对zabbix 历史数据和趋势图的表,进行周期性分表(分表)

  • 进程调优

    • vim /etc/zabbix/zabbix_server.conf

      ​ StartDiscoverers=5 (默认启动discover是1)

  • 缓存调优

    • vim /etc/zabbix/zabbix_server.conf

      ​ CacheSize=256k (初始缓存的值是8M)

posted on 2020-03-13 18:29  九酒馆  阅读(192)  评论(0编辑  收藏  举报

导航