upgrade-2.5.xml 39 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141
  1. <?xml version="1.0"?>
  2. <!--
  3. Licensed to the Apache Software Foundation (ASF) under one or more
  4. contributor license agreements. See the NOTICE file distributed with
  5. this work for additional information regarding copyright ownership.
  6. The ASF licenses this file to You under the Apache License, Version 2.0
  7. (the "License"); you may not use this file except in compliance with
  8. the License. You may obtain a copy of the License at
  9. http://www.apache.org/licenses/LICENSE-2.0
  10. Unless required by applicable law or agreed to in writing, software
  11. distributed under the License is distributed on an "AS IS" BASIS,
  12. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. See the License for the specific language governing permissions and
  14. limitations under the License.
  15. -->
  16. <upgrade xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="upgrade-pack.xsd">
  17. <target>2.5.*.*</target>
  18. <target-stack>HDP-2.5</target-stack>
  19. <skip-failures>false</skip-failures>
  20. <skip-service-check-failures>false</skip-service-check-failures>
  21. <type>ROLLING</type>
  22. <prerequisite-checks>
  23. <!-- List of additional pre-req checks to run in addition to the required pre-reqs -->
  24. <check>org.apache.ambari.server.checks.HiveMultipleMetastoreCheck</check>
  25. <check>org.apache.ambari.server.checks.SecondaryNamenodeDeletedCheck</check>
  26. <check>org.apache.ambari.server.checks.ServicesMapReduceDistributedCacheCheck</check>
  27. <check>org.apache.ambari.server.checks.ServicesNamenodeHighAvailabilityCheck</check>
  28. <check>org.apache.ambari.server.checks.ServicesNamenodeTruncateCheck</check>
  29. <check>org.apache.ambari.server.checks.ServicesTezDistributedCacheCheck</check>
  30. <check>org.apache.ambari.server.checks.ServicesYarnWorkPreservingCheck</check>
  31. <check>org.apache.ambari.server.checks.YarnRMHighAvailabilityCheck</check>
  32. <check>org.apache.ambari.server.checks.YarnTimelineServerStatePreservingCheck</check>
  33. <check>org.apache.ambari.server.checks.AtlasPresenceCheck</check>
  34. <check>org.apache.ambari.server.checks.RangerAuditDbCheck</check>
  35. <!-- Specific to HDP 2.5, Storm is not rolling -->
  36. <check>org.apache.ambari.server.checks.StormShutdownWarning</check>
  37. <configuration>
  38. <!-- Configuration properties for all pre-reqs including required pre-reqs -->
  39. <!--TODO: is it required? -->
  40. <check-properties name="org.apache.ambari.server.checks.HiveDynamicServiceDiscoveryCheck">
  41. <property name="min-failure-stack-version">HDP-2.3.0.0</property>
  42. </check-properties>
  43. </configuration>
  44. </prerequisite-checks>
  45. <order>
  46. <group xsi:type="cluster" name="PRE_CLUSTER" title="Prepare Upgrade">
  47. <direction>UPGRADE</direction>
  48. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  49. <execute-stage service="HDFS" component="NAMENODE" title="Pre Upgrade HDFS">
  50. <task xsi:type="execute" hosts="master">
  51. <script>scripts/namenode.py</script>
  52. <function>prepare_rolling_upgrade</function>
  53. </task>
  54. </execute-stage>
  55. <execute-stage service="TEZ" component="TEZ_CLIENT" title="Check Tez Tarball">
  56. <task xsi:type="execute" hosts="any">
  57. <script>scripts/pre_upgrade.py</script>
  58. <function>prepare</function>
  59. </task>
  60. </execute-stage>
  61. </group>
  62. <group xsi:type="cluster" name="PREPARE_BACKUPS" title="Prepare Backups">
  63. <direction>UPGRADE</direction>
  64. <skippable>true</skippable>
  65. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  66. <execute-stage service="HBASE" component="HBASE_MASTER" title="Pre Upgrade HBase Backup">
  67. <task xsi:type="execute" hosts="master">
  68. <script>scripts/hbase_upgrade.py</script>
  69. <function>take_snapshot</function>
  70. </task>
  71. </execute-stage>
  72. <execute-stage service="HIVE" component="HIVE_METASTORE" title="Pre Upgrade Hive Backup">
  73. <task xsi:type="manual">
  74. <message>Before continuing, please backup the Hive Metastore database referenced by the Hive Metastore service(s) located on the following host(s): {{hosts.all}}.</message>
  75. </task>
  76. </execute-stage>
  77. <execute-stage service="OOZIE" component="OOZIE_SERVER" title="Pre Upgrade Oozie Backup">
  78. <task xsi:type="manual">
  79. <message>Before continuing, please backup the Oozie Server database referenced by the Oozie server located on {{hosts.all}}.</message>
  80. </task>
  81. </execute-stage>
  82. <execute-stage service="RANGER" component="RANGER_ADMIN" title="Pre Upgrade Ranger Backup">
  83. <task xsi:type="manual">
  84. <message>Before continuing, please backup the Ranger Admin database and Ranger Audit database.
  85. If audit database size is too large( > 3GB ) then follow the below instructions:
  86. 1. Backup the audit table from audit database.
  87. 2. Truncate audit table.
  88. 3. Follow upgrade process and once completed then restore audit data to audit table.</message>
  89. </task>
  90. </execute-stage>
  91. <execute-stage service="RANGER_KMS" component="RANGER_KMS_SERVER" title="Pre Upgrade Ranger KMS Backup">
  92. <task xsi:type="manual">
  93. <message>Before continuing, please backup Ranger KMS database on the following host(s): {{hosts.all}}.</message>
  94. </task>
  95. </execute-stage>
  96. </group>
  97. <group name="ZOOKEEPER" title="ZooKeeper">
  98. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  99. <service name="ZOOKEEPER">
  100. <component>ZOOKEEPER_SERVER</component>
  101. </service>
  102. </group>
  103. <group name="RANGER" title="Ranger">
  104. <skippable>true</skippable>
  105. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  106. <service name="RANGER">
  107. <component>RANGER_ADMIN</component>
  108. <component>RANGER_USERSYNC</component>
  109. </service>
  110. </group>
  111. <group xsi:type="cluster" name="UPDATE_RANGER_KMS_SITE" title="Update Ranger KMS Configuration">
  112. <direction>UPGRADE</direction>
  113. <skippable>true</skippable>
  114. <execute-stage service="RANGER_KMS" component="RANGER_KMS_SERVER" title="Calculating Proxy Properties under kms-site">
  115. <condition xsi:type="security" type="kerberos"/>
  116. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.RangerKmsProxyConfig">
  117. <summary>Adding Ranger proxy user properties under kms-site</summary>
  118. </task>
  119. </execute-stage>
  120. </group>
  121. <group name="RANGER_KMS" title="Ranger_KMS">
  122. <skippable>true</skippable>
  123. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  124. <service name="RANGER_KMS">
  125. <component>RANGER_KMS_SERVER</component>
  126. </service>
  127. </group>
  128. <group name="KAFKA" title="Kafka">
  129. <skippable>true</skippable>
  130. <service name="KAFKA">
  131. <component>KAFKA_BROKER</component>
  132. </service>
  133. </group>
  134. <!-- This group should exist for all RUs that cross a major stack version. -->
  135. <group xsi:type="cluster" name="UPDATE_CLIENT_CONFIGS" title="Update Client Configs">
  136. <direction>UPGRADE</direction>
  137. <execute-stage service="TEZ" component="TEZ_CLIENT" title="Update tez.lib.uris">
  138. <task xsi:type="configure" id="hdp_2_5_0_0_tez_client_adjust_tez_lib_uris_property"/>
  139. </execute-stage>
  140. <execute-stage service="TEZ" component="TEZ_CLIENT" title="Verify LZO codec path for Tez">
  141. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.FixLzoCodecPath">
  142. <summary>Verifying LZO codec path for Tez</summary>
  143. </task>
  144. </execute-stage>
  145. </group>
  146. <!-- This needs to be done for every Rolling Upgrade pack that changes configurations. -->
  147. <group xsi:type="cluster" name="CONFIGURE_CLIENT_DEPENDENCIES" title="Write client configs">
  148. <direction>UPGRADE</direction>
  149. <skippable>true</skippable>
  150. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  151. <execute-stage service="MAPREDUCE2" component="MAPREDUCE2_CLIENT" title="Write Mapreduce2 Client configs">
  152. <task xsi:type="execute">
  153. <script>scripts/mapreduce2_client.py</script>
  154. <function>stack_upgrade_save_new_config</function>
  155. </task>
  156. </execute-stage>
  157. <execute-stage service="TEZ" component="TEZ_CLIENT" title="Write Tez Client configs">
  158. <task xsi:type="execute">
  159. <script>scripts/tez_client.py</script>
  160. <function>stack_upgrade_save_new_config</function>
  161. </task>
  162. </execute-stage>
  163. <execute-stage service="SPARK" component="SPARK_CLIENT" title="Write Spark Client configs">
  164. <task xsi:type="execute">
  165. <script>scripts/spark_client.py</script>
  166. <function>stack_upgrade_save_new_config</function>
  167. </task>
  168. </execute-stage>
  169. </group>
  170. <!--
  171. After processing this group, the user-specified Kerberos descriptor will be updated to work with
  172. the new stack-level Kerberos descriptor.
  173. -->
  174. <group xsi:type="cluster" name="UPDATE_KERBEROS_DESCRIPTORS" title="Update Kerberos Descriptors">
  175. <condition xsi:type="security" type="kerberos"/>
  176. <execute-stage title="Update the user-specified Kerberos descriptor">
  177. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.UpgradeUserKerberosDescriptor"/>
  178. </execute-stage>
  179. </group>
  180. <group name="CORE_MASTER" title="Core Masters">
  181. <service-check>false</service-check>
  182. <service name="HDFS">
  183. <component>NAMENODE</component>
  184. <component>JOURNALNODE</component>
  185. <component>ZKFC</component>
  186. </service>
  187. <service name="MAPREDUCE2">
  188. <component>HISTORYSERVER</component>
  189. </service>
  190. <service name="YARN">
  191. <component>APP_TIMELINE_SERVER</component>
  192. <component>RESOURCEMANAGER</component>
  193. </service>
  194. <service name="HBASE">
  195. <component>HBASE_MASTER</component>
  196. </service>
  197. </group>
  198. <group name="SERVICE_CHECK_1" title="All Service Checks" xsi:type="service-check">
  199. <direction>UPGRADE</direction>
  200. <skippable>true</skippable>
  201. <priority>
  202. <service>ZOOKEEPER</service>
  203. <service>HDFS</service>
  204. <service>YARN</service>
  205. <service>MAPREDUCE2</service>
  206. <service>HBASE</service>
  207. </priority>
  208. <exclude>
  209. <service>AMBARI_METRICS</service>
  210. <service>LOGSEARCH</service>
  211. </exclude>
  212. </group>
  213. <group name="CORE_SLAVES" title="Core Slaves" xsi:type="colocated">
  214. <service-check>false</service-check>
  215. <skippable>true</skippable>
  216. <service name="HDFS">
  217. <component>DATANODE</component>
  218. <component>NFS_GATEWAY</component>
  219. </service>
  220. <service name="HBASE">
  221. <component>HBASE_REGIONSERVER</component>
  222. <component>PHOENIX_QUERY_SERVER</component>
  223. </service>
  224. <service name="YARN">
  225. <component>NODEMANAGER</component>
  226. </service>
  227. <batch>
  228. <percent>20</percent>
  229. <summary>Verification Required</summary>
  230. <message>The initial batch of {{components}} hosts have been {{direction.past}}. You are advised to check the hosts and perform cluster/workload-specific tests against your cluster to ensure proper operation before proceeding with {{direction.text}} of the remaining services.</message>
  231. </batch>
  232. </group>
  233. <group name="SERVICE_CHECK_2" title="All Service Checks" xsi:type="service-check">
  234. <direction>UPGRADE</direction>
  235. <skippable>true</skippable>
  236. <priority>
  237. <service>ZOOKEEPER</service>
  238. <service>HDFS</service>
  239. <service>YARN</service>
  240. <service>HBASE</service>
  241. </priority>
  242. <exclude>
  243. <service>AMBARI_METRICS</service>
  244. <service>LOGSEARCH</service>
  245. </exclude>
  246. </group>
  247. <group name="HIVE" title="Hive">
  248. <skippable>true</skippable>
  249. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  250. <service name="HIVE">
  251. <component>HIVE_METASTORE</component>
  252. <component>HIVE_SERVER</component>
  253. <component>WEBHCAT_SERVER</component>
  254. </service>
  255. </group>
  256. <group name="SPARK" title="Spark">
  257. <skippable>true</skippable>
  258. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  259. <service-check>false</service-check>
  260. <service name="SPARK">
  261. <component>SPARK_JOBHISTORYSERVER</component>
  262. <component>SPARK_THRIFTSERVER</component>
  263. </service>
  264. </group>
  265. <group name="SPARK_CLIENTS" title="Spark Clients">
  266. <skippable>true</skippable>
  267. <service name="SPARK">
  268. <component>SPARK_CLIENT</component>
  269. </service>
  270. </group>
  271. <group name="OOZIE" title="Oozie">
  272. <skippable>true</skippable>
  273. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  274. <service-check>false</service-check>
  275. <service name="OOZIE">
  276. <component>OOZIE_SERVER</component>
  277. </service>
  278. </group>
  279. <group name="OOZIE_CLIENTS" title="Oozie Clients">
  280. <skippable>true</skippable>
  281. <service name="OOZIE">
  282. <component>OOZIE_CLIENT</component>
  283. </service>
  284. </group>
  285. <group name="FALCON" title="Falcon">
  286. <skippable>true</skippable>
  287. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  288. <service-check>false</service-check>
  289. <service name="FALCON">
  290. <component>FALCON_SERVER</component>
  291. </service>
  292. </group>
  293. <group name="FALCON_CLIENTS" title="Falcon Clients">
  294. <skippable>true</skippable>
  295. <service name="FALCON">
  296. <component>FALCON_CLIENT</component>
  297. </service>
  298. </group>
  299. <group name="CLIENTS" title="Client Components">
  300. <service-check>false</service-check>
  301. <service name="ZOOKEEPER">
  302. <component>ZOOKEEPER_CLIENT</component>
  303. </service>
  304. <service name="HDFS">
  305. <component>HDFS_CLIENT</component>
  306. </service>
  307. <service name="YARN">
  308. <component>YARN_CLIENT</component>
  309. </service>
  310. <service name="MAPREDUCE2">
  311. <component>MAPREDUCE2_CLIENT</component>
  312. </service>
  313. <service name="TEZ">
  314. <component>TEZ_CLIENT</component>
  315. </service>
  316. <service name="HBASE">
  317. <component>HBASE_CLIENT</component>
  318. </service>
  319. <service name="PIG">
  320. <component>PIG</component>
  321. </service>
  322. <service name="SQOOP">
  323. <component>SQOOP</component>
  324. </service>
  325. <service name="MAHOUT">
  326. <component>MAHOUT</component>
  327. </service>
  328. <service name="HIVE">
  329. <component>HIVE_CLIENT</component>
  330. <component>HCAT</component>
  331. </service>
  332. </group>
  333. <group name="SERVICE_CHECK_3" title="All Service Checks" xsi:type="service-check">
  334. <direction>UPGRADE</direction>
  335. <skippable>true</skippable>
  336. <priority>
  337. <service>ZOOKEEPER</service>
  338. <service>HDFS</service>
  339. <service>YARN</service>
  340. <service>HBASE</service>
  341. </priority>
  342. <exclude>
  343. <service>AMBARI_METRICS</service>
  344. <service>LOGSEARCH</service>
  345. </exclude>
  346. </group>
  347. <group name="KNOX" title="Knox">
  348. <skippable>true</skippable>
  349. <service name="KNOX">
  350. <component>KNOX_GATEWAY</component>
  351. </service>
  352. </group>
  353. <!-- Storm package names changed causing an incompatibility between versions; we must
  354. shut all daemons down before deleting ZooKeeper/local data. -->
  355. <group xsi:type="cluster" name="STOP_STORM_WARNING" title="Deactivate Storm Topologies">
  356. <direction>UPGRADE</direction>
  357. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  358. <execute-stage service="STORM" component="NIMBUS" title="Deactivate Storm Topologies">
  359. <task xsi:type="manual">
  360. <message>Before continuing, please deactivate and kill any currently running topologies.</message>
  361. </task>
  362. </execute-stage>
  363. </group>
  364. <group xsi:type="stop" name="STOP_STORM" title="Stop Storm Services">
  365. <direction>UPGRADE</direction>
  366. <service-check>false</service-check>
  367. <skippable>true</skippable>
  368. <service name="STORM">
  369. <component>NIMBUS</component>
  370. <component>SUPERVISOR</component>
  371. <component>STORM_UI_SERVER</component>
  372. <component>DRPC_SERVER</component>
  373. </service>
  374. </group>
  375. <group xsi:type="restart" name="RESTART_STORM" title="Restart Storm Services">
  376. <skippable>true</skippable>
  377. <service name="STORM">
  378. <component>NIMBUS</component>
  379. <component>SUPERVISOR</component>
  380. <component>STORM_UI_SERVER</component>
  381. <component>DRPC_SERVER</component>
  382. </service>
  383. </group>
  384. <group xsi:type="stop" name="STOP_STORM" title="Stop Storm Services">
  385. <direction>DOWNGRADE</direction>
  386. <service-check>false</service-check>
  387. <skippable>true</skippable>
  388. <service name="STORM">
  389. <component>NIMBUS</component>
  390. <component>SUPERVISOR</component>
  391. <component>STORM_UI_SERVER</component>
  392. <component>DRPC_SERVER</component>
  393. </service>
  394. </group>
  395. <group name="SLIDER" title="Slider">
  396. <skippable>true</skippable>
  397. <service name="SLIDER">
  398. <component>SLIDER</component>
  399. </service>
  400. </group>
  401. <group name="FLUME" title="Flume">
  402. <skippable>true</skippable>
  403. <service name="FLUME">
  404. <component>FLUME_HANDLER</component>
  405. </service>
  406. </group>
  407. <group name="ACCUMULO" title="Accumulo">
  408. <skippable>true</skippable>
  409. <service name="ACCUMULO">
  410. <component>ACCUMULO_MASTER</component>
  411. <component>ACCUMULO_TSERVER</component>
  412. <component>ACCUMULO_MONITOR</component>
  413. <component>ACCUMULO_GC</component>
  414. <component>ACCUMULO_TRACER</component>
  415. <component>ACCUMULO_CLIENT</component>
  416. </service>
  417. </group>
  418. <group xsi:type="cluster" name="ALL_HOST_OPS" title="Finalize Hosts">
  419. <execute-stage title="Update remaining HDP stack to {{version}}">
  420. <task xsi:type="execute">
  421. <script>scripts/ru_set_all.py</script>
  422. <function>actionexecute</function>
  423. </task>
  424. </execute-stage>
  425. </group>
  426. <group xsi:type="cluster" name="FINALIZE_PRE_CHECK" title="Finalize {{direction.text.proper}} Pre-Check">
  427. <direction>UPGRADE</direction>
  428. <execute-stage title="Check Component Versions">
  429. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.ComponentVersionCheckAction" />
  430. </execute-stage>
  431. </group>
  432. <group xsi:type="cluster" name="POST_CLUSTER" title="Finalize {{direction.text.proper}}">
  433. <skippable>true</skippable>
  434. <supports-auto-skip-failure>false</supports-auto-skip-failure>
  435. <execute-stage title="Confirm Finalize">
  436. <direction>UPGRADE</direction>
  437. <task xsi:type="manual">
  438. <message>Please confirm you are ready to finalize.</message>
  439. </task>
  440. </execute-stage>
  441. <execute-stage service="RANGER" component="RANGER_ADMIN" title="Ranger Kerberos Keytab Check">
  442. <condition xsi:type="security" type="kerberos"/>
  443. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.KerberosKeytabsAction">
  444. <summary>Ranger Kerberos Keytab Check</summary>
  445. <message>Please follow below steps to complete upgrade in kerberos environment</message>
  446. <message>-- If keytabs are managed by Ambari, Perform Regenerate Keytabs for missing components to get Ranger keytabs and restart Ranger components.</message>
  447. <message>-- If keytabs are managed manually, create the required ranger keytabs in the locations specified in ranger config and restart Ranger components.</message>
  448. </task>
  449. </execute-stage>
  450. <execute-stage service="KAFKA" component="KAFKA_BROKER" title="Kafka Property Removal">
  451. <task xsi:type="manual">
  452. <message>Kafka Brokers have been upgraded with version compatability.</message>
  453. <message>Config property "inter.broker.protocol.version" should be removed at your convenience.</message>
  454. <message>Config property "log.message.format.version" should be removed when all clients have been upgraded.</message>
  455. </task>
  456. </execute-stage>
  457. <execute-stage service="HDFS" component="NAMENODE" title="Execute HDFS Finalize">
  458. <task xsi:type="execute" hosts="master">
  459. <script>scripts/namenode.py</script>
  460. <function>finalize_rolling_upgrade</function>
  461. </task>
  462. </execute-stage>
  463. <execute-stage title="Save Cluster State">
  464. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.FinalizeUpgradeAction" />
  465. </execute-stage>
  466. </group>
  467. </order>
  468. <processing>
  469. <service name="ZOOKEEPER">
  470. <component name="ZOOKEEPER_SERVER">
  471. <upgrade>
  472. <task xsi:type="restart-task" />
  473. </upgrade>
  474. </component>
  475. <component name="ZOOKEEPER_CLIENT">
  476. <upgrade>
  477. <task xsi:type="restart-task" />
  478. </upgrade>
  479. </component>
  480. </service>
  481. <service name="RANGER">
  482. <component name="RANGER_ADMIN">
  483. <pre-upgrade>
  484. <task xsi:type="execute" hosts="all">
  485. <summary>Stop Ranger Admin</summary>
  486. <script>scripts/ranger_admin.py</script>
  487. <function>stop</function>
  488. </task>
  489. <task xsi:type="configure" id="hdp_2_5_0_0_remove_audit_db_flag" />
  490. <task xsi:type="configure" id="hdp_2_5_0_0_remove_audit_db_admin_properties" />
  491. <task xsi:type="configure" id="hdp_2_5_0_0_remove_audit_db_ranger_admin_site" />
  492. <task xsi:type="configure" id="hdp_2_5_0_0_remove_sso_property" />
  493. <task xsi:type="configure" id="hdp_2_5_0_0_set_external_solrCloud_flag"/>
  494. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.RangerKerberosConfigCalculation">
  495. <summary>Calculating Ranger Properties</summary>
  496. </task>
  497. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.RangerWebAlertConfigAction">
  498. <summary>Configuring Ranger Alerts</summary>
  499. </task>
  500. <task xsi:type="execute" hosts="all">
  501. <script>scripts/ranger_admin.py</script>
  502. <function>set_pre_start</function>
  503. </task>
  504. <task xsi:type="execute" hosts="any">
  505. <summary>Upgrading Ranger database schema</summary>
  506. <script>scripts/ranger_admin.py</script>
  507. <function>setup_ranger_database</function>
  508. </task>
  509. <task xsi:type="configure_function" hosts="all" />
  510. <task xsi:type="execute" hosts="any">
  511. <summary>Applying Ranger java patches</summary>
  512. <script>scripts/ranger_admin.py</script>
  513. <function>setup_ranger_java_patches</function>
  514. </task>
  515. </pre-upgrade>
  516. <pre-downgrade/> <!-- no-op to prevent config changes on downgrade -->
  517. <upgrade>
  518. <task xsi:type="restart-task" />
  519. </upgrade>
  520. </component>
  521. <component name="RANGER_USERSYNC">
  522. <upgrade>
  523. <task xsi:type="restart-task" />
  524. </upgrade>
  525. </component>
  526. </service>
  527. <service name="RANGER_KMS">
  528. <component name="RANGER_KMS_SERVER">
  529. <pre-upgrade>
  530. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_kms_audit_db" />
  531. <task xsi:type="execute" hosts="any" sequential="true">
  532. <summary>Upgrading Ranger KMS database schema</summary>
  533. <script>scripts/kms_server.py</script>
  534. <function>setup_ranger_kms_database</function>
  535. </task>
  536. </pre-upgrade>
  537. <pre-downgrade>
  538. <task xsi:type="execute" hosts="any" sequential="true">
  539. <summary>Downgrading Ranger KMS database schema</summary>
  540. <script>scripts/kms_server.py</script>
  541. <function>setup_ranger_kms_database</function>
  542. </task>
  543. </pre-downgrade>
  544. <upgrade>
  545. <task xsi:type="restart-task" />
  546. </upgrade>
  547. </component>
  548. </service>
  549. <service name="KAFKA">
  550. <component name="KAFKA_BROKER">
  551. <pre-upgrade>
  552. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_kafka_audit_db" />
  553. <task xsi:type="configure" id="hdp_2_5_0_0_add_protocol_compatibility" />
  554. </pre-upgrade>
  555. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  556. <upgrade>
  557. <task xsi:type="restart-task" />
  558. </upgrade>
  559. </component>
  560. </service>
  561. <service name="HDFS">
  562. <component name="NAMENODE">
  563. <pre-upgrade>
  564. <task xsi:type="configure" id="hdp_2_5_0_0_namenode_ha_adjustments"/>
  565. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_hdfs_audit_db" />
  566. </pre-upgrade>
  567. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  568. <upgrade>
  569. <task xsi:type="restart-task" />
  570. </upgrade>
  571. </component>
  572. <component name="DATANODE">
  573. <upgrade>
  574. <task xsi:type="restart-task" />
  575. </upgrade>
  576. </component>
  577. <component name="NFS_GATEWAY">
  578. <upgrade>
  579. <task xsi:type="restart-task" />
  580. </upgrade>
  581. </component>
  582. <component name="HDFS_CLIENT">
  583. <upgrade>
  584. <task xsi:type="restart-task" />
  585. </upgrade>
  586. </component>
  587. <component name="JOURNALNODE">
  588. <upgrade>
  589. <task xsi:type="restart-task" />
  590. </upgrade>
  591. </component>
  592. <component name="ZKFC">
  593. <upgrade>
  594. <task xsi:type="restart-task" />
  595. </upgrade>
  596. </component>
  597. </service>
  598. <service name="MAPREDUCE2">
  599. <component name="HISTORYSERVER">
  600. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  601. <upgrade>
  602. <task xsi:type="restart-task" />
  603. </upgrade>
  604. </component>
  605. <component name="MAPREDUCE2_CLIENT">
  606. <pre-upgrade>
  607. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.FixLzoCodecPath">
  608. <summary>Verifying LZO codec path for mapreduce</summary>
  609. </task>
  610. </pre-upgrade>
  611. <upgrade>
  612. <task xsi:type="restart-task" />
  613. </upgrade>
  614. </component>
  615. </service>
  616. <service name="YARN">
  617. <component name="APP_TIMELINE_SERVER">
  618. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  619. <upgrade>
  620. <task xsi:type="restart-task" />
  621. </upgrade>
  622. </component>
  623. <component name="RESOURCEMANAGER">
  624. <pre-upgrade>
  625. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.SparkShufflePropertyConfig">
  626. <summary>Calculating Yarn Properties for Spark Shuffle</summary>
  627. </task>
  628. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_yarn_audit_db" />
  629. </pre-upgrade>
  630. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  631. <upgrade>
  632. <task xsi:type="restart-task" />
  633. </upgrade>
  634. </component>
  635. <component name="NODEMANAGER">
  636. <pre-upgrade>
  637. <task xsi:type="configure" id="hdp_2_5_0_0_add_spark2_yarn_shuffle"/>
  638. </pre-upgrade>
  639. <pre-downgrade/>
  640. <upgrade>
  641. <task xsi:type="restart-task" />
  642. </upgrade>
  643. </component>
  644. <component name="YARN_CLIENT">
  645. <upgrade>
  646. <task xsi:type="restart-task" />
  647. </upgrade>
  648. </component>
  649. </service>
  650. <service name="HBASE">
  651. <component name="HBASE_MASTER">
  652. <pre-upgrade>
  653. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_hbase_audit_db" />
  654. </pre-upgrade>
  655. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  656. <upgrade>
  657. <task xsi:type="restart-task" />
  658. </upgrade>
  659. </component>
  660. <component name="HBASE_REGIONSERVER">
  661. <upgrade>
  662. <task xsi:type="restart-task" />
  663. </upgrade>
  664. </component>
  665. <component name="HBASE_CLIENT">
  666. <upgrade>
  667. <task xsi:type="restart-task" />
  668. </upgrade>
  669. </component>
  670. <component name="PHOENIX_QUERY_SERVER">
  671. <upgrade>
  672. <task xsi:type="restart-task"/>
  673. </upgrade>
  674. </component>
  675. </service>
  676. <service name="TEZ">
  677. <component name="TEZ_CLIENT">
  678. <upgrade>
  679. <task xsi:type="restart-task" />
  680. </upgrade>
  681. </component>
  682. </service>
  683. <service name="PIG">
  684. <component name="PIG">
  685. <upgrade>
  686. <task xsi:type="restart-task" />
  687. </upgrade>
  688. </component>
  689. </service>
  690. <service name="MAHOUT">
  691. <component name="MAHOUT">
  692. <upgrade>
  693. <task xsi:type="restart-task" />
  694. </upgrade>
  695. </component>
  696. </service>
  697. <service name="SQOOP">
  698. <component name="SQOOP">
  699. <pre-upgrade>
  700. <!-- Remove Atlas configs that were incorrectly added to sqoop-site instead of Atlas' application.properties. -->
  701. <task xsi:type="configure" id="hdp_2_5_0_0_remove_sqoop_atlas_configs" />
  702. <!-- If cluster is Kerberized, add configs to sqoop-atlas-application.properties,
  703. which will be written to the local file system if Atlas is present. -->
  704. <task xsi:type="configure" id="hdp_2_5_0_0_add_sqoop_atlas_security_configs" />
  705. </pre-upgrade>
  706. <pre-downgrade/> <!-- no-op to prevent config changes on downgrade -->
  707. <upgrade>
  708. <task xsi:type="restart-task" />
  709. </upgrade>
  710. </component>
  711. </service>
  712. <service name="HIVE">
  713. <component name="HIVE_METASTORE">
  714. <upgrade>
  715. <task xsi:type="restart-task" />
  716. </upgrade>
  717. </component>
  718. <component name="HIVE_SERVER">
  719. <pre-upgrade>
  720. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_hive_audit_db" />
  721. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.HiveEnvClasspathAction">
  722. <summary>Update hive-env content</summary>
  723. </task>
  724. </pre-upgrade>
  725. <pre-downgrade/>
  726. <upgrade>
  727. <task xsi:type="restart-task" />
  728. </upgrade>
  729. </component>
  730. <component name="WEBHCAT_SERVER">
  731. <upgrade>
  732. <task xsi:type="restart-task" />
  733. </upgrade>
  734. </component>
  735. <component name="HIVE_CLIENT">
  736. <upgrade>
  737. <task xsi:type="restart-task" />
  738. </upgrade>
  739. </component>
  740. <component name="HCAT">
  741. <upgrade>
  742. <task xsi:type="restart-task" />
  743. </upgrade>
  744. </component>
  745. </service>
  746. <service name="SLIDER">
  747. <component name="SLIDER">
  748. <upgrade>
  749. <task xsi:type="restart-task" />
  750. </upgrade>
  751. </component>
  752. </service>
  753. <service name="SPARK">
  754. <component name="SPARK_JOBHISTORYSERVER">
  755. <pre-upgrade>
  756. <task xsi:type="configure" id="hdp_2_5_0_0_spark_jobhistoryserver"/>
  757. </pre-upgrade>
  758. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  759. <upgrade>
  760. <task xsi:type="restart-task" />
  761. </upgrade>
  762. </component>
  763. <component name="SPARK_THRIFTSERVER">
  764. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  765. <upgrade>
  766. <task xsi:type="restart-task"/>
  767. </upgrade>
  768. </component>
  769. <component name="SPARK_CLIENT">
  770. <pre-upgrade>
  771. <task xsi:type="configure" id="hdp_2_5_0_0_spark_client"/>
  772. </pre-upgrade>
  773. <upgrade>
  774. <task xsi:type="restart-task" />
  775. </upgrade>
  776. </component>
  777. </service>
  778. <service name="OOZIE">
  779. <component name="OOZIE_SERVER">
  780. <pre-upgrade>
  781. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.OozieConfigCalculation">
  782. <summary>Adjusting Oozie properties</summary>
  783. </task>
  784. <task xsi:type="execute" hosts="all" sequential="true">
  785. <summary>Shut down all Oozie servers</summary>
  786. <script>scripts/oozie_server.py</script>
  787. <function>stop</function>
  788. </task>
  789. <!-- It is extremely important that both of these tasks run on the exact same host. Hence, pick the first alphabetically. -->
  790. <task xsi:type="configure_function" hosts="first" />
  791. <task xsi:type="execute" hosts="first" sequential="true">
  792. <summary>Upgrading the Oozie database and creating a new sharelib</summary>
  793. <script>scripts/oozie_server_upgrade.py</script>
  794. <function>upgrade_oozie_database_and_sharelib</function>
  795. </task>
  796. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.FixOozieAdminUsers">
  797. <summary>Fixing Oozie admin users</summary>
  798. </task>
  799. </pre-upgrade>
  800. <pre-downgrade>
  801. <task xsi:type="execute" hosts="all" sequential="true">
  802. <summary>Shut down all Oozie servers</summary>
  803. <script>scripts/oozie_server.py</script>
  804. <function>stop</function>
  805. </task>
  806. <task xsi:type="execute" hosts="any" sequential="true">
  807. <summary>Create a new sharelib</summary>
  808. <script>scripts/oozie_server_upgrade.py</script>
  809. <function>create_sharelib</function>
  810. </task>
  811. </pre-downgrade>
  812. <upgrade>
  813. <task xsi:type="restart-task" />
  814. </upgrade>
  815. </component>
  816. <component name="OOZIE_CLIENT">
  817. <upgrade>
  818. <task xsi:type="restart-task" />
  819. </upgrade>
  820. </component>
  821. </service>
  822. <service name="FALCON">
  823. <component name="FALCON_SERVER">
  824. <pre-upgrade>
  825. <task xsi:type="configure" id="hdp_2_5_0_0_falcon_server_adjust_services_property"/>
  826. </pre-upgrade>
  827. <upgrade>
  828. <task xsi:type="restart-task" />
  829. </upgrade>
  830. </component>
  831. <component name="FALCON_CLIENT">
  832. <upgrade>
  833. <task xsi:type="restart-task" />
  834. </upgrade>
  835. </component>
  836. </service>
  837. <service name="KNOX">
  838. <component name="KNOX_GATEWAY">
  839. <pre-upgrade>
  840. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_knox_audit_db" />
  841. </pre-upgrade>
  842. <pre-downgrade /> <!-- no-op to prevent config changes on downgrade -->
  843. <upgrade>
  844. <task xsi:type="restart-task" />
  845. </upgrade>
  846. </component>
  847. </service>
  848. <service name="STORM">
  849. <component name="NIMBUS">
  850. <pre-upgrade>
  851. <task xsi:type="configure" id="hdp_2_5_0_0_remove_ranger_storm_audit_db" />
  852. <task xsi:type="configure" id="hdp_2_5_0_0_upgrade_storm_1.0"/>
  853. <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.StormUpgradeKerberosDescriptorConfig">
  854. <summary>Upgrade Storm Security Configs to 1.0</summary>
  855. </task>
  856. <!-- Remove Atlas configs that were incorrectly added to storm-site instead of Atlas' application.properties. -->
  857. <task xsi:type="configure" id="hdp_2_5_0_0_remove_storm_atlas_configs" />
  858. <task xsi:type="execute" hosts="any">
  859. <summary>Removing Storm data from ZooKeeper</summary>
  860. <script>scripts/storm_upgrade.py</script>
  861. <function>delete_storm_zookeeper_data</function>
  862. </task>
  863. <task xsi:type="execute">
  864. <summary>Removing local Storm data</summary>
  865. <script>scripts/storm_upgrade.py</script>
  866. <function>delete_storm_local_data</function>
  867. </task>
  868. <task xsi:type="configure" id="hdp_2_5_0_0_add_storm_security_configs" />
  869. <task xsi:type="configure" id="hdp_2_4_0_0_remove_empty_storm_topology_submission_notifier_plugin_class"/>
  870. <task xsi:type="configure" id="increase_storm_zookeeper_timeouts"/>
  871. </pre-upgrade>
  872. <pre-downgrade>
  873. <task xsi:type="execute" hosts="any">
  874. <summary>Removing Storm data from ZooKeeper</summary>
  875. <script>scripts/storm_upgrade.py</script>
  876. <function>delete_storm_zookeeper_data</function>
  877. </task>
  878. <task xsi:type="execute">
  879. <summary>Removing local Storm data</summary>
  880. <script>scripts/storm_upgrade.py</script>
  881. <function>delete_storm_local_data</function>
  882. </task>
  883. </pre-downgrade>
  884. <upgrade>
  885. <task xsi:type="restart-task" />
  886. </upgrade>
  887. </component>
  888. <component name="SUPERVISOR">
  889. <pre-upgrade>
  890. <task xsi:type="execute">
  891. <summary>Removing local Storm data</summary>
  892. <script>scripts/storm_upgrade.py</script>
  893. <function>delete_storm_local_data</function>
  894. </task>
  895. </pre-upgrade>
  896. <pre-downgrade>
  897. <task xsi:type="execute">
  898. <summary>Removing local Storm data</summary>
  899. <script>scripts/storm_upgrade.py</script>
  900. <function>delete_storm_local_data</function>
  901. </task>
  902. </pre-downgrade>
  903. <upgrade>
  904. <task xsi:type="restart-task" />
  905. </upgrade>
  906. </component>
  907. <component name="STORM_UI_SERVER">
  908. <pre-upgrade>
  909. <task xsi:type="execute">
  910. <summary>Removing local Storm data</summary>
  911. <script>scripts/storm_upgrade.py</script>
  912. <function>delete_storm_local_data</function>
  913. </task>
  914. </pre-upgrade>
  915. <upgrade>
  916. <task xsi:type="restart-task" />
  917. </upgrade>
  918. </component>
  919. <component name="DRPC_SERVER">
  920. <pre-upgrade>
  921. <task xsi:type="execute">
  922. <summary>Removing local Storm data</summary>
  923. <script>scripts/storm_upgrade.py</script>
  924. <function>delete_storm_local_data</function>
  925. </task>
  926. </pre-upgrade>
  927. <upgrade>
  928. <task xsi:type="restart-task" />
  929. </upgrade>
  930. <post-upgrade>
  931. <task xsi:type="manual">
  932. <message>Please rebuild your topology using the new Storm version dependencies and resubmit it using the newly created jar.</message>
  933. </task>
  934. </post-upgrade>
  935. </component>
  936. </service>
  937. <service name="FLUME">
  938. <component name="FLUME_HANDLER">
  939. <upgrade>
  940. <task xsi:type="restart-task" />
  941. </upgrade>
  942. </component>
  943. </service>
  944. <service name="ACCUMULO">
  945. <component name="ACCUMULO_MASTER">
  946. <upgrade>
  947. <task xsi:type="restart-task" />
  948. </upgrade>
  949. </component>
  950. <component name="ACCUMULO_MONITOR">
  951. <upgrade>
  952. <task xsi:type="restart-task" />
  953. </upgrade>
  954. </component>
  955. <component name="ACCUMULO_GC">
  956. <upgrade>
  957. <task xsi:type="restart-task" />
  958. </upgrade>
  959. </component>
  960. <component name="ACCUMULO_TRACER">
  961. <upgrade>
  962. <task xsi:type="restart-task" />
  963. </upgrade>
  964. </component>
  965. <component name="ACCUMULO_TSERVER">
  966. <upgrade>
  967. <task xsi:type="restart-task" />
  968. </upgrade>
  969. </component>
  970. <component name="ACCUMULO_CLIENT">
  971. <upgrade>
  972. <task xsi:type="restart-task" />
  973. </upgrade>
  974. </component>
  975. </service>
  976. </processing>
  977. </upgrade>