docker安装zabbix
一、介绍
Zabbix 为每个组件都提供了 Docker 镜像 ,作为弹性和自给自足的容器,促使加快部署和更新过程。
Zabbix 组件支持 MySQL 和 PostgreSQL 数据库、Apache2 和 Nginx Web 服务器。这些镜像被分成多个不同的镜像。
Zabbix 组件提供了 Ubuntu、Alpine Linux 和 CentOS 的基础镜像
每个人都可以在 github.com 上使用 Zabbix 官方镜像仓库,并关注其 Docker 文件变更情况。您可以根据官方 Docker 文件复制此项目或制作自己的镜像。也可以直接使用镜像部署或者使用docker-compose一键编排。
大白话:就是zabbix官方人家做好了所有这些镜像,也做好了单机编排文件,并且放在了github代码托管上面。你需要做的是:
1.可以下载这个github上的zabbix官方代码 (需要安装git命令)
2.安装单机编排命令(docker-compose)
3.安装一个docker环境运行这些zabbix编排镜像就可以使用zabbix
点我查看zabbix4.0官网文档介绍
点我查看zabbix5.0官网文档介绍
点我查看zabbix6.0官网文档介绍
下面是zabbix的官方介绍摘要。
镜像系统版本
Zabbix 组件的每个镜像仓库都包含了下列标签:
版本 | 描述 |
---|---|
latest | 基于 Alpine Linux 镜像的最新稳定版的 Zabbix 组件 |
alpine-latest | 基于 Alpine Linux 镜像的最新稳定版的 Zabbix 组件; |
ubuntu-latest | 基于 Ubuntu 镜像的最新稳定版的 Zabbix 组件 |
alpine-4.0-latest | 基于 Alpine Linux 镜像的最新次要版本的 Zabbix 4.0 组件 |
ubuntu-4.0-latest | 基于 Unbuntu 镜像的最新次要版本的 Zabbix 4.0 组件 |
alpine-4.0.* | 基于 Alpine Linux 镜像的不同次要版本的 Zabbix 4.0 组件, 其中 * 代表 Zabbix 组件的次要版本 |
ubuntu-4.0.* | 基于 Ubuntu 镜像的不同次要版本的 Zabbix 4.0 组件, 其中 * 代表 Zabbix 组件的次要版本。 |
组件
版本 | 描述 |
---|---|
Zabbix agent | zabbix/zabbix-agent |
Zabbix server | 支持 MySQL 数据库的 Zabbix server - zabbix/zabbix-server-mysql 支持 PostgreSQL 数据库的 Zabbix server - zabbix/zabbix-server-pgsql |
Zabbix web界面 | 基于Apache2 Web服务器 的 Zabbix web 界面,支持 MySQL 数据库 - zabbix/zabbix-web-apache-mysql 基于Apache2 Web服务器 的 Zabbix web 界面,支持 PostgreSQL 数据库 - zabbix/zabbix-web-apache-pgsql 基于Nginx Web服务器 的 Zabbix web 界面,支持 MySQL 数据库 - zabbix/zabbix-web-nginx-mysql 基于Nginx Web服务器 的 Zabbix web 界面,支持 PostgreSQL 数据库 - zabbix/zabbix-web-nginx-pgsql |
Zabbix proxy | Zabbix proxy ,支持 SQLite3 数据库 - zabbix/zabbix-proxy-sqlite3 Zabbix proxy, 支持 MySQL 数据库 - zabbix/zabbix-proxy-mysql |
Zabbix Java 网关 | Zabbix Java 网关 - zabbix/zabbix-java-gateway |
docker-container https://hub.docker.com/u/zabbix
二、使用docker-compose一键部署zabbix
a.安装CentOS Docker
安装 Docker Engine-Community
1.安装所需的软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.设置仓库yum
在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 仓库。之后,您可以从仓库安装和更新 Docker。
使用官方源地址(比较慢)
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
国内的一些源地址
阿里云
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
清华大学源
sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
3.更新仓库yum缓存
yum clean all
yum makecache
4.安装 Docker Engine-Community
安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本
sudo yum install docker-ce docker-ce-cli containerd.io
要安装特定版本的 Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
1.列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序
# yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable
2.通过其完整的软件包名称安装特定版本
# sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
5.启动 Docker
sudo systemctl start docker
sudo systemctl enable docker
6.查看 Docker启动状态
sudo systemctl status docker
b.使用zabbix-docker-compose
Compose 是用于定义和运行多容器 Docker 应用程序的工具。
通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。
1.安装git
sudo yum -y install git
2.安装docker-compose工具
github地址:
https://github.com/docker/compose
下载最新版的docker-compose文件
sudo curl -sL https://github.com/docker/compose/releases/download/2.7.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
若是github访问太慢,可以用daocloud下载
sudo curl -sL https://get.daocloud.io/docker/compose/releases/download/2.7.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
3.下载并运行zabbix-docker-compose编排代码
github地址:
https://github.com/zabbix/zabbix-docker
下载zabbix-docker-compose编排文件
创建/data目录
# mkdir /data
进入data
# cd /data
下载代码配置文件
# git clone https://github.com/zabbix/zabbix-docker.git
Cloning into 'zabbix-docker'...
remote: Enumerating objects: 67347, done.
remote: Counting objects: 100% (4701/4701), done.
remote: Compressing objects: 100% (1017/1017), done.
remote: Total 67347 (delta 3794), reused 4523 (delta 3664), pack-reused 62646
Receiving objects: 100% (67347/67347), 28.70 MiB | 9.71 MiB/s, done.
Resolving deltas: 100% (50295/50295), done.
# cd zabbix-docker
# ls -l
total 332
-rw-r--r-- 1 root root 951 Jul 26 14:05 build.json
-rwxr-xr-x 1 root root 1854 Jul 26 14:05 build.sh
-rw-r--r-- 1 root root 12229 Jul 26 14:05 docker-compose_v3_alpine_mysql_latest.yaml
-rw-r--r-- 1 root root 14349 Jul 26 14:05 docker-compose_v3_alpine_mysql_local.yaml
-rw-r--r-- 1 root root 13044 Jul 26 14:05 docker-compose_v3_alpine_pgsql_latest.yaml
-rw-r--r-- 1 root root 15383 Jul 26 14:05 docker-compose_v3_alpine_pgsql_local.yaml
-rw-r--r-- 1 root root 12186 Jul 26 14:05 docker-compose_v3_centos_mysql_latest.yaml
-rw-r--r-- 1 root root 14498 Jul 26 14:05 docker-compose_v3_centos_mysql_local.yaml
-rw-r--r-- 1 root root 12976 Jul 26 14:05 docker-compose_v3_centos_pgsql_latest.yaml
-rw-r--r-- 1 root root 15570 Jul 26 14:05 docker-compose_v3_centos_pgsql_local.yaml
-rw-r--r-- 1 root root 12152 Jul 26 14:05 docker-compose_v3_ol_mysql_latest.yaml
-rw-r--r-- 1 root root 14231 Jul 26 14:05 docker-compose_v3_ol_mysql_local.yaml
-rw-r--r-- 1 root root 12942 Jul 26 14:05 docker-compose_v3_ol_pgsql_latest.yaml
-rw-r--r-- 1 root root 15285 Jul 26 14:05 docker-compose_v3_ol_pgsql_local.yaml
-rw-r--r-- 1 root root 11917 Jul 26 14:05 docker-compose_v3_ubuntu_mysql_latest.yaml
-rw-r--r-- 1 root root 14075 Jul 26 14:05 docker-compose_v3_ubuntu_mysql_local.yaml
-rw-r--r-- 1 root root 12757 Jul 26 14:05 docker-compose_v3_ubuntu_pgsql_latest.yaml
-rw-r--r-- 1 root root 15134 Jul 26 14:05 docker-compose_v3_ubuntu_pgsql_local.yaml
drwxr-xr-x 19 root root 4096 Jul 26 14:05 Dockerfiles
drwxr-xr-x 2 root root 4096 Jul 26 14:05 env_vars
-rw-r--r-- 1 root root 45190 Jul 26 14:05 kubernetes.yaml
-rw-r--r-- 1 root root 18046 Jul 26 14:05 LICENSE
-rw-r--r-- 1 root root 5235 Jul 26 14:05 README.md
部署zabbix-docker-compose
# docker-compose -f docker-compose_v3_centos_mysql_latest.yaml up -d