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. 移动物体监控系统-sprint1声音报警子系统

    一.声卡驱动开发 1.1 声卡驱动架构 ——OSS开放式音频系统,声卡驱动中传统的OSS构架在02年被收购后即不开源,并且OSS的混音效果不好,因为产生了ALSA ——AlSA Linux系统高级音频 ...

  2. Python 创建用户界面之 PyQt5 的使用

    之前给大伙介绍了下 tkinter,有朋友希望小帅b对其它的 Python  GUI 框架也说道说道,那么今天就来说说 PyQt5 如何创建用户界面.   很多人学习python,不知道从何学起.很多 ...

  3. one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [3, 1280, 28, 28]], which is output 0 of LeakyReluBackward1, is at version 2;

    RuntimeError: one of the variables needed for gradient computation has been modified by an inplace o ...

  4. Vue视图渲染原理解析,从构建VNode到生成真实节点树

    前言 在 Vue 核心中除了响应式原理外,视图渲染也是重中之重.我们都知道每次更新数据,都会走视图渲染的逻辑,而这当中牵扯的逻辑也是十分繁琐. 本文主要解析的是初始化视图渲染流程,你将会了解到从挂载组 ...

  5. 2020-07-22:你觉得使用redis的主从复制的时候有什么点需要注意的吗?

    福哥答案2020-07-22: 1.主从同步缓冲区设定大小,如果进行全量复制耗时太长,进行部分复制时发现数据已经存在丢失的情况,必须进行第二次全量复制,致使slave陷入死循环状态.在全量复制的时候, ...

  6. 自己动手编写一个Mybatis插件:Mybatis脱敏插件

    1. 前言 在日常开发中,身份证号.手机号.卡号.客户号等个人信息都需要进行数据脱敏.否则容易造成个人隐私泄露,客户资料泄露,给不法分子可乘之机.但是数据脱敏不是把敏感信息隐藏起来,而是看起来像真的一 ...

  7. Remix+Geth 实现智能合约部署和调用详解

    Remix编写智能合约 编写代码 在线调试 实现部署 调用接口 Geth实现私有链部署合约和调用接口 部署合约 调用合约 获得合约实例 通过实例调用合约接口 Remix编写智能合约 编写代码 Remi ...

  8. DRF内置过滤组件与排序组件结合使用

    DRF内置过滤组件Filtering DRF提供了内置过滤组件Filtering,可以结合url路径的改变获取想要的数据,当然用户不可能在url访问路径中自己设置过滤条件,肯定是后端开发人员将前端页面 ...

  9. 手把手教你在win10下搭建pytorch GPU环境(Anaconda+Pycharm)

    Anaconda指的是一个开源的Python发行版本,其主要优点如下: Anaconda默认安装了常见的科学计算包,用它搭建起Python环境后不用再费时费力安装这些包: Anaconda可以创建互相 ...

  10. Python 使用BrowserMob Proxy + selenium 获取Ajax加密数据

    BrowserMob Proxy,简称 BMP,它是一个 HTTP 代理服务,我们可以利用它截获 HTTP 请求和响应内容. 第一步:先安装 BrowserMob Proxy 的包. pip inst ...