Konfigurowanie klastrów usługi HDInsight przy użyciu niestandardowej bazy danych Ambari

Apache Ambari upraszcza zarządzanie klastrem Apache Hadoop i monitorowanie go. System Ambari oferuje łatwy w użyciu internetowy interfejs użytkownika i interfejs API REST. System Ambari jest dołączony do klastrów usługi HDInsight i służy do monitorowania klastra i wprowadzania zmian konfiguracji.

W normalnym tworzeniu klastra, zgodnie z opisem w innych artykułach, takich jak Konfigurowanie klastrów w usłudze HDInsight, narzędzie Ambari jest wdrażane w bazie danych Azure SQL Database S0 zarządzanej przez usługę HDInsight i nie jest dostępne dla użytkowników.

Niestandardowa funkcja bazy danych Ambari umożliwia wdrożenie nowego klastra i skonfigurowanie systemu Ambari w zewnętrznej bazie danych, którą zarządzasz. Wdrożenie odbywa się przy użyciu szablonu usługi Azure Resource Manager. Ta funkcja ma następujące zalety:

  • Dostosowywanie — wybierasz rozmiar i pojemność przetwarzania bazy danych. Jeśli masz duże klastry przetwarzają obciążenia intensywnie korzystające, baza danych Ambari o niższych specyfikacjach może stać się wąskim gardłem dla operacji zarządzania.
  • Elastyczność — możesz skalować bazę danych zgodnie z potrzebami zgodnie z wymaganiami.
  • Kontrola — możesz zarządzać kopiami zapasowymi i zabezpieczeniami bazy danych w sposób zgodny z wymaganiami organizacji.

W pozostałej części tego artykułu omówiono następujące kwestie:

  • wymagania dotyczące używania niestandardowej funkcji bazy danych Ambari
  • kroki niezbędne do aprowizacji klastra usługi HDInsight przy użyciu własnej zewnętrznej bazy danych dla systemu Apache Ambari

Niestandardowe wymagania bazy danych Ambari

Możesz wdrożyć niestandardową bazę danych Ambari ze wszystkimi typami i wersjami klastra. Wiele klastrów nie może używać tej samej bazy danych Ambari.

Niestandardowa baza danych Ambari ma następujące inne wymagania:

  • Nazwa bazy danych nie może zawierać łączników ani spacji
  • Musisz mieć istniejący serwer i bazę danych usługi Azure SQL DB.
  • Baza danych, którą podajesz dla konfiguracji systemu Ambari, musi być pusta. W domyślnym schemacie dbo nie powinny istnieć żadne tabele.
  • Użytkownik używany do nawiązywania połączenia z bazą danych powinien mieć uprawnienia SELECT, CREATE TABLE, INSERT, UPDATE, DELETE, ALTER ON SCHEMA and REFERENCES ON SCHEMA (SCHEMAT) w bazie danych.
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;
  • Włącz opcję Zezwalaj na dostęp do usług platformy Azure na serwerze, na którym jest hostowany system Ambari.
  • Adresy IP zarządzania z usługi HDInsight muszą być dozwolone w regule zapory. Zobacz Adresy IP zarządzania usługą HDInsight, aby uzyskać listę adresów IP, które należy dodać do reguły zapory na poziomie serwera.

Podczas hostowania bazy danych Apache Ambari w zewnętrznej bazie danych pamiętaj o następujących kwestiach:

  • Ponosisz odpowiedzialność za dodatkowe koszty bazy danych Azure SQL DB, która zawiera narzędzie Ambari.
  • Okresowo należy utworzyć kopię zapasową niestandardowej bazy danych Ambari. Usługa Azure SQL Database automatycznie generuje kopie zapasowe, ale przedział czasu przechowywania kopii zapasowych jest różny. Aby uzyskać więcej informacji, zobacz Więcej informacji na temat automatycznego wykonywania kopii zapasowych bazy danych SQL.
  • Nie zmieniaj niestandardowego hasła bazy danych Ambari po osiągnięciu stanu Uruchomione w klastrze usługi HDInsight. Nie jest obsługiwany.

Wdrażanie klastrów przy użyciu niestandardowej bazy danych Ambari

Aby utworzyć klaster usługi HDInsight korzystający z własnej zewnętrznej bazy danych Ambari, użyj niestandardowego szablonu Szybkiego startu bazy danych Ambari DB.

Edytuj parametry w pliku azuredeploy.parameters.json , aby określić informacje o nowym klastrze i bazie danych, która zawiera narzędzie Ambari.

Wdrożenie można rozpocząć przy użyciu interfejsu wiersza polecenia platformy Azure. Zastąp element <RESOURCEGROUPNAME> grupą zasobów, w której chcesz wdrożyć klaster.

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

Ostrzeżenie

Użyj następującej zalecanej bazy danych SQL i maszyny wirtualnej węzła głównego dla klastra usługi HDInsight. Nie używaj domyślnej bazy danych Ambari (S0) dla żadnego środowiska produkcyjnego.

Ustalanie rozmiaru bazy danych i węzła głównego

Poniższa tabela zawiera wskazówki dotyczące warstwy usługi Azure SQL DB do wybrania na podstawie rozmiaru klastra usługi HDInsight.

Liczba węzłów procesu roboczego Wymagana warstwa bazy danych Wymagana maszyna wirtualna węzła głównego
<=4 S0 4 rdzenie/28 GB pamięci RAM lub nowszej
>4 && <=8 S1 4 rdzenie/28 GB pamięci RAM lub nowszej
>8 && <=16 S2 4 rdzenie/28 GB pamięci RAM lub nowszej
>16 && <=32 S3 8 rdzeni/56 GB pamięci RAM lub nowszej
>32 && <=64 S4 8 rdzeni/56 GB pamięci RAM lub nowszej
>64 && <=128 P2 16 rdzeni/112 GB pamięci RAM lub nowszej
>128 Kontakt z pomocą techniczną Kontakt z pomocą techniczną

Następne kroki