浏览代码

AMBARI-8204. No zoo.cfg file on hosts and no 'Custom zoo.cfg' in Zookeeper config tab (aonishuk)

Andrew Onishuk 10 年之前
父节点
当前提交
8c0ab9fb49
共有 23 个文件被更改,包括 192 次插入212 次删除
  1. 1 1
      ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/package/scripts/params.py
  2. 49 0
      ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zoo.cfg.xml
  3. 0 26
      ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml
  4. 1 0
      ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/metainfo.xml
  5. 2 5
      ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/package/scripts/params.py
  6. 9 26
      ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/package/templates/zoo.cfg.j2
  7. 1 1
      ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/package/scripts/params.py
  8. 49 0
      ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zoo.cfg.xml
  9. 1 25
      ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml
  10. 2 5
      ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/package/scripts/params.py
  11. 5 21
      ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/package/templates/zoo.cfg.j2
  12. 15 11
      ambari-server/src/test/python/stacks/1.3.2/configs/default.json
  13. 16 14
      ambari-server/src/test/python/stacks/1.3.2/configs/secured.json
  14. 13 9
      ambari-server/src/test/python/stacks/2.0.6/configs/default.json
  15. 10 8
      ambari-server/src/test/python/stacks/2.0.6/configs/secured.json
  16. 1 1
      ambari-web/app/assets/data/configurations/cluster_level_actual_configs.json
  17. 1 1
      ambari-web/app/assets/data/configurations/cluster_level_configs.json
  18. 1 19
      ambari-web/app/controllers/wizard/step8_controller.js
  19. 6 6
      ambari-web/app/data/HDP2/site_properties.js
  20. 6 6
      ambari-web/app/data/site_properties.js
  21. 2 2
      ambari-web/app/models/service_config.js
  22. 1 1
      ambari-web/app/utils/config.js
  23. 0 24
      ambari-web/test/controllers/wizard/step8_test.js

+ 1 - 1
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/package/scripts/params.py

@@ -74,7 +74,7 @@ mapred_local_dir = config['configurations']['mapred-site']['mapred.local.dir']
 
 # this is different for HDP2
 nn_metrics_property = "FSNamesystemMetrics"
-clientPort = config['configurations']['zookeeper-env']['clientPort'] #ZK 
+clientPort = config['configurations']['zoo.cfg']['clientPort'] #ZK
 
 
 java64_home = config['hostLevelParams']['java_home']

+ 49 - 0
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zoo.cfg.xml

@@ -0,0 +1,49 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
+<!--
+/**
+ * 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.
+ */
+-->
+
+<configuration>
+  <property>
+    <name>tickTime</name>
+    <value>2000</value>
+    <description>The length of a single tick in milliseconds, which is the basic time unit used by ZooKeeper</description>
+  </property>
+  <property>
+    <name>initLimit</name>
+    <value>10</value>
+    <description>Ticks to allow for sync at Init.</description>
+  </property>
+  <property>
+    <name>syncLimit</name>
+    <value>5</value>
+    <description>Ticks to allow for sync at Runtime.</description>
+  </property>
+  <property>
+    <name>clientPort</name>
+    <value>2181</value>
+    <description>Port for running ZK Server.</description>
+  </property>
+  <property>
+    <name>dataDir</name>
+    <value>/hadoop/zookeeper</value>
+    <description>Data directory for ZooKeeper.</description>
+  </property>
+</configuration>

+ 0 - 26
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml

@@ -27,11 +27,6 @@
     <property-type>USER</property-type>
     <description>ZooKeeper User.</description>
   </property>
-  <property>
-    <name>zk_data_dir</name>
-    <value>/hadoop/zookeeper</value>
-    <description>Data directory for ZooKeeper.</description>
-  </property>
   <property>
     <name>zk_log_dir</name>
     <value>/var/log/zookeeper</value>
@@ -42,27 +37,6 @@
     <value>/var/run/zookeeper</value>
     <description>ZooKeeper Pid Dir</description>
   </property>
-  <property>
-    <name>tickTime</name>
-    <value>2000</value>
-    <description>The length of a single tick in milliseconds, which is the basic time unit used by ZooKeeper</description>
-  </property>
-  <property>
-    <name>initLimit</name>
-    <value>10</value>
-    <description>Ticks to allow for sync at Init.</description>
-  </property>
-  <property>
-    <name>syncLimit</name>
-    <value>5</value>
-    <description>Ticks to allow for sync at Runtime.</description>
-  </property>
-  <property>
-    <name>clientPort</name>
-    <value>2181</value>
-    <description>Port for running ZK Server.</description>
-  </property>
-  
   <!-- zookeeper-env.sh -->
   <property>
     <name>content</name>

+ 1 - 0
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/metainfo.xml

@@ -81,6 +81,7 @@
       <configuration-dependencies>
         <config-type>zookeeper-env</config-type>
         <config-type>zookeeper-log4j</config-type>
+        <config-type>zoo.cfg</config-type>
       </configuration-dependencies>
       <restartRequiredAfterChange>true</restartRequiredAfterChange>      
     </service>

+ 2 - 5
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/package/scripts/params.py

@@ -36,15 +36,12 @@ zk_env_sh_template = config['configurations']['zookeeper-env']['content']
 smoke_script = "/usr/lib/zookeeper/bin/zkCli.sh"
 
 zk_log_dir = config['configurations']['zookeeper-env']['zk_log_dir']
-zk_data_dir = config['configurations']['zookeeper-env']['zk_data_dir']
+zk_data_dir = config['configurations']['zoo.cfg']['dataDir']
 zk_pid_dir = status_params.zk_pid_dir
 zk_pid_file = status_params.zk_pid_file
 zk_server_heapsize = "-Xmx1024m"
 
-tickTime = config['configurations']['zookeeper-env']['tickTime']
-initLimit = config['configurations']['zookeeper-env']['initLimit']
-syncLimit = config['configurations']['zookeeper-env']['syncLimit']
-clientPort = config['configurations']['zookeeper-env']['clientPort']
+clientPort = config['configurations']['zoo.cfg']['clientPort']
 
 if 'zoo.cfg' in config['configurations']:
   zoo_cfg_properties_map = config['configurations']['zoo.cfg']

+ 9 - 26
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/package/templates/zoo.cfg.j2

@@ -16,7 +16,6 @@
 # limitations under the License.
 #}
 
-
 #
 #
 # Licensed to the Apache Software Foundation (ASF) under one
@@ -39,32 +38,16 @@
 #
 #
 
-# The number of milliseconds of each tick
-tickTime={{tickTime}}
-# The number of ticks that the initial
-# synchronization phase can take
-initLimit={{initLimit}}
-# The number of ticks that can pass between
-# sending a request and getting an acknowledgement
-syncLimit={{syncLimit}}
-# the directory where the snapshot is stored.
-dataDir={{zk_data_dir}}
-# the port at which the clients will connect
-clientPort={{clientPort}}
+{% for key, value in zoo_cfg_properties_map.iteritems() %}
+  {{key}}={{value}}
+{% endfor %}
 {% for host in zookeeper_hosts %}
-server.{{loop.index}}={{host}}:2888:3888
+  server.{{loop.index}}={{host}}:2888:3888
 {% endfor %}
 
 {% if security_enabled %}
-authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
-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 %}
+  authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
+  jaasLoginRenew=3600000
+  kerberos.removeHostFromPrincipal=true
+  kerberos.removeRealmFromPrincipal=true
+{% endif %}

+ 1 - 1
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/package/scripts/params.py

@@ -219,7 +219,7 @@ if has_namenode:
 
 # this is different for HDP1
 nn_metrics_property = "FSNamesystem"
-clientPort = config['configurations']['zookeeper-env']['clientPort'] #ZK 
+clientPort = config['configurations']['zoo.cfg']['clientPort'] #ZK
 
 
 java64_home = config['hostLevelParams']['java_home']

+ 49 - 0
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zoo.cfg.xml

@@ -0,0 +1,49 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
+<!--
+/**
+ * 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.
+ */
+-->
+
+<configuration>
+  <property>
+    <name>tickTime</name>
+    <value>2000</value>
+    <description>The length of a single tick in milliseconds, which is the basic time unit used by ZooKeeper</description>
+  </property>
+  <property>
+    <name>initLimit</name>
+    <value>10</value>
+    <description>Ticks to allow for sync at Init.</description>
+  </property>
+  <property>
+    <name>syncLimit</name>
+    <value>5</value>
+    <description>Ticks to allow for sync at Runtime.</description>
+  </property>
+  <property>
+    <name>clientPort</name>
+    <value>2181</value>
+    <description>Port for running ZK Server.</description>
+  </property>
+  <property>
+    <name>dataDir</name>
+    <value>/hadoop/zookeeper</value>
+    <description>Data directory for ZooKeeper.</description>
+  </property>
+</configuration>

+ 1 - 25
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml

@@ -27,11 +27,6 @@
     <property-type>USER</property-type>
     <description>ZooKeeper User.</description>
   </property>
-  <property>
-    <name>zk_data_dir</name>
-    <value>/hadoop/zookeeper</value>
-    <description>Data directory for ZooKeeper.</description>
-  </property>
   <property>
     <name>zk_log_dir</name>
     <value>/var/log/zookeeper</value>
@@ -42,26 +37,7 @@
     <value>/var/run/zookeeper</value>
     <description>ZooKeeper Pid Dir</description>
   </property>
-  <property>
-    <name>tickTime</name>
-    <value>2000</value>
-    <description>The length of a single tick in milliseconds, which is the basic time unit used by ZooKeeper</description>
-  </property>
-  <property>
-    <name>initLimit</name>
-    <value>10</value>
-    <description>Ticks to allow for sync at Init.</description>
-  </property>
-  <property>
-    <name>syncLimit</name>
-    <value>5</value>
-    <description>Ticks to allow for sync at Runtime.</description>
-  </property>
-  <property>
-    <name>clientPort</name>
-    <value>2181</value>
-    <description>Port for running ZK Server.</description>
-  </property>
+
   
   <!-- zookeeper-env.sh -->
   <property>

+ 2 - 5
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/package/scripts/params.py

@@ -48,15 +48,12 @@ user_group = config['configurations']['cluster-env']['user_group']
 zk_env_sh_template = config['configurations']['zookeeper-env']['content']
 
 zk_log_dir = config['configurations']['zookeeper-env']['zk_log_dir']
-zk_data_dir = config['configurations']['zookeeper-env']['zk_data_dir']
+zk_data_dir = config['configurations']['zoo.cfg']['dataDir']
 zk_pid_dir = status_params.zk_pid_dir
 zk_pid_file = status_params.zk_pid_file
 zk_server_heapsize = "-Xmx1024m"
 
-tickTime = config['configurations']['zookeeper-env']['tickTime']
-initLimit = config['configurations']['zookeeper-env']['initLimit']
-syncLimit = config['configurations']['zookeeper-env']['syncLimit']
-clientPort = config['configurations']['zookeeper-env']['clientPort']
+clientPort = config['configurations']['zoo.cfg']['clientPort']
 
 if 'zoo.cfg' in config['configurations']:
   zoo_cfg_properties_map = config['configurations']['zoo.cfg']

+ 5 - 21
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/package/templates/zoo.cfg.j2

@@ -38,32 +38,16 @@
 #
 #
 
-# The number of milliseconds of each tick
-tickTime={{tickTime}}
-# The number of ticks that the initial
-# synchronization phase can take
-initLimit={{initLimit}}
-# The number of ticks that can pass between
-# sending a request and getting an acknowledgement
-syncLimit={{syncLimit}}
-# the directory where the snapshot is stored.
-dataDir={{zk_data_dir}}
-# the port at which the clients will connect
-clientPort={{clientPort}}
-{% for host in zookeeper_hosts %}
+{% for key, value in zoo_cfg_properties_map.iteritems() -%}
+  {{key}}={{value}}
+{% endfor %}
+{% for host in zookeeper_hosts -%}
 server.{{loop.index}}={{host}}:2888:3888
 {% endfor %}
 
-{% if security_enabled %}
+{% if security_enabled -%}
 authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
 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 %}

+ 15 - 11
ambari-server/src/test/python/stacks/1.3.2/configs/default.json

@@ -404,18 +404,22 @@
             "rrdcached_write_threads": "4", 
             "rrdcached_delay": "1800", 
             "rrdcached_timeout": "3600"
-        }, 
+        },
         "zookeeper-env": {
-            "clientPort": "2181", 
-            "zk_user": "zookeeper", 
-            "zk_log_dir": "/var/log/zookeeper", 
-            "syncLimit": "5", 
-            "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}\n    ", 
-            "initLimit": "10", 
-            "zk_pid_dir": "/var/run/zookeeper", 
-            "zk_data_dir": "/hadoop/zookeeper", 
-            "tickTime": "2000"
-        }, 
+          "zk_user": "zookeeper",
+          "zk_log_dir": "/var/log/zookeeper",
+          "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}",
+          "zk_pid_dir": "/var/run/zookeeper",
+          "zookeeper_principal_name": "zookeeper/_HOST@EXAMPLE.COM",
+          "zookeeper_keytab_path": "/etc/security/keytabs/zk.service.keytab"
+        },
+        "zoo.cfg": {
+          "clientPort": "2181",
+          "syncLimit": "5",
+          "initLimit": "10",
+          "dataDir": "/hadoop/zookeeper",
+          "tickTime": "2000"
+        },
         "hdfs-log4j": {
             "content": "log4jproperties\nline2"
         },

+ 16 - 14
ambari-server/src/test/python/stacks/1.3.2/configs/secured.json

@@ -585,20 +585,22 @@
             "rrdcached_write_threads": "4", 
             "rrdcached_delay": "1800", 
             "rrdcached_timeout": "3600"
-        }, 
-        "zookeeper-env": {
-            "clientPort": "2181", 
-            "zk_user": "zookeeper", 
-            "zk_log_dir": "/var/log/zookeeper", 
-            "syncLimit": "5", 
-            "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}\n    ", 
-            "initLimit": "10", 
-            "zk_pid_dir": "/var/run/zookeeper", 
-            "zk_data_dir": "/hadoop/zookeeper", 
-            "tickTime": "2000",
-            "zookeeper_principal_name": "zookeeper/_HOST@EXAMPLE.COM",
-            "zookeeper_keytab_path": "/etc/security/keytabs/zk.service.keytab"
-        }, 
+        },
+      "zookeeper-env": {
+        "zk_user": "zookeeper",
+        "zk_log_dir": "/var/log/zookeeper",
+        "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}",
+        "zk_pid_dir": "/var/run/zookeeper",
+        "zookeeper_principal_name": "zookeeper/_HOST@EXAMPLE.COM",
+        "zookeeper_keytab_path": "/etc/security/keytabs/zk.service.keytab"
+      },
+      "zoo.cfg": {
+        "clientPort": "2181",
+        "syncLimit": "5",
+        "initLimit": "10",
+        "dataDir": "/hadoop/zookeeper",
+        "tickTime": "2000"
+      },
         "hdfs-log4j": {
             "content": "log4jproperties\nline2"
         },

+ 13 - 9
ambari-server/src/test/python/stacks/2.0.6/configs/default.json

@@ -488,15 +488,19 @@
             "rrdcached_timeout": "3600"
         },
         "zookeeper-env": {
-            "clientPort": "2181", 
-            "zk_user": "zookeeper", 
-            "zk_log_dir": "/var/log/zookeeper", 
-            "syncLimit": "5", 
-            "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}", 
-            "initLimit": "10", 
-            "zk_pid_dir": "/var/run/zookeeper", 
-            "zk_data_dir": "/hadoop/zookeeper", 
-            "tickTime": "2000"
+          "zk_user": "zookeeper",
+          "zk_log_dir": "/var/log/zookeeper",
+          "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}",
+          "zk_pid_dir": "/var/run/zookeeper",
+          "zookeeper_principal_name": "zookeeper/_HOST@EXAMPLE.COM",
+          "zookeeper_keytab_path": "/etc/security/keytabs/zk.service.keytab"
+        },
+        "zoo.cfg": {
+          "clientPort": "2181",
+          "syncLimit": "5",
+          "initLimit": "10",
+          "dataDir": "/hadoop/zookeeper",
+          "tickTime": "2000"
         },
         "mapred-env": {
             "content": "\n# export JAVA_HOME=/home/y/libexec/jdk1.6.0/\n\nexport HADOOP_JOB_HISTORYSERVER_HEAPSIZE={{jobhistory_heapsize}}\n\nexport HADOOP_MAPRED_ROOT_LOGGER=INFO,RFA\n\n#export HADOOP_JOB_HISTORYSERVER_OPTS=\n#export HADOOP_MAPRED_LOG_DIR=\"\" # Where log files are stored.  $HADOOP_MAPRED_HOME/logs by default.\n#export HADOOP_JHS_LOGGER=INFO,RFA # Hadoop JobSummary logger.\n#export HADOOP_MAPRED_PID_DIR= # The pid files are stored. /tmp by default.\n#export HADOOP_MAPRED_IDENT_STRING= #A string representing this instance of hadoop. $USER by default\n#export HADOOP_MAPRED_NICENESS= #The scheduling priority for daemons. Defaults to 0.", 

+ 10 - 8
ambari-server/src/test/python/stacks/2.0.6/configs/secured.json

@@ -540,17 +540,19 @@
             "rrdcached_timeout": "3600"
         },
         "zookeeper-env": {
-            "clientPort": "2181", 
             "zk_user": "zookeeper", 
-            "zk_log_dir": "/var/log/zookeeper", 
-            "syncLimit": "5", 
-            "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}", 
-            "initLimit": "10", 
-            "zk_pid_dir": "/var/run/zookeeper", 
-            "zk_data_dir": "/hadoop/zookeeper", 
-            "tickTime": "2000",
+            "zk_log_dir": "/var/log/zookeeper",
+            "content": "\nexport JAVA_HOME={{java64_home}}\nexport ZOO_LOG_DIR={{zk_log_dir}}\nexport ZOOPIDFILE={{zk_pid_file}}\nexport SERVER_JVMFLAGS={{zk_server_heapsize}}\nexport JAVA=$JAVA_HOME/bin/java\nexport CLASSPATH=$CLASSPATH:/usr/share/zookeeper/*\n\n{% if security_enabled %}\nexport SERVER_JVMFLAGS=\"$SERVER_JVMFLAGS -Djava.security.auth.login.config={{zk_server_jaas_file}}\"\nexport CLIENT_JVMFLAGS=\"$CLIENT_JVMFLAGS -Djava.security.auth.login.config={{zk_client_jaas_file}}\"\n{% endif %}",
+            "zk_pid_dir": "/var/run/zookeeper",
             "zookeeper_principal_name": "zookeeper/_HOST@EXAMPLE.COM",
             "zookeeper_keytab_path": "/etc/security/keytabs/zk.service.keytab"
+        },
+         "zoo.cfg": {
+          "clientPort": "2181",
+          "syncLimit": "5",
+          "initLimit": "10",
+          "dataDir": "/hadoop/zookeeper",
+          "tickTime": "2000"
         },
         "mapred-env": {
             "content": "\n# export JAVA_HOME=/home/y/libexec/jdk1.6.0/\n\nexport HADOOP_JOB_HISTORYSERVER_HEAPSIZE={{jobhistory_heapsize}}\n\nexport HADOOP_MAPRED_ROOT_LOGGER=INFO,RFA\n\n#export HADOOP_JOB_HISTORYSERVER_OPTS=\n#export HADOOP_MAPRED_LOG_DIR=\"\" # Where log files are stored.  $HADOOP_MAPRED_HOME/logs by default.\n#export HADOOP_JHS_LOGGER=INFO,RFA # Hadoop JobSummary logger.\n#export HADOOP_MAPRED_PID_DIR= # The pid files are stored. /tmp by default.\n#export HADOOP_MAPRED_IDENT_STRING= #A string representing this instance of hadoop. $USER by default\n#export HADOOP_MAPRED_NICENESS= #The scheduling priority for daemons. Defaults to 0.", 

+ 1 - 1
ambari-web/app/assets/data/configurations/cluster_level_actual_configs.json

@@ -149,7 +149,7 @@
         "nagios_contact" : "n@n.com",
         "mapred_cluster_red_mem_mb" : "-1",
         "hive_ambari_database" : "MySQL",
-        "zk_data_dir" : "/hadoop/zookeeper",
+        "dataDir" : "/hadoop/zookeeper",
         "hive_pid_dir" : "/var/run/hive",
         "mysql_connector_url" : "${download_url}/mysql-connector-java-5.1.18.zip",
         "jtnode_opt_maxnewsize" : "200m",

+ 1 - 1
ambari-web/app/assets/data/configurations/cluster_level_configs.json

@@ -426,7 +426,7 @@
         "nagios_contact" : "n@n.com",
         "mapred_cluster_red_mem_mb" : "-1",
         "hive_ambari_database" : "MySQL",
-        "zk_data_dir" : "/hadoop/zookeeper",
+        "dataDir" : "/hadoop/zookeeper",
         "hive_pid_dir" : "/var/run/hive",
         "mysql_connector_url" : "${download_url}/mysql-connector-java-5.1.18.zip",
         "jtnode_opt_maxnewsize" : "200m",

+ 1 - 19
ambari-web/app/controllers/wizard/step8_controller.js

@@ -1411,11 +1411,7 @@ App.WizardStep8Controller = Em.Controller.extend(App.AddSecurityConfigs, {
             var obj = this.createStormSiteObj(tag);
             obj.service_config_version_note = serviceVersionNotes;
             this.get('serviceConfigTags').pushObject(obj);
-          } else if (type === 'zoo.cfg') {
-            var obj = this.createZooCfgObj(tag);
-            obj.service_config_version_note = serviceVersionNotes;
-            this.get('serviceConfigTags').pushObject(obj);
-          } else {
+          }  else {
             var obj = this.createSiteObj(type, tag);
             obj.service_config_version_note = serviceVersionNotes;
             this.get('serviceConfigTags').pushObject(obj);
@@ -1682,20 +1678,6 @@ App.WizardStep8Controller = Em.Controller.extend(App.AddSecurityConfigs, {
     return configObj;
   },
 
-  /**
-   * Create ZooKeeper Cfg Object
-   * @param tag
-   * @returns {{type: string, tag: string, properties: {}}}
-   * @method createZooCfgObj
-   */
-  createZooCfgObj: function (tag) {
-    var configs = this.get('configs').filterProperty('filename', 'zoo.cfg');
-    var csProperties = {};
-    configs.forEach(function (_configProperty) {
-      csProperties[_configProperty.name] = _configProperty.value;
-    }, this);
-    return {type: 'zoo.cfg', tag: tag, properties: csProperties};
-  },
   /**
    * Create site obj for Storm
    * Some config-properties should be modified in custom way

+ 6 - 6
ambari-web/app/data/HDP2/site_properties.js

@@ -3409,7 +3409,7 @@ module.exports =
     },
     {
       "id": "puppet var",
-      "name": "zk_data_dir",
+      "name": "dataDir",
       "displayName": "ZooKeeper directory",
       "description": "Data directory for ZooKeeper",
       "defaultValue": "",
@@ -3418,7 +3418,7 @@ module.exports =
       "displayType": "directory",
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 1
     },
@@ -3433,7 +3433,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 2
     },
@@ -3447,7 +3447,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 3
     },
@@ -3461,7 +3461,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 4
     },
@@ -3475,7 +3475,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 5
     },

+ 6 - 6
ambari-web/app/data/site_properties.js

@@ -2173,7 +2173,7 @@ module.exports =
     },
     {
       "id": "puppet var",
-      "name": "zk_data_dir",
+      "name": "dataDir",
       "displayName": "ZooKeeper directory",
       "description": "Data directory for ZooKeeper",
       "defaultValue": "",
@@ -2182,7 +2182,7 @@ module.exports =
       "displayType": "directory",
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 1
     },
@@ -2197,7 +2197,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 2
     },
@@ -2211,7 +2211,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 3
     },
@@ -2225,7 +2225,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 4
     },
@@ -2239,7 +2239,7 @@ module.exports =
       "isOverridable": false,
       "isVisible": true,
       "serviceName": "ZOOKEEPER",
-      "filename": "zookeeper-env.xml",
+      "filename": "zoo.cfg.xml",
       "category": "ZOOKEEPER_SERVER",
       "index": 5
     },

+ 2 - 2
ambari-web/app/models/service_config.js

@@ -540,7 +540,7 @@ App.ServiceConfigProperty = Ember.Object.extend({
       case 'fs.checkpoint.dir':
       case 'dfs.namenode.checkpoint.dir':
       case 'yarn.timeline-service.leveldb-timeline-store.path':
-      case 'zk_data_dir':
+      case 'dataDir':
       case 'oozie_data_dir':
       case 'hbase.tmp.dir':
       case 'storm.local.dir':
@@ -629,7 +629,7 @@ App.ServiceConfigProperty = Ember.Object.extend({
           setOfHostNames.push(component.hostName);
         }, this);
         break;
-      case 'zk_data_dir':
+      case 'dataDir':
         components = masterComponentHostsInDB.filterProperty('component', 'ZOOKEEPER_SERVER');
         components.forEach(function (component) {
           setOfHostNames.push(component.hostName);

+ 1 - 1
ambari-web/app/utils/config.js

@@ -28,7 +28,7 @@ App.config = Em.Object.create({
   /**
    * filename exceptions used to support substandard sitenames which don't have "xml" extension
    */
-  filenameExceptions: ['zoo.cfg'],
+  filenameExceptions: [],
 
   preDefinedServiceConfigs: [],
   /**

+ 0 - 24
ambari-web/test/controllers/wizard/step8_test.js

@@ -905,30 +905,6 @@ describe('App.WizardStep8Controller', function () {
     });
   });
 
-  describe('#createZooCfgObj', function() {
-    it('should affect zoo.cfg properties', function() {
-      var configs = [
-          {filename: 'zoo.cfg', value: 'a&amp;b', name: 'p1'},
-          {filename: 'zoo.cfg', value: 'a&lt;b', name: 'p2'},
-          {filename: 'zoo.cfg', value: 'a&gt;b', name: 'p3'},
-          {filename: 'zoo.cfg', value: 'a&quot;b', name: 'p4'},
-          {filename: 'zoo.cfg', value: 'a&apos;b', name: 'p5'}
-        ],
-        expected = {
-          type: 'zoo.cfg',
-          tag: 'version1',
-          properties: {
-            p1: 'a&amp;b',
-            p2: 'a&lt;b',
-            p3: 'a&gt;b',
-            p4: 'a&quot;b',
-            p5: 'a&apos;b'
-          }
-        };
-      installerStep8Controller.reopen({configs: configs});
-      expect(installerStep8Controller.createZooCfgObj('version1')).to.eql(expected);
-    });
-  });
 
   describe('#createStormSiteObj', function() {
     it('should replace quote \'"\' to "\'" for some properties', function() {