Вы можете скопировать сервер ключей на свой рабочий стол, вы должны загрузить с помощью kinit и проверить с помощью klist
аюсь подключиться к своему экземпляру HDFS, работающему на Cloudera. Моим первым шагом было включение Kerberos и создание Keytabs (как показаноВот).
На следующем шаге я хотел бы пройти аутентификацию с помощью keytab.
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://cloudera:8020");
conf.set("hadoop.security.authentication", "kerberos");
UserGroupInformation.setConfiguration(conf);
UserGroupInformation.loginUserFromKeytab("hdfs@CLOUDERA", "/etc/hadoop/conf/hdfs.keytab");
FileSystem fs = FileSystem.get(conf);
FileStatus[] fsStatus = fs.listStatus(new Path("/"));
for (int i = 0; i < fsStatus.length; i++) {
System.out.println(fsStatus[i].getPath().toString());
}
Это терпит неудачу со следующей ошибкой
java.io.IOException: ошибка входа для hdfs @ CLOUDERA из keytab /etc/hadoop/conf/hdfs.keytab: javax.security.auth.login.LoginException: невозможно получить пароль от пользователя
Вопрос в том, как правильно обрабатывать таблицу ключей. Должен ли я скопировать его на мою локальную машину?