Настройка WebHDFS

WebHDFS — это сервис, позволяющий взаимодействовать с HDFS через HTTP REST API.

В ADH-кластерах WebHDFS включен по умолчанию. Дополнительную информацию о том, как подключиться к HDFS с помощью HTTP REST API, читайте в статье Подключение к HDFS.

Для кластеров с включенной безопасностью (Kerberos SPNEGO) необходимо настроить дополнительные параметры в файле hdfs-site.xml:

  1. Создайте нового принципала для сервиса HTTP:

    $ addprinc -randkey HTTP/$<HOST>@$<REALM>.COM

    Здесь <HOST> — это FDQN или IP-адрес хоста с сервером NameNode, а <REALM> — имя Kerberos realm.

  2. Создайте keytab для сервиса HTTP:

    $ xst -norandkey -k /etc/security/spnego.service.keytab HTTP/$<HOST>

    Здесь <HOST> — это FDQN или IP-адрес хоста с сервером NameNode.

  3. Убедитесь, что keytab для сервиса настроен:

    $ klist –k -t /etc/security/spnego.service.keytab
  4. Установите созданного ранее принципала в качестве значения параметра 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>
  5. Перезапустите серверы NameNode и DataNode.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней