ganglia配置文件gmond.conf详解

Ganglia简介

Ganglia是一款为HPC(高性能计算)集群而设计的可扩展的分布式监控系统,它可以监视和显示集群中的节点的各种状态信息,它由运行在各个节点上的gmond守护进程来采集CPU、内存、硬盘利用率、I/O负载、网络流量情况等方面的数据,然后汇总到gmetad守护进程下,使用rrdtool存储数据,最后将历史数据以曲线方式通过PHP页面呈现。

Ganglia的特点如下:

  • 良好的扩展性,分层架构设计能够适应大规模服务器集群的需要
  • 负载开销低,支持高并发
  • 广泛支持各种操作系统(UNIX等)和cpu架构,支持虚拟机

gmond.conf配置文件

这里对于ganglia的安装不再赘述,主要讲解gmond.conf配置文件内容。

Ganglia监控客户端gmond安装完成后,配置文件位于Ganglia安装路径的etc目录下,名称为 gmond.conf,使用yum或者RPM包安装的话位于/etc/ganglia/gmond.conf

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
globals {
daemonize = yes #是否后台运行,这里表示以后台的方式运行
setuid = yes #是否设置运行用户,在 Windows 中需要设置为 false
user = ganglia #设置运行的用户名称,必须是操作系统已经存在的用户,默认是 ganglia
debug_level = 0 #调试级别,默认是 0,表示不输出任何日志,数字越大表示输出的日志越多
max_udp_msg_len = 1472
mute = no #字面意思是“哑巴”,是否发送监控数据到其他节点,设置为 yes 表示本节点将不再广播任何自己收集到的数据到网络上
deaf = yes #是否接受其他节点发送过来的监控数据,设置为 yes 表示本节点将不再接收任何其他节点广播的数据包
allow_extra_data = yes #是否发送扩展数据
host_dmax = 400 /*secs. Expires (removes from web interface) hosts in 1 day */
#是否删除一个节点,0 代表永远不删除,0 之外的整数代表节点的不响应时间,超过这个时间后,Ganglia 就会刷新集群节点信息进而删除此节点
host_tmax = 20 /*secs */
cleanup_threshold = 300 /*secs */ #gmond 清理过期数据的时间
gexec = no #是否使用 gexec 来告知主机是否可用,这里不启用
# By default gmond will use reverse DNS resolution when displaying your hostname
# Uncommeting following value will override that value.
# override_hostname = "mywebserver.domain.com"
# If you are not using multicast this value should be set to something other than 0.
# Otherwise if you restart aggregator gmond you will get empty graphs. 60 seconds is reasonable
send_metadata_interval = 30 /*secs */ #在单播协议中,新添加的节点在多长时间内响应一下以表示自己的存在,0 代表仅在 gmond 启动时通知一次,单位秒

}

/*
* The cluster attributes specified will be used as part of the <CLUSTER>
* tag that will wrap all hosts collected by this instance.
*/
cluster {
name = "bcclm1" #集群的名称,是区分此节点属于某个集群的标志,必须和监控服务端 data_source 中的某一项名称匹配
owner = "unspecified" #节点的拥有者,也就是节点的管理员
latlong = "unspecified" #节点的坐标,经度、纬度等,一般无需指定
url = "unspecified" #节点的 URL 地址,一般无需指定
}

/* The host section describes attributes of the host, like the location */
host {
location = "unspecified" #节点的物理位置,一般无需指定
}

/* Feel free to specify as many udp_send_channels as you like. Gmond
used to only support having a single channel */
udp_send_channel { #udp 包的发送通道
#bind_hostname = yes # Highly recommended, soon to be default.
# This option tells gmond to use a source address
# that resolves to the machine's hostname. Without
# this, the metrics may appear to come from any
# interface and the DNS names associated with
# those IPs will be used to create the RRDs.
# mcast_join = 239.2.11.71 #指定发送的多播地址,其中 239.2.11.71 是一个 D 类地址。如果使用单播模式,则要写 host = host1,在单播模式下也可以配置多个 udp_send_channel
host = 172.16.203.51
port = 8649 #监听端口
# ttl = 1
}

/* You can specify as many udp_recv_channels as you like as well. */
udp_recv_channel { #接收 udp 包配置
#mcast_join = 239.2.11.71 #指定接收的多播地址,同样也是 239.2.11.71 这个 D 类地址
port = 8649 #监听端口
#bind = 239.2.11.71 #绑定地址
retry_bind = true
# Size of the UDP buffer. If you are handling lots of metrics you really
# should bump it up to e.g. 10MB or even higher.
# buffer = 10485760
}

/* You can specify as many tcp_accept_channels as you like to share
an xml description of the state of the cluster */
tcp_accept_channel {
port = 8649 #通过 tcp 协议监听的端口,在远端可以通过连接到 8649 端口得到监控数据
# If you want to gzip XML output
gzip_output = no
}
hoxis wechat
一个脱离了高级趣味的程序员,关注回复1024有惊喜~
赞赏一杯咖啡
0%