Graphite Integration 会破坏 Ganglia/gmetad 吗?

Graphite Integration 会破坏 Ganglia/gmetad 吗?

我正在尝试将指标从 gmetad 转发到 graphite/carbon。配置后,carbon_servergmetad开始丢失指标。ganglia_prefixgmetad.conf

gmetad版本是3.3.5,carbon/whisper/graphite-web是0.9.8。

系统上没有 I/O 瓶颈,也没有 CPU 瓶颈(HP DL385G7 带有 2 个 SSD,组成 RAID0),我甚至在远程主机上配置了另一个 gmetad 来将指标发送到 graphite/carbon,但它也崩溃了。

还有其他人遇到过这种情况吗?

答案1

使用两个小的 bash 和 perl 脚本修复了这个问题(前面有肮脏的黑客攻击)

g2g.pl

#!/usr/bin/perl 

use XML::Simple; 


$now = time;
$ref = XMLin("-");
$clustername = $ref->{"CLUSTER"}{"NAME"};
foreach (@{$ref->{"CLUSTER"}{"HOST"}}) {
    $hostname = $_->{"NAME"};
    $hostname =~ s/\./_/g;
    $hostname = "here.goes.my.prefix.".$clustername.".".$hostname; 
    foreach (@{$_->{"METRIC"}}) {
        print "$hostname".".".$_->{"NAME"}." ".$_->{"VAL"}." ".$now."\n";
    }
}

ganglia2graphite.sh

#!/bin/sh 

while true ; do 
    nc localhost 8649 | /usr/local/bin/g2g.pl | nc -q1  localhost 2003
done

答案2

我遇到了同样的问题,但是上述 perl 脚本对我来说不起作用(失败并出现错误“不是 g2g.pl 上的 ARRAY 引用”)。

不过,我想我找到了解决办法。只需确保 carbon_server 是一个不带引号的 IP 地址。这对我来说似乎很有效:

carbon_server a.b.c.d
carbon_port 2003
graphite_prefix "ganglia"
write_rrds off

相关内容