您的位置:首页 > 运维架构 > Docker

ubuntu下安装配置部署zabbix——基于docker

2016-08-12 18:48 976 查看
最近听说zabbix这个很好用的监听工具,正好项目用得上,就花了点功夫研究了一下。

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。zabbix 由2部分构成,zabbix server 与可选组件zabbix agent。

zabbix-agent 部署在被监控机上面,zabbix-server (建议部署在另外一台主机上),zabbix-agent 会发送数据到zabbix-server 或者zabbix-server 主动索取数据. (zabbix.com 官网的manual 上面有安装配置) 。

安装zabbix-server,对比了各种说法我选择了一种最简单的:

基于Docker engine安装zabbix-server

首先安装docker

[plain] view
plain copy

 print?

sudo apt-get update  

sudo apt-get install curl  

curl -sSL https://get.docker.io/ | sudo sh  

重启

docker run hello-word

接下来根据https://hub.docker.com/r/monitoringartist/zabbix-3.0-xxl/  完成server的安装,命令如下:

[plain] view
plain copy

 print?

# create /var/lib/mysql as persistent volume storage  

docker run -d -v /var/lib/mysql --name zabbix-db-storage busybox:latest  

  

# start DB for Zabbix - default 1GB innodb_buffer_pool_size is used  

docker run \  

    -d \  

    --name zabbix-db \  

    -v /backups:/backups \  

    -v /etc/localtime:/etc/localtime:ro \  

    --volumes-from zabbix-db-storage \  

    --env="MARIADB_USER=zabbix" \  

    --env="MARIADB_PASS=my_password" \  

    monitoringartist/zabbix-db-mariadb  

  

# start Zabbix linked to started DB  

docker run \  

    -d \  

    --name zabbix \  

    -p 80:80 \  

    -p 10051:10051 \  

    -v /etc/localtime:/etc/localtime:ro \  

    --link zabbix-db:zabbix.db \  

    --env="ZS_DBHost=zabbix.db" \  

    --env="ZS_DBUser=zabbix" \  

    --env="ZS_DBPassword=my_password" \  

    monitoringartist/zabbix-3.0-xxl:latest  

# wait ~60 seconds for Zabbix initialization  

# Zabbix web will be available on the port 80, Zabbix server on the port 10051  

安装完server之后可以基于docker的命令执行一些对于zabbix的操作,例如:

显示running的zabbix服务:

docker ps


stop zabbix服务:

docker rm -f zabbix


访问zabbix-agent:

[plain] view
plain copy

 print?

docker exec -i zabbix sh -c 'zabbix_get -s192.168.1.104 -p10050 -k"system.uptime"'  

docker exec命令可以连接内部的shell

docker exec -ti zabbix /bin/bash

zabbix-server配置到此结束。

登入本地的ip就能进入zabbix的界面:http://192.168.1.198

默认用户名Admin,密码zabbix

zabbix-agent安装配置

zabbix-agent的安装很简单,配置会比较麻烦,首先到需要监控的机器上安装:

[plain] view
plain copy

 print?

sudo apt-get update  

sudo apt-get install zabbix-agent  

修改配置文件:/etc/zabbix/zabbix_agentd.conf

[plain] view
plain copy

 print?

Server=192.168.1.198  #server端ip  

ServerActive=192.168.1.198  #server端ip  

Hostname=192.168.1.104  #本机的ip或者本机的name    

启动服务:

service zabbix-agentd start


有的时候会有一个防火墙问题,防火墙开启相应端口:

[cpp] view
plain copy

 print?

iptables -A INPUT -p tcp -s 10.0.101.248 -m multiport --dports 10050,10051 -jACCEPT  

测试:在server端运行以下命令:

[plain] view
plain copy

 print?

docker exec -i zabbix sh -c 'zabbix_get -s192.168.1.104 -p10050 -k"system.uptime"'  

此时zabbix-agent安装完成了。

此时在server端的zabbix界面里面已经可以获取到数据了。

zabbix_agentd.conf配置文件详解:http://www.ttlsa.com/zabbix/zabbix_agentd-conf-description/

未完待续。。。。。




0

0

 

 

上一篇ubuntu下安装配置部署zabbix——mysql监控
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: