You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by Robert Levas <rl...@hortonworks.com> on 2015/01/25 20:42:11 UTC

Review Request 30258: Use cluster property rather than cluster-env/security_enabled to enable or disable Kerberos

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

Review request for Ambari, Emil Anca, John Speidel, Robert Nettleton, and Tom Beerbower.


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


Repository: ambari


Description
-------

Use a cluster property rather than `cluster-env/security_enabled` to enable or disable Kerberos.  Since `cluster-env/security_enabled` is used by services to determine if Kerberos is enabled or not, it should not be set before completing the process of enabling or disabling Kerberos.  To declare whether the cluster enable or disable Kerberos, a property on the cluster should be set.  The property should be called `security_type` and must have one of the following values:
* NONE
* KERBEROS 

By using `cluster-env/security_enabled`, the configuration property gets set to "true" before Kerberos is filly enabled.   This is causing issues with stopping services so that the updated Kerberos-related configurations can be set.

Example API call to enable Kerberos
```
PUT /api/v1/clusters/c1
{
  "Clusters" : {
    "security_type" : "KERBEROS"
  }
}
```

Example API call to disable Kerberos
```
PUT /api/v1/clusters/c1
{
  "Clusters" : {
    "security_type" : "NONE"
  }
}
```


Diffs
-----

  ambari-server/docs/api/v1/clusters-cluster.md 0c84c43 
  ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java 106c1dd 
  ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java 8d2cce1 
  ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java 2c233e6 
  ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelper.java 6620577 
  ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java c54a8c4 
  ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java e11accb 
  ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ClusterEntity.java 889a775 
  ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java b344a05 
  ambari-server/src/main/java/org/apache/ambari/server/state/SecurityType.java PRE-CREATION 
  ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java 220a5af 
  ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java 16273e0 
  ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog200.java 783f7a2 
  ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 21ba270 
  ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql cab6dfa 
  ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 81f6c50 
  ambari-server/src/main/resources/Ambari-DDL-Postgres-EMBEDDED-CREATE.sql fe1eef7 
  ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 1359fc1 
  ambari-server/src/main/resources/properties.json 45c7e06 
  ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java 6f2699b 
  ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b5bc4d0 
  ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java f6c34f2 
  ambari-server/src/test/java/org/apache/ambari/server/controller/BackgroundCustomCommandExecutionTest.java a0e358a 
  ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterRequestTest.java 3e2fbba 
  ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterResponseTest.java 050b80a 
  ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java c6c9574 
  ambari-server/src/test/java/org/apache/ambari/server/controller/RefreshYarnCapacitySchedulerReleaseConfigTest.java 02e5277 
  ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java 2187145 
  ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java d54a7d6 
  ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog200Test.java e7e1358 

Diff: https://reviews.apache.org/r/30258/diff/


Testing
-------

Manually tested in test cluster
Updated unit tests

#Jenkins test results

Running org.apache.ambari.server.controller.KerberosHelperTest
Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.768 sec

Running org.apache.ambari.server.controller.AmbariManagementControllerImplTest
Tests run: 28, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.73 sec

Ambari server test results
Tests run: 2598, Failures: 0, Errors: 0, Skipped: 15

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 59:58 min
[INFO] Finished at: 2015-01-25T19:31:28+00:00
[INFO] Final Memory: 44M/542M
[INFO] ------------------------------------------------------------------------


Thanks,

Robert Levas


Re: Review Request 30258: Use cluster property rather than cluster-env/security_enabled to enable or disable Kerberos

Posted by Robert Levas <rl...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/30258/
-----------------------------------------------------------

(Updated Jan. 26, 2015, 5:48 p.m.)


Review request for Ambari, Emil Anca, John Speidel, Robert Nettleton, and Tom Beerbower.


Changes
-------

addressed reviewer concerns


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


Repository: ambari


Description
-------

Use a cluster property rather than `cluster-env/security_enabled` to enable or disable Kerberos.  Since `cluster-env/security_enabled` is used by services to determine if Kerberos is enabled or not, it should not be set before completing the process of enabling or disabling Kerberos.  To declare whether the cluster enable or disable Kerberos, a property on the cluster should be set.  The property should be called `security_type` and must have one of the following values:
* NONE
* KERBEROS 

By using `cluster-env/security_enabled`, the configuration property gets set to "true" before Kerberos is filly enabled.   This is causing issues with stopping services so that the updated Kerberos-related configurations can be set.

Example API call to enable Kerberos
```
PUT /api/v1/clusters/c1
{
  "Clusters" : {
    "security_type" : "KERBEROS"
  }
}
```

Example API call to disable Kerberos
```
PUT /api/v1/clusters/c1
{
  "Clusters" : {
    "security_type" : "NONE"
  }
}
```


Diffs (updated)
-----

  ambari-server/docs/api/v1/clusters-cluster.md 0c84c43 
  ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java e7d03e3 
  ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java 8d2cce1 
  ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java 2c233e6 
  ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelper.java 6620577 
  ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java c54a8c4 
  ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java e11accb 
  ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ClusterEntity.java 889a775 
  ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java b344a05 
  ambari-server/src/main/java/org/apache/ambari/server/state/SecurityType.java PRE-CREATION 
  ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java 220a5af 
  ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java 16273e0 
  ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog200.java 85a43e3 
  ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 21ba270 
  ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql cab6dfa 
  ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 81f6c50 
  ambari-server/src/main/resources/Ambari-DDL-Postgres-EMBEDDED-CREATE.sql fe1eef7 
  ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 1359fc1 
  ambari-server/src/main/resources/properties.json 45c7e06 
  ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java 6f2699b 
  ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b5bc4d0 
  ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java 1d26d82 
  ambari-server/src/test/java/org/apache/ambari/server/controller/BackgroundCustomCommandExecutionTest.java a0e358a 
  ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterRequestTest.java 3e2fbba 
  ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterResponseTest.java 050b80a 
  ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java c6c9574 
  ambari-server/src/test/java/org/apache/ambari/server/controller/RefreshYarnCapacitySchedulerReleaseConfigTest.java 02e5277 
  ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java 2187145 
  ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java d54a7d6 
  ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog200Test.java 44fd94b 

Diff: https://reviews.apache.org/r/30258/diff/


Testing
-------

Manually tested in test cluster
Updated unit tests

#Jenkins test results

Running org.apache.ambari.server.controller.KerberosHelperTest
Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.768 sec

Running org.apache.ambari.server.controller.AmbariManagementControllerImplTest
Tests run: 28, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.73 sec

Ambari server test results
Tests run: 2598, Failures: 0, Errors: 0, Skipped: 15

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 59:58 min
[INFO] Finished at: 2015-01-25T19:31:28+00:00
[INFO] Final Memory: 44M/542M
[INFO] ------------------------------------------------------------------------


Thanks,

Robert Levas


Re: Review Request 30258: Use cluster property rather than cluster-env/security_enabled to enable or disable Kerberos

Posted by Tom Beerbower <tb...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/30258/#review69629
-----------------------------------------------------------

Ship it!


Ship It!

- Tom Beerbower


On Jan. 25, 2015, 7:42 p.m., Robert Levas wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/30258/
> -----------------------------------------------------------
> 
> (Updated Jan. 25, 2015, 7:42 p.m.)
> 
> 
> Review request for Ambari, Emil Anca, John Speidel, Robert Nettleton, and Tom Beerbower.
> 
> 
> Bugs: AMBARI-8976
>     https://issues.apache.org/jira/browse/AMBARI-8976
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Use a cluster property rather than `cluster-env/security_enabled` to enable or disable Kerberos.  Since `cluster-env/security_enabled` is used by services to determine if Kerberos is enabled or not, it should not be set before completing the process of enabling or disabling Kerberos.  To declare whether the cluster enable or disable Kerberos, a property on the cluster should be set.  The property should be called `security_type` and must have one of the following values:
> * NONE
> * KERBEROS 
> 
> By using `cluster-env/security_enabled`, the configuration property gets set to "true" before Kerberos is filly enabled.   This is causing issues with stopping services so that the updated Kerberos-related configurations can be set.
> 
> Example API call to enable Kerberos
> ```
> PUT /api/v1/clusters/c1
> {
>   "Clusters" : {
>     "security_type" : "KERBEROS"
>   }
> }
> ```
> 
> Example API call to disable Kerberos
> ```
> PUT /api/v1/clusters/c1
> {
>   "Clusters" : {
>     "security_type" : "NONE"
>   }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   ambari-server/docs/api/v1/clusters-cluster.md 0c84c43 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java 106c1dd 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java 8d2cce1 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java 2c233e6 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelper.java 6620577 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java c54a8c4 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java e11accb 
>   ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ClusterEntity.java 889a775 
>   ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java b344a05 
>   ambari-server/src/main/java/org/apache/ambari/server/state/SecurityType.java PRE-CREATION 
>   ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java 220a5af 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java 16273e0 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog200.java 783f7a2 
>   ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 21ba270 
>   ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql cab6dfa 
>   ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 81f6c50 
>   ambari-server/src/main/resources/Ambari-DDL-Postgres-EMBEDDED-CREATE.sql fe1eef7 
>   ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 1359fc1 
>   ambari-server/src/main/resources/properties.json 45c7e06 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java 6f2699b 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b5bc4d0 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java f6c34f2 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/BackgroundCustomCommandExecutionTest.java a0e358a 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterRequestTest.java 3e2fbba 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterResponseTest.java 050b80a 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java c6c9574 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/RefreshYarnCapacitySchedulerReleaseConfigTest.java 02e5277 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java 2187145 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java d54a7d6 
>   ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog200Test.java e7e1358 
> 
> Diff: https://reviews.apache.org/r/30258/diff/
> 
> 
> Testing
> -------
> 
> Manually tested in test cluster
> Updated unit tests
> 
> #Jenkins test results
> 
> Running org.apache.ambari.server.controller.KerberosHelperTest
> Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.768 sec
> 
> Running org.apache.ambari.server.controller.AmbariManagementControllerImplTest
> Tests run: 28, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.73 sec
> 
> Ambari server test results
> Tests run: 2598, Failures: 0, Errors: 0, Skipped: 15
> 
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time: 59:58 min
> [INFO] Finished at: 2015-01-25T19:31:28+00:00
> [INFO] Final Memory: 44M/542M
> [INFO] ------------------------------------------------------------------------
> 
> 
> Thanks,
> 
> Robert Levas
> 
>


Re: Review Request 30258: Use cluster property rather than cluster-env/security_enabled to enable or disable Kerberos

Posted by Tom Beerbower <tb...@hortonworks.com>.

> On Jan. 26, 2015, 5:02 p.m., John Speidel wrote:
> > ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java, line 45
> > <https://reviews.apache.org/r/30258/diff/1/?file=833585#file833585line45>
> >
> >     SecurityType enum?

+1


- Tom


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


On Jan. 25, 2015, 7:42 p.m., Robert Levas wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/30258/
> -----------------------------------------------------------
> 
> (Updated Jan. 25, 2015, 7:42 p.m.)
> 
> 
> Review request for Ambari, Emil Anca, John Speidel, Robert Nettleton, and Tom Beerbower.
> 
> 
> Bugs: AMBARI-8976
>     https://issues.apache.org/jira/browse/AMBARI-8976
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Use a cluster property rather than `cluster-env/security_enabled` to enable or disable Kerberos.  Since `cluster-env/security_enabled` is used by services to determine if Kerberos is enabled or not, it should not be set before completing the process of enabling or disabling Kerberos.  To declare whether the cluster enable or disable Kerberos, a property on the cluster should be set.  The property should be called `security_type` and must have one of the following values:
> * NONE
> * KERBEROS 
> 
> By using `cluster-env/security_enabled`, the configuration property gets set to "true" before Kerberos is filly enabled.   This is causing issues with stopping services so that the updated Kerberos-related configurations can be set.
> 
> Example API call to enable Kerberos
> ```
> PUT /api/v1/clusters/c1
> {
>   "Clusters" : {
>     "security_type" : "KERBEROS"
>   }
> }
> ```
> 
> Example API call to disable Kerberos
> ```
> PUT /api/v1/clusters/c1
> {
>   "Clusters" : {
>     "security_type" : "NONE"
>   }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   ambari-server/docs/api/v1/clusters-cluster.md 0c84c43 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java 106c1dd 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java 8d2cce1 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java 2c233e6 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelper.java 6620577 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java c54a8c4 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java e11accb 
>   ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ClusterEntity.java 889a775 
>   ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java b344a05 
>   ambari-server/src/main/java/org/apache/ambari/server/state/SecurityType.java PRE-CREATION 
>   ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java 220a5af 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java 16273e0 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog200.java 783f7a2 
>   ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 21ba270 
>   ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql cab6dfa 
>   ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 81f6c50 
>   ambari-server/src/main/resources/Ambari-DDL-Postgres-EMBEDDED-CREATE.sql fe1eef7 
>   ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 1359fc1 
>   ambari-server/src/main/resources/properties.json 45c7e06 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java 6f2699b 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b5bc4d0 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java f6c34f2 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/BackgroundCustomCommandExecutionTest.java a0e358a 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterRequestTest.java 3e2fbba 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterResponseTest.java 050b80a 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java c6c9574 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/RefreshYarnCapacitySchedulerReleaseConfigTest.java 02e5277 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java 2187145 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java d54a7d6 
>   ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog200Test.java e7e1358 
> 
> Diff: https://reviews.apache.org/r/30258/diff/
> 
> 
> Testing
> -------
> 
> Manually tested in test cluster
> Updated unit tests
> 
> #Jenkins test results
> 
> Running org.apache.ambari.server.controller.KerberosHelperTest
> Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.768 sec
> 
> Running org.apache.ambari.server.controller.AmbariManagementControllerImplTest
> Tests run: 28, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.73 sec
> 
> Ambari server test results
> Tests run: 2598, Failures: 0, Errors: 0, Skipped: 15
> 
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time: 59:58 min
> [INFO] Finished at: 2015-01-25T19:31:28+00:00
> [INFO] Final Memory: 44M/542M
> [INFO] ------------------------------------------------------------------------
> 
> 
> Thanks,
> 
> Robert Levas
> 
>


Re: Review Request 30258: Use cluster property rather than cluster-env/security_enabled to enable or disable Kerberos

Posted by John Speidel <js...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/30258/#review69618
-----------------------------------------------------------

Ship it!


Looks good, supporting this cluster property is a huge improvement.


ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
<https://reviews.apache.org/r/30258/#comment114333>

    I believe that the ambari "coding standards" say not to use * imports but it doesn't bother me.



ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
<https://reviews.apache.org/r/30258/#comment114336>

    should throw an IllegalArgumentException, which will result in a 400 response, if the specified security type is not known



ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java
<https://reviews.apache.org/r/30258/#comment114337>

    SecurityType enum?



ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
<https://reviews.apache.org/r/30258/#comment114342>

    seems that there are no real changes in this class other than whitespace remove. Consider removing class from patch.



ambari-server/src/main/java/org/apache/ambari/server/state/SecurityType.java
<https://reviews.apache.org/r/30258/#comment114343>

    class documentation


- John Speidel


On Jan. 25, 2015, 7:42 p.m., Robert Levas wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/30258/
> -----------------------------------------------------------
> 
> (Updated Jan. 25, 2015, 7:42 p.m.)
> 
> 
> Review request for Ambari, Emil Anca, John Speidel, Robert Nettleton, and Tom Beerbower.
> 
> 
> Bugs: AMBARI-8976
>     https://issues.apache.org/jira/browse/AMBARI-8976
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Use a cluster property rather than `cluster-env/security_enabled` to enable or disable Kerberos.  Since `cluster-env/security_enabled` is used by services to determine if Kerberos is enabled or not, it should not be set before completing the process of enabling or disabling Kerberos.  To declare whether the cluster enable or disable Kerberos, a property on the cluster should be set.  The property should be called `security_type` and must have one of the following values:
> * NONE
> * KERBEROS 
> 
> By using `cluster-env/security_enabled`, the configuration property gets set to "true" before Kerberos is filly enabled.   This is causing issues with stopping services so that the updated Kerberos-related configurations can be set.
> 
> Example API call to enable Kerberos
> ```
> PUT /api/v1/clusters/c1
> {
>   "Clusters" : {
>     "security_type" : "KERBEROS"
>   }
> }
> ```
> 
> Example API call to disable Kerberos
> ```
> PUT /api/v1/clusters/c1
> {
>   "Clusters" : {
>     "security_type" : "NONE"
>   }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   ambari-server/docs/api/v1/clusters-cluster.md 0c84c43 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java 106c1dd 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java 8d2cce1 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java 2c233e6 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/KerberosHelper.java 6620577 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java c54a8c4 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java e11accb 
>   ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ClusterEntity.java 889a775 
>   ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java b344a05 
>   ambari-server/src/main/java/org/apache/ambari/server/state/SecurityType.java PRE-CREATION 
>   ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java 220a5af 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/AbstractUpgradeCatalog.java 16273e0 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog200.java 783f7a2 
>   ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 21ba270 
>   ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql cab6dfa 
>   ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 81f6c50 
>   ambari-server/src/main/resources/Ambari-DDL-Postgres-EMBEDDED-CREATE.sql fe1eef7 
>   ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 1359fc1 
>   ambari-server/src/main/resources/properties.json 45c7e06 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelperTest.java 6f2699b 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java b5bc4d0 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java f6c34f2 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/BackgroundCustomCommandExecutionTest.java a0e358a 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterRequestTest.java 3e2fbba 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/ClusterResponseTest.java 050b80a 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java c6c9574 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/RefreshYarnCapacitySchedulerReleaseConfigTest.java 02e5277 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractResourceProviderTest.java 2187145 
>   ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java d54a7d6 
>   ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog200Test.java e7e1358 
> 
> Diff: https://reviews.apache.org/r/30258/diff/
> 
> 
> Testing
> -------
> 
> Manually tested in test cluster
> Updated unit tests
> 
> #Jenkins test results
> 
> Running org.apache.ambari.server.controller.KerberosHelperTest
> Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.768 sec
> 
> Running org.apache.ambari.server.controller.AmbariManagementControllerImplTest
> Tests run: 28, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.73 sec
> 
> Ambari server test results
> Tests run: 2598, Failures: 0, Errors: 0, Skipped: 15
> 
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time: 59:58 min
> [INFO] Finished at: 2015-01-25T19:31:28+00:00
> [INFO] Final Memory: 44M/542M
> [INFO] ------------------------------------------------------------------------
> 
> 
> Thanks,
> 
> Robert Levas
> 
>