Configurare cluster HDInsight con un database Ambari personalizzato

Apache Ambari semplifica la gestione e il monitoraggio di un cluster Apache Hadoop. Ambari offre un'interfaccia utente Web e un'API REST facili da usare. Ambari è incluso nei cluster HDInsight e viene usato per monitorare il cluster e apportare modifiche di configurazione.

Nella creazione normale del cluster, come descritto in altri articoli, ad esempio Configurare cluster in HDInsight, Ambari viene distribuito in un database SQL di Azure S0 gestito da HDInsight e non è accessibile agli utenti.

La funzionalità personalizzata del database Ambari consente di distribuire un nuovo cluster e configurare Ambari in un database esterno gestito. La distribuzione viene eseguita con un modello di Azure Resource Manager. Questa funzionalità presenta i seguenti vantaggi:

  • Personalizzazione: è possibile scegliere le dimensioni e la capacità di elaborazione del database. Se si dispone di cluster di grandi dimensioni che elaborano carichi di lavoro con un utilizzo intensivo, un database Ambari con specifiche inferiori potrebbe diventare un collo di bottiglia per le operazioni di gestione.
  • Flessibilità: è possibile ridimensionare il database in base alle esigenze.
  • Controllo: è possibile gestire i backup e la sicurezza per il database in modo che soddisfi i requisiti dell'organizzazione.

Nella parte restante di questo articolo vengono illustrati i punti seguenti:

  • requisiti per l'uso della funzionalità del database Ambari personalizzata
  • i passaggi necessari per effettuare il provisioning del cluster HDInsight usando il proprio database esterno per Apache Ambari

Requisiti del database Ambari personalizzati

È possibile distribuire un database Ambari personalizzato con tutti i tipi di cluster e le versioni. Più cluster non possono usare lo stesso database Ambari.

Il database Ambari personalizzato presenta gli altri requisiti seguenti:

  • Il nome del database non può contenere trattini o spazi
  • È necessario avere un database e un server di database SQL di Azure esistenti.
  • Il database fornito per l'installazione di Ambari deve essere vuoto. Non devono essere presenti tabelle nello schema dbo predefinito.
  • L'utente usato per connettersi al database deve disporre delle autorizzazioni EDIZIONE STANDARD LECT, CREATE TABLE, IN edizione Standard RT, UPDATE, DELETE, ALTER ON SCHEMA e REFERENCES ON SCHEMA per il database.
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;
  • Attivare l'opzione Consenti l'accesso ai servizi di Azure nel server in cui si ospita Ambari.
  • Gli indirizzi IP di gestione dal servizio HDInsight devono essere consentiti nella regola del firewall. Vedere Indirizzi IP di gestione di HDInsight per un elenco degli indirizzi IP che devono essere aggiunti alla regola del firewall a livello di server.

Quando si ospita il database Apache Ambari in un database esterno, tenere presenti i punti seguenti:

  • Si è responsabili dei costi aggiuntivi del database SQL di Azure che contiene Ambari.
  • Eseguire periodicamente il backup del database Ambari personalizzato. database SQL di Azure genera automaticamente i backup, ma l'intervallo di tempo di conservazione dei backup varia. Per ulteriori informazioni, vedere Informazioni sui backup automatici del database SQL.
  • Non modificare la password personalizzata del database Ambari dopo che il cluster HDInsight raggiunge lo stato In esecuzione . Non è supportato.

Distribuire cluster con un database Ambari personalizzato

Per creare un cluster HDInsight che usa il proprio database Ambari esterno, usare il modello di avvio rapido del database Ambari personalizzato.

Modificare i parametri in azuredeploy.parameters.json per specificare informazioni sul nuovo cluster e sul database che contiene Ambari.

È possibile iniziare la distribuzione usando l'interfaccia della riga di comando di Azure. Sostituire <RESOURCEGROUPNAME> con il gruppo di risorse in cui si vuole distribuire il cluster.

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

Avviso

Usare il database SQL e la macchina virtuale Headnode consigliati seguenti per il cluster HDInsight. Non usare il database Ambari predefinito (S0) per qualsiasi ambiente di produzione.

Ridimensionamento del database e del nodo head

La tabella seguente fornisce linee guida sul livello del database SQL di Azure da selezionare in base alle dimensioni del cluster HDInsight.

Numero di nodi di lavoro Livello di database obbligatorio Macchina virtuale Headnode necessaria
<=4 S0 4 core/28 GB di RAM o superiore
>4 && <=8 S1 4 core/28 GB di RAM o superiore
>8 && <= 16 S2 4 core/28 GB di RAM o superiore
>16 && <= 32 S3 8 core/56 GB di RAM o superiore
>32 && <=64 S4 8 core/56 GB di RAM o superiore
>64 && <=128 P2 16 core/112 GB di RAM o superiore
>128 Contattare il supporto tecnico Contattare il supporto tecnico

Passaggi successivi