Ganglia的安装、配置、运行

一、安装ganglia:
网上示例很多,对该部分的翻译后续再跟进。
二、配置ganglia:
默认的配置仅仅能使ganglia工作,如果了解比默认配置多的配置项,能帮助你更好的使用ganglia做监控部署。
(1)gmod:
安装在每个想监控的节点上,与操作系统交互获取度量信息(cpu使用率、内存、网络以及其他可通过自定义拓展的度量)并与集群内其他节点共享。每个在集群内的gmod实例知晓所有gmond所在节点的度量值,并通过XML格式的dump对外提供访问,gmetad通过gmond的连接端口连接。

1.拓扑结构
gmond的默认拓扑结构采用广播的方式(multicast),意味着所有集群内节点发送并接受度量信息,并以hash table的结构保存到各自的内存数据库中,包括所有集群节点的度量信息。如下图所示:
Ganglia的安装、配置、运行_第1张图片
上图图解最重要的是与gmond deamon全然不同的性质。在内部,gmond发送和接受两种行为是无关联的(正如图中垂直虚线所示)。gmond不会自我交互,它只会向网络中发送度量信息。任何本地节点的信息获取都会经过sender传输到网络中,再由receiver从网络中收集。
这种拓扑对大多数场景适用,但某些案例下,指定少数监听者比每个节点都监听集群内度量信息要更行之有效,因为每个节点都监听会浪费额外的cpu,更多细节详见第三章。
通过“聋哑”模式,如图2-2,可以消除大集群内的过度联系。聋人模式和哑人模式使一些gmond按特定的模式工作,如收集或者发送。哑人模式意味着节点不对外传输数据,但收集集群内其他节点的度量信息。聋人模式意味着该实例不接受网络中的度量信息,但它不是哑巴,它会持续向网络中的其他监听节点发送度量信息。
并非所有的拓扑模型都要求使用广播。当广播不是第一选择的时候,聋哑模式的拓扑可由UDP单播实现。
或者,可以混合使用“聋哑”模式和默认的拓扑创建适合你环境的系统架构。唯一的拓扑要求如下所述:
1.在集群内至少有一个gmond实例负责接收网络中的所有度量信息。
2.gmetad必须定期轮训gmond以拉去集群状态信息。
Ganglia的安装、配置、运行_第2张图片
Ganglia的安装、配置、运行_第3张图片

然而真实实践中,不具备广播连通性的节点不需要配置成"deaf"模式;他们可以使用127.0.0.1地址为自己发送消息,并保留自己的本地度量信息。这可以利用于节点自己发送TCP探针(XML)来排查故障。
2. 配置文件
可以用以下gmond命令生成默认的配置文件:
user@host:$ gmond -t
配置文件由多个部分组成,用花括号包裹,这可以大致分为两个逻辑目录。第一部分包含节点与集群的配置;另一部分包括度量信息的收集和定时策略。
所有的配置属性大小不敏感,如以下例子是相等的名称:
name NAME Name NaMe
有些配置部分是可选的;一些配置是必填的。有些可以定义多次,有些只能配置一次。有些配置可以包含子选项配置。
当配置复杂时,有些内部指令可以将gmond.conf分离到多个文件中,并支持类型通配。如:
include ('/etc/ganglia/conf.d/*.conf')
将会命令gmond加载/etc/ganglia/conf.d/路径下所有以.conf为后缀的配置文件。

PS:为了快速开始,你所需要配置的仅仅是cluster部分下的name属性,其他属性可以全部默认。
配置文件使用第三方API工具libconfuse解析,采用libconfuse正常的格式规范。值得说明的是,boolean类型的值可以是yes,true,on;与他们相对的是no,false,off。布尔类型是大小写不敏感的。

有以下八个部分配置节点自身属性。
Section: globals. 配置守护线程自身的通用属性,配置文件中只能够配置一次。以下是Ganglia3.3.1的默认配置:
globals {
daemonize = yes
setuid = yes
user = nobody
debug_level = 0
max_udp_msg_len = 1472
mute = no
deaf = no
allow_extra_data = yes
host_dmax = 86400 /*secs. Expires (removes from web interface) hosts in 1 day */
host_tmax = 20 /*secs */
cleanup_threshold = 300 /*secs */
gexec = no
send_metadata_interval = 0 /*secs */
}
daemonize (boolean)
当配置为true时,gmond在后台并行运行。当配置为false时,你可以使用deamontools等守护线程管理工具运行。
setuid (boolean)
当设置为true时,gmond以user属性下的有效uid运行,否则不改变有效用户。
debug_level (integer value)
当设置为0时,gmond正常运行。等级越高,输出的日志信息越丰富。
max_udp_msg_len (integer value)
udp单包的最大长度,不建议修改。
mute (boolean)
当设置为true时,gmond不会发送数据,忽略其他的配置指令。只用于收集其他gmond信息,但仍然会响应如gmetad轮询者的请求。
deaf(boolean)
当设置为ture时,gmond不会接收数据,忽略其他配置指令。当置于大规模集群中,或者HPC敏感的网格中,CPU消耗成为不得不考虑的因素时,通常节点会配置为deaf模式以确保集群之间的交互降到最低。在这种情境下,部分节点设置为mute专注于收集。如此一来,mute节点的状态信息并不用于集群总状态的评估。它们的作用只是用于收集,所以他们的节点状态会污染集群状态信息。
allow_extra_data (boolean)
当设置为false时,gmond不会发送标记为EXTRA_ELEMENT和EXTRA_DATA的XML部分。如果你使用自己的前端平台,这个参数可以有效节省带宽。
host_dmax (integer_value in seconds)
代表“delete max”,当设置为0时,gmond永远不会从他们的列表中删除节点,即时某些远程节点丢失报告对量。如果host_dmax 设置为比0大的自然数,gmond会在超过这个时间后刷新host列表。
host_tmax (integer_value in seconds)
代表“timeout max”。gmond更新host状态的最大等待时间。因为消息会在网络中丢失,所以gmond会在该超时时间未接收到数据后判定该节点down掉。
cleanup_threshold (integer_value in seconds)
gmond清理过期数据的最大时间。
gexec (boolean)
当设置为true,gmond允许节点执行gexec job,这个方法要求本节点gexecd已运行并且安装了合适的键。
send_metadata_interval (integer_value in seconds)
设置gmond发送或重发包含度量信息的元数据包的时间间隔。默认设置为0,这意味着gmond只有当启动时,或者别的远程节点请求时才会发送数据包。当一个新节点gmond加入集群时,需要通知自己和其他所有节点当前的支持状态。在广播模式下,这不是个问题,但是单播模式下,该时间间隔必须设置,表示两次发送数据的时间间隔。
module_dir (path; optional)
指定度量收集模块所在的目录位置。如果忽略,则默认是编译时期的配置项:--with-moduledir。这个配置项,默认是Ganglia目录下的libganglia所在目录,运行如下指令生成默认gmond可发现的配置文件:
# gmond -t

Section: cluster. 每个gmond节点向集群报告信息都通过cluster部分的配置。默认值设置为"unspecified";默认值是系统可用的,该部分在配置文件中只能配置一次。以下是默认配置:
cluster {
name = "unspecified"
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
name (text)
指定集群名称。当节点轮训拉取xml描述的节点状态信息时,该名称会被插入到CLUSTER部分。gmetad会根据这个值在拉取时归并到不同的RRD文件中存储。该配置项取代了在gmetad.conf中的cluster name配置项。
owner (text)
配置集群管理员。
latlong (text)
指定集群在地球上的GPS经纬度坐标。
url (text)
指定集群的特定URL地址访问信息,如集群目的和使用明细。

Section: host. 指定运行该gmond实例的host地址。只有一个配置项:
host {
location = "unspecified"
}
location (text)
节点地址,rack,U[,blade]格式也是可用的。

Section: UDP channels. 配置gmond节点与其他节点对话的UDP发送/接收渠道。集群通过UDP通道交互,这意味着,所谓集群只是gmond节点直接的发送和接收消息的通道组成。
默认情况下,每个gmond节点通过UDP广播向其他节点广播度量信息,其他节点类似。这样很容易启动和维护:每个节点在集群中共享广播地址,并且新增节点自动发现。然而,当我们回顾之前的deaf and mute模式,某些情况下需要单独指定单播地址。
由此,每一个gmond的发送和接收频道需要针对当前环境进行配置。每个发送通道的配置定义了一个新的发送自身度量信息的方式,每个接收通道的配置定义了从其他节点接收度量信息的方式。通道可以通过IP4-IP6进行单播或者广播。

记住,一个gmond节点不可向多个集群发送度量信息,也不要试图从其他集群节点接收度量信息。
UDP通道通过udp_(send|receive)_channel部分创建。默认发送通道如下:
udp_send_channel {
#bind_hostname = yes
mcast_join = 239.2.11.71
port = 8649
ttl = 1
}
bind_hostname (boolean; optional, for multicast or unicast)
配置是否通过机器名绑定。
mcast_join (IP; optional, for multicast only)
当指定时,gmond将会通过创建udp连接并且加入广播组,该配置创建广播渠道并与host配置二选一。
mcast_if (text; optional, for multicast only)
指定时,gmond通过指定接口发送数据。如:eth0
host (text or IP; optional, for unicast only)
指定发送数据地址,与mcast_join二选一。
port (number; optional, for multicast and unicast)
gmond发送数据使用端口,默认8649
ttl (number; optional, for multicast or unicast)
time-to-live存活时间,该配置项对广播环境 尤其重要,用于限制度量信息的有效时间,越高的值,则容忍性越大。
如下是默认的接收通道配置:
udp_recv_channel {
mcast_join = 239.2.11.71
port = 8649
bind = 239.2.11.71
}
mcast_join (IP; optional, for multicast only)
当指定时,gmond将从该IP所在的广播群组中接收广播信息,如果不指定广播属性,gmond将会通过特定端口创建UDP单播服务。
mcast_if (text; optional, for multicast only)
同上;
bind (IP; optional, for multicast or unicast)
指定后,gmond将会和本地地址绑定。
port (number; optional, for multicast or unicast)
接收端口,默认8649
family (inet4|inet6; optional, for multicast or unicast)
ip版本,默认inet4。如果想监听ipv4和ipv6两个网络,需要配置两个接收渠道。
acl (ACL definition; optional, for multicast or unicast)
access control list:细粒度的接受渠道控制。详见“Access control”章节。

Section: TCP Accept Channels. gmond与gmetad或者其它轮询者交互通过TCP通道。可选如下配置项,默认如下:
tcp_accept_channel {
port = 8649
}
bind (IP; optional)
port (number)
family (inet4|inet6; optional)
interface (text; optional)
acl (ACL definition; optional)

Access control. 即acl,udp_recv_channel和tcp_accept_channel 的配置项。这个配置可以指定具体地址或者地址范围来添加gmond的连接许可。如下是个ACL示例:
acl {
default = "deny"
access {
ip = 192.168.0.0
mask = 24
action = "allow"
}
access {
ip = ::ff:1.2.3.0
mask = 120
action = "deny"
}
}
配置遵从第一优先级。mask可指定路由范围。

Optional section: sFlow. sFlow是产品级的管理高速网络交换的技术。起初设想嵌入网络硬件内,现在存在于操作系统级别,如同其他应用一样如tomcat等web容器。gmond可以配置为成为sFlow的收集器,打包sFlow的数据包并发送给gmetad。在第八章中详细介绍。该配置全部可选,一下是默认配置:
#sflow {
# udp_port = 6343
# accept_vm_metrics = yes
# accept_jvm_metrics = yes
# multiple_jvm_instances = no
# accept_http_metrics = yes
# multiple_http_instances = no
# accept_memcache_metrics = yes
# multiple_memcache_instances = no
#}
udp_port (number; optional)
用于接收sFlow数据的端口。
其他配置详见第八章节。

Section: modules. 该配置包含了加载度量模块的必须参数。gmond可收集所有动态加载的可扩展的度量模块。详见第五章。
每个模块至少包含一个module子目录。该子目录由5个属性组成。默认配置包括所有已安装的度量插件,所以除非你有新增的度量插件,不然无需更改。示例如下:
modules {
module {
name = "example_module"
language = "C/C++"
enabled = yes
path = "modexample.so"
params = "An extra raw parameter"
param RandomMax {
value = 75
}
param ConstantValue {
value = 25
}
}
}
name (text)
如果使用c/c++实现,则该参数由模块结构决定。如果使用phthon等解释性语言编写,则由源文件决定。
language (text; optional)
文件源码的实现语言,默认是c/c++,目前只支持c/c++或者python。
enabled (boolean; optional)
方便该度量插件的启停。默认为yes;
path (text)
gmond加载度量插件的路径(c/c++动态加载),如果不是绝对路径,则在前补上globals模块下的module_path属性。
params (text; optional)
加载插件时的string参数。

Section: collection_group. 该目录指定gmond收集那些度量信息,以及收集和广播的频率。你可以 尽可能多的将待收集的度量信息分组。每个分组至少包含一个 metric 模块。
这是根据采样间隔做的逻辑分组。在gmond.conf下的不会影响web下的分组结果,默认配置如下:
collection_group {
collect_once = yes
time_threshold = 1200
metric {
name = "cpu_num"
title = "CPU Count"
}
}
collection_group {
collect_every = 20
time_threshold = 90
/* CPU status */
metric {
name = "cpu_user"
value_threshold = "1.0"
title = "CPU User"
}
metric {
name = "cpu_system"
value_threshold = "1.0"
title = "CPU System"
}
}
collect_once (boolean)
某些度量信息除非重启否则不会改变,如操作系统类型,cpu核数等。这些参数只需要启动时采集一次即可。该参数和collect_every互斥。
collect_every (seconds)
频繁轮训采集时间,如cpu_user,cpu_system每20秒采集一次。
time_threshold (seconds)
最大等待时间,gmond发送collection_group数据到所有udp_send_channels的时间。
name (text)
度量信息在度量模块中的名称。典型的,每个度量模块定义多个度量信息名称,一个可选的name可以是name_match,如果使用name_match代替name,可以匹配多个度量名称,例如:name_match = "multicpu_([a-z]+)([0-9]+)"
value_threshold (number)
每次收集度量信息,新值会和上一次的值进行比对。如果发生变化并且当前值大于配置值,则整个收集群组会发送到udp_send_channels定义的通道内。
title (text)
一个用于web展示的用户友好的度量标题。
(2)gmetad:
gmetad,the Ganlia Meta Daemon,安装在运行了收集度量信息的gmond节点之上,负责度量信息的收集和聚合。默认情况下,gmetad收集并聚合度量信息存储到RRD文件,但可以配置gmetad向其他系统汇总数据,如Graphite。
gmetad监听tcp端口8651,连接远程的gmetad并提供授权节点的xml dump状态文件。通过8652tcp端口响应其他节点的请求。交互的设备接受简易的子树和xml网格状态的总览。gweb通过使用这些查询在展现不适合存储在RRD中的数据,比如操作系统版本信息。

1. gmetad拓扑
一个最简单的拓扑结构如下图所示,只存在一个gmetad负责轮训多个gmond实例。
Ganglia的安装、配置、运行_第4张图片
高可用性是通常的需求也比较容易实现。如图2-5所示,两个gmetad和多个gmond实例。gmetad如果从node1拉取不到,将会从node2拉取。两个gmetad也会同时工作。
Ganglia的安装、配置、运行_第5张图片
gmetad并未限制轮训gmond,也可以拉取gmetad以创造另一个gmetad层级。详见图2-6
Ganglia的安装、配置、运行_第6张图片
在更大的集群中,IO成为性能瓶颈,rrdcached作为gmetad和RRD文件的中间缓存,如图2-7:
Ganglia的安装、配置、运行_第7张图片

gmetad.conf: gmetad configuration file
gmetad.conf配置文件由单行属性和相对应的值组成。名称大小写不敏感,但value不同。如下所示属性表示的是相同的名称:
name NAME Name NaMe
大多数属性是可选的;另外的是必须的。有些可被定义多次,有些只能被定义一次。
1. The data_source attribute.
data_source是gmetad的核心配置。每一行data_source描述一个gmond集群或者一个由gmetad负责收集和聚合的网络。gmetad可以自行区分是一个cluster还是一个由gmetad主导的网格,所以data_source对二者都是相等的。如果gmetad发现data_source指向一个cluster ,它从data_source将维持完成的轮训列表。否则,gmetad会认为data_source指向网格,它只保存RRD的相关概要信息。
设置scalable属性为false,会强制gmetad保持完整的RRD文件集合以用于网格数据源。
以默认配置文件为例:
data_source "my cluster" 10 localhost my.machine.edu:8649 1.2.3.5:8655
data_source "my grid" 50 1.3.4.7:8655 grid.org:8651 grid-backup.org:8651
data_source "another source" 1.3.4.8:8655 1.3.4.8
每个data_source由三部分构成。第一部分唯一标识该数据源。第二部分指定轮训时间间隔,单位是秒。第二部分表示gmetad轮训数据的空格分割的host地址列表,可以使用IP或者DNS识别的域名。最后一部分表示tcp端口,默认8649。
gmetad将按顺序检查列表中每个Host,带着第一个节点的状态信息做出响应。所以没必要在data_source中列举集群内所有节点。两三个既能保证数据不会出错。
2. gmetad daemon behavior.
属性列举如下:
gridname (text)
字符串类型,唯一标识一个gmetad网格。这个字符串不能与gmond集合中的名称冲突。在gmond.conf(cluster中的配置项{name="XXX"})用于表示哪些特定的gmond实例负责收集。而gridname属性将会用Grid标签包裹数据源的数据。可以定义为data_source的收集者。

authority (URL)
网格有效的URL,用于其他gmetad实例访问当前数据源的图表信息,默认地址为:http://hostname/ganglia/。

trusted_hosts (text)
gmetad的信任地址,localhost是用被信任的,空格分割。

all_trusted (on|off)
设置为on则重写trusted_hosts配置,任何节点都被信任。

setuid_username (UID)
gmetad使用的用户id,默认是nobody。

setuid (on|off)
是否禁用uid。

xml_port (number)
gmetad的监听端口,默认8651.

interactive_port (number)
gmetad交互端口,默认8652。与上个配置项对应。

server_threads (number)
连接到监听端口的最大连接数。默认为4。

case_sensitive_hostnames (1|0)
在早期的版本中,RRD文件使用大小写敏感的hostname创建,但如今已不在使用。3.2版本后默认为0。

3. RRDtool attributes.
配置RRD文件的创建和处理。

RRAs (text)
These specify custom Round Robin Archive values. The default is (with a “step
size” of 15 seconds):
"RRA:AVERAGE:0.5:1:5856" "RRA:AVERAGE:0.5:4:20160" "RRA:AVERAGE:0.5:40:52704"
The full details of an RRA specification are contained in the manpage for
rrdcreate(1).

umask (number)
Specifies the umask to apply to created RRD files and the directory structure containing
them. It defaults to 022.

rrd_rootdir (path)
Specifies the

4.Graphite support.
可以将gmetad收集的度量数据全部导出到Graphite,一个第三方的开源的度量信息存储和可视化展示工具,配置参数如下:
carbon_server (address)
hostname或者ip,远程的daemon地址。
carbon_port (number)
远程端口号,默认2003。
graphite_prefix (text)
Graphite使用点号分割的路径组织和引用度量信息,所以更合适写一个前缀来表示描述度量信息。如datacenter1.gmetad
carbon_timeout (number)
gmetad等待Graphite的响应时间,单位毫秒。这个设置十分重要,因为gmetad的sender不是线程的并且会产生阻塞。默认500。

5.gmetad interactive port query syntax.
正如前面所提,gmetad监听tcp端口8652用于响应请求信息。这个请求基础的功能是获取grid中他们感兴趣的xml类型的dump状态信息。
通过文本协议,如SMTP和HTTP。请求有层级结构,以(/)斜线开始。比如如下请求会返回所有度量信息:
/
如果要更明确请求内容,可以指定集群名称,如:
/cluster1
如果要更明确节点内容,可以指定节点名称,如:
/cluster1/host1
请求也可以通过指定后缀参数设置过滤器来修正度量值,如你可以获取cluster1的概要信息:
/cluster1?filter=summary

(3)gweb
相比ganglia的三个部分而言,gweb是最需要配置的组件。实际上,你不需要改变任何参数,gweb即可运行完整功能的web UI。
Apache virtual host configuration
尽管gweb本身不需要配置,但一些web容器想运行gweb需要作出部分配置。每个需要支持PHP的web容器需要做以下工作,还有许多是本书中未涉及的web配置参数。Apache Web Server是常用的web容器。假设gweb安装在/var/www/html/ganglia2,域名为myganglia.example.org,则配置如下:
NameVirtualHost *.80
ServerName myganglia.example.org
ServerAlias myganglia
DocumentRoot /var/www/html/ganglia2
# Other directives here
这只是一个简单的例子,更多详见: http://httpd.apache.org/docs/2.0/vhosts/
1. gweb options
gweb的配置通过conf.php文件。实际上这个文件覆盖了默认文件conf_default.php。该文件在web目录的根目录下。该文档已编写完善,超过80个配置项不需要一一配置,只需使用时修改其中重要的几个即可。
该文件,正如名称所讲,是由许多参数组成的PHP脚本,不像其他的配置文件,参数有多行组成。这些属性名都是以$conf这种gweb格式组成,大小写敏感,看起来像PHP数组。如下参数表示gweb使用的RRDtool所在目录:
$conf['rrdtool'] = "/usr/bin/rrdtool";
所有的参数都是必须的,也有一些被定义多次,也有被定义一次,也有引用其他的变量值,如:
$conf['rrds'] = "${conf['gmetad_root']}/rrds";

Application settings.
该目录下的参数影响gweb的基础功能,它自己的家目录,比如,RRDs或者templates。这些很少被用户修改但偶尔会被提及。
templates (path)
指定gweb的templates路径。就像一个站点的皮肤样式。
graphdir (path)
指定定义图表的json文件所在路径。如下章所讲,用户会用json自定义图表样式,并将其存放在该目录下,用于web的UI展示。
rrds (path)
指定RRD文件的所在目录。
又如第七章所提到的,不同的Nagios的特性在gweb的conf.php文件中集成。所以Nagios可以通过请求gweb获取度量信息,而不是Nagios Service Check Acceptor(NSCA)和Nagios Remote Plugin Executor (NRPE)。

Look and feel.
gweb可以配置一次显示的图表数量(max_graphs),也可以用来指定列数量和host视图。也有一些布尔类型的配置影响UI的默认行为,如metric_groups_initially_collapsed。
config.php文件定义了大量样式,以及自定义时间范围。

Security.
该属性参数如下:
auth_system (readonly|enabled|disabled)
gweb做了简单的安全认证机制,允许或禁止个别用户对部分应用功能的访问。如果设置为enabled则为可用。

Advanced features.
参数如下:
rrdcached_socket (path)
指定rddcached的socket地址,用于高并发下的缓存策略。
graph_engine (rrdtool|graphite)
gweb可以使用Graphite代替RRDtool作为图形引擎。该配置要求你已安装Graphite和Graphite webapp在该服务器上。详见:sourceforge.net/apps/trac/ganglia/wiki/ganglia-web-2#UsingGraphiteasthegraphingengine

三、Postinstallation(安装后)
到此为止,ganglia已经安装配置完成,是时候运行一下它们了!验证它们的基础功能是否完善并确保它们之间的通讯完成。
Starting Up the Processes
虽然没必要保证启动的先后顺序,如果按此处推荐顺序启动,能避免对元数据转换成udp聚合包的等待延迟,并且用户不会再web端看到错误数据。
1.如果你使用UDP单播模式,先启动UDP的收集节点。这样能确保该收集器能收集到各节点第一次发送的元数据。
2.启动其他的gmond实例。
3.如果你使用了rddcached,启动它。
4.从最低的层级开始启动gmetad。
5.启动其他层级的gmetad。
6.启动apache web server,比gmetad后启动,如果PHP脚本不能连接gmetad,可通过端口8652监控。
Testing Your Installation
gmond和gmetad都监听tcp端口,为了测试gmond,使用telnet:
user@host:$ telnet localhost 8649
作为回复,gmond会输出一段xml格式的dump信息,包含其度量信息。如果gmond是deaf模式或者mute模式,会返回一个空的xml文档,仅仅含有cluster标签。
测试gmetad可以使用
user@host:$ telnet localhost 8651
一个有效的gmetad会返回一段xml格式的dump度量信息。
详见第六章,了解更多验证程序状态的方法。
Firewalls
防火墙问题是初装ganglia最普遍的问题,我们整理问题如下:
1.gmond默认使用广播模式,所以跨越子网的集群需要配置单播的发送者和监听者,在之前的拓扑章节有介绍。如果gmond必须穿过防火墙与其他节点交互,允许端口udp/8649。对于广播模式,路由和防火墙必须支持IGMP协议。
2.gmond从端口TCP 8649监听gmetad连接。如果gmetad必须穿过防火墙,则保证其gmond的tcp 8649端口畅通。
3.gmetad使用tcp 8651,8652。前者类似于gmond的8649端口,后者作为“交互查询端口”用于响应指定的查询请求。被gweb使用,且通常与gmetad安装在同一台机器,所以除非你有使用更多的集成特性,如Nagios集成,或者有自定义的查询gmetad的脚本,不然不需要有防火墙的ACLs。
4.gweb运行在web容器中,通常监听80或者443端口(如果你使用SSL,则443)。如果web服务器被防火墙隔离,那么开放Tcp80和tcp443端口。
5.如果ganglia集成了sFlow收集器,并且每个sFlow收集器都要与gmond交互 ,为gmond的监听开放udp 6343端口。



        注: 本文为外文文档翻译,仅供学习交流使用如有转载请注明出处。如有任何商业用途请于本文作者以及原作者联系。


你可能感兴趣的:(Ganglia)