一 安装DOCKER
1 配置源
cd /etc/yum.repos.d
wget https://download.docker.com/linux/centos/docker-ce.repo
2 安装 docker-ce
yum install docker-ce -y
systemctl start docker
systemctl enable docker
二 安装 Zzbbix
1 启动一个空的MySQL服务器实例
docker run --name mysql-server -t --restart=always \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-d mysql:5.7 \
--character-set-server=utf8 --collation-server=utf8_bin
2 启动Zabbix Java gateway实例
docker run --name zabbix-java-gateway -t --restart=always \
-d zabbix/zabbix-java-gateway:latest
3 启动Zabbix server实例,并关联这个实例到已创建的MySQL服务器实例
docker run --name zabbix-server-mysql -t --restart=always \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
--link mysql-server:mysql \
--link zabbix-java-gateway:zabbix-java-gateway \
-p 10051:10051 \
-d zabbix/zabbix-server-mysql:latest
4 启动Zabbix web 接口,并将它与MySQL服务器实例和Zabbix server实例关联
docker run --name zabbix-web-nginx-mysql -t --restart=always \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
--link mysql-server:mysql \
--link zabbix-server-mysql:zabbix-server \
-p 8080:80 \
-d zabbix/zabbix-web-nginx-mysql:latest
三 访问zabbix
1 url http://服务器IP:8080
2 登录账号和密码: Admin zabbix
四 Zabbix 基本设置
1 设置 为中文并解决中文乱码问题
从我们的Windows主机上面把简体语言包拷贝出来 路径:C:\Windows\Fonts\ 语言包: “楷体 常规”
拷贝到zabbix网页的容器里
docker cp STKAITI.TTF 1b0245fc4128:/usr/share/zabbix/fonts/
有的版本在这个目录里面
/usr/share/zabbix/assets/fonts
进入到容器进行替换
docker exec -it 1b0245 /bin/bash
cd /usr/share/zabbix/fonts
mv graphfont.ttf graphfont.ttf.bak
ln -sv STKAITI.TTF graphfont.ttf
或者直接改文件
cd /usr/share/zabbix/assets/fonts
mv DejaVuSans.ttf DejaVuSans.ttf.bak
/usr/share/zabbix/include
vi defines.inc.php
define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
改为
define('ZBX_GRAPH_FONT_NAME', 'stkaiti'); // font file name
2 设置主机名称用中文
docker exec -it 1b0245 /bin/bash
修改文件:/usr/share/zabbix/include/defines.inc.php
vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-]+)'); // !!! Don't forget sync code with C !!!
修改为
define('ZBX_PREG_INTERNAL_NAMES', '([0-9a-zA-Z_\. \-\x{80}-\x{ff}]+)');/* !!! Don't forget sync code with C !!! */
3 退出容器重启容器
五 安装zabbix_agent(监控其他主机)
1 docker方式安装
docker run --name zabbix-agent -t --restart=always \
-e ZBX_HOSTNAME="主机名" \
-e ZBX_SERVER_HOST="zabbix服务器IP" \
-e ZBX_METADATA="zabbix里面显示的主机名" \
-p 10050:10050 \
--privileged \
-d zabbix/zabbix-agent:latest
2 非yum 安装
配置源
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
安装agent
yum install zabbix-sender zabbix-agent zabbix-get -y
修改配置文件
vi /etc/zabbix/zabbix_agentd.conf
设置
Server=服务器IP
ServerActive=服务器IP
Hostname=对应主机名
3 启动Zabbix_agent
systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service
六 监控 zabbix主机
docker run --name zabbix-agent -t --restart=always \
-e ZBX_HOSTNAME="Zabbix_agent" \
-e ZBX_SERVER_HOST="zabbix-server-mysql" \
--link zabbix-server-mysql:zabbix-server \
--link zabbix-java-gateway:zabbix-java-gateway \
-p 10050:10050 \
-d zabbix/zabbix-agent:latest
查看zabbixserver容器IP
docker exec -it $(docker ps -a | grep "zabbix-agent" | awk '{print $1}') "ifconfig"
修改主机配置
来源:oschina
链接:https://my.oschina.net/u/3957004/blog/3017363