You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by sm...@apache.org on 2014/05/28 19:09:06 UTC
git commit: AMBARI-5906. Add support to create arbitrary gmond
servers for metrics collection.
Repository: ambari
Updated Branches:
refs/heads/trunk ad089e812 -> 9d5a48baa
AMBARI-5906. Add support to create arbitrary gmond servers for metrics collection.
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/9d5a48ba
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/9d5a48ba
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/9d5a48ba
Branch: refs/heads/trunk
Commit: 9d5a48baa72ba51b52f0b0178a3aca141758eb79
Parents: ad089e8
Author: Sumit Mohanty <sm...@hortonworks.com>
Authored: Wed May 28 10:06:25 2014 -0700
Committer: Sumit Mohanty <sm...@hortonworks.com>
Committed: Wed May 28 10:08:50 2014 -0700
----------------------------------------------------------------------
.../GANGLIA/package/scripts/ganglia_monitor.py | 22 +++++++++
.../services/GANGLIA/package/scripts/params.py | 47 +++++++++++++-------
2 files changed, 52 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/9d5a48ba/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py
index d3f097f..b9197b5 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py
@@ -96,6 +96,11 @@ class GangliaMonitor(Script):
if params.is_ganglia_server_host:
self.generate_master_configs()
+ if len(params.gmond_apps) != 0:
+ self.generate_app_configs()
+ pass
+ pass
+
def generate_slave_configs(self):
import params
@@ -190,6 +195,23 @@ class GangliaMonitor(Script):
group = params.user_group)
+ def generate_app_configs(self):
+ import params
+
+ for gmond_app in params.gmond_apps:
+ generate_daemon("gmond",
+ name=gmond_app,
+ role="server",
+ owner="root",
+ group=params.user_group)
+ generate_daemon("gmond",
+ name = gmond_app,
+ role = "monitor",
+ owner = "root",
+ group = params.user_group)
+ pass
+
+
def generate_master_configs(self):
import params
http://git-wip-us.apache.org/repos/asf/ambari/blob/9d5a48ba/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/params.py
index 9bcf54b..3a5bcec 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/params.py
@@ -22,7 +22,7 @@ from resource_management.core.system import System
config = Script.get_config()
user_group = config['configurations']['global']["user_group"]
-ganglia_conf_dir = default("/configurations/global/ganglia_conf_dir","/etc/ganglia/hdp")
+ganglia_conf_dir = default("/configurations/global/ganglia_conf_dir", "/etc/ganglia/hdp")
ganglia_dir = "/etc/ganglia"
ganglia_runtime_dir = config['configurations']['global']["ganglia_runtime_dir"]
ganglia_shell_cmds_dir = "/usr/libexec/hdp/ganglia"
@@ -30,6 +30,12 @@ ganglia_shell_cmds_dir = "/usr/libexec/hdp/ganglia"
gmetad_user = config['configurations']['global']["gmetad_user"]
gmond_user = config['configurations']['global']["gmond_user"]
+gmond_app_str = default("/configurations/global/enabled_app_servers", None)
+gmond_apps = [] if gmond_app_str is None else gmond_app_str.split(',')
+gmond_apps = [x.strip() for x in gmond_apps]
+gmond_allowed_apps = ["Application1", "Application2", "Application3"]
+gmond_apps = set(gmond_apps) & set(gmond_allowed_apps)
+
webserver_group = "apache"
rrdcached_default_base_dir = "/var/lib/ganglia/rrds"
rrdcached_base_dir = config['configurations']['global']["rrdcached_base_dir"]
@@ -52,9 +58,9 @@ jn_hosts = set(default("/clusterHostInfo/journalnode_hosts", []))
nimbus_server_hosts = set(default("/clusterHostInfo/nimbus_hosts", []))
supervisor_server_hosts = set(default("/clusterHostInfo/supervisor_hosts", []))
-pure_slave = not hostname in (namenode_host | jtnode_host | rm_host | hs_host |\
- hbase_master_hosts |slave_hosts | tt_hosts | hbase_rs_hosts |\
- flume_hosts | nm_hosts | jn_hosts | nimbus_server_hosts |\
+pure_slave = not hostname in (namenode_host | jtnode_host | rm_host | hs_host | \
+ hbase_master_hosts | slave_hosts | tt_hosts | hbase_rs_hosts | \
+ flume_hosts | nm_hosts | jn_hosts | nimbus_server_hosts | \
supervisor_server_hosts)
is_namenode_master = hostname in namenode_host
is_jtnode_master = hostname in jtnode_host
@@ -86,19 +92,22 @@ has_nimbus_server = not len(nimbus_server_hosts) == 0
has_supervisor_server = not len(supervisor_server_hosts) == 0
ganglia_cluster_names = {
- "jtnode_host" : [("HDPJournalNode", 8654)],
- "flume_hosts" : [("HDPFlumeServer", 8655)],
- "hbase_rs_hosts" : [("HDPHBaseRegionServer", 8656)],
- "nm_hosts" : [("HDPNodeManager", 8657)],
- "mapred_tt_hosts" : [("HDPTaskTracker", 8658)],
- "slave_hosts" : [("HDPDataNode", 8659), ("HDPSlaves", 8660)],
- "namenode_host" : [("HDPNameNode", 8661)],
- "jtnode_host" : [("HDPJobTracker", 8662)],
- "hbase_master_hosts" : [("HDPHBaseMaster", 8663)],
- "rm_host" : [("HDPResourceManager", 8664)],
- "hs_host" : [("HDPHistoryServer", 8666)],
- "nimbus_hosts" : [("HDPNimbus", 8649)],
- "supervisor_hosts" : [("HDPSupervisor", 8650)]
+ "jtnode_host": [("HDPJournalNode", 8654)],
+ "flume_hosts": [("HDPFlumeServer", 8655)],
+ "hbase_rs_hosts": [("HDPHBaseRegionServer", 8656)],
+ "nm_hosts": [("HDPNodeManager", 8657)],
+ "mapred_tt_hosts": [("HDPTaskTracker", 8658)],
+ "slave_hosts": [("HDPDataNode", 8659), ("HDPSlaves", 8660)],
+ "namenode_host": [("HDPNameNode", 8661)],
+ "jtnode_host": [("HDPJobTracker", 8662)],
+ "hbase_master_hosts": [("HDPHBaseMaster", 8663)],
+ "rm_host": [("HDPResourceManager", 8664)],
+ "hs_host": [("HDPHistoryServer", 8666)],
+ "nimbus_hosts": [("HDPNimbus", 8649)],
+ "supervisor_hosts": [("HDPSupervisor", 8650)],
+ "Application1": [("Application1", 8667)],
+ "Application2": [("Application2", 8668)],
+ "Application3": [("Application3", 8669)]
}
ganglia_clusters = []
@@ -109,6 +118,10 @@ for key in ganglia_cluster_names:
if not len(hosts) == 0:
for x in ganglia_cluster_names[key]:
ganglia_clusters.append(x)
+if len(gmond_apps) > 0:
+ for gmond_app in gmond_apps:
+ for x in ganglia_cluster_names[gmond_app]:
+ ganglia_clusters.append(x)
if System.get_instance().os_family == "suse":
rrd_py_path = '/srv/www/cgi-bin'