0

Say I have a bunch of clients with ONE master host that houses the gmetad and web interface. If I define one cluster (i.e. 'Cluster'), it works, but let's say I want a second set of cluster, how does that work? I can't point all my client nodes to the master server? It looks like I have to create some sort of "middle man" server to collect the data for each cluster?

sdot257
  • 3,039
  • 5
  • 29
  • 38

2 Answers2

0

My server with the web frontend and gmetad has gmetad.conf with one gridname, plus one data_source entry for each cluster. Each data_source draws from one or more systems in the cluster:

gridname "The Grid"
data_source "Infrastructure" ihost1 ihost2 ...
data_source "Compute Nodes" chost1 chost2 ...
data_source "Workstations" work1 work2 ...

Each host registers itself into a particular cluster, and onto a cluster-specific multicast address in its gmond.conf:

cluster {
  name = "Infrastructure"
}
udp_send_channel {
  mcast_join = 239.2.11.72
  port = 8649
}
udp_recv_channel {
  mcast_join = 239.2.11.72
  port = 8649
  bind = 239.2.11.72
}
tcp_accept_channel {
  port = 8649
}
Mike Renfro
  • 1,281
  • 1
  • 8
  • 11
  • oh, i have to use multi-cast? I've been using "host." Also, the 239.2.11.72 address, that would be the gmetad host? – sdot257 Apr 26 '11 at 17:56
  • I won't claim my setup is the *only* way it can work, but it's basically the default way that Ganglia is set up. Multicast may not be strictly required, but I suspect that the `cluster {}` group is. Maybe that's all you need to change. – Mike Renfro Apr 26 '11 at 18:16
  • I think my issue is I send EVERYTHING to the `gmetad` server. When I do this, everything goes into one cluster even though I define `cluster {}` on each node. – sdot257 Apr 26 '11 at 18:31
  • Sounds reasonable. Again, this is how I've had it set up for years, and I never thought about doing it any other way (or if I did, I've long forgotten about it). – Mike Renfro Apr 26 '11 at 22:42
0

A slightly better variation on the configuration above would be to have multiple gmond's talking via multicast to a single gmond (for each cluster). Then setup the data_source to talk to that single gmond. That way, every time you add a new host, you don't have to edit the gmetad.conf.