MicroStrategy ONE
Controlli dello stato di avvio
Molti servizi hanno un nuovo nome nella versione di MicroStrategy 2019. Poiché la presente guida richiede di modificare i file sottostanti, usare il nome originale del servizio.
L’archivio di telemetria (ossia il consumer di Platform Analytics) e il producer della telemetria di Identity (ossia il producer di metadati di Usher) dipendono e richiedono l’accesso a tre componenti per elaborare log di telemetria:
- Repository Platform Analytics (ovvero Server database)
- Cache di telemetria (ossia Redis);
- Server di telemetria (ossia Kafka).
Tutti e tre i componenti devono essere in buono stato per la riuscita dell’elaborazione dei log di telemetria da parte di Platform Analytics. Se uno qualunque di questi componenti non è disponibile, il consumer dell’archivio di telemetria e il producer della telemetria di Identity si arrestano. Pertanto, durante l’avvio, sia il consumer sia il producer eseguono un controllo dello stato per i tre componenti e generano un report dettagliato con i risultati.
A volte, uno dei componenti potrebbe essere in fase di avvio e non completamente pronto all'avvio del controllo dello stato. In questi casi, il consumer e il producer eseguono tre controlli consecutivi con un ritardo di 60 secondi fra un controllo e l'altro per confermare se le dipendenze sono in cattivo stato.
Per ulteriori informazioni sull’architettura di Platform Analytics, vedere Architettura e servizi di Platform Analytics.
Denominazione di convenzioni e posizioni
All’avvio del consumer di Platform Analytics e del producer di metadati di Usher viene eseguito un controllo dello stato. Pertanto, ci sono due report dei controlli dello stato generati nella cartella di log di Platform Analytics che si trova nel percorso di installazione predefinito:
- Linux: /opt/MicroStrategy/PlatformAnalytics/log
- Windows: C:\Program Files (x86)\MicroStrategy\Platform Analytics\log
Il nome del file identifica se il report corrisponde al consumer o al producer.
Ad esempio,
platform-analytics-consumer-health-check-yyyymmddhhmmss.out
platform-analytics-usher-lookup-producer-health-check-yyyymmddhhmmss.out
Risultati dei report di controllo dello stato
Ciascun report di controllo dello stato è strutturato in quattro sezioni:
- Verifica integrità
- Controllo dello stato di Redis
- Controllo dello stato di Kafka
- Sommario dei controlli dello stato
Ciascuna sezione fornisce differenti informazioni sullo stato dei tre componenti.
Verifica integrità
Durante il controllo dello stato, vengono eseguiti due controlli:
- Il consumatore/produttore può connettersi al database fornito durante l'installazione e archiviato in PAConsumerConfig.yaml file di configurazione? In caso contrario, verranno eseguiti ulteriori test di connettività di rete per diagnosticare la causa del problema.
- L’utente database possiede i privilegi necessari? Per un elenco completo dei prerequisiti di installazione, vedere Prerequisiti di Platform Analytics.
Il report Verifica integrità fornisce un elenco dei privilegi e dello stato risultante. Se tutte le verifiche hanno esito positivo, verrà visualizzata la riga finale Warehouse health check result is healthy.
Se una riga qualsiasi è letta Failed, controlla il tuo PAConsumerConfig.yaml e verificare che il database disponga dei privilegi corretti.
Se si riceve uno dei seguenti errori durante la verifica dello stato di salute, ecco le soluzioni per aggirare il problema:
Errore di privilegi mancanti
Se l'utente del database archiviato in PAConsumerConfig.yaml Privilegi non presenti nel file di configurazione INFO [privilege type] privilege: Failed. Per risolvere questo errore, l’amministratore deve concedere i privilegi mancanti all’utente del database e riavviare il consumer.
Come concedere i privilegi mancanti:
- Interrompere il consumer di Platform Analytics e il producer di metadati di Usher.
- Effettuare la connessione al server di database che contiene Platform Analytics Repository. Eseguire il seguente comando, sostituendo 'someuser' e 'somehost' con le informazioni specificate dal cliente:Copia
GRANT DROP ON platform_analytics_wh.* TO ‘someuser’@‘somehost’;
- Riavviare il consumer di Platform Analytics e il producer di metadati di Usher.
Errore di connessione non riuscita
Se il consumatore o il produttore non è in grado di connettersi al database utilizzando la configurazione specificata in PAConsumerConfig.yaml configurazione, è possibile che venga visualizzato il seguente errore:
2018-11-21 21:43:28,793 INFO HealthCheck main - Failed to connect to the database. Retrying after waiting for 60 seconds.
2018-11-21 21:45:31,797 INFO HealthCheck main - Failed to connect to the database. Retrying after waiting for 60 seconds.
2018-11-21 21:47:34,800 ERROR HealthCheck main - Failed to connect to the database using url:jdbc:mysql://XX.Y.Z.1:3306/platform_analytics_wh?rewriteBatchedStatements=true&useLegacyDatetimeCode=false&serverTimezone=UTC. Please double check your connection parameters.
Communications link failure
Il/La PAConsumerConfig.yaml viene popolato in base alle informazioni di database fornite durante l’installazione. Per risolvere l'errore, connettersi al computer che ospita Platform Analytics e confermare tutti i campi sotto a warehouseDbConnection intestazione sono corretti in PAConsumerConfig.yaml file.
Errore password dell'utente del database non corretta
Il consumatore o il produttore non potranno connettersi al database se la password del warehouse crittografata non è corretta. Per generare una nuova password criptata e aggiornare la conferma, vedere Aggiornamento della password dell'utente del database configurato al repository di Platform Analytics .
Utente del database creato con errore di SSL attivato
Platform Analytics supporta le versioni 5.6, 5.7 e 8.0 di MySQL. Per MySQL 8.0, il collegamento SSL è attivo per impostazione predefinita. Attualmente, Platform Analytics non supporta SSL per l'utente del database che si collega a MySQL. Quando si crea l'utente del database per Platform Analytics Consumer o Usher Metadata Producer, specificare l'opzione SSL/TLS utilizzando REQUIRE clausola.
Come disattivare SSL:
- Collegarsi al repository di Platform Analytics ed eseguire il seguente comando:Copia
show variables like '%ssl%';
-
Se il risultato per 'have_ssl' è 'YES' SSL è abilitato. Crea l'utente con mysql_native_password e REQUIRE NONE opzioni per connettersi senza SSL.
CopiaCREATE USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY 'password' REQUIRE NONE;
Controllo dello stato di Redis
Il controllo dello stato di Redis stabilisce se il consumer o il producer riesce a collegarsi al server Redis. Il controllo fornisce statistiche dettagliate su Redis raccolte durante l'avvio. Se tutte le verifiche hanno esito positivo, verrà visualizzata la riga finale Redis server health check result is healthy.
Se viene visualizzato un errore durante la verifica, assicurarsi che Redis sia in esecuzione e che la configurazione sia corretta in PAConsumerConfig.yaml file.
Se si riceve uno dei seguenti errori nel file Redis Per il controllo dello stato di salute, ecco le soluzioni alternative suggerite:
Errore di fermo di Redis
Se il consumer o il producer non è in grado di collegarsi a Redis, potrebbe essere in uno stato di fermo. Per risolvere l'errore, avviare la cache in memoria di MicroStrategy, il consumer di Platform Analytics e il producer di metadati di Usher.
Connessione non riuscita all'errore di Redis
Se il consumatore o il produttore non è in grado di connettersi a Redis, è possibile che la configurazione non sia corretta in PAConsumerConfig.yaml file. Per risolvere l'errore, connettersi al computer che ospita Platform Analytics e confermare tutti i campi sotto a redisConnection intestazione sono corretti in PAConsumerConfig.yaml file.
Autenticazione password abilitata per Redis Errore
Se il consumer o il producer non è in grado di collegarsi a Redis, probabilmente l'autenticazione della password è attiva. In base alle impostazioni predefinite, Redis non è configurato con l'autenticazione della password, ma può impostare dopo l'installazione.
Se Redis è stato abilitato con l'autenticazione tramite password e la password non è presente in PAConsumerConfig.yaml di configurazione, il consumatore o il produttore non sarà in grado di connettersi a Redis. Per risolvere questo errore, seguire i passaggi di Attivazione dell'autenticazione della password sulla cache di telemetria di MicroStrategy.
Controllo dello stato di Kafka
Kafka Health Check garantisce l'avvio e la connessione di Gestore telemetria (Apache Zookeeper) e Server di telemetria (Server Kafka). Se tutte le verifiche hanno esito positivo, verrà visualizzata la riga finale Kafka cluster health check result is healthy.
Poiché il server di telemetria dipende dalla gestione della telemetria, occorre innanzitutto avviare quest'ultima.
Se si vede un errore nel controllo, assicurarsi che ZooKeeper e Kafka vengano avviati.
Come verificare se i server ZooKeeper sono in esecuzione su tutti i nodi:
- In Linux, eseguire il comando seguente per eseguire il PID.Copia
ps ax | grep java | grep -i QuorumPeerMain | grep -v grep | awk '{print $1}'
- In Windows, aprire i servizi di Windows e verificare che il servizio \"Apache ZooKeeper\" sia in esecuzione.
Come verificare se i server Kafka sono in esecuzione su tutti i nodi:
- In Linux, eseguire il comando seguente per eseguire il PID.Copia
ps ax | grep -i 'kafka\\.Kafka' | grep java | grep -v grep | awk '{print $1}'
- In Windows, aprire i servizi di Windows e verificare che il servizio \"Apache Kafka\" sia in esecuzione.
Come avviare ZooKeeper e Kafka su tutti i nodi:
-
In Linux, eseguire i seguenti comandi nella directory Kafka:
Copia# Start Zookeeper on all nodes,
./zookeeper-server-start.sh -daemon ../config/zookeeper.properties
# Start Kafka on all nodes,
./kafka-server-start.sh -daemon ../config/server.properties - In Windows, aprire i servizi di Windows e avviare Apache ZooKeeper e Apache Kafka.
Se questo è un ambiente raggruppato con più nodi di ZooKeeper e Kafka, occorre innanzitutto avviare tutti i nodi di ZooKeeper.
Sommario dei controlli dello stato
Se tutti i controlli dello stato hanno esito positivo, i risultati saranno passing. Se uno dei controlli ha esito negativo, si otterrà a FAIL per il componente corrispondente. In caso di controlli non riusciti, utilizzare l'elenco dettagliato del report riportato in alto per indagare le possibili cause dell'errore.