Aleksandr Kovalenko created AMBARI-12309:
--------------------------------------------
Summary: Kerberos: After partitially enabling manual kerb, start
all fails
Key: AMBARI-12309
URL: https://issues.apache.org/jira/browse/AMBARI-12309
Project: Ambari
Issue Type: Bug
Components: ambari-web
Affects Versions: 2.1.0
Reporter: Aleksandr Kovalenko
Assignee: Aleksandr Kovalenko
Priority: Critical
Fix For: 2.1.0
Since the manual kerb option requires users to run the wizard, get the csv, and
potentially (likely) exit and return once their kerb infra is ready, this is a
situation users will run into...
1) start kerb wizard, choose manual option
2) get to page with csv, download, exit wizard
3) even though kerb is not enabled, kerberos service has now been added to the
cluster but with 0 clients install (see attached screen shot).
4) if i attempt to do bulk start commands (for example), things fail
silently...for example: i went "Start All" from the Actions menu and nothing
happened. went to firebug and see the API command had failed with a 500.
{code}
PUT
http://c6404.ambari.apache.org:8080/api/v1/clusters/MyCluster/services?
{"RequestInfo":{"context":"_PARSE_.START.ALL_SERVICES","operation_level":{"level":"CLUSTER","cluster_name"
:"MyCluster"}},"Body":{"ServiceInfo":{"state":"STARTED"}}}
{code}
The response:
{code}
{
"status" : 500,
"message" : "org.apache.ambari.server.controller.spi.SystemException: An
internal system exception
occurred: Invalid transition for service, clusterName=MyCluster, clusterId=2,
serviceName=KERBEROS,
currentDesiredState=INIT, newDesiredState=STARTED"
}
{code}
*Cause*
When transitioning from the _Configure Kerberos_ page to the _Configure
Identities_ (Skipping the _Install and Test Kerberos Client_ page), the
KERBEROS service is added to the cluster and the KERBEROS_CLIENT component is
added to each host. The service and components are the INIT state at this
point. After proceeding to the _Confirm Configuration_ page and then exiting,
the KERBEROS service is not cleaned up, leaving it and it's components in the
INIT state.
*Side-effect*
The user sees that the Kerberos service in the list of installed services even
though the Kerberization process was not completed
{code:title=GET /api/v1/clusters/40438/services/KERBEROS}
{
"href" : "http://104.196.82.205:8080/api/v1/clusters/40438/services/KERBEROS",
"ServiceInfo" : {
"cluster_name" : "40438",
"maintenance_state" : "OFF",
"service_name" : "KERBEROS",
"state" : "INIT"
},
"Services" : {
"attributes" : {
"kdc_validation_failure_details" : "",
"kdc_validation_result" : "OK"
}
},
"alerts_summary" : {
"CRITICAL" : 0,
"MAINTENANCE" : 0,
"OK" : 0,
"UNKNOWN" : 0,
"WARNING" : 0
},
"alerts" : [ ],
"components" : [
{
"href" :
"http://104.196.82.205:8080/api/v1/clusters/40438/services/KERBEROS/components/KERBEROS_CLIENT",
"ServiceComponentInfo" : {
"cluster_name" : "40438",
"component_name" : "KERBEROS_CLIENT",
"service_name" : "KERBEROS"
}
}
],
"artifacts" : [ ]
}
{code}
{code:title=GET
/api/v1/clusters/40438/services/KERBEROS/components/KERBEROS_CLIENT}
{
"href" :
"http://104.196.82.205:8080/api/v1/clusters/40438/services/KERBEROS/components/KERBEROS_CLIENT",
"ServiceComponentInfo" : {
"category" : "CLIENT",
"cluster_name" : "40438",
"component_name" : "KERBEROS_CLIENT",
"installed_count" : 0,
"service_name" : "KERBEROS",
"started_count" : 0,
"state" : "INIT",
"total_count" : 2
},
"host_components" : [
{
"href" :
"http://104.196.82.205:8080/api/v1/clusters/40438/hosts/levas-40438-1.c.pramod-thangali.internal/host_components/KERBEROS_CLIENT",
"HostRoles" : {
"cluster_name" : "40438",
"component_name" : "KERBEROS_CLIENT",
"host_name" : "levas-40438-1.c.pramod-thangali.internal"
}
},
{
"href" :
"http://104.196.82.205:8080/api/v1/clusters/40438/hosts/levas-40438-2.c.pramod-thangali.internal/host_components/KERBEROS_CLIENT",
"HostRoles" : {
"cluster_name" : "40438",
"component_name" : "KERBEROS_CLIENT",
"host_name" : "levas-40438-2.c.pramod-thangali.internal"
}
}
]
}
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)