cephx
L'architettura di Ceph Manager (per una breve presentazione, consultare questo riferimento: Sezione 1.2.3, «Daemon e nodi Ceph») consente di estendere le sue funzionalità tramite i moduli, come "dashboard" (vedere il Capitolo 22, Ceph Dashboard), "prometheus" (vedere il Capitolo 7, Monitoraggio e creazione di avvisi) o "servizio di bilanciamento".
Per visualizzare un elenco di tutti i moduli disponibili, eseguire:
cephadm@adm >
ceph mgr module ls
{
"enabled_modules": [
"restful",
"status"
],
"disabled_modules": [
"dashboard"
]
}
Per abilitare o disabilitare un modulo specifico, eseguire:
cephadm@adm >
ceph mgr module enable MODULE-NAME
Ad esempio:
cephadm@adm >
ceph mgr module disable dashboard
Per visualizzare un elenco dei servizi forniti dai moduli abilitati, eseguire:
cephadm@adm >
ceph mgr services
{
"dashboard": "http://myserver.com:7789/",
"restful": "https://myserver.com:8789/"
}
Il modulo del servizio di bilanciamento consente di ottimizzare la distribuzione del gruppo di posizionamento (PG) sugli OSD per una distribuzione più bilanciata. Anche se attivato per default, il modulo è inattivo. Supporta le due modalità seguenti: "crush-compat" e "upmap".
Per visualizzare la configurazione corrente del servizio di bilanciamento, eseguire:
cephadm@adm >
ceph config-key dump
Al momento è supportata soltanto la modalità "crush-compat" poiché la modalità "upmap" richiede una funzione degli OSD che impedisce agli OSD precedenti a Ceph Luminous di eseguire la connessione al cluster.
Nella modalità "crush-compat", il servizio di bilanciamento regola il valore reweight-sets degli OSD per ottenere una migliore distribuzione dei dati. Sposta i gruppi di posizionamento tra gli OSD, attivando temporaneamente lo stato HEALTH_WARN sul cluster derivante dalla posizione errata dei gruppi di posizionamento.
Anche se "crush-compat" è la modalità di default, si consiglia di attivarla esplicitamente:
cephadm@adm >
ceph balancer mode crush-compat
Tramite il modulo del servizio di bilanciamento, è possibile pianificare il bilanciamento dei dati. È quindi possibile eseguire manualmente tale pianificazione oppure impostare il bilanciamento continuo dei gruppi di posizionamento tramite il servizio di bilanciamento.
La scelta di eseguire il servizio di bilanciamento in modalità automatica o manuale dipende da diversi fattori, come lo squilibrio dei dati attuali, le dimensioni del cluster, il numero di gruppi di posizionamento o l'attività I/O. Si consiglia di creare una pianificazione iniziale e di eseguirla quando il carico I/O sul cluster è ridotto. Infatti, lo squilibrio iniziale sarà probabilmente notevole ed è quindi consigliabile mantenere basso l'impatto sui client. Dopo l'iniziale esecuzione manuale, considerare l'attivazione della modalità automatica e monitorare il traffico di ribilanciamento in condizioni di carico I/O normale. I miglioramenti apportati alla distribuzione del gruppo di posizionamento devono essere ponderati in base al traffico di ribilanciamento creato dal servizio di bilanciamento.
Durante il processo di bilanciamento, il modulo del servizio di bilanciamento limita i movimenti del gruppo di posizionamento per fare in modo che ne venga spostata soltanto una frazione configurabile. Il valore di default è 5% ed è possibile regolare la frazione, ad esempio sul 9%, eseguendo il comando seguente:
cephadm@adm >
ceph config set mgr target_max_misplaced_ratio .09
Per creare ed eseguire una pianificazione del bilanciamento, seguire la procedura indicata di seguito:
Controllare il punteggio del cluster corrente:
cephadm@adm >
ceph balancer eval
Creare una pianificazione. Ad esempio, "great_plan":
cephadm@adm >
ceph balancer optimize great_plan
Verificare i cambiamenti implicati dall'uso di "great_plan":
cephadm@adm >
ceph balancer show great_plan
Controllare il punteggio potenziale del cluster se si dovesse decidere di applicare "great_plan":
cephadm@adm >
ceph balancer eval great_plan
Eseguire "great_plan" per una sola volta:
cephadm@adm >
ceph balancer execute great_plan
Osservare il bilanciamento del cluster con il comando ceph -s
. Se si è soddisfatti del risultato, attivare il bilanciamento automatico:
cephadm@adm >
ceph balancer on
Se in un secondo momento si decide di disattivare il bilanciamento automatico, eseguire:
cephadm@adm >
ceph balancer off
È possibile attivare il bilanciamento automatico senza eseguire una pianificazione iniziale. In questo caso, l'esecuzione del ribilanciamento dei gruppi di posizionamento potrebbe impiegare molto tempo.
Il plug-in di telemetria consente di inviare i dati anonimi del progetto Ceph relativi al cluster su cui è in esecuzione il plug-in.
Questo componente (che richiede il consenso esplicito) contiene contatori e statistiche sulla modalità di distribuzione del cluster, sulla versione di Ceph, sulla distribuzione degli host e su altri parametri, che consentono di comprendere meglio l'utilizzo di Ceph. Non contiene nessun dato sensibile come nomi dei pool, nomi e contenuto di oggetti o nomi host.
Lo scopo del modulo di telemetria consiste nel fornire agli sviluppatori un ciclo di feedback automatizzato per agevolare il calcolo dei tassi di adozione, il controllo o l'individuazione degli aspetti da approfondire o convalidare ulteriormente durante la configurazione per evitare risultati indesiderati.
Per essere in grado di inviare i dati su HTTPS ai server upstream, il modulo di telemetria richiede i nodi Ceph Manager. Assicurarsi che i firewall aziendali consentano questa azione.
Per abilitare il modulo di telemetria:
cephadm@adm >
ceph mgr module enable telemetry
Questo comando consente soltanto di visualizzare i dati a livello locale. Questo comando non condivide i dati con la community di Ceph.
Per consentire al modulo di telemetria di avviare la condivisione dei dati:
cephadm@adm >
ceph telemetry on
Per disabilitare la condivisione dei dati di telemetria:
cephadm@adm >
ceph telemetry off
Per generare un rapporto JSON stampabile:
cephadm@adm >
ceph telemetry show
Per aggiungere un contatto e una descrizione al rapporto:
cephadm@adm >
ceph config set mgr mgr/telemetry/contact ‘John Doejohn.doe@example.com
’cephadm@adm >
ceph config set mgr mgr/telemetry/description ‘My first Ceph cluster’
Per default, il modulo compila e invia un nuovo rapporto ogni 24 ore. Per modificare questo intervallo:
cephadm@adm >
ceph config set mgr mgr/telemetry/interval HOURS