Comprendere e risolvere gli errori ricevuti da WebHCat in HDInsight

Informazioni sugli errori che si ricevono durante l'utilizzo di WebHCat con HDInsight e su come risolverli. WebHCat viene usato internamente dagli strumenti sul lato client, ad esempio Azure PowerShell e Strumenti Data Lake per Visual Studio.

Che cos'è WebHCat

WebHCat è un'API REST per HCatalog, una tabella e un livello di gestione dell'archiviazione per Apache Hadoop. WebHCat è abilitato per impostazione predefinita nei cluster HDInsight e viene usato da vari strumenti per inviare processi, recuperare lo stato dei processi e così via, senza eseguire l'accesso al cluster.

Modifica della configurazione

Alcuni degli errori elencati in questo documento si verificano perché è stato superato un valore massimo configurato. Quando il passaggio di risoluzione indica che è possibile modificare un valore, usare Apache Ambari (API Web o REST) per modificarlo. Per altre informazioni, vedere Gestire i cluster HDInsight mediante l'utilizzo dell'interfaccia utente Web Ambari

Configurazione predefinita

Il superamento dei valori predefiniti seguenti può determinare una riduzione delle prestazioni di WebHCat o la generazione di errori:

Impostazione Risultato Valore predefinito
[yarn.scheduler.capacity.maximum-applications] [maximum-applications] Il numero massimo di processi che possono essere attivi contemporaneamente (in sospeso o in esecuzione) 10,000
templeton.exec.max-procs Il numero massimo di richieste che possono essere gestite contemporaneamente 20
[mapreduce.jobhistory.max-age-ms] [max-age-ms] Il numero di giorni durante i quali verrà mantenuta la cronologia del processo 7 giorni

Numero eccessivo di richieste

Codice di stato HTTP: 429

Causa Risoluzione
È stato superato il numero massimo di richieste simultanee gestite da WebHCat al minuto (il valore predefinito è 20) Ridurre il carico di lavoro per garantire che non venga inviato più del numero massimo di richieste simultanee o aumentare il limite di richieste simultanee modificando templeton.exec.max-procs. Per altre informazioni, vedere Modifica della configurazione

Server non disponibile

Codice di stato HTTP: 503

Causa Risoluzione
Questo codice di stato si verifica in genere durante il failover tra il nodo head primario e secondario per il cluster Attendere due minuti, quindi ripetere l'operazione

Contenuto richiesta non valida: impossibile trovare il processo

Codice di stato HTTP: 400

Causa Risoluzione
I dettagli del processo sono stati puliti dalla pulizia della cronologia dei processi Il periodo di conservazione predefinito per la cronologia dei processi è di sette giorni. Il periodo di conservazione predefinito può essere cambiato modificando mapreduce.jobhistory.max-age-ms. Per altre informazioni, vedere Modifica della configurazione
Processo terminato a causa di un failover Ripetere l'invio del processo per due minuti
È stato usato un ID processo non valido Controllare se l'ID processo è corretto

Gateway non valido

Codice di stato HTTP: 502

Causa Risoluzione
Operazione interna di Garbage Collection nel processo WebHCat Attendere che l’operazione di Garbage Collection venga completata o riavviare il servizio WebHCat
Timeout in attesa di una risposta dal servizio Resource Manager. Questo errore può verificarsi quando il numero di applicazioni attive supera il numero massimo configurato (il valore predefinito è 10.000) Attendere che i processi attualmente in esecuzione vengano completati o aumentare il limite di processi simultanei modificando yarn.scheduler.capacity.maximum-applications. Per altre informazioni, vedere la sezione Modifica della configurazione.
Quando si tenta di recuperare tutti i processi tramite la chiamata GET /jobs mentre Fieldsè impostato su * Non recuperare i dettagli di tutti i processi. Usare invece jobid per recuperare i dettagli solo dei processi successivi a un determinato ID processo oppure non usare Fields
Il servizio WebHCat è inattivo durante il failover del nodo head Attendere due minuti e ripetere l'operazione
Sono presenti più di 500 processi in sospeso inviati tramite WebHCat Attendere il completamento dei processi attualmente in sospeso prima di inviare altri processi

Passaggi successivi

Se il problema riscontrato non è presente in questo elenco o se non si riesce a risolverlo, visitare uno dei canali seguenti per ottenere ulteriore assistenza:

  • Ricevere risposte dagli esperti di Azure tramite la pagina Supporto della community per Azure.

  • Connessione con @AzureSupport: l'account ufficiale di Microsoft Azure per migliorare l'esperienza dei clienti. Mette in contatto la community di Azure con le risorse giuste: risposte, supporto ed esperti.

  • Se serve ulteriore assistenza, è possibile inviare una richiesta di supporto dal portale di Azure. Selezionare Supporto nella barra dei menu o aprire l'hub Guida e supporto. Per informazioni più dettagliate, vedere Come creare una richiesta di supporto in Azure. L'accesso al supporto per la gestione delle sottoscrizioni e la fatturazione è incluso nella sottoscrizione di Microsoft Azure e il supporto tecnico viene fornito tramite uno dei piani di supporto di Azure.