----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/61875/ -----------------------------------------------------------
(Updated Aug. 24, 2017, 8:57 a.m.) Review request for Ambari, Attila Magyar, Balázs Bence Sári, Di Li, Eugene Chekanskiy, Laszlo Puskas, Sebastian Toader, and Sid Wagle. Bugs: AMBARI-21798 https://issues.apache.org/jira/browse/AMBARI-21798 Repository: ambari Description (updated) ------- This is specifically for the IOP *4.2.0 *to HDP migration Start with an IOP 4.2.0 cluster with both Oozie and Knox installed, enable Kerberos then run thru the migration. Once EU is finalized, regen Kerberos keytabs via Ambari web UI and check the checkbox to make Ambari restart all services as part of the regen process. Notice Oozie crashes after a successful restart with following error in the oozie.log file {noformat} 2017-08-23 12:39:48,480 FATAL Services:514 - SERVER[umiak2.fyre.ibm.com] E0550: Could not normalize host name [${host}], Could not resolve host [${host}], ${host}: Name or service not known org.apache.oozie.service.ServiceException: E0550: Could not normalize host name [${host}], Could not resolve host [${host}], ${host}: Name or service not known {noformat} This is because Knox kerberos.json in IOP 4.2.0 has oozie proxy setting as {{"oozie.service.ProxyUserService.proxyuser.knox.hosts": "${hosts}",}} In HDP 2.6.2, the same property is now {{"oozie.service.ProxyUserService.proxyuser.${knox-env/knox_user}.hosts": "${clusterHostInfo/knox_gateway_hosts}"}}, where the ${hosts} placeholder is changed and Knox params.py no longer has the logic to calculate it . *A manual fix* is to change Kerboers config for Knox - update {{"oozie.service.ProxyUserService.proxyuser.knox.hosts"}} to have value {{"${clusterHostInfo/knox_gateway_hosts}"}} ( done via UI, this will kick off regen keytabs and restart services) # Solution Find and remove configuration specifications for the following configurations in KNOX/KNOX_GATEWAY since they are invalid due to static "knox" embedded in the property name and the values like ${host}: - oozie-site/oozie.service.ProxyUserService.proxyuser.knox.groups - oozie-site/oozie.service.ProxyUserService.proxyuser.knox.hosts - webhcat-site/webhcat.proxyuser.knox.groups - webhcat-site/webhcat.proxyuser.knox.hosts - core-site/hadoop.proxyuser.knox.groups - core-site/hadoop.proxyuser.knox.hosts - falcon-runtime.properties/*.falcon.service.ProxyUserService.proxyuser.knox.groups - falcon-runtime.properties/*.falcon.service.ProxyUserService.proxyuser.knox.hosts Diffs ----- ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog252.java b83ba643ec ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog252Test.java d7df68c122 Diff: https://reviews.apache.org/r/61875/diff/1/ Testing ------- manually tested # Local test results: ``` [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 30:46 min [INFO] Finished at: 2017-08-23T22:21:53-04:00 [INFO] Final Memory: 85M/1773M [INFO] ------------------------------------------------------------------------ ``` # Jenkins test results: PENDING Thanks, Robert Levas