Настройка WebHDFS
WebHDFS — это сервис, позволяющий взаимодействовать с HDFS через HTTP REST API.
В ADH-кластерах WebHDFS включен по умолчанию. Дополнительную информацию о том, как подключиться к HDFS с помощью HTTP REST API, читайте в статье Подключение к HDFS.
Для кластеров с включенной безопасностью (Kerberos SPNEGO) необходимо настроить дополнительные параметры в файле hdfs-site.xml:
-
Создайте нового принципала для сервиса HTTP:
$ addprinc -randkey HTTP/$<HOST>@$<REALM>.COM
Здесь
<HOST>
— это FDQN или IP-адрес хоста с сервером NameNode, а<REALM>
— имя Kerberos realm. -
Создайте keytab для сервиса HTTP:
$ xst -norandkey -k /etc/security/spnego.service.keytab HTTP/$<HOST>
Здесь
<HOST>
— это FDQN или IP-адрес хоста с сервером NameNode. -
Убедитесь, что keytab для сервиса настроен:
$ klist –k -t /etc/security/spnego.service.keytab
-
Установите созданного ранее принципала в качестве значения параметра
dfs.web.authentication.kerberos.principal
, а keytab — как значение параметра вdfs.web.authentication.kerberos.keytab
. Результат должен выглядеть так:<property> <name>dfs.web.authentication.kerberos.principal</name> <value>HTTP/$<HOST>@$<REALM>.COM</value> </property> <property> <name>dfs.web.authentication.kerberos.keytab</name> <value>/etc/security/spnego.service.keytab</value> </property>
-
Перезапустите серверы NameNode и DataNode.