Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.6.0
Description
Disabling Kerberos after enabled during Blueprint install fails with missing data directory error:
The data directory has not been set. Generated data can not be stored.
This is caused by an invalid security state set for the installed components since the appropriate state is not set while enabling Kerberos during the installation process:
ambari=> select * from hostcomponentstate; id | cluster_id | component_name | version | current_state | host_id | service_name | upgrade_state | security_state ----+------------+------------------+--------------+---------------+---------+--------------+---------------+---------------- 1 | 2 | KERBEROS_CLIENT | UNKNOWN | INSTALLED | 1 | KERBEROS | NONE | UNSECURED 2 | 2 | ZOOKEEPER_CLIENT | 2.5.0.0-1245 | INSTALLED | 1 | ZOOKEEPER | NONE | UNSECURED 3 | 2 | ZOOKEEPER_SERVER | 2.5.0.0-1245 | STARTED | 1 | ZOOKEEPER | NONE | UNSECURED
The expected state for each component is SECURED, not UNSECURED. Because of this, Ambari thinks there is no work to be done, causing this issue.
Steps to reproduce:
- Setup Ambari, ensure KDC is installed on some host and Kerberos client libs are installed on the Ambari server host with the krb5.conf setup properly
- Install Blueprint - blueprint_single_node_zk.json
- Create clister - cluster_template_single_node_zk.json
- When cluster is created, Kerberos should be enabled and all services up
- Disable Kerberos - error occurs during Unkerberize Cluster task.
Attachments
Attachments
Issue Links
- links to