Вы можете скопировать сервер ключей на свой рабочий стол, вы должны загрузить с помощью 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: невозможно получить пароль от пользователя

Вопрос в том, как правильно обрабатывать таблицу ключей. Должен ли я скопировать его на мою локальную машину?

Ответы на вопрос(2)

Ваш ответ на вопрос