-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61707/
-----------------------------------------------------------

Review request for Ambari, Attila Magyar, Balázs Bence Sári, Eugene Chekanskiy, 
Jonathan Hurley, Laszlo Puskas, Nate Cole, and Sebastian Toader.


Bugs: AMBARI-21602
    https://issues.apache.org/jira/browse/AMBARI-21602


Repository: ambari


Description
-------

Pre-configure (certain) services when Kerberos is enabled to reduce number of 
core service restarts when services are added.  

While processing the Kerberos descriptor, include services marked to be 
_pre-configured_.  When a tagged service is encountered, process it weather it 
is installed or not. However if it is not installed, only apply configuration 
changes for existing configuration types.  This will set at least the core-site 
changes related to proxyuser and auth-to-local rules properties. By doing this, 
if a tagged service is later installed, the settings will already be in place 
in the existing service configs and thus the existing services will not need to 
be restarted. 

Caveats:
- Default values for the uninstalled, tagged, services will be assumed 
- The stack advisor will be used to suggest locations of components - used to 
build the clusterHostInfo structure that may be used to derive property values. 

Note: This processing is to occur when Kerberos is enabled.


Diffs
-----

  
ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java
 eb97ee376d 
  
ambari-server/src/main/java/org/apache/ambari/server/api/services/stackadvisor/StackAdvisorRequest.java
 7ba1b1887d 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/DeleteIdentityHandler.java
 3329e76226 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelper.java
 3819863763 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelperImpl.java
 6c6c43911b 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java
 91a84ea643 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterKerberosDescriptorResourceProvider.java
 59bd96a8f5 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackVersionResourceProvider.java
 64ead405eb 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/RemovableIdentities.java
 d4bb501231 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/UsedIdentities.java
 46f5642eb1 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/AbstractPrepareKerberosServerAction.java
 dd2b2237e5 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/KerberosServerAction.java
 2e331bb77f 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/PreconfigureServiceType.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/PrepareDisableKerberosServerAction.java
 60523cdd75 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/PrepareEnableKerberosServerAction.java
 ca15695564 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/kerberos/PrepareKerberosIdentitiesServerAction.java
 f239cffd93 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/UpgradeUserKerberosDescriptor.java
 78aaa77a48 
  
ambari-server/src/main/java/org/apache/ambari/server/stack/StackDirectory.java 
23fd0a95f5 
  ambari-server/src/main/java/org/apache/ambari/server/stack/StackModule.java 
ff1d37808d 
  ambari-server/src/main/java/org/apache/ambari/server/state/StackInfo.java 
149579f57d 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/AbstractKerberosDescriptor.java
 7f53daa357 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosDescriptor.java
 eba1b3aecc 
  
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosServiceDescriptor.java
 771a23cd3f 
  
ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java
 1f10d7e122 
  
ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml
 e07e28e062 
  ambari-server/src/main/resources/stacks/HDP/2.6/kerberos_preconfigure.json 
PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRendererTest.java
 6be9f328af 
  
ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
 5afe87ebb0 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java
 b22099973c 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessorTest.java
 e512b66ab0 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterKerberosDescriptorResourceProviderTest.java
 f6fc59d511 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/utilities/KerberosIdentityCleanerTest.java
 027f339eb6 
  
ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeUserKerberosDescriptorTest.java
 86f6d3b778 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorUpdateHelperTest.java
 37cfad9c57 
  
ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosServiceDescriptorTest.java
 064e1cc328 
  ambari-server/src/test/resources/stacks/HDP/2.0.8/kerberos_preconfigure.json 
PRE-CREATION 


Diff: https://reviews.apache.org/r/61707/diff/1/


Testing
-------

Manually tested in cluster

# Local test results:
```
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 40:13 min
[INFO] Finished at: 2017-08-16T15:38:34-04:00
[INFO] Final Memory: 106M/1721M
[INFO] ------------------------------------------------------------------------
```

# Jenkins test results: PENDING


Thanks,

Robert Levas

Reply via email to