zoukankan      html  css  js  c++  java
  • 利用Dock快速部署zabbix

    OS
    RHEL 7.3
    Docker版本
    18.09
    Zabbix版本
    4.0

    一、安装docker

    1、以rpm包方式安装docker

    下载rpm包并使用yum localinstall安装,以18.09为例,需安装以下rpm包

    containerd.io-1.2.5-3.1.el7.x86_64.rpm 
    docker-ce-18.09.6-3.el7.x86_64.rpm 
    docker-ce-cli-18.09.6-3.el7.x86_64.rpm

    下载地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages

    2、YUM方式安装docker(参考https://cloud.tencent.com/developer/labs/lab/10054

    a、首先安装 Docker 必要依赖包 :

    yum install -y yum-utils device-mapper-persistent-data lvm2

    b、由于自带 yum 没有 Docker-CE 所以我们需要先增加 docker repo:

    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

    c、用 yum 安装 Docker:

    yum install -y docker-ce
     

    二、镜像下载、导出、导入

    国内连接docker.io速度不稳定,用稳定的方式获取镜像再导入本地比较稳妥。

    镜像拉取

    docker pull zabbix/zabbix-java-gateway:alpine-4.0-latest
    docker pull zabbix/zabbix-server-mysql:alpine-4.0-latest
    docker pull zabbix/zabbix-web-nginx-mysql:alpine-4.0-latest

    镜像导出

    docker save  docker.io/zabbix/zabbix-java-gateway:alpine-4.0-latest -o /tmp/zabbix-java-gateway-4.0.tar
    docker save  docker.io/zabbix/zabbix-server-mysql:alpine-4.0-latest -o /tmp/zabbix-server-4.0.tar
    docker save  docker.io/zabbix/zabbix-web-nginx-mysql:alpine-4.0-latest -o /tmp/zabbix-web-4.0.tar

    镜像导入

    docker load -i zabbix-java-gateway-4.0.tar
    docker load -i zabbix-server-4.0.tar
    docker load -i zabbix-web-4.0.tar

    三、容器安装及运行

    1、安装mysql

    ##先创建持久化存储目录
    mkdir -p /data/mysql/date
    ##部署mysql容器
    docker run --name mysql -v /data/mysql/date:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=password -v /etc/localtime:/etc/localtime:ro -p 3306:3306
    -d mysql:latest

    2、如需接入jmx监控,要先安装zabbix-java-gateway

    docker run --name zabbix-java-gateway 
        -p 10052:10052 
        -v /etc/localtime:/etc/localtime:ro 
        -d zabbix/zabbix-java-gateway:alpine-4.0-latest

    3、再运行zabbix-server

    docker run --name zabbix-server -t 
          -e DB_SERVER_HOST="mysql_ip" 
          -e MYSQL_DATABASE="zabbix" 
          -e MYSQL_USER="root" 
          -e MYSQL_PASSWORD="password" 
          -e MYSQL_ROOT_PASSWORD="password" 
          -e ZBX_JAVAGATEWAY="zabbix-java-gateway" 
          -e ZBX_DEBUGLEVEL="3" 
          -e ZBX_JAVAGATEWAY_ENABLE="true" 
          -v /etc/localtime:/etc/localtime:ro 
          -p 10051:10051 
          --link zabbix-java-gateway 
          -d zabbix/zabbix-server-mysql:alpine-4.0-latest

    4、最后运行zabbix-web

    docker run --name zabbix-web -t 
          -e DB_SERVER_HOST="mysql_ip" 
          -e MYSQL_DATABASE="zabbix" 
          -e MYSQL_USER="root" 
          -e MYSQL_PASSWORD="password" 
          -e MYSQL_ROOT_PASSWORD="password" 
          -e PHP_TZ="Asia/Shanghai" 
          -v /etc/localtime:/etc/localtime:ro 
          --link zabbix-server 
          -p 80:80 
          -d zabbix/zabbix-web-nginx-mysql:alpine-4.0-latest 
    PHP_TZ务必设置,因为在容器里面更改的时区是无效的,无论是改了php.ini的date.timezone,还是改nginx的autoindex_localtime为on都没用

    四、验证
    访问宿主机80端口即可访问zabbix
    初始账号:Admin
    初始密码:zabbix

    五、zabbix-agent配置
    #zabbix服务端IP(必改)
    Server=192.168.1.1 
    #客户端监听地址(默认10050)
    ListenPort=10050
    #主动获取模式zabbix服务端IP
    ServerActive=192.168.1.1
    #客户端所在主机名称,必须与web中配置的名称(Name)一致(必改)
    Hostname=agent-name 

                                         
  • 相关阅读:
    [Andriod]计时器实现-基于线程消息机制三种方式
    [Android]语音识别中出现的问题和经验
    [工具]SublimeText编辑器一些设置-C++编译运行
    [工具]SublimeText编辑器一些设置-JAVA编译运行
    [HTML5]网页代码编辑器
    [Jetty]基于Java Servlet的支持WebSocket的服务器
    [网络包抓取分析软件]Wireshark
    [网络包抓取分析软件]Fiddler
    [JAVA]在Eclipse中使用JUnit4进行单元测试-1
    [JAVA]在Eclipse中使用JUnit4进行单元测试-2
  • 原文地址:https://www.cnblogs.com/victorfrost/p/11378250.html
Copyright © 2011-2022 走看看