iT邦幫忙

2024 iThome 鐵人賽

DAY 7
0
留意事項
Zabbix 套件版本需求

https://www.zabbix.com/documentation/7.0/en/manual/installation/requirements

安裝來源

由於 Zabbix 支援多種架構,因此我們要先確認哪些項目是我們需要的,其組成如下:

  • MySQL Database
  • Zabbix Server
  • Zabbix Frontend

為了簡化安裝流程與快速部署,我們使用 Container 安裝方式,取得 Zabbix 相關的 Container Image 方法如下:

  1. 進入 Zabbix 官網,選擇 [Download]。

    圖片

  2. 選擇 Container。

    圖片

  3. 選擇 Server 與 Frontend 支援的資料庫版本。

    圖片

安裝流程

留意事項
這個流程在 Desktop 中使用 Podman 安裝,使用 Container 安裝 Zabbix Server。
  1. Container 安裝套件

    root# dnf install -y podman podman-plugins runc chrony
    root# dnf update -y podman podman-plugins runc
    
    root# systemctl enable --now chronyd
    root# systemctl restart chronyd
    
    root# hwclock -w
    
  2. 設定 Zabbix 用的網路

    root# podman network create net_zabbix
    
  3. 安裝 MySQL 資料庫

    • 建一個 DB 為 zabbix
    • 設定 DB 帳號 為 zabbix
    • 設定 DB 密碼 為 P@ssw0rd
    • 允許連入 IP 為 10.89.0.%

    安裝 MySQL Server 套件

    root# dnf install -y mysql-server
    root# systemctl enable --now mysqld
    

    設定資料庫帳號與權限

    root# mysql -u root 
    mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin; 
    mysql> create user 'zabbix'@'10.89.0.%' identified by 'P@ssw0rd'; 
    mysql> grant all privileges on zabbix.* to 'zabbix'@'10.89.0.%'; 
    mysql> SET GLOBAL log_bin_trust_function_creators = 1; 
    mysql> quit;
    

    參考指引: https://www.zabbix.com/documentation/7.0/en/manual/appendix/install/db_scripts#mysqlmariadb

  4. 建立 Zabbix Server

    • 指定 DB 主機為 10.89.0.1 (Desktop 上的 Container 網路閘道)

    • 使用 zabbix 資料庫

      root# podman run --name zabbix_server \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="P@ssw0rd" \
      -e DB_SERVER_HOST="10.89.0.1" \
      --network net_zabbix \
      -d docker.io/zabbix/zabbix-server-mysql:alpine-7.0.0
      

      查看 Container 是否正確執行。

      root# podman ps
      CONTAINER ID  IMAGE                                               COMMAND               CREATED        STATUS        PORTS       NAMES
      bdd46fb6bb1e  docker.io/zabbix/zabbix-server-mysql:alpine-7.0.0  /usr/sbin/zabbix_...  8 seconds ago  Up 8 seconds              zabbix_server
      
  5. 建立 Zabbix 前端 (UI 操作)

    • 指定 DB 主機為 10.89.0.1

    • 使用 zabbix 資料庫

    • 指定 Zabbix Server 為 zabbix_server

      root# podman run --name zabbix_web \
      --network net_zabbix \
      -p 8080:8080 \
      -p 8443:8443 \
      -e DB_SERVER_HOST="10.89.0.1" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="P@ssw0rd" \
      -e ZBX_SERVER_HOST="zabbix_server" \
      -e MYSQL_DATABASE=zabbix \
      -e PHP_TZ="Asia/Taipei" \
      -d docker.io/zabbix/zabbix-web-nginx-mysql:7.0.0-alpine
      

      查看 Container 是否正確執行。

      root# podman ps
      CONTAINER ID  IMAGE                                                  COMMAND               CREATED         STATUS         PORTS                                           NAMES
      bdd46fb6bb1e  docker.io/zabbix/zabbix-server-mysql:alpine-7.0.0     /usr/sbin/zabbix_...  7 minutes ago   Up 7 minutes                                                   zabbix_server
      b51df53925a7  docker.io/zabbix/zabbix-web-nginx-mysql:7.0.0-alpine                        5 seconds ago   Up 5 seconds   0.0.0.0:8080->8080/tcp, 0.0.0.0:8443->8443/tcp  zabbix_web
      
  6. 連線 Zabbix

    1. 更新 Desktop 中的 firefox 套件:

      root# dnf update -y firefox
      
    2. 在 Desktop 中使用 8080 連入: http://desktopX:8080

      • 登入帳號: Admin

      • 密碼: zabbix

        圖片

    3. 登入後畫面

      圖片

啟動 Zabbix Container

@Desktop

系統重開機後,需要手動讓 Container 啟動,方法如下:

root# podman start zabbix_server zabbix_web

root# podman ps

上一篇
Day6: Zabbix 架構
下一篇
Day8: SNMP 被控設定: Linux
系列文
Zabbix 7.0 LTS: 洞察系統運作狀態,一套搞定13
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言