Команда fetchdt

Для получения Delegation Token и сохранения его в файле в локальной системе HDFS поддерживает команду fetchdt. Этот токен впоследствии можно использовать для доступа к защищенному серверу (например, NameNode) с незащищенного клиента. Утилита использует RPC или HTTPS (через Kerberos) для получения токена и, следовательно, требует наличия тикетов Kerberos перед запуском (необходимо запустить kinit для получения тикетов). В HDFS команда fetchdt не является командой оболочки Hadoop и может быть запущена как bin/hdfs fetchdt DTfile. После получения токена можно запустить команду HDFS без тикетов Kerberos, указав переменную среды HADOOP_TOKEN_FILE_LOCATION в файл токена делегирования.

Пример использования:

hdfs fetchdt <opts> <token_file_path>
  • --webservice NN_Url – URL для связи с NN (начинается с http или https);
  • --renewer name – обновленное название токена делегирования;
  • --cancel – отменить токен делегирования;
  • --renew – обновить токен делегирования. Токен делегирования должен быть получен с использованием параметра -renewer name;
  • --print – отобразить токен делегирования;
  • token_file_path – путь к файлу для хранения токена.