原本zabbix安装在一台服务器上,版本比较旧,为2.2.4版本,现在想要在另一台服务器上安装最新版本的zabbix,并且在docker中安装,其实这是一个非常麻烦的过程,因为这涉及到了zabbix数据库的升级,数据的导入与导出
旧的服务器上的操作:
- 连接mysql数据库,通过Mysqldump的方式将数据导出
导出数据的时候因为数据量太大,所以会用下面这种方式忽略一些文件 mysqldump -uroot -pzabbix zabbix --ignore=zabbix.tablename >/root/name.sql
新服务器上的操作:
下面使用的docker都是有私人数据的,不便公开,可以上docker hub上pull所需版本的docker
在新的服务器上拉去需要的docker镜像(要注意除了mysql外,其它镜像pull的版本要一致)
docker pull zabbix/zabbix-java-gateway:centos-4.2.4
下面这三个镜像是修改后保存的镜像,zabbix-server这个镜像添加了PHP库文件,zabbix-web
这个镜像修改了字体,具体镜像在百度云(15227******)docker文件夹里,将它们下载到服
务器上,通过docker load的方式生成镜像
mysql5.7.18last:gnway
zabbix-server-mysql:centos-4.2.4-gnway-php
zabbix-web-nginx-mysql:centos-4.2.4-gnway
然后将运行四个镜像(通过脚本的方式)
- 启动一个空的MySQL服务器实例
#!/bin/bash
docker stop mysql-server
docker rm mysql-server
docker run --name mysql-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="zabbix" \
-v /u01/gnway/data/mysql-conf:/etc/mysql \
-v /etc/localtime:/etc/localtime:ro \
-v /u01/gnway/data/mysql-data:/var/lib/mysql \
-p 3306:3306 \
-d mysql5.7.18last:gnway #这是经过修改的,里面有私人的数据&#