Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。(from Zabbix)
Zabbix 作为企业级分布式监控系统,具有很多优点,如:分布式监控,支持 node 和 proxy 分布式模式;自动化注册,根据规则,自动注册主机到监控平台,自动添加监控模板;支持 agentd、snmp、ipmi 和 jmx 等很多通信方式。
同时,Zabbix 官方还发布了 Zabbix Docker 镜像。此次我们以 Zabbix 的官方 Docker 镜像为基础,搭建一个监控平台。
今天搭建的zabbix分为三个部分
zabbix 分三个部分,agent 和 server 、web 三部分
zabbix-agent 部署在被监控机上面,zabbix-server (建议部署在另外一台主机上),zabbix-agent 会发送数据到zabbix-server 或者zabbix-server 主动索取数据,zabbix-server 将获取的数据存在mysql 数据库中(或者其他的数据库). (zabbix.com 官网的manual 上面有安装配置) 。web 从server上获取数据,然后展示给用户。
redhat7.1 安装mysql 5.7.10
mac 中docker安装mysql
拉取镜像
docker pull zabbix/zabbix-server-mysql
启动镜像命令
docker run --name some-zabbix-server-mysql -p 10051:10051 --net=host -e DB_SERVER_HOST="数据库ip" -e DB_SERVER_PORT=数据库端口 -e MYSQL_USER="数据库用户名" -e MYSQL_PASSWORD="数据库密码" -d zabbix/zabbix-server-mysql
拉取镜像
docker pull zabbix/zabbix-web-apache-mysql
启动命令
docker run --name some-zabbix-web-apache-mysql -p 8088:80 -e DB_SERVER_HOST="数据库ip" -e DB_SERVER_PORT=数据库端口 -e MYSQL_USER="数据库用户名" -e MYSQL_PASSWORD="数据库密码" -e ZBX_SERVER_HOST="zabbix服务器IP" -e TZ="Asia/Shanghai" -d zabbix/zabbix-web-apache-mysql
在需要监控的机器上 安装agent
拉去镜像
docker pull zabbix/zabbix-agent
启动命令
docker run --name some-zabbix-agent -p 10050:10050 -e ZBX_HOSTNAME="hostname" -e ZBX_SERVER_HOST="zabbix服务器IP" -e ZBX_SERVER_PORT=10051 -d zabbix/zabbix-agent
此时安装成功了。访问安装web 的服务器ip 端口号为8088 进入zabbix 登录页面,默认帐号为Admin 密码为 zabbix 登录后就可以配置自己的监控了。
author:hendsen chen
date : 2018-08-30 16:48:18
1,登陆zabbix的服务器,查看zabbix的登陆密码:
[[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WIopqZR4-1578224782970)(docker安装zabbix.assets/copycode.gif)]](javascript:void(0)
[root@jason ~]# mysql -uroot -p -e "select * from zabbix.users\G"
Enter password:
*************************** 1. row ***************************
userid: 1
alias: Admin
name: Zabbix
surname: Administrator
passwd: bcfdb6e18854fa4d45412340a04v89b12
url:
autologin: 1
autologout: 0
lang: en_GB
refresh: 30
type: 3
theme: default
attempt_failed: 0
attempt_ip: 192.168.1.20
attempt_clock: 1501141026
rows_per_page: 50
[](javascript:void(0)
这里可以看出:用户: Admin ,密码:zabbix,上面的passwd就是zabbix的md5加密后的字符串。
2, 修改密码
利用:md5的对应值: 5fce1b3e34b520afeffb37ce08c7cd66 = zabbix 因为zabbix默认密码就是zabbix
[root@jack ~]# mysql -uroot -p
mysql> use zabbix;
mysql> update users set passwd='5fce1b3e34b520afeffb37ce08c7cd66' where userid='1';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
3,登录 Web
用户名:Admin
密码:zabbix
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-txsJbpA3-1578224782975)(docker安装zabbix.assets/2-56.png)]
提示:登陆上请马上修改密码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9OMcIgnD-1578224782998)(docker安装zabbix.assets/3-38.png)]
完成。
zabbix_get -s 39.100.67.12 -p 10050 -k “system.cpu.load[all]”
手工安装法
关闭SELinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
防火墙设置,允许zabbix-agent的10050端口通过
firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --reload
当然。你也可以关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
安装zabbix 软件源
rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
安装zabbix-agent
yum install zabbix-sender zabbix-agent zabbix-get
这里如果报错建议多试几次,可能是网络不好或者rp太差,亲测是可以用的。
在 /etc/zabbix/zabbix_agentd.conf 中更改:
Server=<zbx-server的ip>
ServerActive=<zbx-server的ip>
Hostname=<本机的名字>
设置启动和开机项
systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service