Considerazioni sull'utilizzo di un server syslog esterno
Un server syslog esterno è un server esterno a StorageGRID che puoi utilizzare per raccogliere informazioni di controllo del sistema in un'unica posizione. Utilizzando un server syslog esterno è possibile ridurre il traffico di rete sui nodi amministrativi e gestire le informazioni in modo più efficiente. Per StorageGRID, il formato del pacchetto dei messaggi syslog in uscita è conforme a RFC 3164.
I tipi di informazioni di controllo che è possibile inviare al server syslog esterno includono:
-
Registri di controllo contenenti i messaggi di controllo generati durante il normale funzionamento del sistema
-
Eventi relativi alla sicurezza come accessi ed escalation alla radice
-
Registri delle applicazioni che potrebbero essere richiesti se è necessario aprire un caso di supporto per risolvere un problema riscontrato
Quando utilizzare un server syslog esterno
Un server syslog esterno è particolarmente utile se si dispone di una griglia di grandi dimensioni, si utilizzano più tipi di applicazioni S3 o si desidera conservare tutti i dati di audit. L'invio di informazioni di audit a un server syslog esterno consente di:
-
Raccogli e gestisci in modo più efficiente le informazioni di audit, come messaggi di audit, registri delle applicazioni ed eventi di sicurezza.
-
Riduci il traffico di rete sui tuoi nodi amministrativi poiché le informazioni di controllo vengono trasferite direttamente dai vari nodi di archiviazione al server syslog esterno, senza dover passare attraverso un nodo amministrativo.
Quando i log vengono inviati a un server syslog esterno, i singoli log superiori a 8.192 byte vengono troncati alla fine del messaggio per conformarsi alle limitazioni comuni nelle implementazioni dei server syslog esterni. Per massimizzare le opzioni di recupero completo dei dati in caso di guasto del server syslog esterno, fino a 20 GB di registri locali di record di controllo( localaudit.log
) vengono mantenuti su ogni nodo.
Come configurare un server syslog esterno
Per informazioni su come configurare un server syslog esterno, vedere"Configurare i messaggi di controllo e il server syslog esterno" .
Se si prevede di configurare l'utilizzo del protocollo TLS o RELP/TLS, è necessario disporre dei seguenti certificati:
-
Certificati CA del server: uno o più certificati CA attendibili per la verifica del server syslog esterno nella codifica PEM. Se omesso, verrà utilizzato il certificato Grid CA predefinito.
-
Certificato client: il certificato client per l'autenticazione al server syslog esterno nella codifica PEM.
-
Chiave privata client: Chiave privata per il certificato client nella codifica PEM.
Se si utilizza un certificato client, è necessario utilizzare anche una chiave privata client. Se si fornisce una chiave privata crittografata, è necessario fornire anche la passphrase. Non vi è alcun vantaggio significativo in termini di sicurezza nell'utilizzare una chiave privata crittografata, poiché sia la chiave che la passphrase devono essere memorizzate; per semplicità, si consiglia di utilizzare una chiave privata non crittografata, se disponibile.
Come stimare la dimensione del server syslog esterno
Normalmente, la griglia viene dimensionata per raggiungere la produttività richiesta, definita in termini di operazioni S3 al secondo o byte al secondo. Ad esempio, potresti avere il requisito che la tua griglia gestisca 1.000 operazioni S3 al secondo, o 2.000 MB al secondo, di inserimenti e recuperi di oggetti. Dovresti dimensionare il tuo server syslog esterno in base ai requisiti di dati della tua griglia.
Questa sezione fornisce alcune formule euristiche che aiutano a stimare la velocità e la dimensione media dei messaggi di log di vario tipo che il server syslog esterno deve essere in grado di gestire, espresse in termini di caratteristiche prestazionali note o desiderate della griglia (operazioni S3 al secondo).
Utilizzare S3 operazioni al secondo nelle formule di stima
Se la griglia è stata dimensionata per una velocità espressa in byte al secondo, è necessario convertire questa dimensione in operazioni S3 al secondo per utilizzare le formule di stima. Per convertire la velocità effettiva della griglia, è necessario innanzitutto determinare la dimensione media dell'oggetto, operazione che è possibile effettuare utilizzando le informazioni presenti nei registri di controllo e nelle metriche esistenti (se presenti) oppure sfruttando la conoscenza delle applicazioni che utilizzeranno StorageGRID. Ad esempio, se la griglia è stata dimensionata per raggiungere una velocità di elaborazione di 2.000 MB/secondo e la dimensione media degli oggetti è di 2 MB, la griglia è stata dimensionata per poter gestire 1.000 operazioni S3 al secondo (2.000 MB / 2 MB).
|
Le formule per il dimensionamento del server syslog esterno nelle sezioni seguenti forniscono stime del caso comune (piuttosto che stime del caso peggiore). A seconda della configurazione e del carico di lavoro, potresti riscontrare una frequenza di messaggi syslog o un volume di dati syslog maggiore o minore rispetto a quanto previsto dalle formule. Le formule sono da intendersi solo come linee guida. |
Formule di stima per i registri di controllo
Se non si hanno informazioni sul carico di lavoro S3, a parte il numero di operazioni S3 al secondo che la griglia dovrebbe supportare, è possibile stimare il volume di log di controllo che il server syslog esterno dovrà gestire utilizzando le seguenti formule, partendo dal presupposto che i Livelli di controllo vengano lasciati impostati sui valori predefiniti (tutte le categorie impostate su Normale, eccetto Archiviazione, che è impostata su Errore):
Audit Log Rate = 2 x S3 Operations Rate Audit Log Average Size = 800 bytes
Ad esempio, se la griglia è dimensionata per 1.000 operazioni S3 al secondo, il server syslog esterno dovrebbe essere dimensionato per supportare 2.000 messaggi syslog al secondo e dovrebbe essere in grado di ricevere (e in genere archiviare) i dati del registro di controllo a una velocità di 1,6 MB al secondo.
Se si conoscono meglio i propri carichi di lavoro, è possibile ottenere stime più precise. Per i registri di controllo, le variabili aggiuntive più importanti sono la percentuale di operazioni S3 che sono PUT (rispetto a GETS) e la dimensione media, in byte, dei seguenti campi S3 (le abbreviazioni di 4 caratteri utilizzate nella tabella sono nomi di campi del registro di controllo):
Codice | Campo | Descrizione |
---|---|---|
SACC |
Nome dell'account tenant S3 (mittente della richiesta) |
Nome dell'account tenant dell'utente che ha inviato la richiesta. Vuoto per richieste anonime. |
SBAC |
Nome dell'account tenant S3 (proprietario del bucket) |
Nome dell'account tenant per il proprietario del bucket. Utilizzato per identificare l'accesso multiaccount o anonimo. |
S3BK |
Secchio S3 |
Nome del bucket S3. |
S3KY |
Tasto S3 |
Nome della chiave S3, escluso il nome del bucket. Le operazioni sui bucket non includono questo campo. |
Utilizziamo P per rappresentare la percentuale di operazioni S3 che sono PUT, dove 0 ≤ P ≤ 1 (quindi per un carico di lavoro PUT del 100%, P = 1 e per un carico di lavoro GET del 100%, P = 0).
Utilizziamo K per rappresentare la dimensione media della somma dei nomi degli account S3, del bucket S3 e della chiave S3. Supponiamo che il nome dell'account S3 sia sempre my-s3-account (13 byte), che i bucket abbiano nomi di lunghezza fissa come /my/application/bucket-12345 (28 byte) e che gli oggetti abbiano chiavi di lunghezza fissa come 5733a5d7-f069-41ef-8fbd-13247494c69c (36 byte). Quindi il valore di K è 90 (13+13+28+36).
Se è possibile determinare i valori per P e K, è possibile stimare il volume dei log di controllo che il server syslog esterno dovrà gestire utilizzando le seguenti formule, partendo dal presupposto che i Livelli di controllo vengano lasciati impostati sui valori predefiniti (tutte le categorie impostate su Normale, tranne Archiviazione, che è impostata su Errore):
Audit Log Rate = ((2 x P) + (1 - P)) x S3 Operations Rate Audit Log Average Size = (570 + K) bytes
Ad esempio, se la griglia è dimensionata per 1.000 operazioni S3 al secondo, il carico di lavoro è costituito al 50% da PUT e i nomi degli account S3, dei bucket e degli oggetti sono in media pari a 90 byte, il server syslog esterno dovrebbe essere dimensionato per supportare 1.500 messaggi syslog al secondo e dovrebbe essere in grado di ricevere (e in genere archiviare) i dati del registro di controllo a una velocità di circa 1 MB al secondo.
Formule di stima per livelli di audit non predefiniti
Le formule fornite per i registri di controllo presuppongono l'utilizzo delle impostazioni predefinite del livello di controllo (tutte le categorie impostate su Normale, tranne Archiviazione, che è impostata su Errore). Non sono disponibili formule dettagliate per stimare la frequenza e la dimensione media dei messaggi di controllo per impostazioni di livello di controllo non predefinite. Tuttavia, la tabella seguente può essere utilizzata per effettuare una stima approssimativa della frequenza; è possibile utilizzare la formula per la dimensione media fornita per i registri di controllo, ma è importante tenere presente che è probabile che si ottenga una sovrastima perché i messaggi di controllo "extra" sono, in media, più piccoli dei messaggi di controllo predefiniti.
Condizione | Formula |
---|---|
Replica: tutti i livelli di controllo impostati su Debug o Normale |
Tasso di controllo log = 8 x tasso di operazioni S3 |
Codifica di cancellazione: livelli di controllo tutti impostati su Debug o Normale |
Utilizzare la stessa formula delle impostazioni predefinite |
Formule di stima per eventi di sicurezza
Gli eventi di sicurezza non sono correlati alle operazioni S3 e in genere producono un volume trascurabile di registri e dati. Per questi motivi non vengono fornite formule di stima.
Formule di stima per i registri delle applicazioni
Se non si hanno informazioni sul carico di lavoro S3, a parte il numero di operazioni S3 al secondo che la griglia dovrebbe supportare, è possibile stimare il volume dei registri delle applicazioni che il server syslog esterno dovrà gestire utilizzando le seguenti formule:
Application Log Rate = 3.3 x S3 Operations Rate Application Log Average Size = 350 bytes
Ad esempio, se la griglia è dimensionata per 1.000 operazioni S3 al secondo, il server syslog esterno dovrebbe essere dimensionato per supportare 3.300 log delle applicazioni al secondo ed essere in grado di ricevere (e archiviare) i dati dei log delle applicazioni a una velocità di circa 1,2 MB al secondo.
Se si conoscono meglio i propri carichi di lavoro, è possibile ottenere stime più precise. Per i registri delle applicazioni, le variabili aggiuntive più importanti sono la strategia di protezione dei dati (replicazione vs. codifica di cancellazione), la percentuale di operazioni S3 che sono PUT (vs. GET/altro) e la dimensione media, in byte, dei seguenti campi S3 (le abbreviazioni di 4 caratteri utilizzate nella tabella sono nomi di campi del registro di controllo):
Codice | Campo | Descrizione |
---|---|---|
SACC |
Nome dell'account tenant S3 (mittente della richiesta) |
Nome dell'account tenant dell'utente che ha inviato la richiesta. Vuoto per richieste anonime. |
SBAC |
Nome dell'account tenant S3 (proprietario del bucket) |
Nome dell'account tenant per il proprietario del bucket. Utilizzato per identificare l'accesso multiaccount o anonimo. |
S3BK |
Secchio S3 |
Nome del bucket S3. |
S3KY |
Tasto S3 |
Nome della chiave S3, escluso il nome del bucket. Le operazioni sui bucket non includono questo campo. |
Esempi di stime dimensionali
In questa sezione vengono illustrati alcuni casi esemplificativi su come utilizzare le formule di stima per le griglie con i seguenti metodi di protezione dei dati:
-
Replicazione
-
Codifica di cancellazione
Se si utilizza la replica per la protezione dei dati
Sia P la percentuale di operazioni S3 che sono PUT, dove 0 ≤ P ≤ 1 (quindi per un carico di lavoro PUT del 100%, P = 1 e per un carico di lavoro GET del 100%, P = 0).
Sia K la dimensione media della somma dei nomi degli account S3, del bucket S3 e della chiave S3. Supponiamo che il nome dell'account S3 sia sempre my-s3-account (13 byte), che i bucket abbiano nomi di lunghezza fissa come /my/application/bucket-12345 (28 byte) e che gli oggetti abbiano chiavi di lunghezza fissa come 5733a5d7-f069-41ef-8fbd-13247494c69c (36 byte). Allora K ha un valore di 90 (13+13+28+36).
Se riesci a determinare i valori per P e K, puoi stimare il volume dei log delle applicazioni che il tuo server syslog esterno dovrà essere in grado di gestire utilizzando le seguenti formule.
Application Log Rate = ((1.1 x P) + (2.5 x (1 - P))) x S3 Operations Rate Application Log Average Size = (P x (220 + K)) + ((1 - P) x (240 + (0.2 x K))) Bytes
Quindi, ad esempio, se la griglia è dimensionata per 1.000 operazioni S3 al secondo, il carico di lavoro è costituito al 50% da PUT e i nomi degli account S3, dei bucket e degli oggetti sono in media pari a 90 byte, il server syslog esterno dovrebbe essere dimensionato per supportare 1.800 log delle applicazioni al secondo e riceverà (e in genere memorizzerà) i dati delle applicazioni a una velocità di 0,5 MB al secondo.
Se si utilizza la codifica di cancellazione per la protezione dei dati
Sia P la percentuale di operazioni S3 che sono PUT, dove 0 ≤ P ≤ 1 (quindi per un carico di lavoro PUT del 100%, P = 1 e per un carico di lavoro GET del 100%, P = 0).
Sia K la dimensione media della somma dei nomi degli account S3, del bucket S3 e della chiave S3. Supponiamo che il nome dell'account S3 sia sempre my-s3-account (13 byte), che i bucket abbiano nomi di lunghezza fissa come /my/application/bucket-12345 (28 byte) e che gli oggetti abbiano chiavi di lunghezza fissa come 5733a5d7-f069-41ef-8fbd-13247494c69c (36 byte). Allora K ha un valore di 90 (13+13+28+36).
Se riesci a determinare i valori per P e K, puoi stimare il volume dei log delle applicazioni che il tuo server syslog esterno dovrà essere in grado di gestire utilizzando le seguenti formule.
Application Log Rate = ((3.2 x P) + (1.3 x (1 - P))) x S3 Operations Rate Application Log Average Size = (P x (240 + (0.4 x K))) + ((1 - P) x (185 + (0.9 x K))) Bytes
Quindi, ad esempio, se la griglia è dimensionata per 1.000 operazioni S3 al secondo, il carico di lavoro è costituito al 50% da PUT e i nomi degli account S3, dei bucket e degli oggetti sono in media pari a 90 byte, il server syslog esterno dovrebbe essere dimensionato per supportare 2.250 log delle applicazioni al secondo e dovrebbe essere in grado di ricevere (e in genere archiviare) i dati delle applicazioni a una velocità di 0,6 MB al secondo.