Bläddra i källkod

AMBARI-4251. Support for adding custom properties to ZK configs.(vbrodetskyi)

Vitaly Brodetskyi 11 år sedan
förälder
incheckning
46d3fa97d7

+ 6 - 0
ambari-server/src/main/resources/stacks/HDP/1.3.4/services/ZOOKEEPER/package/scripts/params.py

@@ -45,6 +45,12 @@ initLimit = config['configurations']['global']['initLimit']
 syncLimit = config['configurations']['global']['syncLimit']
 clientPort = config['configurations']['global']['clientPort']
 
+if 'zoo.cfg' in config['configurations']:
+  zoo_cfg_properties_map = config['configurations']['zoo.cfg']
+else:
+  zoo_cfg_properties_map = {}
+zoo_cfg_properties_map_length = len(zoo_cfg_properties_map)
+
 zk_primary_name = "zookeeper"
 zk_principal_name = "zookeeper/_HOST@EXAMPLE.COM"
 zk_principal = zk_principal_name.replace('_HOST',hostname)

+ 7 - 0
ambari-server/src/main/resources/stacks/HDP/1.3.4/services/ZOOKEEPER/package/templates/zoo.cfg.j2

@@ -42,3 +42,10 @@ jaasLoginRenew=3600000
 kerberos.removeHostFromPrincipal=true
 kerberos.removeRealmFromPrincipal=true
 {% endif %}
+
+{% if zoo_cfg_properties_map_length > 0 %}
+# Custom properties
+{% endif %}
+{% for key, value in zoo_cfg_properties_map.iteritems() %}
+{{key}}={{value}}
+{% endfor %}

+ 6 - 0
ambari-server/src/main/resources/stacks/HDP/2.0.8/services/ZOOKEEPER/package/scripts/params.py

@@ -45,6 +45,12 @@ initLimit = config['configurations']['global']['initLimit']
 syncLimit = config['configurations']['global']['syncLimit']
 clientPort = config['configurations']['global']['clientPort']
 
+if 'zoo.cfg' in config['configurations']:
+  zoo_cfg_properties_map = config['configurations']['zoo.cfg']
+else:
+  zoo_cfg_properties_map = {}
+zoo_cfg_properties_map_length = len(zoo_cfg_properties_map)
+
 zk_primary_name = "zookeeper"
 zk_principal_name = "zookeeper/_HOST@EXAMPLE.COM"
 zk_principal = zk_principal_name.replace('_HOST',hostname)

+ 7 - 0
ambari-server/src/main/resources/stacks/HDP/2.0.8/services/ZOOKEEPER/package/templates/zoo.cfg.j2

@@ -42,3 +42,10 @@ jaasLoginRenew=3600000
 kerberos.removeHostFromPrincipal=true
 kerberos.removeRealmFromPrincipal=true
 {% endif %}
+
+{% if zoo_cfg_properties_map_length > 0 %}
+# Custom properties
+{% endif %}
+{% for key, value in zoo_cfg_properties_map.iteritems() %}
+{{key}}={{value}}
+{% endfor %}