Prechádzať zdrojové kódy

AMBARI-16250: Create STORM service versions in common-services (jluniya)

Jayush Luniya 9 rokov pred
rodič
commit
f1c7514d60
75 zmenil súbory, kde vykonal 673 pridanie a 259 odobranie
  1. 22 2
      ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java
  2. 2 2
      ambari-server/src/main/java/org/apache/ambari/server/stack/StackModule.java
  3. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-audit.xml
  4. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-plugin-properties.xml
  5. 67 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-policymgr-ssl.xml
  6. 59 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-security.xml
  7. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-cluster-log4j.xml
  8. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-env.xml
  9. 60 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-site.xml
  10. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-worker-log4j.xml
  11. 57 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/metainfo.xml
  12. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/metrics.json
  13. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.10.0/widgets.json
  14. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/alerts.json
  15. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/configuration/storm-env.xml
  16. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/configuration/storm-site.xml
  17. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/kerberos.json
  18. 1 1
      ambari-server/src/main/resources/common-services/STORM/0.9.1/metainfo.xml
  19. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/metrics.json
  20. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/alerts/check_supervisor_process_win.py
  21. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/files/wordCount.jar
  22. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/drpc_server.py
  23. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus.py
  24. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus_prod.py
  25. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/pacemaker.py
  26. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/params.py
  27. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/params_linux.py
  28. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/params_windows.py
  29. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/rest_api.py
  30. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/service.py
  31. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/service_check.py
  32. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/setup_atlas_storm.py
  33. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/setup_ranger_storm.py
  34. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/status_params.py
  35. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/storm.py
  36. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/storm_upgrade.py
  37. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/storm_yaml_utils.py
  38. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor.py
  39. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor_prod.py
  40. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisord_service.py
  41. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/ui_server.py
  42. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/client_jaas.conf.j2
  43. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/config.yaml.j2
  44. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/storm-metrics2.properties.j2
  45. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/storm.conf.j2
  46. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/storm_jaas.conf.j2
  47. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/worker-launcher.cfg.j2
  48. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.1/quicklinks/quicklinks.json
  49. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.3/configuration/ranger-storm-plugin-properties.xml
  50. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.3/configuration/storm-env.xml
  51. 123 0
      ambari-server/src/main/resources/common-services/STORM/0.9.3/configuration/storm-site.xml
  52. 53 0
      ambari-server/src/main/resources/common-services/STORM/0.9.3/metainfo.xml
  53. 0 0
      ambari-server/src/main/resources/common-services/STORM/0.9.3/metrics.json
  54. 0 0
      ambari-server/src/main/resources/common-services/STORM/1.0.1/configuration/ranger-storm-audit.xml
  55. 67 0
      ambari-server/src/main/resources/common-services/STORM/1.0.1/configuration/storm-site.xml
  56. 0 0
      ambari-server/src/main/resources/common-services/STORM/1.0.1/kerberos.json
  57. 28 0
      ambari-server/src/main/resources/common-services/STORM/1.0.1/metainfo.xml
  58. 2 1
      ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/metainfo.xml
  59. 0 62
      ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml
  60. 1 24
      ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/metainfo.xml
  61. 0 32
      ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-policymgr-ssl.xml
  62. 0 30
      ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-security.xml
  63. 27 29
      ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml
  64. 2 30
      ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/metainfo.xml
  65. 35 0
      ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/ranger-storm-policymgr-ssl.xml
  66. 29 0
      ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/ranger-storm-security.xml
  67. 30 39
      ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/storm-site.xml
  68. 1 0
      ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/metainfo.xml
  69. 1 1
      ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/STORM/alerts.json
  70. 1 1
      ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/STORM/metainfo.xml
  71. 1 1
      ambari-server/src/test/python/stacks/2.1/STORM/test_storm_base.py
  72. 1 1
      ambari-server/src/test/python/stacks/2.3/STORM/test_storm_base.py
  73. 1 1
      ambari-server/src/test/python/stacks/2.3/STORM/test_storm_upgrade.py
  74. 1 1
      ambari-server/src/test/python/stacks/2.3/configs/storm_default.json
  75. 1 1
      ambari-server/src/test/python/stacks/2.3/configs/storm_default_secure.json

+ 22 - 2
ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java

@@ -34,6 +34,7 @@ import org.apache.ambari.server.state.QuickLinksConfigurationInfo;
 import org.apache.ambari.server.state.ServiceInfo;
 import org.apache.ambari.server.state.ServicePropertyInfo;
 import org.apache.ambari.server.state.ThemeInfo;
+import org.apache.commons.lang.StringUtils;
 
 import javax.annotation.Nullable;
 
@@ -149,9 +150,28 @@ public class ServiceModule extends BaseModule<ServiceModule, ServiceInfo> implem
   public void resolve(
       ServiceModule parentModule, Map<String, StackModule> allStacks, Map<String, ServiceModule> commonServices)
       throws AmbariException {
+    resolveInternal(parentModule, allStacks, commonServices, false);
+  }
+
+  public void resolveExplicit(
+      ServiceModule parentModule, Map<String, StackModule> allStacks, Map<String, ServiceModule> commonServices)
+      throws AmbariException {
+    resolveInternal(parentModule, allStacks, commonServices, true);
+  }
 
-    if (!serviceInfo.isValid() || !parentModule.isValid())
+  public void resolveInternal(
+      ServiceModule parentModule, Map<String, StackModule> allStacks, Map<String, ServiceModule> commonServices,
+      boolean resolveExplicit)
+      throws AmbariException {
+    if (!serviceInfo.isValid() || !parentModule.isValid()) {
       return;
+    }
+
+    // If resolving against parent stack service module (stack inheritance), do not merge if an
+    // explicit parent is specified
+    if(!StringUtils.isBlank(serviceInfo.getParent()) && !resolveExplicit) {
+      return;
+    }
 
     ServiceInfo parent = parentModule.getModuleInfo();
     
@@ -286,7 +306,7 @@ public class ServiceModule extends BaseModule<ServiceModule, ServiceInfo> implem
           //todo: provide more information to user about cycle
           throw new AmbariException("Cycle detected while parsing common service");
         }
-        resolve(baseService, allStacks, commonServices);
+        resolveExplicit(baseService, allStacks, commonServices);
       } else {
         throw new AmbariException("Common service cannot inherit from a non common service");
       }

+ 2 - 2
ambari-server/src/main/java/org/apache/ambari/server/stack/StackModule.java

@@ -337,7 +337,7 @@ public class StackModule extends BaseModule<StackModule, StackInfo> implements V
       stackInfo.setErrors(error);
     } else {
       if (baseService.isValid()) {
-        service.resolve(baseService, allStacks, commonServices);
+        service.resolveExplicit(baseService, allStacks, commonServices);
       } else {
         setValid(false);
         stackInfo.setValid(false);
@@ -386,7 +386,7 @@ public class StackModule extends BaseModule<StackModule, StackInfo> implements V
       throw new AmbariException("The service '" + serviceInfo.getName() + "' in stack '" + stackInfo.getName() + ":"
           + stackInfo.getVersion() + "' extends a non-existent service: '" + parent + "'");
       }
-    service.resolve(baseService, allStacks, commonServices);
+    service.resolveExplicit(baseService, allStacks, commonServices);
   }
 
   /**

+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-audit.xml → ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-audit.xml


+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-plugin-properties.xml → ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-plugin-properties.xml


+ 67 - 0
ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-policymgr-ssl.xml

@@ -0,0 +1,67 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * 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>xasecure.policymgr.clientssl.keystore</name>
+    <value>hadoopdev-clientcert.jks</value>
+    <description>Java Keystore files</description>
+  </property>
+
+  <property>
+    <name>xasecure.policymgr.clientssl.keystore.password</name>
+    <value>myKeyFilePassword</value>
+    <property-type>PASSWORD</property-type>
+    <description>password for keystore</description>
+    <value-attributes>
+      <type>password</type>
+    </value-attributes>
+  </property>
+
+  <property>
+    <name>xasecure.policymgr.clientssl.truststore</name>
+    <value>cacerts-xasecure.jks</value>
+    <description>java truststore file</description>
+  </property>
+
+  <property>
+    <name>xasecure.policymgr.clientssl.truststore.password</name>
+    <value>changeit</value>
+    <property-type>PASSWORD</property-type>
+    <description>java truststore password</description>
+    <value-attributes>
+      <type>password</type>
+    </value-attributes>
+  </property>
+
+    <property>
+    <name>xasecure.policymgr.clientssl.keystore.credential.file</name>
+    <value>jceks://file{{credential_file}}</value>
+    <description>java keystore credential file</description>
+  </property>
+
+  <property>
+    <name>xasecure.policymgr.clientssl.truststore.credential.file</name>
+    <value>jceks://file{{credential_file}}</value>
+    <description>java truststore credential file</description>
+  </property>
+
+</configuration>

+ 59 - 0
ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/ranger-storm-security.xml

@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * 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>ranger.plugin.storm.service.name</name>
+    <value>{{repo_name}}</value>
+    <description>Name of the Ranger service containing policies for this Storm instance</description>
+  </property>
+
+  <property>
+    <name>ranger.plugin.storm.policy.source.impl</name>
+    <value>org.apache.ranger.admin.client.RangerAdminRESTClient</value>
+    <description>Class to retrieve policies from the source</description>
+  </property>
+
+  <property>
+    <name>ranger.plugin.storm.policy.rest.url</name>
+    <value>{{policymgr_mgr_url}}</value>
+    <description>URL to Ranger Admin</description>
+  </property>
+
+  <property>
+    <name>ranger.plugin.storm.policy.rest.ssl.config.file</name>
+    <value>/etc/storm/conf/ranger-policymgr-ssl.xml</value>
+    <description>Path to the file containing SSL details to contact Ranger Admin</description>
+  </property>
+
+  <property>
+    <name>ranger.plugin.storm.policy.pollIntervalMs</name>
+    <value>30000</value>
+    <description>How often to poll for changes in policies?</description>
+  </property>
+
+  <property>
+    <name>ranger.plugin.storm.policy.cache.dir</name>
+    <value>/etc/ranger/{{repo_name}}/policycache</value>
+    <description>Directory where Ranger policies are cached after successful retrieval from the source</description>
+  </property>
+  
+</configuration>

+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-cluster-log4j.xml → ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-cluster-log4j.xml


+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-env.xml → ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-env.xml


+ 60 - 0
ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-site.xml

@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<!--
+ censed 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 supports_final="true" xmlns:xi="http://www.w3.org/2001/XInclude">
+  <property>
+    <name>nimbus.seeds</name>
+    <value>localhost</value>
+    <property-type>DONT_ADD_ON_UPGRADE</property-type>
+    <description>Comma-delimited list of the hosts running nimbus server.</description>
+    <value-attributes>
+      <type>componentHosts</type>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
+  </property>
+  <property>
+    <name>topology.min.replication.count.default</name>
+    <value>1</value>
+    <description>Default minimum number of nimbus hosts where the code must be replicated before leader nimbus can mark the topology as active and create assignments. </description>
+  </property>
+  <property>
+    <name>topology.min.replication.count</name>
+    <value>{{actual_topology_min_replication_count}}</value>
+    <description>Calculated minimum number of nimbus hosts where the code must be replicated before leader nimbus can mark the topology as active and create assignments. </description>
+  </property>  
+  <property>
+      <name>topology.max.replication.wait.time.sec.default</name>
+      <value>60</value>
+      <description>Default maximum wait time for the nimbus host replication to achieve the nimbus.min.replication.count. Once this time is elapsed nimbus will go ahead and perform topology activation tasks even if required nimbus.min.replication.count is not achieved</description>
+  </property>
+  <property>
+      <name>topology.max.replication.wait.time.sec</name>
+      <value>{{actual_topology_max_replication_wait_time_sec}}</value>
+      <description>Calculated maximum wait time for the nimbus host replication to achieve the nimbus.min.replication.count. Once this time is elapsed nimbus will go ahead and perform topology activation tasks even if required nimbus.min.replication.count is not achieved</description>
+  </property>  
+   <property>
+    <name>nimbus.host</name>
+    <value>localhost</value>
+    <property-type>DONT_ADD_ON_UPGRADE</property-type>
+    <description>Deprecated config in favor of nimbus.seeds used during non HA mode.</description>
+    <deleted>true</deleted>
+  </property>
+</configuration>

+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-worker-log4j.xml → ambari-server/src/main/resources/common-services/STORM/0.10.0/configuration/storm-worker-log4j.xml


+ 57 - 0
ambari-server/src/main/resources/common-services/STORM/0.10.0/metainfo.xml

@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<!--
+   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.
+-->
+
+<metainfo>
+  <schemaVersion>2.0</schemaVersion>
+  <services>
+    <service>
+      <name>STORM</name>
+      <version>0.10.0</version>
+      <extends>common-services/STORM/0.9.3</extends>
+      <components>
+        <component>
+          <name>NIMBUS</name>
+          <displayName>Nimbus</displayName>
+          <category>MASTER</category>
+          <cardinality>1+</cardinality>
+          <versionAdvertised>true</versionAdvertised>
+          <dependencies>
+            <dependency>
+              <name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
+              <scope>cluster</scope>
+              <auto-deploy>
+                <enabled>true</enabled>
+              </auto-deploy>
+            </dependency>
+          </dependencies>
+          <commandScript>
+            <script>scripts/nimbus.py</script>
+            <scriptType>PYTHON</scriptType>
+            <timeout>1200</timeout>
+          </commandScript>
+          <logs>
+            <log>
+              <logId>storm_nimbus</logId>
+              <primary>true</primary>
+            </log>
+          </logs>
+        </component>
+      </components>
+    </service>
+  </services>
+</metainfo>

+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/metrics.json → ambari-server/src/main/resources/common-services/STORM/0.10.0/metrics.json


+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/widgets.json → ambari-server/src/main/resources/common-services/STORM/0.10.0/widgets.json


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/alerts.json → ambari-server/src/main/resources/common-services/STORM/0.9.1/alerts.json


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-env.xml → ambari-server/src/main/resources/common-services/STORM/0.9.1/configuration/storm-env.xml


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-site.xml → ambari-server/src/main/resources/common-services/STORM/0.9.1/configuration/storm-site.xml


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/kerberos.json → ambari-server/src/main/resources/common-services/STORM/0.9.1/kerberos.json


+ 1 - 1
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/metainfo.xml → ambari-server/src/main/resources/common-services/STORM/0.9.1/metainfo.xml

@@ -23,7 +23,7 @@
       <name>STORM</name>
       <displayName>Storm</displayName>
       <comment>Apache Hadoop Stream processing framework</comment>
-      <version>0.9.1.2.1</version>
+      <version>0.9.1</version>
       <components>
 
         <component>

+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/metrics.json → ambari-server/src/main/resources/common-services/STORM/0.9.1/metrics.json


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/alerts/check_supervisor_process_win.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/alerts/check_supervisor_process_win.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/files/wordCount.jar → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/files/wordCount.jar


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/drpc_server.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/drpc_server.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/nimbus.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/nimbus_prod.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus_prod.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/pacemaker.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/pacemaker.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/params.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/params_linux.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_windows.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/params_windows.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/rest_api.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/rest_api.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/service.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/service.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/service_check.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/service_check.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/setup_atlas_storm.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/setup_atlas_storm.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/setup_ranger_storm.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/setup_ranger_storm.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/status_params.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/status_params.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/storm.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/storm_upgrade.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_yaml_utils.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/storm_yaml_utils.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/supervisor.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/supervisor_prod.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor_prod.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/supervisord_service.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisord_service.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/ui_server.py → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/ui_server.py


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/templates/client_jaas.conf.j2 → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/client_jaas.conf.j2


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/templates/config.yaml.j2 → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/config.yaml.j2


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/templates/storm-metrics2.properties.j2 → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/storm-metrics2.properties.j2


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/templates/storm.conf.j2 → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/storm.conf.j2


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/templates/storm_jaas.conf.j2 → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/storm_jaas.conf.j2


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/templates/worker-launcher.cfg.j2 → ambari-server/src/main/resources/common-services/STORM/0.9.1/package/templates/worker-launcher.cfg.j2


+ 0 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/quicklinks/quicklinks.json → ambari-server/src/main/resources/common-services/STORM/0.9.1/quicklinks/quicklinks.json


+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/ranger-storm-plugin-properties.xml → ambari-server/src/main/resources/common-services/STORM/0.9.3/configuration/ranger-storm-plugin-properties.xml


+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-env.xml → ambari-server/src/main/resources/common-services/STORM/0.9.3/configuration/storm-env.xml


+ 123 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.3/configuration/storm-site.xml

@@ -0,0 +1,123 @@
+<?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 supports_final="true">
+
+  <property>
+    <name>storm.thrift.transport</name>
+    <value>{{storm_thrift_transport}}</value>
+    <description>The transport plug-in that used for Thrift client/server communication.</description>
+  </property>
+  <property>
+    <name>_storm.thrift.nonsecure.transport</name>
+    <value>backtype.storm.security.auth.SimpleTransportPlugin</value>
+    <description>The transport plug-in that used for non-secure mode for for Thrift client/server communication.</description>
+  </property>
+  <property>
+    <name>_storm.thrift.secure.transport</name>
+    <value>backtype.storm.security.auth.kerberos.KerberosSaslTransportPlugin</value>
+    <description>The transport plug-in that used for secure mode for Thrift client/server communication.</description>
+  </property>
+
+  <property>
+    <name>java.library.path</name>
+    <value>/usr/local/lib:/opt/local/lib:/usr/lib</value>
+    <description>This value is passed to spawned JVMs (e.g., Nimbus, Supervisor, and Workers)
+      for the java.library.path value. java.library.path tells the JVM where
+      to look for native libraries. It is necessary to set this config correctly since
+      Storm uses the ZeroMQ and JZMQ native libs. </description>
+  </property>
+
+  <property>
+    <name>nimbus.childopts</name>
+    <value>-Xmx1024m</value>
+    <description>This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
+  </property>
+
+  <property>
+    <name>worker.childopts</name>
+    <value>-Xmx768m</value>
+    <description>The jvm opts provided to workers launched by this supervisor. All \"%ID%\" substrings are replaced with an identifier for this worker.</description>
+    <value-attributes>
+      <type>multiLine</type>
+    </value-attributes>
+  </property>
+
+  <property>
+    <name>ui.childopts</name>
+    <value>-Xmx768m _JAAS_PLACEHOLDER</value>
+    <description>Childopts for Storm UI Java process.</description>
+  </property>
+
+  <property>
+    <name>ui.filter</name>
+    <value>null</value>
+    <description>Class for Storm UI authentication</description>
+  </property>
+
+  <property>
+    <name>supervisor.childopts</name>
+    <value>-Xmx256m</value>
+    <description>This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
+  </property>
+  
+   <property>
+    <name>logviewer.childopts</name>
+    <value>-Xmx128m _JAAS_PLACEHOLDER</value>
+    <description>Childopts for log viewer java process.</description>
+  </property>
+
+  <property>
+    <name>drpc.childopts</name>
+    <value>-Xmx768m _JAAS_PLACEHOLDER</value>
+    <description>Childopts for Storm DRPC Java process.</description>
+  </property>
+  
+  <property>
+    <name>_storm.min.ruid</name>
+    <value>null</value>
+    <description>min.user.id is set to the first real user id on the system. If value is 'null' than default value will be taken from key UID_MIN of /etc/login.defs otherwise the specified value will be used for all hosts.</description>
+  </property>
+
+  <property>
+    <name>storm.log.dir</name>
+    <value>{{log_dir}}</value>
+    <description>Log directory for Storm.</description>
+  </property>
+
+  <property>
+    <name>nimbus.authorizer</name>
+    <description>Log directory for Storm.</description>
+    <depends-on>
+      <property>
+        <type>ranger-storm-plugin-properties</type>
+        <name>ranger-storm-plugin-enabled</name>
+      </property>
+    </depends-on>
+  </property>
+</configuration>

+ 53 - 0
ambari-server/src/main/resources/common-services/STORM/0.9.3/metainfo.xml

@@ -0,0 +1,53 @@
+<?xml version="1.0"?>
+<!--
+   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.
+-->
+
+<metainfo>
+  <schemaVersion>2.0</schemaVersion>
+  <services>
+    <service>
+      <name>STORM</name>
+      <displayName>Storm</displayName>
+      <version>0.9.3</version>
+      <extends>common-services/STORM/0.9.1</extends>
+      <components>
+        <component>
+          <name>STORM_REST_API</name>
+          <deleted>true</deleted>
+        </component>
+      </components>
+      <osSpecifics>
+        <osSpecific>
+          <osFamily>redhat7,amazon2015,redhat6,suse11,suse12</osFamily>
+          <packages>
+            <package>
+              <name>storm_${stack_version}</name>
+            </package>
+          </packages>
+        </osSpecific>
+        <osSpecific>
+          <osFamily>debian7,ubuntu12,ubuntu14</osFamily>
+          <packages>
+            <package>
+              <name>storm-${stack_version}</name>
+            </package>
+          </packages>
+        </osSpecific>
+      </osSpecifics>
+    </service>
+  </services>
+</metainfo>

+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/metrics.json → ambari-server/src/main/resources/common-services/STORM/0.9.3/metrics.json


+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/ranger-storm-audit.xml → ambari-server/src/main/resources/common-services/STORM/1.0.1/configuration/ranger-storm-audit.xml


+ 67 - 0
ambari-server/src/main/resources/common-services/STORM/1.0.1/configuration/storm-site.xml

@@ -0,0 +1,67 @@
+<?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 supports_final="true">
+  <property>
+    <name>storm.thrift.transport</name>
+    <value>org.apache.storm.security.auth.SimpleTransportPlugin</value>
+    <description>The transport plug-in for Thrift client/server communication.</description>
+  </property>
+  <property>
+    <name>storm.messaging.transport</name>
+    <value>org.apache.storm.messaging.netty.Context</value>
+    <description>The transporter for communication among Storm tasks.</description>
+  </property>
+  <property>
+    <name>nimbus.topology.validator</name>
+    <value>org.apache.storm.nimbus.DefaultTopologyValidator</value>
+    <description>A custom class that implements ITopologyValidator that is run whenever a
+       topology is submitted. Can be used to provide business-specific logic for
+       whether topologies are allowed to run or not.</description>
+  </property>
+  <property>
+    <name>topology.spout.wait.strategy</name>
+    <value>org.apache.storm.spout.SleepSpoutWaitStrategy</value>
+    <description>A class that implements a strategy for what to do when a spout needs to wait. Waiting is
+       triggered in one of two conditions:
+
+       1. nextTuple emits no tuples
+       2. The spout has hit maxSpoutPending and can't emit any more tuples</description>
+  </property>
+  <property>
+    <name>topology.kryo.factory</name>
+    <value>org.apache.storm.serialization.DefaultKryoFactory</value>
+    <description>Class that specifies how to create a Kryo instance for serialization. Storm will then apply
+       topology.kryo.register and topology.kryo.decorators on top of this. The default implementation
+       implements topology.fall.back.on.java.serialization and turns references off.</description>
+  </property>
+  <property>
+    <name>topology.tuple.serializer</name>
+    <value>org.apache.storm.serialization.types.ListDelegateSerializer</value>
+    <description>The serializer class for ListDelegate (tuple payload).
+       The default serializer will be ListDelegateSerializer</description>
+  </property>
+  <property>
+    <name>client.jartransformer.class</name>
+    <description>Storm Topology backward comptability transformer</description>
+    <value>org.apache.storm.hack.StormShadeTransformer</value>
+  </property>
+</configuration>

+ 0 - 0
ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/kerberos.json → ambari-server/src/main/resources/common-services/STORM/1.0.1/kerberos.json


+ 28 - 0
ambari-server/src/main/resources/common-services/STORM/1.0.1/metainfo.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<!--
+   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.
+-->
+
+<metainfo>
+  <schemaVersion>2.0</schemaVersion>
+  <services>
+    <service>
+      <name>STORM</name>
+      <version>1.0.1</version>
+      <extends>common-services/STORM/0.10.0</extends>
+    </service>
+  </services>
+</metainfo>

+ 2 - 1
ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/metainfo.xml

@@ -21,7 +21,8 @@
   <services>
     <service>
       <name>STORM</name>
-      <extends>common-services/STORM/0.9.1.2.1</extends>
+      <version>0.9.1.2.1</version>
+      <extends>common-services/STORM/0.9.1</extends>
     </service>
   </services>
 </metainfo>

+ 0 - 62
ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml

@@ -22,22 +22,6 @@
 
 <configuration supports_final="true">
 
-  <property>
-    <name>storm.thrift.transport</name>
-    <value>{{storm_thrift_transport}}</value>
-    <description>The transport plug-in that used for Thrift client/server communication.</description>
-  </property>
-  <property>
-    <name>_storm.thrift.nonsecure.transport</name>
-    <value>backtype.storm.security.auth.SimpleTransportPlugin</value>
-    <description>The transport plug-in that used for non-secure mode for for Thrift client/server communication.</description>
-  </property>
-  <property>
-    <name>_storm.thrift.secure.transport</name>
-    <value>backtype.storm.security.auth.kerberos.KerberosSaslTransportPlugin</value>
-    <description>The transport plug-in that used for secure mode for Thrift client/server communication.</description>
-  </property>
-
   <property>
     <name>java.library.path</name>
     <value>/usr/local/lib:/opt/local/lib:/usr/lib:/usr/hdp/current/storm-client/lib</value>
@@ -65,18 +49,6 @@
     </value-attributes>
   </property>
 
-  <property>
-    <name>ui.childopts</name>
-    <value>-Xmx768m _JAAS_PLACEHOLDER</value>
-    <description>Childopts for Storm UI Java process.</description>
-  </property>
-
-  <property>
-    <name>ui.filter</name>
-    <value>null</value>
-    <description>Class for Storm UI authentication</description>
-  </property>
-
   <property>
     <name>supervisor.childopts</name>
     <value>-Xmx256m _JAAS_PLACEHOLDER -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port={{jmxremote_port}} -javaagent:/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Supervisor_JVM</value>
@@ -86,38 +58,4 @@
     </value-attributes>
   </property>
   
-   <property>
-    <name>logviewer.childopts</name>
-    <value>-Xmx128m _JAAS_PLACEHOLDER</value>
-    <description>Childopts for log viewer java process.</description>
-  </property>
-
-  <property>
-    <name>drpc.childopts</name>
-    <value>-Xmx768m _JAAS_PLACEHOLDER</value>
-    <description>Childopts for Storm DRPC Java process.</description>
-  </property>
-  
-  <property>
-    <name>_storm.min.ruid</name>
-    <value>null</value>
-    <description>min.user.id is set to the first real user id on the system. If value is 'null' than default value will be taken from key UID_MIN of /etc/login.defs otherwise the specified value will be used for all hosts.</description>
-  </property>
-
-  <property>
-    <name>storm.log.dir</name>
-    <value>{{log_dir}}</value>
-    <description>Log directory for Storm.</description>
-  </property>
-
-  <property>
-    <name>nimbus.authorizer</name>
-    <description>Log directory for Storm.</description>
-    <depends-on>
-      <property>
-        <type>ranger-storm-plugin-properties</type>
-        <name>ranger-storm-plugin-enabled</name>
-      </property>
-    </depends-on>
-  </property>
 </configuration>

+ 1 - 24
ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/metainfo.xml

@@ -23,30 +23,7 @@
       <name>STORM</name>
       <displayName>Storm</displayName>
       <version>0.9.3.2.2</version>
-      <components>
-        <component>
-          <name>STORM_REST_API</name>
-          <deleted>true</deleted>
-        </component>
-      </components>
-      <osSpecifics>
-        <osSpecific>
-          <osFamily>redhat7,amazon2015,redhat6,suse11,suse12</osFamily>
-          <packages>
-            <package>
-              <name>storm_${stack_version}</name>
-            </package>
-          </packages>
-        </osSpecific>
-        <osSpecific>
-          <osFamily>debian7,ubuntu12,ubuntu14</osFamily>
-          <packages>
-            <package>
-              <name>storm-${stack_version}</name>
-            </package>
-          </packages>
-        </osSpecific>
-      </osSpecifics>
+      <extends>common-services/STORM/0.9.3</extends>
     </service>
   </services>
 </metainfo>

+ 0 - 32
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-policymgr-ssl.xml

@@ -26,42 +26,10 @@
     <description>Java Keystore files</description>
   </property>
 
-  <property>
-    <name>xasecure.policymgr.clientssl.keystore.password</name>
-    <value>myKeyFilePassword</value>
-    <property-type>PASSWORD</property-type>
-    <description>password for keystore</description>
-    <value-attributes>
-      <type>password</type>
-    </value-attributes>
-  </property>
-
   <property>
     <name>xasecure.policymgr.clientssl.truststore</name>
     <value>/usr/hdp/current/storm-client/conf/ranger-plugin-truststore.jks</value>
     <description>java truststore file</description>
   </property>
 
-  <property>
-    <name>xasecure.policymgr.clientssl.truststore.password</name>
-    <value>changeit</value>
-    <property-type>PASSWORD</property-type>
-    <description>java truststore password</description>
-    <value-attributes>
-      <type>password</type>
-    </value-attributes>
-  </property>
-
-    <property>
-    <name>xasecure.policymgr.clientssl.keystore.credential.file</name>
-    <value>jceks://file{{credential_file}}</value>
-    <description>java keystore credential file</description>
-  </property>
-
-  <property>
-    <name>xasecure.policymgr.clientssl.truststore.credential.file</name>
-    <value>jceks://file{{credential_file}}</value>
-    <description>java truststore credential file</description>
-  </property>
-
 </configuration>

+ 0 - 30
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-security.xml

@@ -20,40 +20,10 @@
 -->
 <configuration>
   
-  <property>
-    <name>ranger.plugin.storm.service.name</name>
-    <value>{{repo_name}}</value>
-    <description>Name of the Ranger service containing policies for this Storm instance</description>
-  </property>
-
-  <property>
-    <name>ranger.plugin.storm.policy.source.impl</name>
-    <value>org.apache.ranger.admin.client.RangerAdminRESTClient</value>
-    <description>Class to retrieve policies from the source</description>
-  </property>
-
-  <property>
-    <name>ranger.plugin.storm.policy.rest.url</name>
-    <value>{{policymgr_mgr_url}}</value>
-    <description>URL to Ranger Admin</description>
-  </property>
-
   <property>
     <name>ranger.plugin.storm.policy.rest.ssl.config.file</name>
     <value>/usr/hdp/current/storm-client/conf/ranger-policymgr-ssl.xml</value>
     <description>Path to the file containing SSL details to contact Ranger Admin</description>
   </property>
 
-  <property>
-    <name>ranger.plugin.storm.policy.pollIntervalMs</name>
-    <value>30000</value>
-    <description>How often to poll for changes in policies?</description>
-  </property>
-
-  <property>
-    <name>ranger.plugin.storm.policy.cache.dir</name>
-    <value>/etc/ranger/{{repo_name}}/policycache</value>
-    <description>Directory where Ranger policies are cached after successful retrieval from the source</description>
-  </property>
-  
 </configuration>

+ 27 - 29
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml

@@ -20,41 +20,39 @@
 
 <configuration supports_final="true" xmlns:xi="http://www.w3.org/2001/XInclude">
   <property>
-    <name>nimbus.seeds</name>
-    <value>localhost</value>
-    <property-type>DONT_ADD_ON_UPGRADE</property-type>
-    <description>Comma-delimited list of the hosts running nimbus server.</description>
+    <name>java.library.path</name>
+    <value>/usr/local/lib:/opt/local/lib:/usr/lib:/usr/hdp/current/storm-client/lib</value>
+    <description>This value is passed to spawned JVMs (e.g., Nimbus, Supervisor, and Workers)
+      for the java.library.path value. java.library.path tells the JVM where
+      to look for native libraries. It is necessary to set this config correctly since
+      Storm uses the ZeroMQ and JZMQ native libs. </description>
+  </property>
+
+  <property>
+    <name>nimbus.childopts</name>
+    <value>-Xmx1024m _JAAS_PLACEHOLDER -javaagent:/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8649,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Nimbus_JVM</value>
+    <description>This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.</description>
     <value-attributes>
-      <type>componentHosts</type>
-      <editable-only-at-install>true</editable-only-at-install>
       <overridable>false</overridable>
     </value-attributes>
   </property>
+
   <property>
-    <name>topology.min.replication.count.default</name>
-    <value>1</value>
-    <description>Default minimum number of nimbus hosts where the code must be replicated before leader nimbus can mark the topology as active and create assignments. </description>
-  </property>
-  <property>
-    <name>topology.min.replication.count</name>
-    <value>{{actual_topology_min_replication_count}}</value>
-    <description>Calculated minimum number of nimbus hosts where the code must be replicated before leader nimbus can mark the topology as active and create assignments. </description>
-  </property>  
-  <property>
-      <name>topology.max.replication.wait.time.sec.default</name>
-      <value>60</value>
-      <description>Default maximum wait time for the nimbus host replication to achieve the nimbus.min.replication.count. Once this time is elapsed nimbus will go ahead and perform topology activation tasks even if required nimbus.min.replication.count is not achieved</description>
+    <name>worker.childopts</name>
+    <value>-Xmx768m _JAAS_PLACEHOLDER -javaagent:/usr/hdp/current/storm-client/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-client/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Worker_%ID%_JVM</value>
+    <description>The jvm opts provided to workers launched by this supervisor. All \"%ID%\" substrings are replaced with an identifier for this worker.</description>
+    <value-attributes>
+      <type>multiLine</type>
+    </value-attributes>
   </property>
+
   <property>
-      <name>topology.max.replication.wait.time.sec</name>
-      <value>{{actual_topology_max_replication_wait_time_sec}}</value>
-      <description>Calculated maximum wait time for the nimbus host replication to achieve the nimbus.min.replication.count. Once this time is elapsed nimbus will go ahead and perform topology activation tasks even if required nimbus.min.replication.count is not achieved</description>
-  </property>  
-   <property>
-    <name>nimbus.host</name>
-    <value>localhost</value>
-    <property-type>DONT_ADD_ON_UPGRADE</property-type>
-    <description>Deprecated config in favor of nimbus.seeds used during non HA mode.</description>
-    <deleted>true</deleted>
+    <name>supervisor.childopts</name>
+    <value>-Xmx256m _JAAS_PLACEHOLDER -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port={{jmxremote_port}} -javaagent:/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Supervisor_JVM</value>
+    <description>This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
+
 </configuration>

+ 2 - 30
ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/metainfo.xml

@@ -21,36 +21,8 @@
   <services>
     <service>
       <name>STORM</name>
-      <version>0.10.0</version>
-      <components>
-        <component>
-          <name>NIMBUS</name>
-          <displayName>Nimbus</displayName>
-          <category>MASTER</category>
-          <cardinality>1+</cardinality>
-          <versionAdvertised>true</versionAdvertised>
-          <dependencies>
-            <dependency>
-              <name>ZOOKEEPER/ZOOKEEPER_SERVER</name>
-              <scope>cluster</scope>
-              <auto-deploy>
-                <enabled>true</enabled>
-              </auto-deploy>
-            </dependency>
-          </dependencies>
-          <commandScript>
-            <script>scripts/nimbus.py</script>
-            <scriptType>PYTHON</scriptType>
-            <timeout>1200</timeout>
-          </commandScript>
-          <logs>
-            <log>
-              <logId>storm_nimbus</logId>
-              <primary>true</primary>
-            </log>
-          </logs>
-        </component>
-      </components>
+      <extends>common-services/STORM/0.10.0</extends>
+      <version>0.10.0.2.3</version>
     </service>
   </services>
 </metainfo>

+ 35 - 0
ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/ranger-storm-policymgr-ssl.xml

@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * 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>xasecure.policymgr.clientssl.keystore</name>
+    <value>/usr/hdp/current/storm-client/conf/ranger-plugin-keystore.jks</value>
+    <description>Java Keystore files</description>
+  </property>
+
+  <property>
+    <name>xasecure.policymgr.clientssl.truststore</name>
+    <value>/usr/hdp/current/storm-client/conf/ranger-plugin-truststore.jks</value>
+    <description>java truststore file</description>
+  </property>
+
+</configuration>

+ 29 - 0
ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/ranger-storm-security.xml

@@ -0,0 +1,29 @@
+<?xml version="1.0"?>
+<!--
+/**
+ * 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>ranger.plugin.storm.policy.rest.ssl.config.file</name>
+    <value>/usr/hdp/current/storm-client/conf/ranger-policymgr-ssl.xml</value>
+    <description>Path to the file containing SSL details to contact Ranger Admin</description>
+  </property>
+
+</configuration>

+ 30 - 39
ambari-server/src/main/resources/stacks/HDP/2.5/services/STORM/configuration/storm-site.xml

@@ -1,8 +1,6 @@
 <?xml version="1.0"?>
-<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
 <!--
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
+ censed 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
@@ -19,49 +17,42 @@
  * limitations under the License.
  */
 -->
-<configuration supports_final="true">
-  <property>
-    <name>storm.thrift.transport</name>
-    <value>org.apache.storm.security.auth.SimpleTransportPlugin</value>
-    <description>The transport plug-in for Thrift client/server communication.</description>
-  </property>
-  <property>
-    <name>storm.messaging.transport</name>
-    <value>org.apache.storm.messaging.netty.Context</value>
-    <description>The transporter for communication among Storm tasks.</description>
-  </property>
+
+<configuration supports_final="true" xmlns:xi="http://www.w3.org/2001/XInclude">
   <property>
-    <name>nimbus.topology.validator</name>
-    <value>org.apache.storm.nimbus.DefaultTopologyValidator</value>
-    <description>A custom class that implements ITopologyValidator that is run whenever a
-       topology is submitted. Can be used to provide business-specific logic for
-       whether topologies are allowed to run or not.</description>
+    <name>java.library.path</name>
+    <value>/usr/local/lib:/opt/local/lib:/usr/lib:/usr/hdp/current/storm-client/lib</value>
+    <description>This value is passed to spawned JVMs (e.g., Nimbus, Supervisor, and Workers)
+      for the java.library.path value. java.library.path tells the JVM where
+      to look for native libraries. It is necessary to set this config correctly since
+      Storm uses the ZeroMQ and JZMQ native libs. </description>
   </property>
-  <property>
-    <name>topology.spout.wait.strategy</name>
-    <value>org.apache.storm.spout.SleepSpoutWaitStrategy</value>
-    <description>A class that implements a strategy for what to do when a spout needs to wait. Waiting is
-       triggered in one of two conditions:
 
-       1. nextTuple emits no tuples
-       2. The spout has hit maxSpoutPending and can't emit any more tuples</description>
-  </property>
   <property>
-    <name>topology.kryo.factory</name>
-    <value>org.apache.storm.serialization.DefaultKryoFactory</value>
-    <description>Class that specifies how to create a Kryo instance for serialization. Storm will then apply
-       topology.kryo.register and topology.kryo.decorators on top of this. The default implementation
-       implements topology.fall.back.on.java.serialization and turns references off.</description>
+    <name>nimbus.childopts</name>
+    <value>-Xmx1024m _JAAS_PLACEHOLDER -javaagent:/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8649,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Nimbus_JVM</value>
+    <description>This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
+
   <property>
-    <name>topology.tuple.serializer</name>
-    <value>org.apache.storm.serialization.types.ListDelegateSerializer</value>
-    <description>The serializer class for ListDelegate (tuple payload).
-       The default serializer will be ListDelegateSerializer</description>
+    <name>worker.childopts</name>
+    <value>-Xmx768m _JAAS_PLACEHOLDER -javaagent:/usr/hdp/current/storm-client/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-client/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Worker_%ID%_JVM</value>
+    <description>The jvm opts provided to workers launched by this supervisor. All \"%ID%\" substrings are replaced with an identifier for this worker.</description>
+    <value-attributes>
+      <type>multiLine</type>
+    </value-attributes>
   </property>
+
   <property>
-    <name>client.jartransformer.class</name>
-    <description>Storm Topology backward comptability transformer</description>
-    <value>org.apache.storm.hack.StormShadeTransformer</value>
+    <name>supervisor.childopts</name>
+    <value>-Xmx256m _JAAS_PLACEHOLDER -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port={{jmxremote_port}} -javaagent:/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Supervisor_JVM</value>
+    <description>This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
+
 </configuration>

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

@@ -22,6 +22,7 @@
     <service>
       <name>STORM</name>
       <version>1.0.1.2.5</version>
+      <extends>common-services/STORM/1.0.1</extends>
     </service>
   </services>
 </metainfo>

+ 1 - 1
ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/STORM/alerts.json

@@ -166,7 +166,7 @@
         "scope": "HOST",
         "source": {
           "type": "SCRIPT",
-          "path": "STORM/0.9.1.2.1/package/alerts/check_supervisor_process_win.py"
+          "path": "STORM/0.9.1/package/alerts/check_supervisor_process_win.py"
         }
       }
     ]

+ 1 - 1
ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/STORM/metainfo.xml

@@ -21,7 +21,7 @@
   <services>
     <service>
       <name>STORM</name>
-      <extends>common-services/STORM/0.9.1.2.1</extends>
+      <extends>common-services/STORM/0.9.1</extends>
       <version>0.9.1.2.1.1.0</version>
       <components>
         <component>

+ 1 - 1
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_base.py

@@ -25,7 +25,7 @@ import re
 
 
 class TestStormBase(RMFTestCase):
-  COMMON_SERVICES_PACKAGE_DIR = "STORM/0.9.1.2.1/package"
+  COMMON_SERVICES_PACKAGE_DIR = "STORM/0.9.1/package"
   STACK_VERSION = "2.1"
 
   def assert_configure_default(self, confDir="/etc/storm/conf"):

+ 1 - 1
ambari-server/src/test/python/stacks/2.3/STORM/test_storm_base.py

@@ -22,7 +22,7 @@ from stacks.utils.RMFTestCase import *
 
 
 class TestStormBase(RMFTestCase):
-  COMMON_SERVICES_PACKAGE_DIR = "STORM/0.9.1.2.1/package"
+  COMMON_SERVICES_PACKAGE_DIR = "STORM/0.9.1/package"
   STACK_VERSION = "2.3"
 
   def assert_configure_default(self, confDir="/etc/storm/conf"):

+ 1 - 1
ambari-server/src/test/python/stacks/2.3/STORM/test_storm_upgrade.py

@@ -24,7 +24,7 @@ from stacks.utils.RMFTestCase import *
 
 
 class TestStormUpgrade(RMFTestCase):
-  COMMON_SERVICES_PACKAGE_DIR = "STORM/0.9.1.2.1/package"
+  COMMON_SERVICES_PACKAGE_DIR = "STORM/0.9.1/package"
   STACK_VERSION = "2.3"
 
   def test_delete_zookeeper_data(self):

+ 1 - 1
ambari-server/src/test/python/stacks/2.3/configs/storm_default.json

@@ -8,7 +8,7 @@
         "cluster-env": {}
     }, 
     "commandParams": {
-        "service_package_folder": "common-services/STORM/0.9.1.2.1/package", 
+        "service_package_folder": "common-services/STORM/0.9.1/package",
         "script": "scripts/service_check.py", 
         "hooks_folder": "HDP/2.0.6/hooks", 
         "command_retry_max_attempt_count": "3", 

+ 1 - 1
ambari-server/src/test/python/stacks/2.3/configs/storm_default_secure.json

@@ -8,7 +8,7 @@
         "cluster-env": {}
     }, 
     "commandParams": {
-        "service_package_folder": "common-services/STORM/0.9.1.2.1/package", 
+        "service_package_folder": "common-services/STORM/0.9.1/package",
         "script": "scripts/service_check.py", 
         "hooks_folder": "HDP/2.0.6/hooks", 
         "command_retry_max_attempt_count": "3",