• docker-compose 部署 zabbix-server 5.0.11


    docker-compose 部署 zabbix-server 5.0.11

    docker-compose.yaml

    version: "3"
    services:
      mysql-server:
        image: mysql:5.7
        ports:
          - "3306:3306"
        environment:
          MYSQL_ROOT_PASSWORD: 123456
          #MYSQL_DATABASE: zabbix
          #MYSQL_USER: zabbix
          #MYSQL_PASSWORD: 123456
          TZ: Asia/Shanghai
        command: --character-set-server=utf8mb4
        restart: always
      zabbix-server:
        image: zabbix/zabbix-server-mysql:5.0.11-alpine
        #ports:
        #  - "10051:10051"
        environment:
          DB_SERVER_HOST: 127.0.0.1
          DB_SERVER_PORT: 3306
          MYSQL_DATABASE: zabbix
          MYSQL_USER: root
          MYSQL_PASSWORD: 123456
          TZ: Asia/Shanghai
        depends_on:
          - mysql-server
        restart: always
        network_mode: "host"
      zabbix-web:
        image: zabbix/zabbix-web-nginx-mysql:5.0.11-alpine
        ports:
          - "80:8080"
        environment:
          DB_SERVER_HOST: mysql-server
          DB_SERVER_PORT: 3306
          MYSQL_DATABASE: zabbix
          MYSQL_USER: root
          MYSQL_PASSWORD: 123456
          TZ: Asia/Shanghai
          ZBX_SERVER_HOST: zabbix-server
        depends_on:
          - mysql-server
          - zabbix-server
        restart: always
    
    • zabbix-server 使用 host 网络,以便监控 zabbix-server 本机
    • zabbix-web 注意端口暴露为 "80:8080",网上的很多教程都是 "80:80",是个小坑

    运行

    docker-compose up -d
    

    访问

    http://[zabbix-server-ip]

    • 初始账号密码: Admin zabbix

    其他操作

    停止

    docker-compose stop
    

    启动

    docker-compose start
    

    停止并删除容器(慎用)

    docker-compose down -v
    

    部署 zabbix-agent

    dnf 或者 yum 安装

    centos 8

    rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
    dnf install zabbix-agent2
    
    • 5.0 以后新增 zabbix-agent2(go语言版本),配置和老版 zabbix-agent 兼容

    centos 7

    rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
    yum install zabbix-agent2
    

    配置 /etc/zabbix/zabbix_agent2.conf,修改以下配置:

    Server=[zabbix-server-ip or zabbix-proxy-ip]
    ServerActive=[zabbix-server-ip or zabbix-proxy-ip]
    Hostname=node1
    

    启动:

    systemctl start zabbix-agent2
    

    设置开机启动:

    systemctl enable zabbix-agent2
    

    编译安装

    安装 zabbix-agent2 需要使用 golang,其安装方法这里不表。

    wget https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.11.tar.gz
    tar zxvf zabbix-5.0.11.tar.gz
    cd zabbix-5.0.11
    ./configure --prefix=/usr/local/zabbix -enable-agent2
    make
    make install
    
    • 需要开启 go mod,go env -w GO111MODULE=on && go env -w GOPROXY=https://goproxy.cn,direct
    • 默认配置文件:/usr/local/zabbix/etc/zabbix_agent2.conf
    • 二进制程序:/usr/local/zabbix/sbin/zabbix_agent2

    配置 systemd 启动文件 /usr/lib/systemd/system/zabbix-agent2.service:

    [Unit]
    Description=Zabbix Agent 2
    After=syslog.target
    After=network.target
    
    [Service]
    Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_agent2.conf"
    EnvironmentFile=-/etc/sysconfig/zabbix-agent2
    Type=simple
    Restart=on-failure
    PIDFile=/tmp/zabbix_agent2.pid
    KillMode=control-group
    ExecStart=/usr/local/zabbix/sbin/zabbix_agent2 -c $CONFFILE
    ExecStop=/bin/kill -SIGTERM $MAINPID
    RestartSec=10s
    User=zabbix
    Group=zabbix
    
    [Install]
    WantedBy=multi-user.target
    

    配置 /usr/local/zabbix/etc/zabbix_agent2.conf,修改以下配置:

    PidFile=/tmp/zabbix_agent2.pid
    LogFile=/tmp/zabbix_agent2.log
    Server=[zabbix-server-ip or zabbix-proxy-ip]
    ServerActive=[zabbix-server-ip or zabbix-proxy-ip]
    Hostname=node1
    

    添加 zabbix 用户

    useradd -s /sbin/nologin zabbix
    

    配置启动并设置开机启动

    systemctl daemon-reload
    systemctl enable zabbix-agent2
    systemctl start zabbix-agent2
    systemctl status zabbix-agent2
    

    zabbix-agent2 是 go 语言编写有个好处就是编译后没有组件依赖,直接拷贝二进制文件与配置文件到其他主机相同目录,添加 unit 启动文件,修改配置文件就可以直接运行了。

  • 相关阅读:
    for...else...
    js 代码运行中插入交互
    八皇后问题(python)
    多层for循环转递归/迭代
    迭代器/可迭代对象/生成器
    js,python,go 协程对比
    Promise精简总结
    PyQt常用组件用法总结
    PyQt5 接入 web 登录页
    C++求整型数组的和
  • 原文地址:https://www.cnblogs.com/leffss/p/14734102.html
Copyright © 2020-2023  润新知