基本用法

基础环境

操作系统 硬件配置
CentOS 7 Server 磁盘:40GB 内存:8GB 网卡:ens3(外网)

网络配置

# vim ifcfg-ens3
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
NAME=ens3
DEVICE=ens3
ONBOOT=yes
IPADDR=192.168.200.11
NETMASK=255.255.255.0
GATEWAY=192.168.200.1
DNS1=114.114.114.114

部署Collectd

安装Collectd

# yum install epel-release
# yum makecache
# yum install collectd -y
# systemctl start collectd
# systemctl enable collectd
# setenforce 0
# vim /etc/selinux/config
SELINUX=disabled

配置Collectd

### 收集信息并输出到日志
# vim /etc/collectd.conf
LoadPlugin cpu
LoadPlugin interface
LoadPlugin load
LoadPlugin memory LoadPlugin logfile
<Plugin logfile>
LogLevel info
File "/var/log/collectd.json.log"
Timestamp true
PrintSeverity false
</Plugin>
LoadPlugin write_log
# systemctl restart collectd

高级用法

输出信息到kafka

下载collectd源码包

# yum install yum-utils rpm-build -y
# yumdownloader --source collectd
### 安装的时候会弹一堆root用户告警,但是不会影响安装
# rpm -i collectd-5.7.1-2.el7.src.rpm

修改collectd编译配置

# cd ~/rpmbuild/SPECS
### 编辑配置文件添加如下内容,然后将--disable-write_kafka修改为--enable-write_kafka
# vim collectd.spec
%package write_kafka
Summary: Kafka output plugin for collectd
Group: System Environment/Daemons
Requires: %{name}%{?_isa} = %{version}-%{release}
BuildRequires: librdkafka-devel
%description write_kafka
This plugin can send data to Kafka. --enable-write_kafka \ %{_libdir}/collectd/write_kafka.so

编译collectd

# cd ~/rpmbuild/SPECS
# rpmbuild -bb collectd.spec

安装collectd

# yum autoremove collectd
# cd ~/rpmbuild/RPMS/x86_64
# rpm -i collectd-5.7.1-2.el7.centos.x86_64.rpm

配置Kafka

### 参考《Kafka基本使用》部署Kafka,并创建主题"collectd"
# bin/kafka-topics.sh --create --zookeeper 192.168.200.13:2181 --replication-factor 1 --partitions 1 --topic collectd
# bin/kafka-topics.sh --list --zookeeper 192.168.200.13:2181

配置Collectd

LoadPlugin cpu
LoadPlugin interface
LoadPlugin load
LoadPlugin memory LoadPlugin write_kafka
<Plugin write_kafka>
Property "metadata.broker.list" "192.168.200.13:32771,192.168.200.13:32770,192.168.200.13:32769"
<Topic "collectd">
Format JSON
</Topic>
</Plugin>

测试安装

# bin/kafka-console-consumer.sh --bootstrap-server 192.168.200.13:32771 --topic collectd --from-beginning

Collectd基本使用的更多相关文章

  1. logsatsh input 插件之 collectd

    logsatsh input 插件之 collectd 标签(空格分隔): logstash 作用:用于监控内存,cpu,磁盘I等信息 未完待续,时间未定. 参考: logstash 官网 elast ...

  2. 使用 Grafana、collectd 和 InfluxDB 打造现代监控系统

    想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的: 采集数据(collectd)-> 存储数 ...

  3. OpenStack collectd的从零安装客户端

    1.查看是否需要增加yum 源 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [root@node-12 ~]# yum search collectd Loaded plugin ...

  4. OpenStack collectd的从零安装服务端

    安装collectd包操作同客户端相同,不在赘述 配置文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 2 ...

  5. 聊聊 Statsd 和 Collectd 那点事!

    StatsD 是由 Etsy 开发并发布的汇总和总结应用指标的一个简单的守护进程,近些年来发展迅速,已经变成了一个用于收集应用性能指标的统一的协议. 关于 Statsd 的使用已经有很多文章介绍过,所 ...

  6. 使用collectd与visage收集kvm虚拟机性能实时图形

    软件功能: 通过collectd软件来监控收集kvm虚拟机的性能数据,包含cpu,memory.磁盘IO.网络流量等 通过visage软件将收集到的数据绘制图形. 安装: 系统环境:ubuntu12. ...

  7. 性能测试监控:Jmeter +InfluxDB +collectd +Grafana

    虚拟机ip 192.168.180.128 Influxdb Influxdb是一个开源的分布式时序.时间和指标数据库,使用go语言编写,无需外部依赖. 它有三大特性: 时序性(Time Series ...

  8. collectd使用

    1.什么是collectd collectd是一款基于C语言研发的插件式架构的监控软件,它可以收集各种来源的指标,如操作系统,应用程序,日志文件和外部设备,并存储此信息或通过网络提供.这些统计数据可用 ...

  9. collectd+influxDB+Grafana搭建性能监控平台

    网上查看了很多关于环境搭建的文章,都比较久远了很多安装包源都不可用了,今天收集了很多资料组合尝试使用新版本来搭建,故在此记录. 采集数据(collectd)-> 存储数据(influxdb) - ...

  10. collectd 检测cpu使用率

    环境配置 1. install epel https://www.cyberciti.biz/faq/installing-rhel-epel-repo-on-centos-redhat-7-x/ 2 ...

随机推荐

  1. Oracle视图的使用

    --视图的语法 create [ or replace ] [NO Force | Force] View schema.view_name--视图名称 [(alias,...)inline_cons ...

  2. AngularJS学习笔记(四) 自定义指令

    指令(directive)是啥?简单来说就是实现一定功能的XXX...之前一直用的ng-model,ng-click等等都是指令.当我有一个ng没提供的需求的时候,就可以自定义个指令.指令的好处显而易 ...

  3. JS判断2个时间是否在同一周

    function isSameWeek(old, now) { var oneDayTime = 1000 * 60 * 60 * 24; var old_count = parseInt(+old ...

  4. python实现列队

    1 列队定义 队列是项的有序结合,其中添加新项的一端称为队尾,移除项的一端称为队首.当一个元素从队尾进入队列时,一直向队首移动,直到它成为下一个需要移除的元素为止. 最近添加的元素必须在队尾等待.集合 ...

  5. 【leetcode刷题笔记】Palindrome Partitioning

    Given a string s, partition s such that every substring of the partition is a palindrome. Return all ...

  6. 制作SD卡img文件,并扩容

    /********************************************************************************** * raspi-config E ...

  7. [原]NYOJ-字符串替换-113

    大学生程序代写 /*http://acm.nyist.net/JudgeOnline/problem.php?pid=113 字符串替换 时间限制:3000 ms  |  内存限制:65535 KB  ...

  8. BZOJ5461: [PKUWC2018]Minimax

    BZOJ5461: [PKUWC2018]Minimax https://lydsy.com/JudgeOnline/problem.php?id=5461 分析: 写出\(dp\)式子:$ f[x] ...

  9. ECMAScript基本函数、概念区分总结

    1.使用Number()和parseInt() parseFloat()转换区别. 详见<JavaScript高级程序设计>P30 Number()可以针对任何类型. parseInt() ...

  10. IIC编程1:i2c-tools使用

    安装: apt-get install libi2c-dev i2c-tools 检测i2c总线数目 用i2cdetect检测有几组i2c总线在系统上: i2cdetect -l 可以看到系统中有9组 ...