1 docker服务的安装

1)在线安装docker服务

在线安装可以参考下面的安装步骤

a 安装相关依赖组件

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

b docker源安装配置

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

yum-config-manager --enable docker-ce-nightly

yum-config-manager --enable docker-ce-test

yum-config-manager --disable docker-ce-nightly

c 安装docker服务

yum -y install docker-ce docker-ce-cli containerd.io

d 验证安装完成

systemctl start docker 启动docker服务

systemctl enable docker 开机启动docker服务

docker ps -a 查看所有docker容器状态【运行和没运行的】

docker info 查看docker服务相关信息

2)离线安装docker服务

a 下载docker服务的tar包,下载地址:docker包下载地址

我这里下载的版本是 docker-18.03.0-ce.tgz

b 将下载完成的tgz包上传至服务器上任意目录,并使用命令解压

tar -xvf docker-18.03.0-ce.tgz

c 使用命令,将解压出来的文件夹docker下面的所有文件移动到/usr/bin目录下

mv docker/* /usr/bin/

d 验证安装完成

systemctl start docker 启动docker服务

systemctl enable docker 开机启动docker服务

docker ps -a 查看所有docker容器状态【运行和没运行的】

docker info 查看docker服务相关信息

2 zabbix/zabbix-appliance镜像文件下载及容器启动

1)在线拉取镜像:

a 使用命令

docker pull zabbix/zabbix-appliance:latest【镜像名 :后面的是tag标签,如果不指定tag标签版本号,默认拉取latest最新的】

b 拉取完成后,使用命令查看本地镜像仓库中已有的镜像

docker images

2)离线加载镜像:

a 如果安装的服务器A无法上网从官方镜像仓库拉取镜像,首先需要有一台可以上网并安装了docker服务的设备B,使用在线拉取镜像的方式,将镜像拉取到设备B上

b 在设备B上使用命令,将image镜像文件导出成文件

docker save -o ./zabbix-appliance.tar zabbix/zabbix-appliance:latest

参数解释:

-o:输出到文件,后面跟文件路径和文件名 以及需要导出的【镜像:tag标签】 ./zabbix-appliance.tar

c 再将该文件从设备B拷贝到服务器A上,在使用命令,将镜像加载到服务器A上的镜像仓库中

docker load -i zabbix-appliance.tar

【注意】:docker在导出、导入镜像时,有2个命令可供使用,docker export/import || docker save/load ,他们的区别,可以参考其他的博文地址进行详细理解docker export save区别

3 运行docker,并将容器内的mysql数据映射到本地文件夹中【避免docker被删除后,监控数据无法恢复】

命令:

docker run --name zabbix \

-p 10051:10051 \

-p 8080:80 \

-v /opt/data/alertscripts:/usr/lib/zabbix/alertscripts \

-v /opt/data/mysql:/var/lib/mysql \

-e -e PHP_TZ="Asia/Shanghai" \

-d zabbix/zabbix-appliance:latest

【注意】如果服务器开启了防火墙服务,需要开放10051和8080端口,以便zabbix的监听端口和web服务的访问端口可正常使用

4 配置zabbix服务端

容器运行后,可以访问服务器ip地址+端口8080的zabbix服务端



输入默认用户名密码: Admin/zabbix 即可登录监控平台

1)修改平台语言,方便阅读【如果英文好,也可以不改】

2)配置监控模板

按照图上的步骤,依次点击,进入【创建模板】页面

依次输入【模板名称】、【可见模板名称】、选择【群组】,点击【确定】后,模板添加成功

在模板列表中找到刚才添加成功的模板,点击该模板,进入模板配置页面

依次点击【应用集】、【监控项】,给模板中添加需要监控的指标项

【应用集】:

创建应用集

输入应用集的名称,点击【添加】

【监控项】

点击【监控项】进入监控项页面

依次在监控项页面中输入需要监控的名称、类型、键值、信息类型、单位、更新间隔,选定【应用集】

【注意】:

这篇文章介绍的是配合perfmon如何对windows进行性能指标监控,这里需要选择的【类型】为Zabbix客户端,【键值】固定使用 perf_counter[xxxxxxxx]的格式来进行添加,括号中的值需要根据被监控的windows计数器项来进行填写,比如:

[\Process(QQ)% Processor Time]监控进程QQ的CPU占用率;

[\Processor(_Total)% Processor Time]监控系统所有进程的CPU占用率,即系统CPU占用率;

[\Process(QQ)\Private Bytes]监控进程QQ的分配内存大小【windows计数器返回的监控单位是:Bytes,如果需要转换为MByte或GByte,需要再添加一个类型为【可计算】的监控项,后面会讲到】;

填写完成后,点击【添加】保存

3)添加【主机】

点击下图上的【主机】进入详细页面,再点击【创建主机】进入添加主机页面

依次填写下列参数:【主机名称】需用英文填写,勾选【群组】,填写被监控windows主机的ip地址,端口默认10050不作修改

接着点击【模板】,跳转到模板页面,选择刚才创建的监控模板,之后点击【添加】

【注意】

被监控的windows客户端需要关闭windows防火墙,或者在防火墙规则中添加10050端口,以便服务端可以与该客户端进行数据通信

添加完成后,可以在【主机】列表页面看到新添加的主机,如果该主机上已经安装好zabbix-agent客户端后,可以看到【ZBX】显示为绿色状态,表示服务端与该客户端通信正常

5 windows客户端安装zabbix-agent

windows客户端安装可以参考其他博文: zabbix-agent安装教程

安装后需要注意配置好服务端IP地址,监听端口默认10050

【注意】

在命令行启动zabbix-agent时,需要使用【管理员】身份来运行脚本,否则会提示连接失败!!

6 将监控返回的数据进行单位转换后,以图形曲线的方式展示在网站上

a)根据已配置类型为【zabbix客户端】的监控项,返回的最新数据,再新配置一个类型为【可计算的】监控项

【类型】选择:可计算的

【键值】:自定义,不重复即可

【公式】: 这里使用固定的语法格式 last("xxxxxx") last()可更换为其他函数avg(),max(),min()等,具体可以参考官方文档介绍:

可计算项介绍

触发器函数介绍

括号中【xxxx】所代表的值必须是之前已经监控的键值, 例如上图中的 perf_counter[\Process(tianjingang)% Processor Time ,是已经在该平台中有监控项的数据

可以根据自己的需求,进行对应的数学运算,比如:

last("perf_counter[\Process(_Total)\% Processor Time]")/8 取最后一次系统占用CPU资源的指标,再除以8【笔者电脑为8核,这里算单核所占CPU使用率】

last("perf_counter[\Process(QQ)\Working Set - Private]")/1024/1024/1024 取最后一次QQ进程的使用内存的值【这里返回的最小单位是Bytes】,将其转换为GByte。

7 根据监控返回的数据创建对应的曲线图形

依次点击下图步骤,进入【仪表盘】界面

点击【创建仪表盘】

输入相关【用户】和【仪表盘名】信息

点击页面,添加【构件】



在上图红框中依次输入构件名称,勾选需要监控的主机,及对应的监控项数据,这里,就选择新建的主机及新建的【可计算的】类型的监控项,点击【添加】

之后【保存设置】,即可看到被监控主机返回的监控项数据及对应的曲线

docker搭建zabbix收集windows计数器性能数据的更多相关文章

  1. docker搭建zabbix

    本次使用docker搭建zabbix的组合是mysql+docker+zabix-server 1 先安装数据库mysql docker run --name zabbix-mysql-server ...

  2. Docker搭建zabbix+grafana监控系统

    一.准备工作 1.mysql数据库:192.168.1.5 2.nginx服务:192.168.1.10 3.docker服务器:192.168.1.20 4.zabbix客户端若干 二.docker ...

  3. docker+zabbix,使用docker搭建zabbix服务

    Zabbix 介绍 zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵 ...

  4. Linux:监测收集linux服务器性能数据工具Sysstat的使用与安装

    Sysstat是一个工具集,包括sar.pidstat.iostat.mpstat.sadf.sadc.其中sar是其中最强大,也是最能符合我们测试要求的工具,同时pidstat也是非常有用的东东,因 ...

  5. 【Zabbix】在CentOS 7上搭建Zabbix服务,收集Windows客户端计数器性能数据(含过程中遇到的问题解决方法)

    1.环境 1.1.关闭防火墙 命令:systemctl stop firewalld 或者 systemctl stop firewalld.service (备注:相应的,若要开启防火墙,将对应的& ...

  6. Docker 搭建 ELK 收集并展示 tomcat 日志

    架构 前端展示 --> 索引搜索 <-- 日志提取及过滤 --> 日志缓存 <-- 日志收集 Kibana --> Elastash <-- Logstash -- ...

  7. docker搭建日志收集系统EFK

    EFK Elasticsearch是一个数据搜索引擎和分布式NoSQL数据库的组合,提过日志的存储和搜索功能. Fluentd是一个消息采集,转化,转发工具,目的是提供中心化的日志服务. Kibana ...

  8. zabbix 自定义 windows 监控项

    zabbix获取windows服务器上数据C:\zabbix_agents\conf\zabbix_agentd.win.confUserParameter=conncount,d:\\tools\\ ...

  9. .Net最佳实践3:使用性能计数器收集性能数据

    本文值得阅读吗? 本文讨论我们如何使用性能计数器从应用程序收集数据.我们将先了解的基本知识,然后我们将看到一个简单的示例,我们将从中收集一些性能数据. 介绍: - 我的应用程序的性能是最好的,像火箭 ...

随机推荐

  1. Vuex详细教程

    1.认识Vuex 1.1Vuex是做什么的 官方解释:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用 集中式存储管理 应用的所有组件的状态,并以相应的规则保证状态以一种可预测的 ...

  2. async和await的使用总结 ~ 竟然一直用错了c#中的async和await的使用。。

    对于c#中的async和await的使用,没想到我一直竟然都有一个错误.. ..还是总结太少,这里记录下. 这里以做早餐为例 流程如下: 倒一杯咖啡. 加热平底锅,然后煎两个鸡蛋. 煎三片培根. 烤两 ...

  3. 在Ubuntu18.04系统里面安装VMware tools遇到的问题 以及解决办法

    问题1:Ubuntu18.4下安装VMware Tools 一直提示 “what is the location of the ifconfig program on your manchine”. ...

  4. elasticsearch技术解析与实战ES

    elasticsearch技术解析与实战ES 下载地址: https://pan.baidu.com/s/1NpPX05C0xKx_w9gBYaMJ5w 扫码下面二维码关注公众号回复100008 获取 ...

  5. 剑指offer之字符串是否为数值

    1. 题目 这是<剑指offer>上的一道题,刚开始觉得这是一道挺简单的题目,后来发现自己太年轻了,考虑的因素太少了,思考了而是分钟还是无从下手,看了作者的思路深深被他折服了,题目如下: ...

  6. 动态路由 - EIGRP

    EIGRP 特性 EIGRP(增强内部网关路由协议)是思科的私有协议,属于距离矢量路由协议,但又具有链路状态的特性.并且支持 VLSM(可变长子网和无类路由协议).但在本质上说还是传送路由条目. 具有 ...

  7. dom4j解析xml时报出文件提前结束

    在写javaweb小项目的时候,用dom4j解析xml报出如下错误: org.dom4j.DocumentException:Error    .......    Nested exception: ...

  8. java 序列化流与反序列化流

    一 对象序列化流ObjectOutputStream ObjectOutputStream 将 Java 对象的基本数据类型和图形写入 OutputStream.可以使用 ObjectInputStr ...

  9. P6087 [JSOI2015]送礼物 01分数规划+单调队列+ST表

    P6087 [JSOI2015]送礼物 01分数规划+单调队列+ST表 题目背景 \(JYY\) 和 \(CX\) 的结婚纪念日即将到来,\(JYY\) 来到萌萌开的礼品店选购纪念礼物. 萌萌的礼品店 ...

  10. 学长小清新题表之UOJ 14.DZY Loves Graph

    学长小清新题表之UOJ 14.DZY Loves Graph 题目描述 \(DZY\)开始有 \(n\) 个点,现在他对这 \(n\) 个点进行了 \(m\) 次操作,对于第 \(i\) 个操作(从 ...