You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by at...@apache.org on 2014/01/28 19:02:11 UTC
git commit: AMBARI-4443 Install/Show TEZ. (Denys Buzhor via atkach)
Updated Branches:
refs/heads/trunk 5343c5e0c -> 6e0b01110
AMBARI-4443 Install/Show TEZ. (Denys Buzhor via atkach)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/6e0b0111
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/6e0b0111
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/6e0b0111
Branch: refs/heads/trunk
Commit: 6e0b01110c89327bdf06251bd6640b4dab9bd8e2
Parents: 5343c5e
Author: atkach <at...@hortonworks.com>
Authored: Tue Jan 28 20:01:43 2014 +0200
Committer: atkach <at...@hortonworks.com>
Committed: Tue Jan 28 20:01:43 2014 +0200
----------------------------------------------------------------------
.../app/assets/data/clusters/cluster.json | 3 +
.../assets/data/clusters/tags_and_groups.json | 3 +
.../configurations/cluster_level_configs.json | 34 ++
.../assets/data/hosts/HDP2/hc_host_status.json | 9 +
.../app/assets/data/hosts/HDP2/hosts.json | 8 +
.../app/assets/data/services/HDP2/services.json | 14 +
.../app/assets/data/wizard/stack/stacks.json | 11 +
.../app/controllers/wizard/step4_controller.js | 16 +-
.../app/controllers/wizard/step8_controller.js | 18 +-
ambari-web/app/data/HDP2/site_properties.js | 313 +++++++++++++++++++
ambari-web/app/data/service_configs.js | 13 +-
ambari-web/app/messages.js | 5 +
ambari-web/app/models/service.js | 1 +
ambari-web/app/templates.js | 1 +
.../app/templates/main/service/info/summary.hbs | 3 +
.../templates/main/service/info/summary/tez.hbs | 22 ++
ambari-web/app/views/main/host/summary.js | 3 +
.../app/views/main/service/info/summary.js | 9 +-
ambari-web/app/views/main/service/menu.js | 6 +-
19 files changed, 483 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/clusters/cluster.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/clusters/cluster.json b/ambari-web/app/assets/data/clusters/cluster.json
index fb53d51..894c8fc 100644
--- a/ambari-web/app/assets/data/clusters/cluster.json
+++ b/ambari-web/app/assets/data/clusters/cluster.json
@@ -38,6 +38,9 @@
"storm-site" : {
"tag" : "version1"
},
+ "tez-site" : {
+ "tag": "version1"
+ },
"capacity-scheduler" : {
"tag" : "version1"
},
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/clusters/tags_and_groups.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/clusters/tags_and_groups.json b/ambari-web/app/assets/data/clusters/tags_and_groups.json
index 8c43911..d4e1f3a 100644
--- a/ambari-web/app/assets/data/clusters/tags_and_groups.json
+++ b/ambari-web/app/assets/data/clusters/tags_and_groups.json
@@ -38,6 +38,9 @@
"storm-site" : {
"tag" : "version1"
},
+ "tez-site": {
+ "tag": "version1"
+ },
"core-site" : {
"tag" : "version1"
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/configurations/cluster_level_configs.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/configurations/cluster_level_configs.json b/ambari-web/app/assets/data/configurations/cluster_level_configs.json
index 9fc68d6..1712a42 100644
--- a/ambari-web/app/assets/data/configurations/cluster_level_configs.json
+++ b/ambari-web/app/assets/data/configurations/cluster_level_configs.json
@@ -651,6 +651,40 @@
"zmq.linger.millis" : "5000",
"zmq.threads" : "1"
}
+ },
+ {
+ "href" : "http://c6401.ambari.apache.org:8080/api/v1/clusters/c1/configurations?type=tez-site&tag=version1",
+ "tag" : "version1",
+ "type" : "tez-site",
+ "Config" : {
+ "cluster_name" : "c1"
+ },
+ "properties" : {
+ "tez.am.aggressive.scheduling" : "false",
+ "tez.am.am-rm.heartbeat.interval-ms.max" : "250",
+ "tez.am.container.reuse.enabled" : "true",
+ "tez.am.container.reuse.locality.delay-allocation-millis" : "250",
+ "tez.am.container.reuse.non-local-fallback.enabled" : "true",
+ "tez.am.container.reuse.rack-fallback.enabled" : "true",
+ "tez.am.container.session.delay-allocation-millis" : "300000",
+ "tez.am.grouping.split-waves" : "1.7",
+ "tez.am.java.opts" : "-server -Xmx1024m -Djava.net.preferIPv4Stack=true -XX:+PrintGCDetails -verbose:gc -XX:+PrintGCTimeStamps -XX:+UseNUMA -XX:+UseParallelGC",
+ "tez.am.log.level" : "INFO",
+ "tez.am.resource.memory.mb" : "1024",
+ "tez.lib.uris" : "file:///usr/lib/tez/,file:///usr/lib/tez/lib/",
+ "tez.runtime.broadcast.data-via-events.enabled" : "true",
+ "tez.runtime.broadcast.data-via-events.max-size" : "614400",
+ "tez.runtime.intermdiate-input.is-compressed" : "true",
+ "tez.runtime.intermediate-input.compress.codec" : "org.apache.hadoop.io.compress.DefaultCodec",
+ "tez.runtime.intermediate-output.compress.codec" : "org.apache.hadoop.io.compress.DefaultCodec",
+ "tez.runtime.intermediate-output.should-compress" : "true",
+ "tez.runtime.job.counters.groups.max" : "5000",
+ "tez.runtime.job.counters.max" : "5000",
+ "tez.slowstart-vertex-scheduler.max-src-fraction" : "0.1",
+ "tez.slowstart-vertex-scheduler.min-src-fraction" : "0.1",
+ "tez.staging-dir" : "/tmp/${user.name}/staging",
+ "tez.task.get-task.sleep.interval-ms.max" : "100"
+ }
}
]
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/hosts/HDP2/hc_host_status.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/hosts/HDP2/hc_host_status.json b/ambari-web/app/assets/data/hosts/HDP2/hc_host_status.json
index 4d87c53..b396e53 100644
--- a/ambari-web/app/assets/data/hosts/HDP2/hc_host_status.json
+++ b/ambari-web/app/assets/data/hosts/HDP2/hc_host_status.json
@@ -190,6 +190,15 @@
}
},
{
+ "href" : "http://192.168.56.101:8080/api/v1/clusters/perf/hosts/dev01.hortonworks.com/host_components/TEZ_CLIENT",
+ "HostRoles" : {
+ "cluster_name" : "perf",
+ "component_name" : "TEZ_CLIENT",
+ "host_name" : "dev01.hortonworks.com",
+ "state" : "STARTED"
+ }
+ },
+ {
"href" : "http://192.168.56.101:8080/api/v1/clusters/perf/hosts/dev01.hortonworks.com/host_components/ZOOKEEPER_CLIENT",
"HostRoles" : {
"cluster_name" : "perf",
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/hosts/HDP2/hosts.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/hosts/HDP2/hosts.json b/ambari-web/app/assets/data/hosts/HDP2/hosts.json
index e82eb49..3cd7a6a 100644
--- a/ambari-web/app/assets/data/hosts/HDP2/hosts.json
+++ b/ambari-web/app/assets/data/hosts/HDP2/hosts.json
@@ -269,6 +269,14 @@
}
},
{
+ "href" : "http://dev01.hortonworks.com:8080/api/v1/clusters/c1/hosts/dev01.hortonworks.com/host_components/TEZ_CLIENT",
+ "HostRoles" : {
+ "cluster_name" : "c1",
+ "component_name" : "TEZ_CLIENT",
+ "host_name" : "dev01.hortonworks.com"
+ }
+ },
+ {
"href" : "http://dev01.hortonworks.com:8080/api/v1/clusters/c1/hosts/dev01.hortonworks.com/host_components/ZOOKEEPER_CLIENT",
"HostRoles" : {
"cluster_name" : "c1",
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/services/HDP2/services.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/services/HDP2/services.json b/ambari-web/app/assets/data/services/HDP2/services.json
index 32bfbda..7859651 100644
--- a/ambari-web/app/assets/data/services/HDP2/services.json
+++ b/ambari-web/app/assets/data/services/HDP2/services.json
@@ -182,6 +182,20 @@
"WARNING" : 0
}
}
+ },
+ {
+ "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/services/TEZ",
+ "ServiceInfo" : {
+ "cluster_name" : "cl",
+ "service_name" : "TEZ"
+ },
+ "alerts" : {
+ "summary" : {
+ "CRITICAL" : 0,
+ "OK" : 0,
+ "WARNING" : 0
+ }
+ }
}
]
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/assets/data/wizard/stack/stacks.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/wizard/stack/stacks.json b/ambari-web/app/assets/data/wizard/stack/stacks.json
index 60f5b4e..c52aa19 100644
--- a/ambari-web/app/assets/data/wizard/stack/stacks.json
+++ b/ambari-web/app/assets/data/wizard/stack/stacks.json
@@ -895,6 +895,17 @@
"stack_version" : "2.0.5",
"user_name" : "root"
}
+ },
+ {
+ "href" : "http://192.168.56.101:8080/api/v1/stacks2/HDP/versions/2.0.5/stackServices/STORM",
+ "StackServices" : {
+ "comments" : "Tez is the next generation Hadoop Query Processing framework written on top of YARN",
+ "service_name" : "TEZ",
+ "service_version" : "0.4.0.2.1.1.0",
+ "stack_name" : "HDP",
+ "stack_version" : "2.0.5",
+ "user_name" : "root"
+ }
}
]
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/controllers/wizard/step4_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/wizard/step4_controller.js b/ambari-web/app/controllers/wizard/step4_controller.js
index b2011d7..5e2f216 100644
--- a/ambari-web/app/controllers/wizard/step4_controller.js
+++ b/ambari-web/app/controllers/wizard/step4_controller.js
@@ -119,7 +119,14 @@ App.WizardStep4Controller = Em.ArrayController.extend({
* @return {Boolean}
*/
needToAddYarnMapReduce2: function() {
- return this.needAddService('YARN', ['PIG', 'OOZIE', 'HIVE']);
+ return this.needAddService('YARN', ['PIG', 'OOZIE', 'HIVE','TEZ']);
+ },
+ /**
+ * Check whether we should turn on <code>Tez</code> service
+ * @return {Boolean}
+ */
+ needToAddTez: function() {
+ return this.needAddService('TEZ', ['YARN']);
},
/**
* Check whether we should turn on <code>ZooKeeper</code> service
@@ -200,6 +207,9 @@ App.WizardStep4Controller = Em.ArrayController.extend({
if(this.needToAddOozie()) {
this.oozieCheckPopup();
}
+ else if (this.needToAddTez()) {
+ this.tezCheckPopup();
+ }
else {
this.validateMonitoring();
}
@@ -262,6 +272,10 @@ App.WizardStep4Controller = Em.ArrayController.extend({
this.needToAddServicePopup({serviceName:'YARN', selected:true}, 'yarnCheck');
},
+ tezCheckPopup: function() {
+ this.needToAddServicePopup({serviceName:'TEZ', selected: true}, 'tezCheck');
+ },
+
zooKeeperCheckPopup: function () {
this.needToAddServicePopup({serviceName:'ZOOKEEPER', selected: true}, 'zooKeeperCheck');
},
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/controllers/wizard/step8_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/wizard/step8_controller.js b/ambari-web/app/controllers/wizard/step8_controller.js
index ea141bd..f3ab770 100644
--- a/ambari-web/app/controllers/wizard/step8_controller.js
+++ b/ambari-web/app/controllers/wizard/step8_controller.js
@@ -1073,7 +1073,10 @@ App.WizardStep8Controller = Em.Controller.extend({
this.get('serviceConfigTags').pushObject(this.createLog4jObj('PIG'));
}
if (selectedServices.someProperty('serviceName', 'STORM')) {
- this.get('serviceConfigTags').pushObject(this.createStormSiteObj('STORM'));
+ this.get('serviceConfigTags').pushObject(this.createStormSiteObj());
+ }
+ if (selectedServices.someProperty('serviceName', 'TEZ')) {
+ this.get('serviceConfigTags').pushObject(this.createTezSiteObj());
}
if (selectedServices.someProperty('serviceName', 'ZOOKEEPER')) {
this.get('serviceConfigTags').pushObject(this.createZooCfgObj());
@@ -1388,7 +1391,7 @@ App.WizardStep8Controller = Em.Controller.extend({
return {type: 'zoo.cfg', tag: 'version1', properties: csProperties};
},
- createStormSiteObj: function (s) {
+ createStormSiteObj: function () {
var configs = this.get('configs').filterProperty('filename', 'storm-site.xml');
var stormProperties = {};
configs.forEach(function (_configProperty) {
@@ -1401,6 +1404,17 @@ App.WizardStep8Controller = Em.Controller.extend({
}, this);
return {type: 'storm-site', tag: 'version1', properties: stormProperties};
},
+
+ createTezSiteObj: function () {
+ var configs = this.get('configs').filterProperty('filename', 'tez-site.xml');
+ var tezProperty = {};
+ configs.forEach(function (_configProperty) {
+ tezProperty[_configProperty.name] = App.config.escapeXMLCharacters(_configProperty.value);
+ this._recordHostOverrideFromObj(_configProperty, 'tez-site', 'version1', this);
+ }, this);
+ return {type: 'tez-site', tag: 'version1', properties: tezProperty};
+ },
+
ajaxQueueFinished: function () {
//do something
},
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/data/HDP2/site_properties.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/HDP2/site_properties.js b/ambari-web/app/data/HDP2/site_properties.js
index 4e7f981..01ed45d 100644
--- a/ambari-web/app/data/HDP2/site_properties.js
+++ b/ambari-web/app/data/HDP2/site_properties.js
@@ -1364,6 +1364,319 @@ module.exports =
"displayType": "string"
},
+ /**********************************************tez-site***************************************/
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.lib.uris",
+ "name": "tez.lib.uris",
+ "defaultValue": "file:///usr/lib/tez/,file:///usr/lib/tez/lib/",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.log.level",
+ "name": "tez.am.log.level",
+ "defaultValue": "INFO",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.staging-dir",
+ "name": "tez.staging-dir",
+ "defaultValue": "/tmp/${user.name}/staging",
+ "displayType": "directory"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.slowstart-vertex-scheduler.min-src-fraction",
+ "name": "tez.slowstart-vertex-scheduler.min-src-fraction",
+ "defaultValue": "0.1",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.slowstart-vertex-scheduler.max-src-fraction",
+ "name": "tez.slowstart-vertex-scheduler.max-src-fraction",
+ "defaultValue": "0.1",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.am-rm.heartbeat.interval-ms.max",
+ "name": "tez.am.am-rm.heartbeat.interval-ms.max",
+ "defaultValue": "250",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.broadcast.data-via-events.enabled",
+ "name": "tez.runtime.broadcast.data-via-events.enabled",
+ "defaultValue": "true",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.broadcast.data-via-events.max-size",
+ "name": "tez.runtime.broadcast.data-via-events.max-size",
+ "defaultValue": "614400",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.aggressive.scheduling",
+ "name": "tez.am.aggressive.scheduling",
+ "defaultValue": "false",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.resource.memory.mb",
+ "name": "tez.am.resource.memory.mb",
+ "defaultValue": "1024",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.java.opts",
+ "name": "tez.am.java.opts",
+ "defaultValue": "-server -Xmx1024m -Djava.net.preferIPv4Stack=true -XX:+PrintGCDetails -verbose:gc -XX:+PrintGCTimeStamps -XX:+UseNUMA -XX:+UseParallelGC",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.grouping.split-waves",
+ "name": "tez.am.grouping.split-waves",
+ "defaultValue": "1.7",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.container.reuse.enabled",
+ "name": "tez.am.container.reuse.enabled",
+ "defaultValue": "true",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.container.reuse.rack-fallback.enabled",
+ "name": "tez.am.container.reuse.rack-fallback.enabled",
+ "defaultValue": "true",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.container.reuse.non-local-fallback.enabled",
+ "name": "tez.am.container.reuse.non-local-fallback.enabled",
+ "defaultValue": "true",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.container.session.delay-allocation-millis",
+ "name": "tez.am.container.session.delay-allocation-millis",
+ "defaultValue": "300000",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.am.container.reuse.locality.delay-allocation-millis",
+ "name": "tez.am.container.reuse.locality.delay-allocation-millis",
+ "defaultValue": "250",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.intermediate-output.should-compress",
+ "name": "tez.runtime.intermediate-output.should-compress",
+ "defaultValue": "true",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.intermediate-output.compress.codec",
+ "name": "tez.runtime.intermediate-output.compress.codec",
+ "defaultValue": "org.apache.hadoop.io.compress.DefaultCodec",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.intermdiate-input.is-compressed",
+ "name": "tez.runtime.intermdiate-input.is-compressed",
+ "defaultValue": "true",
+ "displayType": "checkbox"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.intermediate-input.compress.codec",
+ "name": "tez.runtime.intermediate-input.compress.codec",
+ "defaultValue": "org.apache.hadoop.io.compress.DefaultCodec",
+ "displayType": "string"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.task.get-task.sleep.interval-ms.max",
+ "name": "tez.task.get-task.sleep.interval-ms.max",
+ "defaultValue": "100",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.job.counters.max",
+ "name": "tez.runtime.job.counters.max",
+ "defaultValue": "5000",
+ "displayType": "int"
+ },
+ {
+ "id": "site property",
+ "description": "",
+ "isReconfigurable": true,
+ "isVisible": true,
+ "isRequiredByAgent": true,
+ "serviceName": "TEZ",
+ "category": "General",
+ "displayName": "tez.runtime.job.counters.groups.max",
+ "name": "tez.runtime.job.counters.groups.max",
+ "defaultValue": "5000",
+ "displayType": "int"
+ },
/**********************************************webhcat-site***************************************/
{
"id": "site property",
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/data/service_configs.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/service_configs.js b/ambari-web/app/data/service_configs.js
index 142e3b4..081abba 100644
--- a/ambari-web/app/data/service_configs.js
+++ b/ambari-web/app/data/service_configs.js
@@ -229,7 +229,7 @@ module.exports = [
sites: ['falcon-site'],
configs: []
},
- // @todo change to actual info
+
{
serviceName: 'STORM',
displayName: 'Storm',
@@ -249,6 +249,17 @@ module.exports = [
configs: []
},
{
+ serviceName: 'TEZ',
+ displayName: 'TEZ',
+ filename: 'tez-site',
+ configCategories: [
+ App.ServiceConfigCategory.create({ name: 'General', displayName : 'General'}),
+ App.ServiceConfigCategory.create({ name: 'AdvancedTezSite', displayName : 'Custom tez-site.xml', siteFileName: 'tez-site.xml', canAddProperty: true})
+ ],
+ sites: ['global', 'tez-site'],
+ configs: []
+ },
+ {
serviceName: 'MISC',
displayName: 'Misc',
configCategories: [
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/messages.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index 99967dc..8884af5 100644
--- a/ambari-web/app/messages.js
+++ b/ambari-web/app/messages.js
@@ -476,6 +476,8 @@ Em.I18n.translations = {
'installer.step4.zooKeeperCheck.popup.body':'You did not select ZooKeeper, but it is needed by other services you selected. We will automatically add ZooKeeper. Is this OK?',
'installer.step4.oozieCheck.popup.header':'Oozie Needed',
'installer.step4.oozieCheck.popup.body':'You did not select Oozie, but it is needed by other services you selected. We will automatically add Oozie. Is this OK?',
+ 'installer.step4.tezCheck.popup.header':'Tez Needed',
+ 'installer.step4.tezCheck.popup.body':'You did not select Tez, but it is needed by other services you selected. We will automatically add Tez. Is this OK?',
'installer.step4.monitoringCheck.popup.header':'Limited Functionality Warning',
'installer.step4.monitoringCheck.popup.body':'You did not select Nagios and/or Ganglia. If both are not selected, monitoring and alerts will not function properly. Is this OK?',
@@ -1310,6 +1312,9 @@ Em.I18n.translations = {
'services.mapReduce.description.queue.admin.group':"Comma separated list of group names that are allowed to delete jobs or modify job's priority " +
"for jobs not owned by the current user in the queue.",
+ 'services.tez.client': 'Tez client',
+ 'services.tez.clients': 'Tez clients',
+
'services.hbase.master.error':'None of the HBase masters is active',
'hosts.host.add':'Add New Hosts',
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/models/service.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/service.js b/ambari-web/app/models/service.js
index dacbec1..9da67cf 100644
--- a/ambari-web/app/models/service.js
+++ b/ambari-web/app/models/service.js
@@ -76,6 +76,7 @@ App.Service = DS.Model.extend({
"NAGIOS",
"GANGLIA",
"HUE",
+ "TEZ",
"STORM"
];
return configurableServices.contains(this.get('serviceName'));
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/templates.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates.js b/ambari-web/app/templates.js
index 7e330e8..d139515 100644
--- a/ambari-web/app/templates.js
+++ b/ambari-web/app/templates.js
@@ -27,4 +27,5 @@ require('templates/main/service/info/summary/mapreduce2');
require('templates/main/service/info/summary/hive');
require('templates/main/service/info/summary/hue');
require('templates/main/service/info/summary/falcon');
+require('templates/main/service/info/summary/tez');
require('templates/main/admin/highAvailability/progress');
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/templates/main/service/info/summary.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/main/service/info/summary.hbs b/ambari-web/app/templates/main/service/info/summary.hbs
index 0fc8205..65cc6e9 100644
--- a/ambari-web/app/templates/main/service/info/summary.hbs
+++ b/ambari-web/app/templates/main/service/info/summary.hbs
@@ -68,6 +68,9 @@
{{#if view.serviceStatus.storm}}
{{view App.MainDashboardServiceStormView showOnlyRows=true serviceBinding="view.service"}}
{{/if}}
+ {{#if view.serviceStatus.tez}}
+ {{template "templates/main/service/info/summary/tez"}}
+ {{/if}}
</tbody>
</table>
</div>
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/templates/main/service/info/summary/tez.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/main/service/info/summary/tez.hbs b/ambari-web/app/templates/main/service/info/summary/tez.hbs
new file mode 100644
index 0000000..8447693
--- /dev/null
+++ b/ambari-web/app/templates/main/service/info/summary/tez.hbs
@@ -0,0 +1,22 @@
+{{!
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+}}
+<td class="summary-label"><a {{action filterHosts view.clientObj}} href="javascript:void(null)" >{{t services.tez.client}}</a></td>
+<td>
+ <span class="green-live">{{view.clients.length}} </span>{{pluralize view.clients.length singular="t:services.tez.client" plural="t:services.tez.clients"}} {{t common.installed}}
+</td>
+</tr>
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/views/main/host/summary.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/main/host/summary.js b/ambari-web/app/views/main/host/summary.js
index 18875c3..395222b 100644
--- a/ambari-web/app/views/main/host/summary.js
+++ b/ambari-web/app/views/main/host/summary.js
@@ -144,6 +144,9 @@ App.MainHostSummaryView = Em.View.extend({
case 'MAPREDUCE2':
installableClients.push('MAPREDUCE2_CLIENT');
break;
+ case 'TEZ':
+ installableClients.push('TEZ_CLIENT');
+ break;
}
});
this.get('content.hostComponents').forEach(function (component) {
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/views/main/service/info/summary.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/main/service/info/summary.js b/ambari-web/app/views/main/service/info/summary.js
index 4bb15f2..26f4141 100644
--- a/ambari-web/app/views/main/service/info/summary.js
+++ b/ambari-web/app/views/main/service/info/summary.js
@@ -48,9 +48,12 @@ App.MainServiceInfoSummaryView = Em.View.extend({
hue: false,
flume: false,
falcon: false,
- storm: false
+ storm: false,
+ tez: false
},
+ servicesHaveClients: ["OOZIE", "ZOOKEEPER", "HIVE", "MAPREDUCE2", "TEZ"],
+
sumMasterComponentView : Em.View.extend({
templateName: require('templates/main/service/info/summary/master_components'),
mastersComp : function(){
@@ -71,7 +74,7 @@ App.MainServiceInfoSummaryView = Em.View.extend({
clients: function () {
var service = this.get('controller.content');
- if (["OOZIE", "ZOOKEEPER", "HIVE", "MAPREDUCE2"].contains(service.get("id"))) {
+ if (this.get('servicesHaveClients').contains(service.get("id"))) {
return service.get('hostComponents').filterProperty('isClient');
}
return [];
@@ -221,7 +224,7 @@ App.MainServiceInfoSummaryView = Em.View.extend({
*/
clientObj: function() {
var service = this.get('controller.content');
- if (["OOZIE", "ZOOKEEPER", "HIVE", "MAPREDUCE2"].contains(service.get("id"))) {
+ if (this.get('servicesHaveClients').contains(service.get("id"))) {
var clients = service.get('hostComponents').filterProperty('isClient', true);
if (clients.length > 0) {
return clients[0];
http://git-wip-us.apache.org/repos/asf/ambari/blob/6e0b0111/ambari-web/app/views/main/service/menu.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/main/service/menu.js b/ambari-web/app/views/main/service/menu.js
index b9ae802..1a95192 100644
--- a/ambari-web/app/views/main/service/menu.js
+++ b/ambari-web/app/views/main/service/menu.js
@@ -20,10 +20,12 @@ var App = require('app');
var misc = require('utils/misc');
App.MainServiceMenuView = Em.CollectionView.extend({
+ disabledServices: ['PIG', 'SQOOP', 'HCATALOG'],
+
content:function () {
var items = App.router.get('mainServiceController.content').filter(function(item){
- return !['PIG', 'SQOOP', 'HCATALOG', 'TEZ'].contains(item.get('id'));
- });
+ return !this.get('disabledServices').contains(item.get('id'));
+ }, this);
return misc.sortByOrder(App.Service.servicesSortOrder, items);
}.property('App.router.mainServiceController.content', 'App.router.mainServiceController.content.length'),