#!/bin/bash
# 检查脚本是否以root权限运行
if [[ $EUID -ne 0 ]]; then
echo “This script must be run as root”
exit 1
fi
# 安装Docker
apt-get update
apt-get -y install apt-transport-https ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo “deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable” | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get -y install docker-ce docker-ce-cli containerd.io
# 下载并启动Zabbix服务器容器
docker run -d \
–name zabbix-server \
-p 10051:10051 \
-e DB_SERVER_HOST=<db_server_host> \
-e MYSQL_USER=<mysql_user> \
-e MYSQL_PASSWORD=<mysql_password> \
-e MYSQL_DATABASE=<mysql_database> \
-e ZBX_SERVER_NAME=<zabbix_server_name> \
zabbix/zabbix-server-mysql:latest
# 下载并启动Zabbix代理容器
docker run -d \
–name zabbix-agent \
–link zabbix-server:zabbix \
-e ZBX_HOSTNAME=<zabbix_agent_hostname> \
-e ZBX_SERVER_HOST=<zabbix_server_host> \
zabbix/zabbix-agent:latest
# 下载并启动Grafana容器
docker run -d \
–name grafana \
-p 3000:3000 \
grafana/grafana:latest
# 打印登录信息
echo “Zabbix Web: http://<host>:8080/zabbix/”
echo “Grafana Web: http://<host>:3000/”
请注意,此脚本需要您先安装Docker,并使用docker run
命令手动下载和启动Zabbix和Grafana容器。在执行此脚本之前,请确保已经安装了Docker,并将脚本中的<db_server_host>
、<mysql_user>
、<mysql_password>
、<mysql_database>
、<zabbix_server_name>
、<zabbix_agent_hostname>
和<zabbix_server_host>
替换为您的数据库服务器主机名、MySQL用户、MySQL密码、MySQL数据库名、Zabbix服务器名称、Zabbix代理主机名和Zabbix服务器主机名。
执行脚本后,您将能够通过Zabbix和Grafana的Web界面进行监控和数据可视化。请确保将脚本中的<host>
替换为您的主机IP地址或域名。