溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

DockerV19.03.1怎么搭建zabbix4.2.5

發布時間:2022-02-16 10:43:39 來源:億速云 閱讀:159 作者:iii 欄目:開發技術
# DockerV19.03.1搭建Zabbix4.2.5全流程指南

## 一、環境準備與規劃

### 1.1 系統要求
- **操作系統**:Ubuntu 18.04 LTS / CentOS 7.6+
- **Docker版本**:19.03.1(需驗證`docker --version`)
- **硬件配置**:
  - 最低配置:2核CPU/4GB內存/20GB磁盤
  - 推薦配置:4核CPU/8GB內存/50GB磁盤(生產環境)

### 1.2 網絡規劃建議
| 服務名稱       | 容器端口 | 宿主機端口 | 協議  |
|----------------|----------|------------|-------|
| Zabbix Server  | 10051    | 10051      | TCP   |
| Zabbix Web     | 80       | 8080       | TCP   |
| MySQL          | 3306     | 3306       | TCP   |
| Zabbix Agent   | 10050    | 10050      | TCP   |

## 二、Docker環境配置

### 2.1 安裝Docker CE 19.03.1
```bash
# Ubuntu示例
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install -y docker-ce=5:19.03.1~3-0~ubuntu-$(lsb_release -cs)

2.2 配置Docker加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
sudo systemctl restart docker

三、Zabbix組件部署

3.1 創建專用網絡

docker network create --subnet 172.20.0.0/16 zabbix-net

3.2 MySQL數據庫部署

docker run -d \
  --name zabbix-mysql \
  --network zabbix-net \
  -e MYSQL_DATABASE="zabbix" \
  -e MYSQL_USER="zabbix" \
  -e MYSQL_PASSWORD="zabbix_pwd" \
  -e MYSQL_ROOT_PASSWORD="root_pwd" \
  -v /data/mysql:/var/lib/mysql \
  -p 3306:3306 \
  mysql:5.7 \
  --character-set-server=utf8 \
  --collation-server=utf8_bin

3.3 Zabbix Server部署

docker run -d \
  --name zabbix-server \
  --network zabbix-net \
  -e DB_SERVER_HOST="zabbix-mysql" \
  -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" \
  -v /etc/localtime:/etc/localtime:ro \
  -v /data/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \
  -v /data/zabbix/externalscripts:/usr/lib/zabbix/externalscripts \
  -p 10051:10051 \
  zabbix/zabbix-server-mysql:4.2.5

3.4 Zabbix Web界面部署

docker run -d \
  --name zabbix-web \
  --network zabbix-net \
  -e DB_SERVER_HOST="zabbix-mysql" \
  -e MYSQL_DATABASE="zabbix" \
  -e MYSQL_USER="zabbix" \
  -e MYSQL_PASSWORD="zabbix_pwd" \
  -e PHP_TZ="Asia/Shanghai" \
  -p 8080:80 \
  zabbix/zabbix-web-nginx-mysql:4.2.5

四、初始化配置

4.1 數據庫初始化

# 等待MySQL容器完全啟動(約2分鐘)
sleep 120

# 導入初始schema
docker exec -i zabbix-mysql mysql -uroot -proot_pwd zabbix < /usr/share/doc/zabbix-server-mysql*/create.sql.gz

4.2 Web界面配置

  1. 訪問 http://<宿主IP>:8080
  2. 按照向導完成配置:
    • Database type: MySQL
    • Database host: zabbix-mysql
    • Database port: 3306
    • Database name: zabbix
    • User: zabbix
    • Password: zabbix_pwd

五、高級配置

5.1 監控主機Agent部署

docker run -d \
  --name zabbix-agent \
  --network zabbix-net \
  -e ZBX_HOSTNAME="docker-host" \
  -e ZBX_SERVER_HOST="zabbix-server" \
  -e ZBX_SERVER_PORT=10051 \
  -v /:/rootfs:ro \
  -v /var/run:/var/run:ro \
  -v /sys:/sys:ro \
  --privileged \
  zabbix/zabbix-agent:4.2.5

5.2 配置自動發現規則

  1. 登錄Zabbix Web
  2. 進入 Configuration > Discovery > Create discovery rule
  3. 配置參數示例:
    
    Name: Docker Network Discovery
    IP range: 172.20.0.1-172.20.0.254
    Checks: Zabbix agent "system.uname"
    

六、故障排查

6.1 常見問題解決方案

問題現象 可能原因 解決方案
Web界面502錯誤 PHP-FPM未啟動 docker restart zabbix-web
Server無法連接MySQL 數據庫未初始化完成 等待5分鐘后檢查日志
監控數據不更新 時間不同步 檢查容器時區配置

6.2 日志查看方法

# 查看Server日志
docker logs -f zabbix-server

# 查看MySQL日志
docker exec zabbix-mysql tail -f /var/log/mysql/error.log

七、性能優化建議

7.1 容器資源限制

docker update \
  --cpus 2 \
  --memory 4g \
  --memory-swap 6g \
  zabbix-server

7.2 數據庫優化參數

# 在MySQL容器中創建my.cnf
docker exec -it zabbix-mysql bash -c 'cat > /etc/mysql/conf.d/zabbix.cnf <<EOF
[mysqld]
innodb_buffer_pool_size=1G
innodb_log_file_size=256M
max_connections=200
EOF'

八、備份與恢復

8.1 數據庫備份

docker exec zabbix-mysql mysqldump -uroot -proot_pwd zabbix | gzip > zabbix_backup_$(date +%Y%m%d).sql.gz

8.2 配置文件備份

tar czvf zabbix_configs_$(date +%Y%m%d).tar.gz /data/zabbix

九、版本升級路徑

9.1 升級注意事項

  1. 先備份所有數據
  2. 按順序升級:MySQL → Zabbix Server → Zabbix Web
  3. 測試環境驗證后再升級生產環境

9.2 升級命令示例

docker stop zabbix-web && docker rm zabbix-web
docker pull zabbix/zabbix-web-nginx-mysql:4.4.0
# 使用原有參數重新運行容器

十、參考資料

  1. Zabbix官方Docker文檔
  2. Docker 19.03發布說明
  3. MySQL 5.7優化指南

注意事項:本文基于Docker 19.03.1和Zabbix 4.2.5編寫,其他版本可能需要調整配置參數。生產環境部署前建議進行充分測試。 “`

該文檔包含約2300字,采用Markdown格式編寫,包含: - 多級標題結構 - 代碼塊(bash命令) - 表格(環境規劃/問題排查) - 有序/無序列表 - 強調文本(> 注意事項) - 網絡拓撲說明 - 版本兼容性提示

可根據實際環境需求調整端口映射、密碼等參數。建議部署前通讀全文理解各組件關系。

向AI問一下細節
推薦閱讀:
  1. DNS搭建
  2. gitlab搭建

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女