Vai al contenutoNaviga tra le pagine: pagina precedente [tasto di scelta p]/pagina successiva [tasto di scelta n]
documentation.suse.com / Documentazione di SUSE Enterprise Storage 7 / Guida alle operazioni e all'amministrazione / Configurazione di un cluster / Configurazione del cluster Ceph
Si applica a SUSE Enterprise Storage 7

28 Configurazione del cluster Ceph

Questo capitolo descrive come configurare il cluster Ceph utilizzando le opzioni apposite.

28.1 Configurazione del file ceph.conf

cephadm utilizza un file ceph.conf di base che contiene soltanto un insieme minimo di opzioni per la connessione ai MON, l'autenticazione e il recupero delle informazioni di configurazione. Nella maggior parte dei casi, ciò è limitato all'opzione mon_host (anche se è possibile evitarlo utilizzando i record DNS SRV).

Importante
Importante

Il file ceph.conf non funge più da posizione centrale per la memorizzazione della configurazione del cluster, a favore del database di configurazione (vedere la Sezione 28.2, «Database di configurazione»).

Se tuttavia è necessario modificare la configurazione del cluster tramite il file ceph.conf, ad esempio perché si utilizza un client che non è in grado di supportare le opzioni di lettura dal database di configurazione, è necessario eseguire il comando seguente e mantenere e distribuire il file ceph.conf nell'intero cluster:

cephuser@adm > ceph config set mgr mgr/cephadm/manage_etc_ceph_ceph_conf false

28.1.1 Accesso a ceph.conf nelle immagini del container

Nonostante i daemon Ceph vengano eseguiti all'interno dei container, è possibile comunque accedere al relativo file di configurazione ceph.conf, montato in bind mount, come il file seguente sul sistema host:

/var/lib/ceph/CLUSTER_FSID/DAEMON_NAME/config

Sostituire CLUSTER_FSID con l'FSID univoco del cluster in esecuzione così come restituito dal comando ceph fsid e DAEMON_NAME con il nome del daemon specifico così come riportato dal comando ceph orch ps. Esempio:

/var/lib/ceph/b4b30c6e-9681-11ea-ac39-525400d7702d/osd.2/config

Per modificare la configurazione di un daemon, modificare il relativo file config e riavviarlo:

root # systemctl restart ceph-CLUSTER_FSID-DAEMON_NAME

Esempio:

root # systemctl restart ceph-b4b30c6e-9681-11ea-ac39-525400d7702d-osd.2
Importante
Importante

Tutte le impostazioni personalizzate andranno perse dopo che cephadm ripeterà la distribuzione del daemon.

28.2 Database di configurazione

I Ceph Monitor gestiscono un database centrale delle opzioni di configurazione che influiscono sul comportamento dell'intero cluster.

28.2.1 Sezioni e maschere di configurazione

Le opzioni di configurazione archiviate dal MON possono risiedere in una sezione globale oppure in una sezione del tipo di daemon o di un daemon specifico. Le opzioni possono disporre inoltre di una maschera associata per limitare ulteriormente i daemon o i client a cui sono applicate. Le maschere presentano due forme:

  • TYPE:LOCATION, dove TYPE indica una proprietà CRUSH, come rack oppure host, e LOCATION indica un valore relativo a tale proprietà.

    Ad esempio, host:example_host limiterà l'opzione soltanto ai daemon o ai client in esecuzione su un determinato host.

  • CLASS:DEVICE_CLASS, dove DEVICE_CLASS indica il nome di una classe di dispositivi CRUSH, come hdd o ssd. Ad esempio, class:ssd limiterà l'opzione soltanto agli OSD supportati dai dispositivi SSD. Questa maschera non ha alcun effetto sui daemon o i client non OSD.

28.2.2 Impostazione e lettura delle opzioni di configurazione

Utilizzare i comandi seguenti per impostare o leggere le opzioni di configurazione del cluster. Il parametro WHO può essere il nome di una sezione, una maschera o entrambe, separate da una barra (/). Ad esempio, osd/rack:foo rappresenta tutti i daemon OSD nel rack denominato foo.

ceph config dump

Esegue il dump di tutto il database di configurazione per l'intero cluster.

ceph config get WHO

Esegue il dump della configurazione per un daemon o client specifico (ad esempio, mds.a) archiviato nel database di configurazione.

ceph config set WHO OPTION VALUE

Imposta l'opzione di configurazione sul valore specificato nel database di configurazione.

ceph config show WHO

Mostra la configurazione in esecuzione segnalata per un daemon in esecuzione. Se sono in uso anche dei file di configurazione locali o se le opzioni sono state sostituite nella riga di comando o al runtime, queste impostazioni possono differire da quelle archiviate dai monitor. L'origine dei valori di opzione è riportata come parte dell'output.

ceph config assimilate-conf -i INPUT_FILE -o OUTPUT_FILE

Importa un file di configurazione specificato come INPUT_FILE e archivia le opzioni valide nel database di configurazione. Le impostazioni non riconosciute, non valide o che non possono essere controllate dal monitor verranno restituite in un file abbreviato archiviato come OUTPUT_FILE. Questo comando è utile per eseguire la transizione dai file di configurazione esistenti alla configurazione centralizzata basata su monitor.

28.2.3 Configurazione dei daemon al runtime

Nella maggior parte dei casi, Ceph consente di apportare modifiche alla configurazione di un daemon al runtime. Ciò è utile, ad esempio, se è necessario aumentare o diminuire il numero di output di log o durante l'ottimizzazione del cluster di runtime.

È possibile aggiornare i valori delle opzioni di configurazione con il comando seguente:

cephuser@adm > ceph config set DAEMON OPTION VALUE

Ad esempio, per regolare il livello di log di debug su un OSD specifico, eseguire:

cephuser@adm > ceph config set osd.123 debug_ms 20
Nota
Nota

Se la stessa opzione è personalizzata anche in un file di configurazione locale, l'impostazione del monitor verrà ignorata poiché ha un livello di priorità inferiore rispetto al file di configurazione.

28.2.3.1 Sostituzione dei valori

È possibile modificare temporaneamente un valore di opzione tramite i sottocomandi tell o daemon. Tale modifica influisce soltanto sul processo in esecuzione e viene eliminata in seguito al riavvio del daemon o del processo.

Esistono due modi per sostituire i valori:

  • Utilizzare il sottocomando tell per inviare un messaggio a un daemon specifico da un qualsiasi nodo del cluster:

    cephuser@adm > ceph tell DAEMON config set OPTION VALUE

    Esempio:

    cephuser@adm > ceph tell osd.123 config set debug_osd 20
    Suggerimento
    Suggerimento

    Il sottocomando tell accetta i caratteri jolly come identificatori del daemon. Ad esempio, per regolare il livello di debug su tutti i daemon OSD, eseguire:

    cephuser@adm > ceph tell osd.* config set debug_osd 20
  • Utilizzare il sottocomando daemon per connettersi a un processo del daemon specifico tramite un socket in /var/run/ceph dal nodo su cui è in esecuzione il processo:

    cephuser@adm > ceph daemon DAEMON config set OPTION VALUE

    Esempio:

    cephuser@adm > ceph daemon osd.4 config set debug_osd 20
Suggerimento
Suggerimento

Durante la visualizzazione delle impostazioni di runtime con il comando ceph config show (vedere la Sezione 28.2.3.2, «Visualizzazione delle impostazioni di runtime»), i valori temporaneamente sostituiti vengono mostrati con un valore override di origine.

28.2.3.2 Visualizzazione delle impostazioni di runtime

Per visualizzare tutte le opzioni impostate per un daemon:

cephuser@adm > ceph config show-with-defaults osd.0

Per visualizzare tutte le opzioni non di default impostate per un daemon:

cephuser@adm > ceph config show osd.0

Per ispezionare un'opzione specifica:

cephuser@adm > ceph config show osd.0 debug_osd

È possibile inoltre connettersi a un daemon in esecuzione dal nodo su cui è in esecuzione tale processo e osservarne la configurazione:

cephuser@adm > ceph daemon osd.0 config show

Per visualizzare soltanto le impostazioni non di default:

cephuser@adm > ceph daemon osd.0 config diff

Per ispezionare un'opzione specifica:

cephuser@adm > ceph daemon osd.0 config get debug_osd

28.3 Archivio config-key

config-key è un servizio per utilizzo generico offerto dai Ceph Monitor. Semplifica la gestione delle chiavi di configurazione tramite la memorizzazione permanente delle coppie di chiave-valore. config-key è utilizzato principalmente dagli strumenti e dai daemon Ceph.

Suggerimento
Suggerimento

Dopo aver aggiunto una nuova chiave o averne modificata una esistente, riavviare il servizio interessato per applicare le modifiche. Nel Capitolo 14, Funzionamento dei servizi Ceph è possibile trovare ulteriori dettagli sull'attivazione dei servizi Ceph.

Utilizzare il comando config-key per eseguire l'archivio config-key. Il comando config-key utilizza i sottocomandi seguenti:

ceph config-key rm KEY

Elimina la chiave specificata.

ceph config-key exists KEY

Verifica la presenza della chiave specificata.

ceph config-key get KEY

Recupera il valore della chiave specificata.

ceph config-key ls

Elenca tutte le chiavi.

ceph config-key dump

Esegue il dump di tutte le chiavi e dei relativi valori.

ceph config-key set KEY VALUE

Archivia la chiave specificata con il valore specificato.

28.3.1 iSCSI Gateway

iSCSI Gateway utilizza l'archivio config-key per salvare o leggere le relative opzioni di configurazione. Tutte le chiavi relative a iSCSI Gateway dispongono del prefisso iscsi, ad esempio:

iscsi/trusted_ip_list
iscsi/api_port
iscsi/api_user
iscsi/api_password
iscsi/api_secure

Se ad esempio sono necessari due insiemi di opzioni di configurazione, estendere il prefisso con un'altra parola chiave descrittiva, come datacenterA e datacenterB:

iscsi/datacenterA/trusted_ip_list
iscsi/datacenterA/api_port
[...]
iscsi/datacenterB/trusted_ip_list
iscsi/datacenterB/api_port
[...]

28.4 Ceph OSD e BlueStore

28.4.1 Configurazione del ridimensionamento automatico della cache

È possibile configurare BlueStore sul ridimensionamento automatico delle cache se tc_malloc è configurato come allocatore di memoria e l'impostazione bluestore_cache_autotune è abilitata. Attualmente, questa opzione è abilitata per default. BlueStore tenterà di mantenere l'utilizzo della memoria heap dell'OSD al di sotto delle dimensioni di destinazione definite tramite l'opzione di configurazione osd_memory_target. Si tratta di un algoritmo best-effort e le cache non si ridurranno oltre le dimensioni specificate da osd_memory_cache_min. I rapporti della cache verranno selezionati in base a una gerarchia di priorità. Se le informazioni di priorità non sono disponibili, vengono utilizzate come fallback le opzioni bluestore_cache_meta_ratio e bluestore_cache_kv_ratio.

bluestore_cache_autotune

Ottimizza automaticamente i rapporti assegnati a diverse cache BlueStore restando nei valori minimi. L'impostazione di default è True.

osd_memory_target

Se tc_malloc e bluestore_cache_autotune sono abilitate, cerca di mantenere questo numero di byte mappati alla memoria.

Nota
Nota

Questo numero potrebbe non corrispondere esattamente all'utilizzo della memoria RSS del processo. Anche se di norma la quantità totale di memoria heap mappata dal processo non deve essere molto lontana da questo valore di destinazione, non vi sono garanzie che il kernel recupererà la memoria non mappata.

osd_memory_cache_min

Se tc_malloc e bluestore_cache_autotune sono abilitate, consente di impostare la quantità minima di memoria utilizzata per le cache.

Nota
Nota

Se viene impostato un valore troppo basso, può verificarsi un notevole trashing della cache.

28.5 Ceph Object Gateway

È possibile influenzare il comportamento di Object Gateway utilizzando diverse opzioni. Se un'opzione non viene specificata, ne viene utilizzato il valore di default. Di seguito è riportato un elenco completo delle opzioni di Object Gateway:

28.5.1 Impostazioni generali

rgw_frontends

Configura i front-end HTTP. Specificare più front-end in un elenco separato da virgole. Ogni configurazione di front-end può includere un elenco di opzioni separate da spazi, in cui ogni opzione è nel formato "key=value" o "key". L'impostazione di default è beast port=7480.

rgw_data

Imposta l'ubicazione dei file di dati per Object Gateway. L'impostazione di default è /var/lib/ceph/radosgw/CLUSTER_ID.

rgw_enable_apis

Abilita le API specificate. L'impostazione di default è "s3, swift, swift_auth, admin All APIs".

rgw_cache_enabled

Abilita o disabilita la cache di Object Gateway. L'impostazione di default è true.

rgw_cache_lru_size

Numero di voci nella cache di Object Gateway. Il valore di default è 10000.

rgw_socket_path

Percorso del socket per il socket di dominio. FastCgiExternalServer utilizza questo socket. Se non viene specificato nessun percorso del socket, Object Gateway non verrà eseguito come server esterno. Il percorso specificato qui deve essere lo stesso del percorso specificato nel file rgw.conf.

rgw_fcgi_socket_backlog

Backlog del socket per fcgi. Il valore di default è 1024.

rgw_host

Host dell'istanza di Object Gateway. Può essere un indirizzo IP o un nome host. Il valore di default è 0.0.0.0.

rgw_port

Numero di porta in cui l'istanza è in ascolto delle richieste. Se non è specificato, Object Gateway esegue il FastCGI esterno.

rgw_dns_name

Nome DNS del dominio servito.

rgw_script_uri

Valore alternativo di SCRIPT_URI se non impostato nella richiesta.

rgw_request_uri

Valore alternativo di REQUEST_URI se non impostato nella richiesta.

rgw_print_continue

Se attiva, abilitare 100-continue. L'impostazione di default è true.

rgw_remote_addr_param

Parametro dell'indirizzo remoto. Ad esempio, il campo HTTP contenente l'indirizzo remoto o l'indirizzo X-Forwarded-For se è attivo un proxy inverso. L'impostazione di default è REMOTE_ADDR.

rgw_op_thread_timeout

Timeout espresso in secondi per i thread aperti. Il valore di default è 600.

rgw_op_thread_suicide_timeout

Timeout espresso in secondi prima del termine del processo di Object Gateway. Se è impostata a 0 (default), questa impostazione è disabilitata.

rgw_thread_pool_size

Numero di thread per il server Oggetto beast. Aumentare il valore se è necessario provvedere a più richieste. Il valore di default è 100 thread.

rgw_num_rados_handles

Numero di handle del cluster RADOS per Object Gateway. Adesso per ciascun thread di lavoro Object Gateway viene selezionato un handle RADOS permanente. Questa opzione potrebbe diventare obsoleta e rimossa dalle release future. Il valore di default è 1.

rgw_num_control_oids

Numero di oggetti di notifica utilizzati per la sincronizzazione della cache tra diverse istanze di Object Gateway. Il valore di default è 8.

rgw_init_timeout

Numero di secondi prima che Object Gateway smetta di tentare di effettuare l'inizializzazione. Il valore di default è 30.

rgw_mime_types_file

Percorso e ubicazione dei tipi MIME. Utilizzata per il rilevamento automatico Swift dei tipi di oggetto. L'impostazione di default è /etc/mime.types.

rgw_gc_max_objs

Numero massimo di oggetti che possono essere gestiti dal recupero spazio in un ciclo di elaborazione di recupero spazio. Il valore di default è 32.

rgw_gc_obj_min_wait

Tempo di attesa minimo prima che l'oggetto venga rimosso e gestito dal processo di recupero spazio. Il valore di default è 2 * 3600.

rgw_gc_processor_max_time

Durata massima tra l'inizio di due cicli di elaborazione di recupero spazio consecutivi. Il valore di default è 3600.

rgw_gc_processor_period

Durata del ciclo di elaborazione di recupero spazio. Il valore di default è 3600.

rgw_s3_success_create_obj_status

Risposta alternativa di stato riuscito per create-obj. Il valore di default è 0.

rgw_resolve_cname

Determina se Object Gateway deve utilizzare il record DNS CNAME del campo del nome host della richiesta (se il nome host non è uguale al nome DNS di Object Gateway). L'impostazione di default è false.

rgw_obj_stripe_size

Dimensioni di striping di oggetto per gli oggetti Object Gateway. Il valore di default è 4 << 20.

rgw_extended_http_attrs

Aggiunge un nuovo set di attributi che è possibile impostare su un'entità (ad esempio un utente, un compartimento o un oggetto). È possibile impostare tali attributi aggiuntivi tramite i campi dell'intestazione HTTP quando si inserisce o si modifica l'entità tramite il metodo POST. Se impostati, questi attributi verranno restituiti come campi HTTP durante la richiesta GET/HEAD sull'entità. L'impostazione di default è content_foo, content_bar, x-foo-bar.

rgw_exit_timeout_secs

Numero di secondi in cui restare in attesa di un processo prima dell'uscita senza condizioni. Il valore di default è 120.

rgw_get_obj_window_size

Dimensioni in byte della finestra di una singola richiesta di oggetto. Il valore di default è 16 << 20.

rgw_get_obj_max_req_size

Dimensioni massime della richiesta di una singola operazione GET inviata al cluster di memorizzazione Ceph. Il valore di default è 4 << 20.

rgw_relaxed_s3_bucket_names

Abilita le regole minime del nome del compartimento S3 per i compartimenti dell'area US. L'impostazione di default è false.

rgw_list_buckets_max_chunk

Numero massimo di compartimenti da recuperare durante un'operazione singola quando vengono elencati i compartimenti dell'utente. Il valore di default è 1000.

rgw_override_bucket_index_max_shards

Rappresenta il numero di partizioni dell'oggetto di indice del compartimento. Se viene impostata a 0 (default), il partizionamento non verrà eseguito. Si sconsiglia di impostare un valore troppo elevato (ad esempio 1000) poiché ciò aumenta i costi di creazione dell'elenco dei compartimenti. Impostare questa variabile nelle sezioni client o global per applicarla automaticamente ai comandi radosgw-admin.

rgw_curl_wait_timeout_ms

Timeout espresso in millisecondi per determinate chiamate curl. Il valore di default è 1000.

rgw_copy_obj_progress

Abilita l'output dell'avanzamento dell'oggetto durante le operazioni di copia più lunghe. L'impostazione di default è true.

rgw_copy_obj_progress_every_bytes

Byte minimi tra gli output dell'avanzamento della copia. Il valore di default è 1024 * 1024.

rgw_admin_entry

Punto di entrata di un URL della richiesta admin. L'impostazione di default è admin.

rgw_content_length_compat

Abilita la gestione di compatibilità delle richieste FCGI con le opzioni CONTENT_LENGTH E HTTP_CONTENT_LENGTH impostate. L'impostazione di default è false.

rgw_bucket_quota_ttl

Intervallo di tempo espresso in secondi durante il quale le informazioni sulla quota memorizzate nella cache sono attendibili. Dopo questo timeout, le informazioni sulla quota verranno recuperate nuovamente dal cluster. Il valore di default è 600.

rgw_user_quota_bucket_sync_interval

Intervallo di tempo espresso in secondi durante il quale le informazioni sulla quota del compartimento vengono accumulate prima della sincronizzazione con il cluster. Durante questo intervallo, le altre istanze di Object Gateway non visualizzeranno le modifiche apportate alle statistiche sulla quota del compartimento relative alle operazioni su tale istanza. Il valore di default è 180.

rgw_user_quota_sync_interval

Intervallo di tempo espresso in secondi durante il quale le informazioni sulla quota utenti vengono accumulate prima della sincronizzazione con il cluster. Durante questo intervallo, le altre istanze di Object Gateway non visualizzeranno le modifiche apportate alle statistiche sulla quota utenti relative alle operazioni su tale istanza. Il valore di default è 180.

rgw_bucket_default_quota_max_objects

Numero massimo di default di oggetti per compartimento. Viene impostata per i nuovi utenti se non viene specificata nessuna quota e non ha effetto sugli utenti esistenti. Impostare questa variabile nelle sezioni client o global per applicarla automaticamente ai comandi radosgw-admin. Il valore di default è -1.

rgw_bucket_default_quota_max_size

Capacità massima di default di ciascun compartimento espressa in byte. Viene impostata per i nuovi utenti se non viene specificata nessuna quota e non ha effetto sugli utenti esistenti. Il valore di default è -1.

rgw_user_default_quota_max_objects

Numero massimo di default di oggetti per utente. Sono inclusi tutti gli oggetti in tutti i compartimenti di proprietà dell'utente. Viene impostata per i nuovi utenti se non viene specificata nessuna quota e non ha effetto sugli utenti esistenti. Il valore di default è -1.

rgw_user_default_quota_max_size

Valore delle dimensioni massime della quota utenti espresso in byte impostato per i nuovi utenti se non viene specificata nessun'altra quota. Non ha effetto sugli utenti esistenti. Il valore di default è -1.

rgw_verify_ssl

Verifica i certificati SSL durante la creazione delle richieste. L'impostazione di default è true.

rgw_max_chunk_size

Dimensioni massime di una porzione di dati che verrà letta in una singola operazione. Se si aumenta il valore a 4 MB (4194304) si otterranno prestazioni migliori durante l'elaborazione di oggetti di grandi dimensioni. Il valore di default è 128 kB (131072).

Impostazioni multisito
rgw_zone

Nome della zona per l'istanza del gateway. Se non viene impostata nessuna zona, è possibile configurare un valore di default in tutto il cluster con il comando radosgw-admin zone default.

rgw_zonegroup

Nome del gruppo di zone per l'istanza del gateway. Se non viene impostato nessun gruppo di zone, è possibile configurare un valore di default in tutto il cluster con il comando radosgw-admin zonegroup default.

rgw_realm

Nome del dominio per l'istanza del gateway. Se non viene impostato nessun dominio, è possibile configurare un valore di default in tutto il cluster con il comando radosgw-admin realm default.

rgw_run_sync_thread

Se nel dominio sono presenti altre zone da cui eseguire la sincronizzazione, generare dei thread per gestire la sincronizzazione dei dati e dei metadati. L'impostazione di default è true.

rgw_data_log_window

Finestra delle voci del log dei dati in secondi. Il valore di default è 30.

rgw_data_log_changes_size

Numero di voci nella memoria da mettere in attesa per il log delle modifiche dei dati. Il valore di default è 1000.

rgw_data_log_obj_prefix

Prefisso del nome di oggetto del log dei dati. L'impostazione di default è "data_log".

rgw_data_log_num_shards

Numero di partizioni (oggetti) su cui conservare il log delle modifiche dei dati. Il valore di default è 128.

rgw_md_log_max_shards

Numero massimo di partizioni per il log dei metadati. Il valore di default è 64.

Impostazioni Swift
rgw_enforce_swift_acls

Applica le impostazioni dell'elenco di controllo dell'accesso (ACL) Swift. L'impostazione di default è true.

rgw_swift_token_expiration

Tempo espresso in secondi per la scadenza di un token Swift. Il valore di default è 24 * 3600.

rgw_swift_url

URL dell'API Swift di Ceph Object Gateway.

rgw_swift_url_prefix

Prefisso URL dello StorageURL Swift che precede la porzione di testo "/v1". Ciò consente di eseguire più istanze del gateway sullo stesso host. Per ragioni di compatibilità, se per questa variabile di configurazione non viene impostato alcun valore, verrà utilizzato il valore "/swift" di default. Utilizzare il prefisso esplicito "/" come inizio dello StorageURL dalla radice.

Avvertimento
Avvertimento

Questa opzione non funzionerà se viene impostata su "/" e se l'API S3 è abilitata. Tenere presente che la disabilitazione di S3 non consentirà la distribuzione di Object Gateway nella configurazione multisito.

rgw_swift_auth_url

URL di default per la verifica dei token di autenticazione v1 quando l'autenticazione Swift interna non è utilizzata.

rgw_swift_auth_entry

Punto di entrata di un URL di autenticazione Swift. L'impostazione di default è auth.

rgw_swift_versioning_enabled

Abilita il controllo versioni dell'oggetto dell'API Object Storage di OpenStack. Ciò consente ai client di inserire l'attributo X-Versions-Location sui container di cui deve essere creata una versione. L'attributo specifica il nome del container in cui sono memorizzate le versioni archiviate. Deve essere di proprietà dello stesso utente del container con versione per motivi di verifica del controllo dell'accesso (gli ACL non sono presi in considerazione). Non è possibile creare una versione per tali container con il meccanismo di controllo versioni dell'oggetto S3. L'impostazione di default è false.

Impostazioni del logging
rgw_log_nonexistent_bucket

Abilita Object Gateway per il logging di una richiesta relativa a un compartimento inesistente. L'impostazione di default è false.

rgw_log_object_name

Formato di registrazione di un nome oggetto. Per i dettagli sugli identificatori del formato, consultare la documentazione man 1 date. L'impostazione di default è %Y-%m-%d-%H-%i-%n.

rgw_log_object_name_utc

Specifica se nel nome oggetto registrato è inclusa l'ora UTC. Se è impostata su false (default), viene utilizzata l'ora locale.

rgw_usage_max_shards

Numero massimo di partizioni per la registrazione dell'utilizzo. Il valore di default è 32.

rgw_usage_max_user_shards

Numero massimo di partizioni utilizzate per la registrazione dell'utilizzo di un singolo utente. Il valore di default è 1.

rgw_enable_ops_log

Abilita la registrazione di ciascuna operazione Object Gateway riuscita. L'impostazione di default è false.

rgw_enable_usage_log

Abilita il log di utilizzo. L'impostazione di default è false.

rgw_ops_log_rados

Specifica se scrivere il log delle operazioni sul back-end del cluster di memorizzazione Ceph. L'impostazione di default è true.

rgw_ops_log_socket_path

Socket del dominio Unix per i log delle operazioni di scrittura.

rgw_ops_log_data_backlog

Dimensioni dei dati massime del backlog dei dati per i log delle operazioni scritte su un socket del dominio Unix. Il valore di default è 5 << 20.

rgw_usage_log_flush_threshold

Numero di voci modificate unite nel log di utilizzo prima dello svuotamento sincrono. Il valore di default è 1024.

rgw_usage_log_tick_interval

Svuota il log di utilizzo in sospeso ogni "n" secondi. Il valore di default è 30.

rgw_log_http_headers

Elenco con valori separati da virgole delle intestazioni HTTP da includere nelle voci del log. I nomi delle intestazioni non fanno distinzione tra lettere maiuscole e minuscole e utilizzano il nome completo dell'intestazione con le parole separate da caratteri di sottolineatura. Ad esempio, "http_x_forwarded_for", "http_x_special_k".

rgw_intent_log_object_name

Formato di registrazione del nome oggetto dell'intent log. Per i dettagli sugli identificatori del formato, consultare la documentazione man 1 date. L'impostazione di default è "%Y-%m-%d-%i-%n".

rgw_intent_log_object_name_utc

Specifica se nel nome oggetto dell'intent log è inclusa l'ora UTC. Se è impostata su false (default), viene utilizzata l'ora locale.

Impostazioni Keystone
rgw_keystone_url

URL del server Keystone.

rgw_keystone_api_version

Versione (2 o 3) di OpenStack Identity API da utilizzare per la comunicazione con il server Keystone. Il valore di default è 2.

rgw_keystone_admin_domain

Nome del dominio OpenStack con privilegi di amministratore quando è in uso OpenStack Identity API v3.

rgw_keystone_admin_project

Nome del progetto OpenStack con privilegi di amministratore quando è in uso OpenStack Identity API v3. Se non viene impostata, verrà utilizzato il valore di rgw keystone admin tenant.

rgw_keystone_admin_token

Token amministratore Keystone (segreto condiviso). In Object Gateway, l'autenticazione tramite il token amministratore ha la priorità sull'autenticazione con le credenziali di amministratore (opzioni rgw keystone admin user, rgw keystone admin password, rgw keystone admin tenant, rgw keystone admin project e rgw keystone admin domain). La funzione del token amministratore è considerata obsoleta.

rgw_keystone_admin_tenant

Nome del tenant OpenStack con privilegi di amministratore (tenant del servizio) quando è in uso OpenStack Identity API v2.

rgw_keystone_admin_user

Nome dell'utente OpenStack con privilegi di amministratore per l'autenticazione Keystone (utente del servizio) quando è in uso OpenStack Identity API v2.

rgw_keystone_admin_password

Password dell'utente amministratore OpenStack quando è in uso OpenStack Identity API v2.

rgw_keystone_accepted_roles

Ruoli richiesti per provvedere alle richieste. L'impostazione di default è "Member, admin".

rgw_keystone_token_cache_size

Numero massimo di voci in ciascuna cache dei token Keystone. Il valore di default è 10000.

rgw_keystone_revocation_interval

Numero di secondi tra le verifiche della revoca dei token. Il valore di default è 15 * 60.

rgw_keystone_verify_ssl

Verifica i certificati SSL durante la creazione di richieste di token per Keystone. L'impostazione di default è true.

28.5.1.1 Note aggiuntive

rgw_dns_name

Consente ai client di utilizzare i compartimenti di tipo vhost.

L'accesso di tipo vhost fa riferimento all'uso di bucketname.s3-endpoint/object-path, diverso dall'accesso di tipo path: s3-endpoint/bucket/object.

Se rgw dns name è impostato, verificare che il client S3 sia configurato sull'indirizzamento delle richieste all'endpoint specificato da rgw dns name.

28.5.2 Configurazione dei front-end HTTP

28.5.2.1 Oggetto beast

port, ssl_port

Numeri di porte di attesa IPv4 e IPv6. È possibile specificare più numeri di porte:

port=80 port=8000 ssl_port=8080

Il valore di default è 80.

endpoint, ssl_endpoint

Indirizzi di attesa nel formato "address[:port]", dove l'indirizzo è una stringa di indirizzo IPv4 in formato decimale separato da punti o un indirizzo IPv6 in notazione esadecimale racchiuso tra parentesi quadre. Se viene specificato un endpoint IPv6, verranno attesi solo indirizzi IPv6. Il numero di porta facoltativo di default è 80 per endpoint e 443 per ssl_endpoint. È possibile specificare più indirizzi:

endpoint=[::1] endpoint=192.168.0.100:8000 ssl_endpoint=192.168.0.100:8080
ssl_private_key

Percorso facoltativo del file di chiave privata utilizzato per gli endpoint abilitati per SSL. Se non è specificato, viene utilizzato il file ssl_certificate come chiave privata.

tcp_nodelay

Se specificata, l'opzione del socket disabiliterà l'algoritmo Nagle sulla connessione. Vale a dire che i pacchetti verranno inviati non appena possibile invece di attendere un buffer o un timeout completo.

Il valore "1" disabilita l'algoritmo Nagle per tutti i socket.

Il valore "0" mantiene abilitato l'algoritmo Nagle (default).

Esempio 28.1: Configurazione oggetto Beast di esempio
cephuser@adm > ceph config set rgw.myrealm.myzone.ses-min1.kwwazo \
 rgw_frontends beast port=8000 ssl_port=443 \
 ssl_certificate=/etc/ssl/ssl.crt \
 error_log_file=/var/log/radosgw/beast.error.log

28.5.2.2 CivetWeb

porta

Numero di porta di attesa. Per le porte abilitate per SSL, aggiungere un suffisso "s" (ad esempio "443s"). Per associare un indirizzo IPv4 o IPv6 specifico, utilizzare il formato "address:port". È possibile specificare più endpoint aggiungendoli con il simbolo "+" o specificando diverse opzioni:

port=127.0.0.1:8000+443s
port=8000 port=443s

Il valore di default è 7480.

num_threads

Numero di thread generati da Civetweb per la gestione delle connessioni HTTP in entrata. Questa impostazione consente di limitare effettivamente il numero di connessioni simultanee di cui il front-end è in grado di occuparsi.

Il valore di default è quello specificato dall'opzione rgw_thread_pool_size.

request_timeout_ms

Intervallo di tempo espresso in millisecondi durante il quale Civitweb resta in attesa di altri dati in entrata prima di abbandonare l'operazione.

Il valore di default è 30.000 millisecondi.

access_log_file

Percorso del file di log di accesso. È possibile specificare un percorso completo o un percorso relativo alla directory di lavoro attuale. Se non è specificato (default), gli accessi non vengono registrati.

error_log_ file

Percorso del file di log degli errori. È possibile specificare un percorso completo o un percorso relativo alla directory di lavoro attuale. Se non è specificato (default), gli errori non vengono registrati.

Esempio 28.2: Configurazione Civetweb di esempio in /etc/ceph/ceph.conf
cephuser@adm > ceph config set rgw.myrealm.myzone.ses-min2.ingabw \
 rgw_frontends civetweb port=8000+443s request_timeout_ms=30000 \
 error_log_file=/var/log/radosgw/civetweb.error.log

28.5.2.3 Opzioni comuni

ssl_certificate

Percorso del file di certificato SSL utilizzato per gli endpoint abilitati per SSL.

prefisso

Stringa di prefisso inserita nell'URI di tutte le richieste. Ad esempio, un front-end solo Swift può fornire un prefisso URI /swift.