MicroStrategy ONE
Errori di autorizzazione
Questa sezione fornisce informazioni sulla risoluzione dei problemi relativi agli errori di autorizzazione in un ambiente Linux.
Limite valore "bello" errato
Per migliorare le prestazioni in caso di carichi elevati della CPU, Intelligence Server dà priorità all'esecuzione di lavori critici in termini di tempo, come l'esecuzione di dashboard interattivi, rispetto alle richieste in background, come gli Smart Download. Per ottenere tale a assegnazione priorità del processo, i thread che eseguono processi interattivi possono occupare una parte maggiore del tempo CPU. Allo stesso modo, ai thread per le richieste in background viene assegnato un periodo di tempo della CPU più piccolo.
Nel sistema operativo Linux, le dimensioni del blocco CPU di un thread sono controllate dalle sue nice
valore, che ha un'estensione relazione inversa al tempo della CPU (e priorità). Per eseguire ogni processo o richiesta in ingresso con la priorità corretta, Intelligence Server preleva uno o più thread da un pool, assegna dinamicamente i thread con una nice
per eseguire il processo o la richiesta, quindi reimposta il valore nice
value sul valore predefinito di 0
, prima di restituire i thread al pool. Questa dinamica nice
assegnazione di un valore, in particolare per il ripristino di 0
dopo aver aumentato il valore corretto (eliminazione delle priorità) dei thread delle richieste in background, è necessaria la configurazione di a livello utente limite per nice
.
Per alleggerire la complessità della distribuzione, il programma di installazione di MicroStrategy configura automaticamente il file nice
value, purché eseguito da a root
utente. In caso contrario, se il programma di installazione viene eseguito da unroot
utente, il nice
Impossibile configurare il limite e vengono visualizzati i seguenti messaggi.
-
Al termine del processo di installazione, durante il programma di installazione di MicroStrategy verrà visualizzato uno dei seguenti messaggi:
-
Un messaggio simile viene visualizzato nell'output standard quando il programma di installazione viene eseguito dalla riga di comando. Se invece il programma di installazione viene eseguito in modalità invisibile, le seguenti voci vengono aggiunte a install.log file.
Copia3 Jun 2020, 11:35:27 AM:SEVERE: Failed to set MicroStrategy Intelligence priority process settings
3 Jun 2020, 11:35:27 AM:SEVERE: Priority process settings for MicroStrategy Intelligence doesn't meet the requirements
3 Jun 2020, 11:35:27 AM:SEVERE: Root privileges are required to configure the nice limit to 0 or lower -
Nonostante il messaggio di errore riportato sopra, è ancora possibile avviare Intelligence Server una volta completata l'installazione. Per verificare l'errore
nice
quando Intelligence Server è in esecuzione, aprire il fileDSSErrors.log
e cercare le seguenti voci:Copia... [Kernel][Error] ... The maximum scheduling priority ("nice") returned by "ulimit - e" has a value of %1. It does not satisfy the job prioritization feature's requirement that expects a value of 20 or higher. Please refer to the man page of "ulimit".
Copia... [Kernel][Info] ... The job prioritization feature is disabled.
Per risolvere il problema, è necessario configurare la massima nice
limite, verificabile mediante ulimit -e
comando, fino al valore corretto di 20
, o versione successiva. Per configurare e verificare il nice
limite, fare riferimento alla seguente procedura:
- Arrestare l'Intelligence Server se è in esecuzione.
- Utilizzando il privilegio di superutente (ad es. con
sudo
comando), creare un nuovo file di configurazione. MicroStrategy consiglia di utilizzare il nomemstr-priority.conf
sotto il/etc/security/limits.d
cartella. -
Aggiungi le seguenti voci al file di configurazione:
Copiamstr hard nice 0
mstr soft nice 0 - Salvare il file di configurazione.
- Riavvia la sessione esistente per applicare i nuovi limiti. Puoi semplicemente disconnetterti e riconnetterti alla nuova sessione quando usi SSH. Quando si utilizza VNC, è possibile riavviare il servizio, ad esempio utilizzando a
systemctl restart vncserver@:1.service
e quindi riconnettersi alla sessione. In entrambi i casi, assicurarsimstr
utente viene utilizzato per riconnettersi. - Verificare l'impostazione eseguendo
ulimit -e
e verificare che il valore restituito sia20
, o versione successiva. - Riavviare Intelligence Server.
- Controllare il
DSSErrors.log
per verificare che non siano presenti messaggi di errore relativi anice
limite e l'assegnazione di priorità al processo è abilitata.
Le impostazioni sopra descritte modificano solo il massimo nice
valore per mstr
utente e non dovrebbe influenzare altri utenti. Dovresti essere consapevole dei seguenti due scenari speciali:
- È necessario sostituire
mstr
con il nome utente che eseguirà Intelligence Server nei passaggi precedenti. Per impostazione predefinita, il programma di installazione di MicroStrategy crea un'estensionemstr
utente a questo scopo, ma è possibile scegliere un altro utente durante o dopo l'installazione. -
Quando si esegue Intelligence Server tramite una sessione VNC avviata utilizzando
systemd
, il passaggio 6 potrebbe non restituire il valore corretto,20
, per questo motivo problema noto di Linux. Per risolvere questo problema, aggiungere la seguente impostazione a /etc/systemd/user.conf
e/etc/systemd/system.conf
:CopiaDefaultLimitNICE=20
Per applicare l'impostazione, eseguire
systemctl daemon-reexec
e riavvia la sessione VNC, ad esempio usando asystemctl restart vncserver@:1.service
comando. In alternativa, puoi riavviare il computer. - Il computer Linux potrebbe disporre di ulteriori impostazioni di limiti a livello di sistema o utente che lo impediscono
ulimit -e
dalla restituzione del valore corretto di20
, o versione successiva. In questo caso, controlla le impostazioni dei limiti disponibili per la tua specifica distribuzione Linux.