To configure unicast you should designate one machine to be receiver. Receiver's gmond.conf should look like this
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 /* Remove host from UI after it hasn't report for a day */ cleanup_threshold = 300 /*secs */ gexec = no send_metadata_interval = 30 /*secs */ } cluster { name = "Production" owner = "unspecified" latlong = "unspecified" url = "unspecified" } host { location = "unspecified" } udp_send_channel { host = ip.add.ress.here port = 8649 ttl = 1 } udp_recv_channel { port = 8649 } tcp_accept_channel { port = 8649 }
.....
On all the other machines you will need to configure only this
globals { daemonize = yes setuid = yes user = nobody debug_level = 0 max_udp_msg_len = 1472 mute = no deaf = yes allow_extra_data = yes host_dmax = 86400 /* Remove host from UI after it hasn't report for a day */ cleanup_threshold = 300 /*secs */ gexec = no send_metadata_interval = 30 /*secs */ } cluster { name = "Production" owner = "unspecified" latlong = "unspecified" url = "unspecified" } host { location = "unspecified" } udp_send_channel { host = ip.add.ress.here port = 8649 ttl = 1 } ...
Please notice that send_metadata_interval is set to 30 (seconds). Metrics in Ganglia are sent separately from it's metadata. Metadata contains information like metric group, type etc. In case you restart receiving gmond metadata will be lost and gmond will not know what to do with the metric data and it will be discarded. This may result in blank graphs. In multicast mode gmonds can talk to each other and will ask for metadata if it's missing. This is not possible in unicast mode thus you need to instruct gmond to periodically send metadata.
Now in your gmetad.conf put
# /etc/gmetad.conf on ip.add.ress.here data_source "Production" ip.add.ress.here
...
Now restart everything...
No comments:
Post a Comment