Step 1: As root user, start the kadmin tool on the KDC server.
/usr/krb5/sbin/kadmin.local kadmin.local:
Step 2: Create the principal for all services in your Hadoop cluster.
kadmin: addprinc -randkey $principal_name/$fully.qualified.domain.name@$YOUR-REALM.COM
where the $principal_name
must use following mandatory
naming conventions:
Service Name | Principal Name (mandatory naming convention) |
NameNode | nn and HTTP |
Secondary NameNode | nn, HTTP |
JobTracker | jt |
TaskTracker | tt |
DataNode | dn |
HBase Master |
hbase |
HBase RegionServer |
hbase |
Hive Metastore | hive |
Oozie | oozie |
Oozie | HTTP |
WebHCat | HTTP |
For example, to create NameNode principals, from the shell try:
kadmin: addprinc -randkey nn/NAMENODE@EXAMPLE.COM kadmin: addprinc -randkey HTTP/NAMENODE@EXAMPLE.COM
Step 3: Follow the instructions for Step - 2 above to create keytab files according to the following mandatory naming conventions:
User Name | Principal Name (mandatory naming convention) |
HDFS User | hdfs |
HBase User | hbase |
Smoke Test User | Value specified for smoke_test_user property in master-install-location/gsInstaller/gsInstaller.properties file. |