Настройка кластеров HDInsight с помощью настраиваемой базы данных Ambari DB

Apache Ambari упрощает управление функционированием кластера Apache Hadoop и наблюдение за ним. Ambari обеспечивает простой пользовательский веб-интерфейс и REST API. Ambari предоставляется с кластерами HDInsight и используется для мониторинга кластера и внесения изменений в его конфигурацию.

При стандартном создании кластера, как описано в других статьях, таких как Настройка кластеров в HDInsight, Ambari развертывается в Базе данных SQL Azure S0, управляемой HDInsight и недоступной пользователям.

Функция пользовательской базы данных Ambari DB позволяет развернуть новый кластер и настроить Ambari во внешней управляемой вами базе данных. Развертывание осуществляется с помощью шаблона Azure Resource Manager. Эта функция имеет следующие преимущества:

  • Настройка. Вы выбираете размер и производительность обработки базы данных. Если у вас большие кластеры с ресурсоемкими рабочими нагрузками, то база данных Ambari с более слабыми характеристиками может стать узким местом для операций управления.
  • Гибкость. Вы можете масштабировать базу данных по мере необходимости в соответствии со своими требованиями.
  • Управление. Вы можете управлять резервным копированием и безопасностью базы данных таким способом, который соответствует требованиям вашей организации.

В оставшейся части этой статьи обсуждается следующее:

  • требования для функции настраиваемой базы данных Ambari;
  • действия, необходимые для подготовки кластера HDInsight с помощью собственной внешней базы данных для Apache Ambari

Требования для настраиваемой базы данных Ambari

Развертывание настраиваемой базы данных Ambari можно выполнить для всех типов и версий кластеров. Несколько кластеров не могут использовать одну и ту же базу данных Ambari.

Для настраиваемой базы данных Ambari предусмотрены другие требования. Вот они:

  • Имя базы данных не может содержать дефисы и пробелы.
  • Необходимы база данных и сервер баз данных Azure SQL.
  • База данных, предоставляемая для настройки Ambari, должна быть пустой. В схеме dbo по умолчанию не должно быть таблиц.
  • Пользователь, используемый для подключения к базе данных, должен иметь разрешения SELECT, CREATE TABLE, INSERT, UPDATE, DELETE, ALTER ON SCHEMA и REFERENCES ON SCHEMA в базе данных.
GRANT CREATE TABLE TO newuser;
GRANT INSERT TO newuser;
GRANT SELECT TO newuser;
GRANT UPDATE TO newuser;
GRANT DELETE TO newuser;
GRANT ALTER ON SCHEMA::dbo TO newuser;
GRANT REFERENCES ON SCHEMA::dbo TO newuser;
  • Включите параметр разрешить доступ к службам Azure на сервере, на котором размещен Ambari.
  • IP-адреса управления из службы HDInsight должны быть разрешены в правиле брандмауэра. Список IP-адресов, которые необходимо добавить в правило брандмауэра уровня сервера, см. в разделе IP-адреса управления для HDInsight.

При размещении базы данных Apache Ambari во внешней базе данных учитывайте следующее:

  • Вы несете ответственность за дополнительные расходы на базу данных SQL Azure, которая содержит Ambari.
  • Периодически создавайте резервную копию настраиваемой базы данных Ambari. База данных SQL Azure автоматически создает резервные копии, но периоды их хранения различаются. Дополнительные сведения см. в разделе Подробнее об автоматически создаваемых резервных копиях в базе данных SQL.
  • Не изменяйте пользовательский пароль базы данных Ambari после того, как кластер HDInsight достигнет состояния Выполняется. Она не поддерживается.

Развертывание кластеров с настраиваемой базой данных Ambari

Создать кластер HDInsight, использующий вашу собственную внешнюю базу данных Ambari, вам поможет шаблон быстрого запуска для базы данных Ambari.

Измените параметры в azuredeploy.parameters.json файле, чтобы указать сведения о новом кластере и базе данных, содержащей Ambari.

Вы можете начать развертывание с помощью Azure CLI. Замените <RESOURCEGROUPNAME> группой ресурсов, в которой требуется развернуть кластер.

az deployment group create --name HDInsightAmbariDBDeployment \
    --resource-group <RESOURCEGROUPNAME> \
    --template-file azuredeploy.json \
    --parameters azuredeploy.parameters.json

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

Используйте указанные ниже рекомендуемые базу данных SQL и виртуальную машину головного узла для кластера HDInsight. Не используйте базу данных Ambari (S0) по умолчанию для рабочих сред.

Размер базы данных и головного узла

В следующей таблице приведены рекомендации по выбору уровня базы данных Azure SQL в зависимости от размера кластера HDInsight.

Количество рабочих узлов Требуемый уровень базы данных Требуемая виртуальная машина головного узла
<=4 S0 4 ядра/28 ГБ ОЗУ или больше
>4 && <=8 S1 4 ядра/28 ГБ ОЗУ или больше
>8 && <=16 S2 4 ядра/28 ГБ ОЗУ или больше
>16 &&&> <32 S3 8 ядер/56 ГБ ОЗУ или больше
>32 && <=64 S4 8 ядер/56 ГБ ОЗУ или больше
>64 && <=128 P2 16 ядер/112 ГБ ОЗУ или больше
>128 Обращение в службу поддержки Обращение в службу поддержки

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