zoukankan      html  css  js  c++  java
  • docker 部署zabbix

    官网:https://www.zabbix.com/documentation/current/manual/installation/containers

    vim /etc/docker/daemon.json
    {
      "registry-mirrors": ["https://registry.docker-cn.com","https://nrbewqda.mirror.aliyuncs.com","https://dmmxhzvq.mirror.aliyuncs.com"]
    }


    systemctl restart docker

    #启动一个空的MySQL服务器实例
    docker run --name mysql-server -t
          -e MYSQL_DATABASE="zabbix"
          -e MYSQL_USER="zabbix"
          -e MYSQL_PASSWORD="zabbix_pwd"
          -e MYSQL_ROOT_PASSWORD="root_pwd"
          -d mysql:8.0
          --character-set-server=utf8 --collation-server=utf8_bin
          --default-authentication-plugin=mysql_native_password
    注:该容器未使用-v选项,也就是说所有的数据库都在容器中,容器的数据库中的表在/var/lib/mysql/zabbix/中


    #启动Zabbix Java gateway实例
    docker run --name zabbix-java-gateway -t
          -d zabbix/zabbix-java-gateway:latest

    #启动Zabbix server实例,并关联这个实例到已创建的MySQL服务器实例
    docker run --name zabbix-server-mysql -t
          -e DB_SERVER_HOST="mysql-server"
          -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"
          --link mysql-server:mysql
          --link zabbix-java-gateway:zabbix-java-gateway
          -p 10051:10051
          -d zabbix/zabbix-server-mysql:latest


    #启动Zabbix web 接口,并将它与MySQL服务器实例和Zabbix server实例关联
    docker run --name zabbix-web-nginx-mysql -t
          -e DB_SERVER_HOST="mysql-server"
          -e MYSQL_DATABASE="zabbix"
          -e MYSQL_USER="zabbix"
          -e MYSQL_PASSWORD="zabbix_pwd"
          -e MYSQL_ROOT_PASSWORD="root_pwd"
          --link mysql-server:mysql
          --link zabbix-server-mysql:zabbix-server
          -p 80:8080
          -d zabbix/zabbix-web-nginx-mysql:latest

    #安装zabbix客户端agent(安装完agent后监控本机时会异常,暂未排查出原因)
    docker run --name zabbix-agent
    -e ZBX_HOSTNAME="self"                       #该名称可自定义,监控本地宿主机时用该项
    -e ZBX_SERVER_HOST="172.17.0.1"                 #宿机上使用ip a命令查看到docker0网卡的IP
    -e ZBX_METADATA="client"                     #这个是设置元数据,在server上配置自动注册的时候用,可自定义
    -p 10050:10050
    -d zabbix/zabbix-agent:latest

    =================   以上都在docker中执行安装   ==================

     

             登录账密:Admin/zabbix

    客户端安装zabbix_agent(客户端为Centos7.4,非docker)

    关闭防火墙
    iptables -F && setenforce 0
    systemctl stop firewalld && systemctl disable firewalld
    sed -i "s/SELINUX=enforcing/SELINUX=disabled/"  /etc/selinux/config

    官网包下载:http://repo.zabbix.com/zabbix/5.0/

    wget http://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-agent-5.0.0-1.el7.x86_64.rpm
    rpm -ivh zabbix-agent-5.0.0-1.el7.x86_64.rpm
    vim /etc/zabbix/zabbix_agentd.conf
      PidFile=/var/run/zabbix/zabbix_agentd.pid
      LogFile=/var/log/zabbix/zabbix_agentd.log
      LogFileSize=0
      DenyKey=system.run[*]
      Server=172.16.186.20      #服务端IP
      ServerActive=172.16.186.20    #服务端IP
      Hostname=client1          #可自定义
      Include=/etc/zabbix/zabbix_agentd.d/*.conf

    systemctl restart zabbix-agent.service

    web端添加主机

    注:上图中主机名称是zabbix_agentd.conf中Hostname定义的名称,可见的名称、群组都可自定义,interface中的客户端是客户端IP,端口是10050

    注:上图中的模板选择Template OS Linux by Zabbix agent(其他模板也可以)

    监控本机的配置

    修改图标中的乱码

    字体下载

    docker  cp  simkai.ttf  <docker_nginx_ID>:/usr/share/zabbix/assets/fonts/
    docker exec -it <docker_nginx_ID> /bin/bash

                注:在容器中zabbix用户没有mv和cp的权限

    注:进入到nginx那个容器中打开/usr/share/zabbix/include/defines.inc.php文件,将原来的DejaVuSans更换为通过docker  cp复制进来的字体名字,然后刷新下web页面即可,如下

     
     

          欢迎一起讨论linux、开源

  • 相关阅读:
    阿里架构师说Kafka工作原理归纳,实践通俗易懂!我咋不信呢
    2020做Java的都看这篇文章,面试一次过、升职加薪,赶快来Get
    IDEA最牛配置,众享丝滑
    在IDEA中搭建Java源码学习环境并上传到GitHub上
    Linux基本命令
    正向代理与反向代理
    Spring Boot中使用MyBatis详解
    ftp命令详解
    CentOS7设置中文字符集
    CentOS7计划任务crontab
  • 原文地址:https://www.cnblogs.com/smlile-you-me/p/13066668.html
Copyright © 2011-2022 走看看