Создание кластеров HDInsight, использующих Azure Data Lake Storage 1-го поколения, с помощью портала Azure

Узнайте, как создать кластер HDInsight с Azure Data Lake Storage 1-го поколения в качестве хранилища по умолчанию или дополнительного хранилища на портале Azure. Создавать дополнительное хранилище для кластера HDInsight необязательно, однако бизнес-данные рекомендуется хранить в дополнительных учетных записях хранения.

Предварительные требования

Прежде чем приступить к изучению этого руководства, убедитесь, что выполнены следующие требования.

  • Подписка Azure. Перейдите на сайт бесплатной пробной версии Azure.
  • Учетная запись Azure Data Lake Storage 1-го поколения. Следуйте инструкциям в статье Начало работы с Azure Data Lake Storage 1-го поколения с помощью портала Azure. В учетной записи также необходимо создать корневую папку. В этой статье используется корневая папка /clusters.
  • субъект-служба Microsoft Entra. В этом практическом руководстве содержатся инструкции по созданию субъекта-службы в Microsoft Entra ID. Однако для создания субъекта-службы необходимо быть администратором Microsoft Entra. Если вы являетесь администратором, вы можете пропустить этот предварительный этап и перейти к следующим.

Примечание

Субъект-службу можно создать, только если вы являетесь администратором Microsoft Entra. Администратор Microsoft Entra должен создать субъект-службу, прежде чем создавать кластер HDInsight с Data Lake Storage 1-го поколения. При создании субъекта-службы также необходимо использовать сертификат, как описано в разделе Создание субъекта-службы с использованием сертификата.

Создание кластера HDInsight

В этом разделе описывается, как создать кластер HDInsight с Data Lake Storage 1-го поколения в качестве хранилища по умолчанию или дополнительного хранилища. В этой статье описывается только часть процесса настройки Data Lake Storage 1-го поколения. Общие сведения о создании кластеров и соответствующие процедуры см. в статье Создание кластеров Hadoop в HDInsight.

Создание кластера HDInsight, использующего Data Lake Storage 1-го поколения в качестве хранилища по умолчанию

Создание кластера HDInsight с Data Lake Storage 1-го поколения в качестве учетной записи хранения по умолчанию

  1. Войдите на портал Azure.

  2. Общие сведения о создании кластеров HDInsight см. в разделе Создание кластеров.

  3. В колонке Хранилище в разделе Тип первичного хранилища выберите Data Lake Storage 1-го поколения, а затем введите указанные ниже сведения.

    Параметры учетной записи хранения HDInsight

    • Выбрать учетную запись Data Lake Store: выберите существующую учетную запись Data Lake Storage 1-го поколения. Требуется существующая учетная запись Data Lake Storage 1-го поколения. См. раздел Предварительные требования.
    • Корневой путь: введите путь к каталогу, в котором будут храниться файлы, связанные с кластером. На снимке экрана это путь /clusters/myhdiadlcluster/, в котором должна существовать папка /clusters и в котором портал создает папку myhdicluster. myhdicluster — это имя кластера.
    • Доступ к Data Lake Store: настройте доступ между учетной записью Data Lake Storage 1-го поколения и кластером HDInsight. Инструкции см. в разделе Настройка доступа к Data Lake Storage 1-го поколения.
    • Дополнительные учетные записи хранения: добавьте учетные записи хранения Azure в качестве дополнительных учетных записей хранения для кластера. Добавление дополнительных хранилищ Data Lake Storage 1-го поколения осуществляется путем предоставления разрешений на доступ к данным в кластере дополнительным учетным записям Data Lake Storage 1-го поколения. При этом учетная запись Data Lake Storage 1-го поколения настраивается в качестве основного типа хранилища. Инструкции см. в разделе Настройка доступа к Data Lake Storage 1-го поколения.
  4. В колонке Доступ к Data Lake Store нажмите кнопку Выбрать и продолжайте создание кластера, как описано в статье Создание кластеров под управлением Linux в HDInsight с помощью портала Azure.

Создание кластера HDInsight, использующего Data Lake Storage 1-го поколения в качестве дополнительного хранилища

Ниже приведены инструкции по созданию кластера HDInsight, где учетная запись хранения BLOB-объектов Azure используется в качестве хранилища по умолчанию, а учетная запись Data Lake Storage 1-го поколения — в качестве дополнительного хранилища.

Создание кластера HDInsight с Data Lake Storage 1-го поколения в качестве дополнительной учетной записи хранения

  1. Войдите на портал Azure.

  2. Общие сведения о создании кластеров HDInsight см. в разделе Создание кластеров.

  3. В колонке Хранилище в разделе Тип первичного хранилища выберите Хранилище Azure, а затем введите указанные ниже сведения.

    Параметры учетной записи хранения HDInsight для дополнительного хранилища

    • Метод выбора . Чтобы указать учетную запись хранения, которая является частью подписки Azure, выберите Мои подписки, а затем выберите учетную запись хранения. Чтобы указать учетную запись хранения, не входящую в вашу подписку Azure, выберите Ключ доступа, а затем введите данные внешней учетной записи хранения.

    • Контейнер по умолчанию. Используйте значение по умолчанию или укажите собственное имя.

    • Дополнительные учетные записи хранения. Добавьте другие учетные записи хранения Azure в качестве дополнительного хранилища.

    • Доступ к Data Lake Store. Настройте доступ между учетной записью Data Lake Storage 1-го поколения и кластером HDInsight. Инструкции см. в разделе Настройка доступа к Data Lake Storage 1-го поколения.

Настройка доступа к Data Lake Storage 1-го поколения

В этом разделе описана настройка доступа Data Lake Storage 1-го поколения из кластеров HDInsight с помощью субъекта-службы Microsoft Entra.

Указание субъекта-службы

На портале Azure можно использовать существующий субъект-службу или создать новый.

Создание субъекта-службы на портале Azure

  1. См. статью Создание субъекта-службы и Сертификатов с помощью Microsoft Entra ID.

Использование существующего субъекта-службы на портале Azure

  1. Субъект-служба должен иметь разрешения владельца учетной записи хранения. См. раздел Настройка разрешений владельца учетной записи хранения для субъекта-службы.

  2. Выберите Доступ к Data Lake Store.

  3. В колонке Доступ к Data Lake Storage 1-го поколения выберите Использовать имеющийся.

  4. Выберите Субъект-служба, затем выберите субъект-службу.

  5. Отправьте связанный с выбранным субъектом-службой сертификат (PFX-файл) и введите пароль этого сертификата.

    Добавление субъекта-службы в кластер HDInsight

  6. Выберите Доступ, чтобы настроить доступ к папке. См. раздел Настройка разрешений для файлов.

Настройка разрешений владельца учетной записи хранения для субъекта-службы

  1. В колонке "Управление доступом (IAM)" для учетной записи хранения нажмите "Добавить назначение роли".
  2. В колонке "Добавление назначения роли" выберите роль "Владелец", затем выберите имя субъекта-службы и нажмите "Сохранить".

Настройка разрешений для файлов

Настройки зависят от того, используется ли учетная запись для хранилища по умолчанию или для дополнительного хранилища.

  • В качестве хранилища по умолчанию:

    • разрешение на корневом уровне учетной записи Data Lake Storage 1-го поколения;
    • разрешение на корневом уровне хранилища кластера HDInsight. Например, в этом учебнике это папка /clusters.
  • В качестве дополнительного хранилища:

    • разрешение на доступ к папкам, в которых находятся требуемые файлы.

Назначение разрешения в учетной записи хранения с Data Lake Storage 1-го поколения на корневом уровне

  1. В колонке Доступ к Data Lake Storage 1-го поколения выберите Доступ. Откроется колонка Выбор разрешений для файла. В ней отображаются все учетные записи хранения, включенные в подписку.

  2. Наведите указатель мыши (но не нажимайте) на имя учетной записи Data Lake Storage 1-го поколения, чтобы отобразился флажок, а затем установите этот флажок.

    Выбор разрешений для файла

    По умолчанию выбраны разрешения Чтение, Запись и Выполнение.

  3. В нижней части страницы щелкните Выбрать.

  4. Чтобы назначить разрешение, нажмите Выполнить.

  5. Нажмите кнопку Готово.

Назначение разрешения на корневом уровне кластера HDInsight

  1. В колонке Доступ к Data Lake Storage 1-го поколения выберите Доступ. Откроется колонка Выбор разрешений для файла. В ней перечислены все учетные записи хранения Data Lake Storage 1-го поколения, включенные в подписку.
  2. В колонке Выбор разрешений для файла выберите имя учетной записи хранения Data Lake Storage 1-го, чтобы отобразилось ее содержимое.
  3. Выберите корень хранилища кластера HDInsight, установив флажок слева от папки. В соответствии с предыдущим снимком экрана корнем хранилища кластера является папка /clusters, указанная при выборе Data Lake Storage 1-го поколения в качестве хранилища по умолчанию.
  4. Задайте разрешения для папки. По умолчанию выбраны разрешения на чтение, запись и выполнение.
  5. В нижней части страницы щелкните Выбрать.
  6. Выберите Запуск.
  7. Нажмите кнопку Готово.

При использовании Data Lake Storage 1-го поколения в качестве дополнительного хранилища необходимо назначить разрешение только для папок, к которым нужен доступ из кластера HDInsight. Например, на снимке экрана ниже предоставляется доступ только к папке mynewfolder в учетной записи хранения Data Lake Storage 1-го поколения.

Назначение разрешений для кластера HDInsight субъекту-службе

Проверка настроек кластера

После завершения настройки кластера проверьте результат в колонке кластера, выполнив одно или оба указанных ниже действия.

  • Чтобы проверить, является ли указанная вами учетная запись Data Lake Storage 1-го поколения связанным хранилищем для кластера, выберите Учетные записи хранения в левой области.

    Проверка связанного хранилища

  • Чтобы проверить, правильно ли субъект-служба связан с кластером HDInsight, выберите Доступ к Data Lake Storage 1-го поколения в левой области.

    Проверка субъекта-службы

Примеры

Настроив Data Lake Storage 1-го поколения в качестве хранилища для кластера, можно изучить следующие примеры использования кластера HDInsight для анализа данных, хранящихся в Data Lake Storage 1-го поколения.

Отправка запроса Hive к данным, хранящимся в Data Lake Storage 1-го поколения (основное хранилище)

Чтобы выполнить запрос Hive, используйте интерфейс представлений Hive, доступный на портале Ambari. Инструкции по использованию представлений Ambari Hive см. в статье Использование представления Hive с Hadoop в HDInsight.

При работе с данными в Data Lake Storage 1-го поколения изменить можно лишь несколько строк.

Если вы используете, например, кластер, созданный с Data Lake Storage 1-го поколения в качестве основного хранилища, путь к данным будет следующим: adl://< data_lake_storage_gen1_account_name>/azuredatalakestore.net/path/to/file. Запрос Hive для создания таблицы на основе демонстрационных данных, хранящихся в учетной записи Data Lake Storage 1-го поколения, выглядит следующим образом:

CREATE EXTERNAL TABLE websitelog (str string) LOCATION 'adl://hdiadlsg1storage.azuredatalakestore.net/clusters/myhdiadlcluster/HdiSamples/HdiSamples/WebsiteLogSampleData/SampleLog/'

Описание

  • adl://hdiadlsg1storage.azuredatalakestore.net/ — корневой элемент учетной записи Data Lake Storage 1-го поколения;
  • /clusters/myhdiadlcluster — корень данных кластера, указанный при создании кластера;
  • /HdiSamples/HdiSamples/WebsiteLogSampleData/SampleLog/ — расположение примера файла, который используется в запросе.

Отправка запроса Hive к данным, хранящимся в Data Lake Storage 1-го поколения (дополнительное хранилище)

Если в созданном кластере в качестве хранилища по умолчанию используется хранилище BLOB-объектов, то демонстрационные данные не будут находиться в учетной записи Data Lake Storage 1-го поколения, используемой в качестве дополнительного хранилища. В этом случае сначала перенесите эти данные из хранилища BLOB-объектов в Data Lake Storage 1-го поколения, а затем выполните запросы, как показано в предыдущем примере.

Сведения о том, как скопировать данные из хранилища BLOB-объектов в Data Lake Storage 1-го поколения, см. в следующих статьях:

Использование Data Lake Storage 1-го поколения с кластером Spark

Кластер Spark можно использовать для выполнения заданий Spark с данными, хранящимися в Data Lake Storage 1-го поколения. Дополнительные сведения см. в статье Использование кластера HDInsight Spark для анализа данных в Data Lake Storage 1-го поколения.

Использование Data Lake Storage 1-го поколения в топологии Storm

См. также раздел