Использование пустых граничных узлов в кластерах Apache Hadoop в HDInsight

Сведения о том, как добавить пустой граничный узел в кластер HDInsight. Пустой граничный узел — это виртуальная машина Linux, на которой установлены и настроены те же клиентские инструменты, что и на головных узлах. Но без запущенных служб Apache Hadoop. Граничный узел можно использовать для доступа к кластеру, а также тестирования и размещения клиентских приложений.

Пустой граничный узел можно добавить в имеющийся кластер HDInsight или в новый кластер при его создании. Добавление пустого граничного узла осуществляется с помощью шаблона Azure Resource Manager. В следующем примере показано, как это сделать.

"resources": [
    {
        "name": "[concat(parameters('clusterName'),'/', variables('applicationName'))]",
        "type": "Microsoft.HDInsight/clusters/applications",
        "apiVersion": "2015-03-01-preview",
        "dependsOn": [ "[concat('Microsoft.HDInsight/clusters/',parameters('clusterName'))]" ],
        "properties": {
            "marketPlaceIdentifier": "EmptyNode",
            "computeProfile": {
                "roles": [{
                    "name": "edgenode",
                    "targetInstanceCount": 1,
                    "hardwareProfile": {
                        "vmSize": "{}"
                    }
                }]
            },
            "installScriptActions": [{
                "name": "[concat('emptynode','-' ,uniquestring(variables('applicationName')))]",
                "uri": "[parameters('installScriptAction')]",
                "roles": ["edgenode"]
            }],
            "uninstallScriptActions": [],
            "httpsEndpoints": [],
            "applicationType": "CustomApplication"
        }
    }
],

Как показано в примере, при необходимости можно вызвать действие скрипта для выполнения дополнительной настройки. Например, установка Apache Hue в граничном узле. Скрипт действий скрипта должен быть общедоступен через Интернет. Например, если скрипт хранится в службе хранилища Azure, используйте общедоступные контейнеры или общедоступные большие двоичные объекты.

Размер виртуальной машины граничного узла должен соответствовать требованиям к размеру виртуальной машины рабочего узла кластера HDInsight. Рекомендуемые размеры виртуальной машины рабочего узла приведены в разделе о создании кластеров Apache Hadoop в HDInsight.

После создания граничного узла можно подключиться к нему с помощью SSH и запустить клиентские средства для доступа к кластеру Hadoop в HDInsight.

Предупреждение

Пользовательские компоненты, установленные на граничном узле, получают коммерчески оправданную поддержку от компании Майкрософт. В результате могут быть устранены возникающие проблемы. Или вы можете обратиться к ресурсам сообщества для получения дополнительной помощи. Ниже приведены некоторые из наиболее активных сайтов для получения помощи от сообщества.

При использовании технологии Apache можно получить помощь на соответствующих сайтах для проектов Apache, например Apache Hadoop на сайте https://apache.org.

Важно!

Образы Ubuntu станут доступны для создания кластера HDInsight в течение 3 месяцев после публикации. По состоянию на январь 2019 года работающие кластеры (включая граничные узлы) не были автоматически исправлены. Клиенты должны использовать действия сценария или другие механизмы для исправления работающего кластера. Дополнительные сведения см. в статье Обновление путем частичной замены ОС для кластеров HDInsight.

Добавление граничного узла в имеющийся кластер

В этом разделе описано, как использовать шаблон Resource Manager, чтобы добавить граничный узел в имеющийся кластер HDInsight. Шаблон Resource Manager можно найти в GitHub. Шаблон Resource Manager вызывает действие скрипта, расположенное по адресу https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.hdinsight/hdinsight-linux-add-edge-node/scripts/EmptyNodeSetup.sh. Скрипт не выполняет никаких действий. Он необходим для демонстрации вызова действия скрипта с помощью шаблона Resource Manager.

  1. Нажмите следующую кнопку, чтобы войти в Azure и открыть шаблон Azure Resource Manager на портале Azure.

    Deploy to Azure button for new cluster

  2. Настройте следующие свойства:

    Свойство Описание
    Подписка Выберите подписку Azure, используемую для создания кластера.
    Группа ресурсов Выберите группу ресурсов, используемую для имеющегося кластера HDInsight.
    Местонахождение Выберите расположение для имеющегося кластера HDInsight.
    Имя кластера Введите имя имеющегося кластера HDInsight.
  3. Установите флажок Я принимаю указанные выше условия и нажмите кнопку Приобрести, чтобы создать граничный узел.

Важно!

Выберите группу ресурсов Azure, используемую для существующего кластера HDInsight. Иначе вы получите сообщение об ошибке "Не удается выполнить запрошенную операцию с вложенным ресурсом. Родительский ресурс <Имя кластера> не найден."

Добавление граничного узла при создании кластера

В этом разделе описано, как использовать шаблон Resource Manager, чтобы создать кластер HDInsight с граничным узлом. Шаблон Resource Manager можно найти в коллекции шаблонов быстрого запуска Azure. Шаблон Resource Manager вызывает действие скрипта, расположенное по адресу https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.hdinsight/hdinsight-linux-with-edge-node/scripts/EmptyNodeSetup.sh. Скрипт не выполняет никаких действий. Он необходим для демонстрации вызова действия скрипта с помощью шаблона Resource Manager.

  1. Создайте кластер HDInsight, если его еще нет. Ознакомьтесь со статьей Руководство по Hadoop. Приступая к работе с Hadoop в HDInsight.

  2. Нажмите следующую кнопку, чтобы войти в Azure и открыть шаблон Azure Resource Manager на портале Azure.

    Deploy to Azure button for new cluster

  3. Настройте следующие свойства:

    Свойство Описание
    Подписка Выберите подписку Azure, используемую для создания кластера.
    Группа ресурсов Создайте группу ресурсов для кластера.
    Местонахождение Выберите расположение группы ресурсов.
    Имя кластера Введите имя для нового кластера.
    Имя пользователя для входа в кластер Введите имя пользователя HTTP для Hadoop. Имя по умолчанию — admin.
    Пароль для входа в кластер Введите пароль пользователя HTTP для Hadoop.
    Имя пользователя SSH Введите имя пользователя SSH. Имя по умолчанию — sshuser.
    Пароль SSH Введите пароль пользователя SSH.
    Установка действия скрипта В рамках этой статьи оставьте значение по умолчанию.

    Некоторые свойства жестко запрограммированы в шаблоне: "Тип кластера", Cluster worker node count (Количество рабочих узлов кластера), Edge node size (Размер граничного узла) и Edge node name (Имя граничного узла).

  4. Установите флажок Я принимаю указанные выше условия и нажмите кнопку Приобрести, чтобы создать кластер с граничным узлом.

Добавление нескольких граничных узлов

В кластер HDInsight можно добавить несколько граничных узлов. Настроить конфигурацию нескольких граничных узлов можно только с помощью шаблонов Azure Resource Manager. Пример шаблона приведен в начале этой статьи. Для параметра targetInstanceCount задайте значение, соответствующее количеству создаваемых граничных узлов.

Доступ к граничному узлу

Конечная точка SSH граничного узла указывается в формате <имя_граничного узла>>.<имя_кластера>-ssh.azurehdinsight.net:22. Например, new-edgenode.myedgenode0914-ssh.azurehdinsight.net:22.

Граничный узел отображается в виде приложения на портале Azure. На портале представлены сведения для доступа к граничному узлу с помощью SSH.

Проверка конечной точки SSH граничного узла

  1. Выполните вход на портал Azure.
  2. Откройте кластер HDInsight с граничным узлом.
  3. Выберите пункт Заявления. Затем вы увидите граничный узел. Его имя по умолчанию — new-edgenode.
  4. Выберите граничный узел. Отобразится конечная точка SSH.

Использование Hive в граничном узле

  1. К граничному узлу можно подключиться с помощью SSH. См. дополнительные сведения об использовании SSH в HDInsight.

  2. После подключения к граничному узлу с помощью SSH откройте консоль Hive, используя следующую команду:

    hive
    
  3. Чтобы показать таблицы Hive в кластере, выполните следующую команду:

    show tables;
    

Удаление граничного узла

Граничный узел можно удалить на портале Azure.

  1. Выполните вход на портал Azure.
  2. Откройте кластер HDInsight с граничным узлом.
  3. Выберите пункт Заявления. Появится список граничных узлов.
  4. Щелкните правой кнопкой мыши граничный узел, который нужно удалить, и выберите пункт Удалить.
  5. Выберите Да для подтверждения.

Следующие шаги

В этой статье вы узнали, как добавить граничный узел и как получить к нему доступ. Дополнительные сведения см. в следующих разделах: