You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by al...@apache.org on 2015/11/05 01:45:53 UTC

ambari git commit: AMBARI-13688. Stop-and-Start Upgrade: Misc fixes for Storm, Knox in HDP 2.2->2.3 (alejandro)

Repository: ambari
Updated Branches:
  refs/heads/trunk c49a8540b -> efca65bff


AMBARI-13688. Stop-and-Start Upgrade: Misc fixes for Storm, Knox in HDP 2.2->2.3 (alejandro)


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

Branch: refs/heads/trunk
Commit: efca65bfff18c8fe1340d5923a91726121359d93
Parents: c49a854
Author: Alejandro Fernandez <af...@hortonworks.com>
Authored: Wed Nov 4 16:27:14 2015 -0800
Committer: Alejandro Fernandez <af...@hortonworks.com>
Committed: Wed Nov 4 16:27:14 2015 -0800

----------------------------------------------------------------------
 .../0.9.1.2.1/package/scripts/params_linux.py   |   2 +
 .../0.9.1.2.1/package/scripts/storm_upgrade.py  |  33 ++--
 .../HDP/2.2/upgrades/nonrolling-upgrade-2.2.xml |   2 +-
 .../HDP/2.2/upgrades/nonrolling-upgrade-2.3.xml |  72 ++++++++-
 .../stacks/HDP/2.2/upgrades/upgrade-2.3.xml     |  16 +-
 .../stacks/HDP/2.3/upgrades/config-upgrade.xml  | 153 ++++++++++++++++++-
 .../HDP/2.3/upgrades/nonrolling-upgrade-2.3.xml |   2 +-
 7 files changed, 259 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
index 86de2ec..dda71c8 100644
--- a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/params_linux.py
@@ -23,6 +23,7 @@ import ambari_simplejson as json # simplejson is much faster comparing to Python
 import status_params
 
 from ambari_commons.constants import AMBARI_SUDO_BINARY
+from resource_management.libraries.functions.constants import Direction
 from resource_management.libraries.functions import format
 from resource_management.libraries.functions.version import format_hdp_stack_version
 from resource_management.libraries.functions.default import default
@@ -38,6 +39,7 @@ tmp_dir = Script.get_tmp_dir()
 sudo = AMBARI_SUDO_BINARY
 
 stack_name = default("/hostLevelParams/stack_name", None)
+upgrade_direction = default("/commandParams/upgrade_direction", Direction.UPGRADE)
 version = default("/commandParams/version", None)
 
 storm_component_home_dir = status_params.storm_component_home_dir

http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
index d10e7dc..abc858e 100644
--- a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
+++ b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
@@ -120,47 +120,56 @@ class StormUpgrade(Script):
       raise Fail("The storm local directory specified by storm-site/storm.local.dir must be specified")
 
     request_id = default("/requestId", None)
-    stage_id = default("/stageId", None)
-    stack_version = params.version
+
     stack_name = params.stack_name
+    stack_version = params.version
+    upgrade_direction = params.upgrade_direction
 
     json_map = {}
     json_map["requestId"] = request_id
-    json_map["stageId"] = stage_id
-    json_map["stackVersion"] = stack_version
     json_map["stackName"] = stack_name
+    json_map["stackVersion"] = stack_version
+    json_map["direction"] = upgrade_direction
 
     temp_directory = params.tmp_dir
-    upgrade_file = os.path.join(temp_directory, "storm-upgrade-{0}.json".format(stack_version))
+    marker_file = os.path.join(temp_directory, "storm-upgrade-{0}.json".format(stack_version))
+    Logger.info("Marker file for upgrade/downgrade of Storm, {0}".format(marker_file))
 
-    if os.path.exists(upgrade_file):
+    if os.path.exists(marker_file):
+      Logger.info("The marker file exists.")
       try:
-        with open(upgrade_file) as file_pointer:
+        with open(marker_file) as file_pointer:
           existing_json_map = json.load(file_pointer)
 
         if cmp(json_map, existing_json_map) == 0:
           Logger.info("The storm upgrade has already removed the local directories for {0}-{1} for "
-                      "request {2} and stage {3}. Nothing else to do.".format(stack_name, stack_version, request_id, stage_id))
+                      "request {2} and direction {3}. Nothing else to do.".format(stack_name, stack_version, request_id, upgrade_direction))
 
           # Nothing else to do here for this as it appears to have already been
           # removed by another component being upgraded
           return
+        else:
+          Logger.info("The marker file differs from the new value. Will proceed to delete Storm local dir, "
+                      "and generate new file. Current marker file: {0}".format(str(existing_json_map)))
       except Exception, e:
-        Logger.error("The upgrade file {0} appears to be corrupt; removing it. Error: {1}".format(upgrade_file, str(e)))
-        File(upgrade_file, action="delete")
+        Logger.error("The marker file {0} appears to be corrupt; removing it. Error: {1}".format(marker_file, str(e)))
+        File(marker_file, action="delete")
     else:
-      Logger.info('The upgrade file {0} does not exist, so will attempt to delete local Storm directory if it exists.')
+      Logger.info('The marker file {0} does not exist; will attempt to delete local Storm directory if it exists.'.format(marker_file))
 
     # Delete from local directory
     if os.path.isdir(storm_local_directory):
+      Logger.info("Deleting storm local directory, {0}".format(storm_local_directory))
       Directory(storm_local_directory, action="delete", recursive=True)
 
     # Recreate storm local directory
+    Logger.info("Recreating storm local directory, {0}".format(storm_local_directory))
     Directory(storm_local_directory, mode=0755, owner=params.storm_user,
       group=params.user_group, recursive=True)
 
     # The file doesn't exist, so create it
-    with open(upgrade_file, 'w') as file_pointer:
+    Logger.info("Saving marker file to {0} with contents: {1}".format(marker_file, str(json_map)))
+    with open(marker_file, 'w') as file_pointer:
       json.dump(json_map, file_pointer, indent=2)
 
 if __name__ == "__main__":

http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.2.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.2.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.2.xml
index 69be963..b8477b2 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.2.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.2.xml
@@ -123,7 +123,7 @@
 
       <execute-stage service="KNOX" component="KNOX_GATEWAY" title="Backup Knox Data">
         <task xsi:type="manual">
-          <message>Before continuing, please backup the Knox data. E.g., "cp -RL /etc/knox/data/security ~/knox_backup" on the following host(s): {{hosts.all}}.</message>
+          <message>Before continuing, please backup the Knox data. E.g., "cp -RL /var/lib/knox/data/ ~/knox_backup" on the following host(s): {{hosts.all}}.</message>
         </task>
       </execute-stage>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.3.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.3.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.3.xml
index 06e5859..e4df228 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.3.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/nonrolling-upgrade-2.3.xml
@@ -154,7 +154,7 @@
       <!--TODO(dlysnichenko): This step is missing in 2.3->2.3+ RU pack -->
       <execute-stage service="KNOX" component="KNOX_GATEWAY" title="Backup Knox Data">
         <task xsi:type="manual">
-          <message>Before continuing, please backup the Knox data. E.g., "cp -RL /etc/knox/data/security ~/knox_backup" on the following host(s): {{hosts.all}}.</message>
+          <message>Before continuing, please backup the Knox data. E.g., "cp -RL /var/lib/knox/data/ ~/knox_backup" on the following host(s): {{hosts.all}}.</message>
         </task>
       </execute-stage>
 
@@ -448,6 +448,10 @@
 
       <!--STORM-->
       <execute-stage service="STORM" component="NIMBUS" title="Apply config changes for Nimbus">
+        <task xsi:type="configure" id="hdp_2_3_0_0_nimbus_monitor_freq_adjustment"/>
+      </execute-stage>
+
+      <execute-stage service="STORM" component="NIMBUS" title="Apply config changes for Nimbus">
         <task xsi:type="configure" id="hdp_2_3_0_0_nimbus_convert_nimbus_host_to_seeds"/>
       </execute-stage>
 
@@ -1012,27 +1016,93 @@
 
     <service name="STORM">
       <component name="NIMBUS">
+        <pre-upgrade>
+          <task xsi:type="execute" summary="Removing Storm data from ZooKeeper">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_zookeeper_data</function>
+          </task>
+
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-upgrade>
+
+        <pre-downgrade>
+          <task xsi:type="manual">
+            <message>Before continuing, please deactivate and kill any currently running topologies.</message>
+          </task>
+
+          <task xsi:type="execute" summary="Removing Storm data from ZooKeeper">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_zookeeper_data</function>
+          </task>
+
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-downgrade>
+
         <upgrade>
           <task xsi:type="restart-task"/>
         </upgrade>
       </component>
 
       <component name="SUPERVISOR">
+        <pre-upgrade>
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-upgrade>
+
+        <pre-downgrade>
+          <task xsi:type="manual">
+            <message>Before continuing, please deactivate and kill any currently running topologies.</message>
+          </task>
+
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-downgrade>
+        
         <upgrade>
           <task xsi:type="restart-task"/>
         </upgrade>
       </component>
 
       <component name="STORM_UI_SERVER">
+        <pre-upgrade>
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-upgrade>
+
         <upgrade>
           <task xsi:type="restart-task"/>
         </upgrade>
       </component>
 
       <component name="DRPC_SERVER">
+        <pre-upgrade>
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-upgrade>
+
         <upgrade>
           <task xsi:type="restart-task"/>
         </upgrade>
+
+        <post-upgrade>
+          <task xsi:type="manual">
+            <message>Please rebuild your topology using the new Storm version dependencies and resubmit it using the newly created jar.</message>
+          </task>
+        </post-upgrade>
       </component>
     </service>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/upgrade-2.3.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/upgrade-2.3.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/upgrade-2.3.xml
index 645ec0d..6a1f62d 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/upgrade-2.3.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/upgrades/upgrade-2.3.xml
@@ -769,10 +769,6 @@
     <service name="STORM">
       <component name="NIMBUS">
         <pre-downgrade>
-          <task xsi:type="manual">
-            <message>Before continuing, please deactivate and kill any currently running topologies.</message>
-          </task>
-        
           <task xsi:type="execute" summary="Removing Storm data from ZooKeeper">
             <script>scripts/storm_upgrade.py</script>
             <function>delete_storm_zookeeper_data</function>
@@ -829,6 +825,18 @@
             <function>delete_storm_local_data</function>
           </task>
         </pre-upgrade>
+
+        <pre-downgrade>
+          <task xsi:type="manual">
+            <message>Before continuing, please deactivate and kill any currently running topologies.</message>
+          </task>
+
+          <task xsi:type="execute" summary="Removing local Storm data">
+            <script>scripts/storm_upgrade.py</script>
+            <function>delete_storm_local_data</function>
+          </task>
+        </pre-downgrade>
+
         <upgrade>
           <task xsi:type="restart-task"/>
         </upgrade>

http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/config-upgrade.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/config-upgrade.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/config-upgrade.xml
index 8b170e6..dd71b23 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/config-upgrade.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/config-upgrade.xml
@@ -730,11 +730,160 @@
           </definition>
           <definition id="hdp_2_3_0_0_add_storm_cluster_logs_content">
             <type>storm-cluster-log4j</type>
-            <set key="content" value="\n    \n&lt;!--\n Licensed to the Apache Software Foundation (ASF) under one or more\n contributor license agreements.  See the NOTICE file distributed with\n this work for additional information regarding copyright ownership.\n The ASF licenses this file to You under the Apache License, Version 2.0\n (the \&quot;License\&quot;); you may not use this file except in compliance with\n the License.  You may obtain a copy of the License at\n\n     http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \&quot;AS IS\&quot; BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n--&gt;\n\n&lt;configuration monitorInterval=\&quot;60\&quot;&gt;\n&lt;properties&gt;\n    &lt;property name=\&quot;pattern\&quot;&gt;%d{y
 yyy-MM-dd HH:mm:ss.SSS} %c{1.} [%p] %msg%n&lt;/property&gt;\n    &lt;property name=\&quot;patternMetris\&quot;&gt;%d %-8r %m%n&lt;/property&gt;\n&lt;/properties&gt;\n&lt;appenders&gt;\n    &lt;RollingFile name=\&quot;A1\&quot;\n                 fileName=\&quot;${sys:storm.log.dir}/${sys:logfile.name}\&quot;\n                 filePattern=\&quot;${sys:storm.log.dir}/${sys:logfile.name}.%i\&quot;&gt;\n        &lt;PatternLayout&gt;\n            &lt;pattern&gt;${pattern}&lt;/pattern&gt;\n        &lt;/PatternLayout&gt;\n        &lt;Policies&gt;\n            &lt;SizeBasedTriggeringPolicy size=\&quot;100 MB\&quot;/&gt; &lt;!-- Or every 100 MB --&gt;\n        &lt;/Policies&gt;\n        &lt;DefaultRolloverStrategy max=\&quot;9\&quot;/&gt;\n    &lt;/RollingFile&gt;\n    &lt;RollingFile name=\&quot;ACCESS\&quot;\n                 fileName=\&quot;${sys:storm.log.dir}/access.log\&quot;\n                 filePattern=\&quot;${sys:storm.log.dir}/access.log.%i\&quot;&gt;\n        &lt;PatternLayout&gt
 ;\n            &lt;pattern&gt;${pattern}&lt;/pattern&gt;\n        &lt;/PatternLayout&gt;\n        &lt;Policies&gt;\n            &lt;SizeBasedTriggeringPolicy size=\&quot;100 MB\&quot;/&gt; &lt;!-- Or every 100 MB --&gt;\n        &lt;/Policies&gt;\n        &lt;DefaultRolloverStrategy max=\&quot;9\&quot;/&gt;\n    &lt;/RollingFile&gt;\n    &lt;RollingFile name=\&quot;METRICS\&quot;\n                 fileName=\&quot;${sys:storm.log.dir}/metrics.log\&quot;\n                 filePattern=\&quot;${sys:storm.log.dir}/metrics.log.%i\&quot;&gt;\n        &lt;PatternLayout&gt;\n            &lt;pattern&gt;${patternMetris}&lt;/pattern&gt;\n        &lt;/PatternLayout&gt;\n        &lt;Policies&gt;\n            &lt;SizeBasedTriggeringPolicy size=\&quot;2 MB\&quot;/&gt; &lt;!-- Or every 100 MB --&gt;\n        &lt;/Policies&gt;\n        &lt;DefaultRolloverStrategy max=\&quot;9\&quot;/&gt;\n    &lt;/RollingFile&gt;\n    &lt;Syslog name=\&quot;syslog\&quot; format=\&quot;RFC5424\&quot; host=\&quot;local
 host\&quot; port=\&quot;514\&quot;\n            protocol=\&quot;UDP\&quot; appName=\&quot;[${sys:daemon.name}]\&quot; mdcId=\&quot;mdc\&quot; includeMDC=\&quot;true\&quot;\n            facility=\&quot;LOCAL5\&quot; enterpriseNumber=\&quot;18060\&quot; newLine=\&quot;true\&quot; exceptionPattern=\&quot;%rEx{full}\&quot;\n            messageId=\&quot;[${sys:user.name}:S0]\&quot; id=\&quot;storm\&quot;/&gt;\n&lt;/appenders&gt;\n&lt;loggers&gt;\n\n    &lt;Logger name=\&quot;backtype.storm.security.auth.authorizer\&quot; level=\&quot;info\&quot;&gt;\n        &lt;AppenderRef ref=\&quot;ACCESS\&quot;/&gt;\n    &lt;/Logger&gt;\n    &lt;Logger name=\&quot;backtype.storm.metric.LoggingMetricsConsumer\&quot; level=\&quot;info\&quot;&gt;\n        &lt;AppenderRef ref=\&quot;METRICS\&quot;/&gt;\n    &lt;/Logger&gt;\n    &lt;root level=\&quot;info\&quot;&gt; &lt;!-- We log everything --&gt;\n        &lt;appender-ref ref=\&quot;A1\&quot;/&gt;\n        &lt;appender-ref ref=\&quot;syslog\&quot;/&gt;\
 n    &lt;/root&gt;\n&lt;/loggers&gt;\n&lt;/configuration&gt;\n    \n    &quot;"/>
+            <set key="content" value="&lt;!--
+ 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 &quot;License&quot;); 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 &quot;AS IS&quot; 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.
+--&gt;
+
+&lt;configuration monitorInterval=&quot;60&quot;&gt;
+&lt;properties&gt;
+    &lt;property name=&quot;pattern&quot;&gt;%d{yyyy-MM-dd HH:mm:ss.SSS} %c{1.} [%p] %msg%n&lt;/property&gt;
+    &lt;property name=&quot;patternMetris&quot;&gt;%d %-8r %m%n&lt;/property&gt;
+&lt;/properties&gt;
+&lt;appenders&gt;
+    &lt;RollingFile name=&quot;A1&quot;
+                 fileName=&quot;${sys:storm.log.dir}/${sys:logfile.name}&quot;
+                 filePattern=&quot;${sys:storm.log.dir}/${sys:logfile.name}.%i&quot;&gt;
+        &lt;PatternLayout&gt;
+            &lt;pattern&gt;${pattern}&lt;/pattern&gt;
+        &lt;/PatternLayout&gt;
+        &lt;Policies&gt;
+            &lt;SizeBasedTriggeringPolicy size=&quot;100 MB&quot;/&gt; &lt;!-- Or every 100 MB --&gt;
+        &lt;/Policies&gt;
+        &lt;DefaultRolloverStrategy max=&quot;9&quot;/&gt;
+    &lt;/RollingFile&gt;
+    &lt;RollingFile name=&quot;ACCESS&quot;
+                 fileName=&quot;${sys:storm.log.dir}/access.log&quot;
+                 filePattern=&quot;${sys:storm.log.dir}/access.log.%i&quot;&gt;
+        &lt;PatternLayout&gt;
+            &lt;pattern&gt;${pattern}&lt;/pattern&gt;
+        &lt;/PatternLayout&gt;
+        &lt;Policies&gt;
+            &lt;SizeBasedTriggeringPolicy size=&quot;100 MB&quot;/&gt; &lt;!-- Or every 100 MB --&gt;
+        &lt;/Policies&gt;
+        &lt;DefaultRolloverStrategy max=&quot;9&quot;/&gt;
+    &lt;/RollingFile&gt;
+    &lt;RollingFile name=&quot;METRICS&quot;
+                 fileName=&quot;${sys:storm.log.dir}/metrics.log&quot;
+                 filePattern=&quot;${sys:storm.log.dir}/metrics.log.%i&quot;&gt;
+        &lt;PatternLayout&gt;
+            &lt;pattern&gt;${patternMetris}&lt;/pattern&gt;
+        &lt;/PatternLayout&gt;
+        &lt;Policies&gt;
+            &lt;SizeBasedTriggeringPolicy size=&quot;2 MB&quot;/&gt; &lt;!-- Or every 100 MB --&gt;
+        &lt;/Policies&gt;
+        &lt;DefaultRolloverStrategy max=&quot;9&quot;/&gt;
+    &lt;/RollingFile&gt;
+    &lt;Syslog name=&quot;syslog&quot; format=&quot;RFC5424&quot; host=&quot;localhost&quot; port=&quot;514&quot;
+            protocol=&quot;UDP&quot; appName=&quot;[${sys:daemon.name}]&quot; mdcId=&quot;mdc&quot; includeMDC=&quot;true&quot;
+            facility=&quot;LOCAL5&quot; enterpriseNumber=&quot;18060&quot; newLine=&quot;true&quot; exceptionPattern=&quot;%rEx{full}&quot;
+            messageId=&quot;[${sys:user.name}:S0]&quot; id=&quot;storm&quot;/&gt;
+&lt;/appenders&gt;
+&lt;loggers&gt;
+
+    &lt;Logger name=&quot;backtype.storm.security.auth.authorizer&quot; level=&quot;info&quot;&gt;
+        &lt;AppenderRef ref=&quot;ACCESS&quot;/&gt;
+    &lt;/Logger&gt;
+    &lt;Logger name=&quot;backtype.storm.metric.LoggingMetricsConsumer&quot; level=&quot;info&quot;&gt;
+        &lt;AppenderRef ref=&quot;METRICS&quot;/&gt;
+    &lt;/Logger&gt;
+    &lt;root level=&quot;info&quot;&gt; &lt;!-- We log everything --&gt;
+        &lt;appender-ref ref=&quot;A1&quot;/&gt;
+        &lt;appender-ref ref=&quot;syslog&quot;/&gt;
+    &lt;/root&gt;
+&lt;/loggers&gt;
+&lt;/configuration&gt;"/>
           </definition>
           <definition id="hdp_2_3_0_0_add_storm_worker_logs_content">
             <type>storm-worker-log4j</type>
-            <set key="content" value="\n    \n&lt;!--\n Licensed to the Apache Software Foundation (ASF) under one or more\n contributor license agreements.  See the NOTICE file distributed with\n this work for additional information regarding copyright ownership.\n The ASF licenses this file to You under the Apache License, Version 2.0\n (the \&quot;License\&quot;); you may not use this file except in compliance with\n the License.  You may obtain a copy of the License at\n\n     http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \&quot;AS IS\&quot; BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n--&gt;\n\n&lt;configuration monitorInterval=\&quot;60\&quot;&gt;\n&lt;properties&gt;\n    &lt;property name=\&quot;pattern\&quot;&gt;%d{y
 yyy-MM-dd HH:mm:ss.SSS} %c{1.} [%p] %msg%n&lt;/property&gt;\n    &lt;property name=\&quot;patternNoTime\&quot;&gt;%msg%n&lt;/property&gt;\n&lt;/properties&gt;\n&lt;appenders&gt;\n    &lt;RollingFile name=\&quot;A1\&quot;\n                 fileName=\&quot;${sys:storm.log.dir}/${sys:logfile.name}\&quot;\n                 filePattern=\&quot;${sys:storm.log.dir}/${sys:logfile.name}.%i.gz\&quot;&gt;\n        &lt;PatternLayout&gt;\n            &lt;pattern&gt;${pattern}&lt;/pattern&gt;\n        &lt;/PatternLayout&gt;\n        &lt;Policies&gt;\n            &lt;SizeBasedTriggeringPolicy size=\&quot;100 MB\&quot;/&gt; &lt;!-- Or every 100 MB --&gt;\n        &lt;/Policies&gt;\n        &lt;DefaultRolloverStrategy max=\&quot;9\&quot;/&gt;\n    &lt;/RollingFile&gt;\n    &lt;RollingFile name=\&quot;STDOUT\&quot;\n                 fileName=\&quot;${sys:storm.log.dir}/${sys:logfile.name}.out\&quot;\n                 filePattern=\&quot;${sys:storm.log.dir}/${sys:logfile.name}.out.%i.gz\&quot;&gt;\n  
       &lt;PatternLayout&gt;\n            &lt;pattern&gt;${patternNoTime}&lt;/pattern&gt;\n        &lt;/PatternLayout&gt;\n        &lt;Policies&gt;\n            &lt;SizeBasedTriggeringPolicy size=\&quot;100 MB\&quot;/&gt; &lt;!-- Or every 100 MB --&gt;\n        &lt;/Policies&gt;\n        &lt;DefaultRolloverStrategy max=\&quot;4\&quot;/&gt;\n    &lt;/RollingFile&gt;\n    &lt;RollingFile name=\&quot;STDERR\&quot;\n                 fileName=\&quot;${sys:storm.log.dir}/${sys:logfile.name}.err\&quot;\n                 filePattern=\&quot;${sys:storm.log.dir}/${sys:logfile.name}.err.%i.gz\&quot;&gt;\n        &lt;PatternLayout&gt;\n            &lt;pattern&gt;${patternNoTime}&lt;/pattern&gt;\n        &lt;/PatternLayout&gt;\n        &lt;Policies&gt;\n            &lt;SizeBasedTriggeringPolicy size=\&quot;100 MB\&quot;/&gt; &lt;!-- Or every 100 MB --&gt;\n        &lt;/Policies&gt;\n        &lt;DefaultRolloverStrategy max=\&quot;4\&quot;/&gt;\n    &lt;/RollingFile&gt;\n    &lt;Syslog name=\&quot;
 syslog\&quot; format=\&quot;RFC5424\&quot; host=\&quot;localhost\&quot; port=\&quot;514\&quot;\n        protocol=\&quot;UDP\&quot; appName=\&quot;[${sys:storm.id}:${sys:worker.port}]\&quot; mdcId=\&quot;mdc\&quot; includeMDC=\&quot;true\&quot;\n        facility=\&quot;LOCAL5\&quot; enterpriseNumber=\&quot;18060\&quot; newLine=\&quot;true\&quot; exceptionPattern=\&quot;%rEx{full}\&quot;\n        messageId=\&quot;[${sys:user.name}:${sys:logging.sensitivity}]\&quot; id=\&quot;storm\&quot;/&gt;\n&lt;/appenders&gt;\n&lt;loggers&gt;\n    &lt;root level=\&quot;info\&quot;&gt; &lt;!-- We log everything --&gt;\n        &lt;appender-ref ref=\&quot;A1\&quot;/&gt;\n        &lt;appender-ref ref=\&quot;syslog\&quot;/&gt;\n    &lt;/root&gt;\n    &lt;Logger name=\&quot;STDERR\&quot; level=\&quot;INFO\&quot;&gt;\n        &lt;appender-ref ref=\&quot;STDERR\&quot;/&gt;\n        &lt;appender-ref ref=\&quot;syslog\&quot;/&gt;\n    &lt;/Logger&gt;\n    &lt;Logger name=\&quot;STDOUT\&quot; level=\&quot;IN
 FO\&quot;&gt;\n        &lt;appender-ref ref=\&quot;STDOUT\&quot;/&gt;\n        &lt;appender-ref ref=\&quot;syslog\&quot;/&gt;\n    &lt;/Logger&gt;\n&lt;/loggers&gt;\n&lt;/configuration&gt;\n    \n"/>
+            <set key="content" value="&lt;!--
+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 &quot;License&quot;); 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 &quot;AS IS&quot; 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.
+--&gt;
+
+&lt;configuration monitorInterval=&quot;60&quot;&gt;
+&lt;properties&gt;
+    &lt;property name=&quot;pattern&quot;&gt;%d{yyyy-MM-dd HH:mm:ss.SSS} %c{1.} [%p] %msg%n&lt;/property&gt;
+    &lt;property name=&quot;patternNoTime&quot;&gt;%msg%n&lt;/property&gt;
+&lt;/properties&gt;
+&lt;appenders&gt;
+    &lt;RollingFile name=&quot;A1&quot;
+                 fileName=&quot;${sys:storm.log.dir}/${sys:logfile.name}&quot;
+                 filePattern=&quot;${sys:storm.log.dir}/${sys:logfile.name}.%i.gz&quot;&gt;
+        &lt;PatternLayout&gt;
+            &lt;pattern&gt;${pattern}&lt;/pattern&gt;
+        &lt;/PatternLayout&gt;
+        &lt;Policies&gt;
+            &lt;SizeBasedTriggeringPolicy size=&quot;100 MB&quot;/&gt; &lt;!-- Or every 100 MB --&gt;
+        &lt;/Policies&gt;
+        &lt;DefaultRolloverStrategy max=&quot;9&quot;/&gt;
+    &lt;/RollingFile&gt;
+    &lt;RollingFile name=&quot;STDOUT&quot;
+                 fileName=&quot;${sys:storm.log.dir}/${sys:logfile.name}.out&quot;
+                 filePattern=&quot;${sys:storm.log.dir}/${sys:logfile.name}.out.%i.gz&quot;&gt;
+        &lt;PatternLayout&gt;
+            &lt;pattern&gt;${patternNoTime}&lt;/pattern&gt;
+        &lt;/PatternLayout&gt;
+        &lt;Policies&gt;
+            &lt;SizeBasedTriggeringPolicy size=&quot;100 MB&quot;/&gt; &lt;!-- Or every 100 MB --&gt;
+        &lt;/Policies&gt;
+        &lt;DefaultRolloverStrategy max=&quot;4&quot;/&gt;
+    &lt;/RollingFile&gt;
+    &lt;RollingFile name=&quot;STDERR&quot;
+                 fileName=&quot;${sys:storm.log.dir}/${sys:logfile.name}.err&quot;
+                 filePattern=&quot;${sys:storm.log.dir}/${sys:logfile.name}.err.%i.gz&quot;&gt;
+        &lt;PatternLayout&gt;
+            &lt;pattern&gt;${patternNoTime}&lt;/pattern&gt;
+        &lt;/PatternLayout&gt;
+        &lt;Policies&gt;
+            &lt;SizeBasedTriggeringPolicy size=&quot;100 MB&quot;/&gt; &lt;!-- Or every 100 MB --&gt;
+        &lt;/Policies&gt;
+        &lt;DefaultRolloverStrategy max=&quot;4&quot;/&gt;
+    &lt;/RollingFile&gt;
+    &lt;Syslog name=&quot;syslog&quot; format=&quot;RFC5424&quot; host=&quot;localhost&quot; port=&quot;514&quot;
+        protocol=&quot;UDP&quot; appName=&quot;[${sys:storm.id}:${sys:worker.port}]&quot; mdcId=&quot;mdc&quot; includeMDC=&quot;true&quot;
+        facility=&quot;LOCAL5&quot; enterpriseNumber=&quot;18060&quot; newLine=&quot;true&quot; exceptionPattern=&quot;%rEx{full}&quot;
+        messageId=&quot;[${sys:user.name}:${sys:logging.sensitivity}]&quot; id=&quot;storm&quot;/&gt;
+&lt;/appenders&gt;
+&lt;loggers&gt;
+    &lt;root level=&quot;info&quot;&gt; &lt;!-- We log everything --&gt;
+        &lt;appender-ref ref=&quot;A1&quot;/&gt;
+        &lt;appender-ref ref=&quot;syslog&quot;/&gt;
+    &lt;/root&gt;
+    &lt;Logger name=&quot;STDERR&quot; level=&quot;INFO&quot;&gt;
+        &lt;appender-ref ref=&quot;STDERR&quot;/&gt;
+        &lt;appender-ref ref=&quot;syslog&quot;/&gt;
+    &lt;/Logger&gt;
+    &lt;Logger name=&quot;STDOUT&quot; level=&quot;INFO&quot;&gt;
+        &lt;appender-ref ref=&quot;STDOUT&quot;/&gt;
+        &lt;appender-ref ref=&quot;syslog&quot;/&gt;
+    &lt;/Logger&gt;
+&lt;/loggers&gt;
+&lt;/configuration&gt;"/>
           </definition>
           
           <definition xsi:type="configure" id="hdp_2_3_0_0_nimbus_monitor_freq_adjustment">

http://git-wip-us.apache.org/repos/asf/ambari/blob/efca65bf/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/nonrolling-upgrade-2.3.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/nonrolling-upgrade-2.3.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/nonrolling-upgrade-2.3.xml
index 016bad6..2ec4797 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/nonrolling-upgrade-2.3.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/upgrades/nonrolling-upgrade-2.3.xml
@@ -136,7 +136,7 @@
       <!--TODO(dlysnichenko): This step is missing in 2.3->2.3+ RU pack -->
       <execute-stage service="KNOX" component="KNOX_GATEWAY" title="Backup Knox Data">
         <task xsi:type="manual">
-          <message>Before continuing, please backup the Knox data. E.g., "cp -RL /etc/knox/data/security ~/knox_backup" on the following host(s): {{hosts.all}}.</message>
+          <message>Before continuing, please backup the Knox data. E.g., "cp -RL /var/lib/knox/data/ ~/knox_backup" on the following host(s): {{hosts.all}}.</message>
         </task>
       </execute-stage>