- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Created on 09-13-2017 08:17 PM
After Kerberos has been enabled, I was not able to open Hive View from Ambari.
I would get the following error message:
Issue detected
Service 'userhome' check failed: Usernames not matched: name=root != expected=ambari-server-<clusterName>
Service 'userhome' check failed: java.io.IOException: Usernames not matched: name=root != expected=ambari-server-<clusterName> at sun.reflect.GeneratedConstructorAccessor248.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
Root cause
Ambari server is running as root so it tries to authenticate with a proxy user as 'root' where as the ambari.service.keytab expects a principal as ambari-server-<clusterName>@REALM. Hence the mismatch.
Solution
1. Edit the view settings
Go to Edit View page on Ambari :
Manage Ambari > Views > Hive > Hive View
Or simply:
http://<ambariHost:port>/views/ADMIN_VIEW/<ambari.version>/INSTANCE/#/views/HIVE/versions/<view.vers...
Substitute the values of <ambariHost:port> , <ambari.version> , <view.version> as needed for example:
http://my.ambari.com:8080/views/ADMIN_VIEW/2.5.2.0/INSTANCE/#/views/HIVE/versions/1.5.0/instances/AU...
Under Settings section:
Update the value: WebHDFS Authentication to auth=KERBEROS;proxyuser=ambari-server-<clusterName>
Save the changes.
2. Update configs:
Navigate to Hive and YARN Configs in Ambari UI and change as below and restart respective services.
<AMBARI_SERVER_PRINCIPAL_USER> should be replaced by ambari-server-<clusterName>
A) Custom webhcat-site
webhcat.proxyuser.<AMBARI_SERVER_PRINCIPAL_USER>.groups=* webhcat.proxyuser.<AMBARI_SERVER_PRINCIPAL_USER>.hosts=*
B) Custom yarn-site
yarn.timeline-service.http-authentication.<AMBARI_SERVER_PRINCIPAL_USER>.groups=* yarn.timeline-service.http-authentication.<AMBARI_SERVER_PRINCIPAL_USER>.hosts=* yarn.timeline-service.http-authentication.<AMBARI_SERVER_PRINCIPAL_USER>.users=*