You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by di...@apache.org on 2016/02/29 16:23:13 UTC

ambari git commit: AMBARI-14435: Parameterize distro-specific stack information for ZOOKEEPER (Juanjo Marron via dili)

Repository: ambari
Updated Branches:
  refs/heads/AMBARI-13364 aac5389fe -> 7f4975fa5


AMBARI-14435: Parameterize distro-specific stack information for ZOOKEEPER (Juanjo Marron via dili)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/7f4975fa
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/7f4975fa
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/7f4975fa

Branch: refs/heads/AMBARI-13364
Commit: 7f4975fa5078eff6fda34c76b9830c263e03f859
Parents: aac5389
Author: Di Li <di...@apache.org>
Authored: Mon Feb 29 10:19:21 2016 -0500
Committer: Di Li <di...@apache.org>
Committed: Mon Feb 29 10:19:21 2016 -0500

----------------------------------------------------------------------
 .../3.4.5.2.0/package/scripts/params_linux.py        | 15 ++++++++-------
 .../3.4.5.2.0/package/scripts/params_windows.py      |  4 ++--
 .../3.4.5.2.0/package/scripts/service_check.py       |  2 +-
 .../3.4.5.2.0/package/scripts/status_params.py       | 10 +++++++---
 .../ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py |  4 ++--
 .../3.4.5.2.0/package/scripts/zookeeper_client.py    |  5 +++--
 .../3.4.5.2.0/package/scripts/zookeeper_server.py    |  5 +++--
 .../3.4.5.2.0/package/scripts/zookeeper_service.py   |  4 ++--
 .../stacks/HDP/2.0.6/configuration/cluster-env.xml   | 10 ++++++++++
 9 files changed, 38 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_linux.py
index c6264ff..8834879 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_linux.py
@@ -32,9 +32,11 @@ config = Script.get_config()
 tmp_dir = Script.get_tmp_dir()
 
 stack_version_unformatted = str(config['hostLevelParams']['stack_version'])
-hdp_stack_version = format_hdp_stack_version(stack_version_unformatted)
+stack_version_formatted = format_hdp_stack_version(stack_version_unformatted)
+stack_version_ru_support = config['configurations']['cluster-env']['stack_version_ru_support']
 
 stack_name = default("/hostLevelParams/stack_name", None)
+stack_dir = config['configurations']['cluster-env']['stack_dir']
 current_version = default("/hostLevelParams/current_version", None)
 component_directory = status_params.component_directory
 
@@ -48,14 +50,13 @@ zk_cli_shell = "/usr/lib/zookeeper/bin/zkCli.sh"
 config_dir = "/etc/zookeeper/conf"
 zk_smoke_out = os.path.join(tmp_dir, "zkSmoke.out")
 
-# hadoop parameters for 2.2+
-if Script.is_hdp_stack_greater_or_equal("2.2"):
-  zk_home = format("/usr/hdp/current/{component_directory}")
-  zk_bin = format("/usr/hdp/current/{component_directory}/bin")
-  zk_cli_shell = format("/usr/hdp/current/{component_directory}/bin/zkCli.sh")
+# hadoop parameters for stack_version_ru_support+
+if Script.is_hdp_stack_greater_or_equal(stack_version_ru_support):
+  zk_home = format("{stack_dir}/current/{component_directory}")
+  zk_bin = format("{stack_dir}/current/{component_directory}/bin")
+  zk_cli_shell = format("{stack_dir}/current/{component_directory}/bin/zkCli.sh")
   config_dir = status_params.config_dir
 
-
 zk_user = config['configurations']['zookeeper-env']['zk_user']
 hostname = config['hostname']
 user_group = config['configurations']['cluster-env']['user_group']

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_windows.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_windows.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_windows.py
index 480fc8b..c36e152 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_windows.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/params_windows.py
@@ -26,11 +26,11 @@ import status_params
 config = Script.get_config()
 
 config_dir = None
-hdp_root = None
+stack_root = None
 try:
   # not used zookeeper_home_dir = os.environ["ZOOKEEPER_HOME"]
   config_dir = os.environ["ZOOKEEPER_CONF_DIR"]
-  hdp_root = os.environ["HADOOP_NODE_INSTALL_ROOT"]
+  stack_root = os.environ["HADOOP_NODE_INSTALL_ROOT"]
 except:
   pass
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/service_check.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/service_check.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/service_check.py
index b53e5f5..622a5eb 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/service_check.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/service_check.py
@@ -65,7 +65,7 @@ class ZookeeperServiceCheckWindows(ZookeeperServiceCheck):
     import params
     env.set_params(params)
 
-    smoke_cmd = os.path.join(params.hdp_root,"Run-SmokeTests.cmd")
+    smoke_cmd = os.path.join(params.stack_root,"Run-SmokeTests.cmd")
     service = "Zookeeper"
     Execute(format("cmd /C {smoke_cmd} {service}"), user=params.zk_user, logoutput=True, tries=3, try_sleep=20)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/status_params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/status_params.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/status_params.py
index ae2a1fd..a2d4bb1 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/status_params.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/status_params.py
@@ -24,7 +24,7 @@ from resource_management.libraries.functions import get_kinit_path
 from resource_management.libraries.script.script import Script
 
 # a map of the Ambari role to the component name
-# for use with /usr/hdp/current/<component>
+# for use with <stack_dir>/current/<component>
 SERVER_ROLE_DIRECTORY_MAP = {
   'ZOOKEEPER_SERVER' : 'zookeeper-server',
   'ZOOKEEPER_CLIENT' : 'zookeeper-client'
@@ -47,6 +47,10 @@ else:
   tmp_dir = Script.get_tmp_dir()
   zk_user =  config['configurations']['zookeeper-env']['zk_user']
 
+  # Stack related params
+  stack_version_ru_support = config['configurations']['cluster-env']['stack_version_ru_support']
+  stack_dir = config['configurations']['cluster-env']['stack_dir']
+
   config_dir = "/etc/zookeeper/conf"
-  if Script.is_hdp_stack_greater_or_equal("2.2"):
-    config_dir = format("/usr/hdp/current/{component_directory}/conf")
+  if Script.is_hdp_stack_greater_or_equal(stack_version_ru_support):
+    config_dir = format("{stack_dir}/current/{component_directory}/conf")

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
index 2727641..0636825 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
@@ -35,8 +35,8 @@ def zookeeper(type = None, upgrade_type=None):
   if type == 'server':
     # This path may be missing after Ambari upgrade. We need to create it. We need to do this before any configs will
     # be applied.
-    if upgrade_type is None and not os.path.exists("/usr/hdp/current/zookeeper-server") and params.current_version\
-      and compare_versions(format_hdp_stack_version(params.version), '2.2.0.0') >= 0:
+    if upgrade_type is None and not os.path.exists(os.path.join(params.stack_dir, "/current/zookeeper-server")) and params.current_version\
+      and compare_versions(format_hdp_stack_version(params.version), params.stack_version_ru_support) >= 0:
       conf_select.select(params.stack_name, "zookeeper", params.current_version)
       hdp_select.select("zookeeper-server", params.version)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_client.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_client.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_client.py
index 7a11fee..f92f16c 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_client.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_client.py
@@ -54,7 +54,8 @@ class ZookeeperClient(Script):
 @OsFamilyImpl(os_family=OsFamilyImpl.DEFAULT)
 class ZookeeperClientLinux(ZookeeperClient):
   def get_stack_to_component(self):
-    return {"HDP": "zookeeper-client"}
+    import params
+    return {params.stack_name: "zookeeper-client"}
 
   def install(self, env):
     self.install_packages(env)
@@ -65,7 +66,7 @@ class ZookeeperClientLinux(ZookeeperClient):
     import params
     env.set_params(params)
 
-    if params.version and compare_versions(format_hdp_stack_version(params.version), '2.2.0.0') >= 0:
+    if params.version and compare_versions(format_hdp_stack_version(params.version), params.stack_version_ru_support) >= 0:
       conf_select.select(params.stack_name, "zookeeper", params.version)
       hdp_select.select("zookeeper-client", params.version)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_server.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_server.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_server.py
index 842deb0..1c25230 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_server.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_server.py
@@ -63,7 +63,8 @@ class ZookeeperServer(Script):
 class ZookeeperServerLinux(ZookeeperServer):
 
   def get_stack_to_component(self):
-    return {"HDP": "zookeeper-server"}
+    import params
+    return {params.stack_name: "zookeeper-server"}
 
   def install(self, env):
     self.install_packages(env)
@@ -74,7 +75,7 @@ class ZookeeperServerLinux(ZookeeperServer):
     import params
     env.set_params(params)
 
-    if params.version and compare_versions(format_hdp_stack_version(params.version), '2.2.0.0') >= 0:
+    if params.version and compare_versions(format_hdp_stack_version(params.version), params.stack_version_ru_support) >= 0:
       conf_select.select(params.stack_name, "zookeeper", params.version)
       hdp_select.select("zookeeper-server", params.version)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_service.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_service.py b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_service.py
index afa332a..6011294 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_service.py
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper_service.py
@@ -32,8 +32,8 @@ def zookeeper_service(action='start', upgrade_type=None):
   import params
 
   # This path may be missing after Ambari upgrade. We need to create it.
-  if upgrade_type is None and not os.path.exists("/usr/hdp/current/zookeeper-server") and params.current_version \
-    and compare_versions(format_hdp_stack_version(params.version), '2.2.0.0') >= 0:
+  if upgrade_type is None and not os.path.exists(os.path.join(params.stack_dir, "/current/zookeeper-server")) and params.current_version \
+    and compare_versions(format_hdp_stack_version(params.version), params.stack_version_ru_support) >= 0:
     conf_select.select(params.stack_name, "zookeeper", params.current_version)
     hdp_select.select("zookeeper-server", params.version)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/7f4975fa/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
index 0461978..ea8dce3 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
@@ -21,6 +21,16 @@
 -->
 
 <configuration>
+     <property>
+        <name>stack_dir</name>
+        <value>/usr/hdp</value>
+        <description>Directory prefix for stacks installation</description>
+    </property>
+    <property>
+        <name>stack_version_ru_support</name>
+        <value>2.2.0.0</value>
+        <description>Stack version from which rolling upgrade is supported and installation layout changed</description>
+    </property>
     <property>
         <name>security_enabled</name>
         <value>false</value>