跳至內容跳至頁面導覽:上一頁 [access key p]/下一頁 [access key n]
documentation.suse.com / SUSE Enterprise Storage 7 文件 / 操作和管理指南 / 設定叢集 / Ceph 叢集組態
適用範圍 SUSE Enterprise Storage 7

28 Ceph 叢集組態

本章介紹如何透過組態選項設定 Ceph 叢集。

28.1 設定 ceph.conf 檔案

cephadm 使用基本 ceph.conf 檔案,該檔案中僅包含用於連接至 MON、驗證和擷取組態資訊的最小選項集。在大多數情況下,這僅限於 mon_host 選項 (雖然可以透過使用 DNS SRV 記錄來避免該限制)。

重要
重要

ceph.conf 檔案不再充當儲存叢集組態的中心位置,而是支援組態資料庫 (參閱第 28.2 節 「組態資料庫」)。

如果您仍然需要透過 ceph.conf 檔案變更叢集組態 (例如,由於您使用的用戶端不支援從組態資料庫讀取選項),則需要執行以下指令,並負責在整個叢集維護和分發 ceph.conf 檔案:

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

28.1.1 存取容器影像內部的 ceph.conf

雖然 Ceph 精靈在容器內執行,您仍然可以存取其 ceph.conf 組態檔案。它做為主機系統上的以下檔案結合掛接

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

ceph fsid 指令所傳回的執行中叢集的唯一 FSID 取代 CLUSTER_FSID,並以 ceph orch ps 指令列出的特定精靈的名稱取代 DAEMON_NAME。例如:

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

若要修改某個精靈的組態,請編輯其 config 檔案並重新啟動該精靈:

root # systemctl restart ceph-CLUSTER_FSID-DAEMON_NAME

例如:

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

cephadm 重新部署精靈後,所有自訂設定都將遺失。

28.2 組態資料庫

Ceph 監控程式負責管理影響整個叢集行為的組態選項的中央資料庫。

28.2.1 設定區段和遮罩

MON 儲存的組態選項可以位於全域區段、精靈類型區段或特定精靈區段中。此外,選項還可以具有與其關聯的遮罩,以進一步限制選項適用的精靈或用戶端範圍。遮罩具有以下兩種格式:

  • TYPE:LOCATION,其中 TYPErackhost 等 CRUSH 內容,而 LOCATION 為該內容的值。

    例如,host:example_host 會將該選項僅限用於在某個特定主機上執行的精靈或用戶端。

  • CLASS:DEVICE_CLASS,其中 DEVICE_CLASShddssd 等 CRUSH 裝置類別的名稱。例如,class:ssd 會將該選項僅限用於由 SSD 支援的 OSD。此遮罩對非 OSD 精靈或用戶端無效。

28.2.2 設定和讀取組態選項

使用以下指令可設定或讀取叢集組態選項。WHO 參數可以是區段名稱、遮罩或兩者的組合,用斜線 (/) 字元分隔。例如,osd/rack:foo 表示機架中名為 foo 的所有 OSD 精靈。

ceph config dump

傾印整個叢集的整個組態資料庫。

ceph config get WHO

傾印儲存在組態資料庫中的特定精靈或用戶端 (例如,mds.a) 的組態。

ceph config set WHO OPTION VALUE

將組態選項設定為組態資料庫中的指定值。

ceph config show WHO

顯示某個執行中精靈的已報告執行中組態。如果還使用了本地組態檔案,或者在指令行上或執行時期覆寫了選項,則這些設定可能與監控程式所儲存的設定有所不同。選項值的來源會做為輸出的一部分進行報告。

ceph config assimilate-conf -i INPUT_FILE -o OUTPUT_FILE

輸入指定為 INPUT_FILE 的組態檔案,並將任何有效選項儲存到組態資料庫中。任何無法識別、無效或監控程式無法控制的設定都將在儲存為 OUTPUT_FILE 的縮寫檔案中傳回。此指令對於從舊組態檔案轉換為基於監控程式的集中式組態非常有用。

28.2.3 在執行時期設定精靈

在大多數情況下,Ceph 允許您在執行時期變更精靈的組態。例如,當您需要增加或減少記錄輸出數量時,或者在執行執行時期叢集最佳化時,這會非常有用。

您可以使用以下指令更新組態選項的值:

cephuser@adm > ceph config set DAEMON OPTION VALUE

例如,若要調整某個特定 OSD 上的除錯記錄層級,請執行:

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

如果在本地組態檔案中還自訂了相同的選項,則將忽略監控程式設定,因為它的優先程度低於組態檔案。

28.2.3.1 覆寫值

您可以使用 telldaemon 子指令暫時修改選項值。此類修改只會影響執行中程序,並會在精靈或程序重新啟動後被丟棄。

有兩種方法可以覆寫值:

  • 使用 tell 子指令從任何叢集節點向某個特定精靈傳送訊息:

    cephuser@adm > ceph tell DAEMON config set OPTION VALUE

    例如:

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

    tell 子指令接受使用萬用字元做為精靈識別碼。例如,若要調整所有 OSD 精靈上的除錯層級,請執行:

    cephuser@adm > ceph tell osd.* config set debug_osd 20
  • 使用 daemon 子指令透過 /var/run/ceph 中的通訊端從執行程序的節點連接至某個特定精靈程序:

    cephuser@adm > ceph daemon DAEMON config set OPTION VALUE

    例如:

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

使用 ceph config show 指令檢視執行時期設定 (參閱第 28.2.3.2 節 「檢視執行時期設定」) 時,顯示的暫時覆寫值將附帶來源 override

28.2.3.2 檢視執行時期設定

檢視某個精靈的所有選項設定:

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

檢視某個精靈的的所有非預設選項設定:

cephuser@adm > ceph config show osd.0

檢查某個特定選項:

cephuser@adm > ceph config show osd.0 debug_osd

您還可以從執行其程序的節點連接至某個執行中精靈,並觀察其組態:

cephuser@adm > ceph daemon osd.0 config show

僅檢視非預設設定:

cephuser@adm > ceph daemon osd.0 config diff

檢查某個特定選項:

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

28.3 config-key 儲存

config-key 是 Ceph 監控程式提供的一般用途的服務。它透過永久儲存機碼值組簡化了組態機碼的管理。config-key 主要由 Ceph 工具和精靈使用。

提示
提示

新增新機碼或修改現有機碼後,重新啟動受影響的服務,以使變更生效。如需操作 Ceph 服務的更多詳細資料,請參閱第 14 章 「Ceph 服務的操作

使用 config-key 指令可操作 config-key 儲存。config-key 指令使用以下子指令:

ceph config-key rm KEY

刪除指定機碼。

ceph config-key exists KEY

檢查指定機碼是否存在。

ceph config-key get KEY

擷取指定機碼的值。

ceph config-key ls

列出所有機碼。

ceph config-key dump

傾印所有機碼及其值。

ceph config-key set KEY VALUE

儲存具有給定值的指定機碼。

28.3.1 iSCSI 閘道

iSCSI 閘道使用 config-key 儲存來儲存或讀取其組態選項。所有與 iSCSI 閘道相關的機碼都以 iscsi 字串做為字首,例如:

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

例如,如果需要兩組組態選項,請使用另一個描述性關鍵字 (例如 datacenterAdatacenterB) 來延伸字首:

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

28.4 Ceph OSD 和 BlueStore

28.4.1 設定自動快取大小調整

如果 tc_malloc 設定為記憶體配置器並且啟用了 bluestore_cache_autotune 設定,可將 BlueStore 設定為自動調整其快取大小。目前,此選項預設處於啟用狀態。BlueStore 會嘗試將 OSD 堆積記憶體使用率維持在 osd_memory_target 組態選項指定的目標大小之下。這是一種最優演算法,而且快取不會縮減到小於 osd_memory_cache_min 所指定的大小。系統將依據優先程度的階層選擇快取率。如果無法獲取優先程度資訊,將使用 bluestore_cache_meta_ratiobluestore_cache_kv_ratio 選項做為備選。

bluestore_cache_autotune

在遵循最小值的要求下,自動調整為不同 BlueStore 快取指定的比率。預設值為 True

osd_memory_target

如果啟用了 tc_mallocbluestore_cache_autotune,該選項將嘗試在記憶體中對應此數量的位元組。

注意
注意

此數量可能與程序的 RSS 記憶體使用率並不完全相符。雖然程序對應的堆積記憶體總量一般應該保持為接近此目標的數量,但並不能保證核心會真正收回已取消對應的記憶體。

osd_memory_cache_min

如果啟用了 tc_mallocbluestore_cache_autotune,該選項可設定用於快取的最小記憶體量。

注意
注意

將此值設定得過小可能會導致嚴重的快取猛移。

28.5 Ceph 物件閘道

您可以透過多個選項來影響物件閘道行為。如果未指定選項,將使用預設值。完整的物件閘道選項清單如下:

28.5.1 一般設定

rgw_frontends

設定 HTTP 前端。請以逗號分隔的清單指定多個前端。每個前端組態可能包含一組以空格分隔的選項,每個選項的格式均為「鍵=值」或「鍵」。預設值為 beast port=7480

rgw_data

為物件閘道設定資料檔案的位置。預設值為 /var/lib/ceph/radosgw/CLUSTER_ID

rgw_enable_apis

啟用指定的 API。預設值為「s3, swift, swift_auth, admin All APIs」。

rgw_cache_enabled

啟用或停用物件閘道快取。預設值為 true

rgw_cache_lru_size

物件閘道快取中的項目數。預設值為 10000。

rgw_socket_path

網域通訊端的通訊端路徑。FastCgiExternalServer 使用此通訊端。如果您未指定通訊端路徑,物件閘道將不會做為外部伺服器執行。您在此處指定的路徑須與 rgw.conf 檔案中指定的路徑相同。

rgw_fcgi_socket_backlog

fcgi 的通訊端積存資料。預設值為 1024。

rgw_host

物件閘道例項的主機,可以是 IP 位址或主機名稱。預設值為 0.0.0.0

rgw_port

例項用於監聽要求的連接埠號碼。如果未指定,物件閘道將執行外部 FastCGI。

rgw_dns_name

所處理的網域的 DNS 名稱。

rgw_script_uri

如果要求中未設定 SCRIPT_URI,則做為其備用值。

rgw_request_uri

如果要求中未設定 REQUEST_URI,則做為其備用值。

rgw_print_continue

啟用 100-continue (如果可正常運作)。預設值為 true

rgw_remote_addr_param

遠端位址參數。例如,包含遠端位址的 HTTP 欄位或 X-Forwarded-For 位址 (如果反向代理可正常運作)。預設值為 REMOTE_ADDR

rgw_op_thread_timeout

開啟的線串的逾時 (以秒計)。預設值為 600。

rgw_op_thread_suicide_timeout

物件閘道程序停止前逾時的時間 (以秒計)。如果設定為 0 (預設值),則表示停用。

rgw_thread_pool_size

Beast 伺服器的線串數。如果需要處理更多要求,請設定更高的值。預設為 100 個線串。

rgw_num_rados_handles

物件閘道的 RADOS 叢集控制代碼數量。現在,每個物件閘道工作線串都可以選取一個 RADOS 控制代碼並在其有效期內保留。未來版本中可能會取代並移除此選項。預設值為 1。

rgw_num_control_oids

不同物件閘道例項之間用於快取同步的通知物件數量。預設值為 8。

rgw_init_timeout

物件閘道放棄啟始化前經過的秒數。預設值為 30。

rgw_mime_types_file

MIME 類型的路徑和位置。用於物件類型的 Swift 自動偵測。預設值為 /etc/mime.types

rgw_gc_max_objs

垃圾回收在一個垃圾回收處理週期內可處理的最大物件數量。預設值為 32。

rgw_gc_obj_min_wait

垃圾回收處理可移除和處理物件前需等待的最短時間。預設值為 2 * 3600。

rgw_gc_processor_max_time

兩次連續的垃圾回收處理週期開始時所間隔的最長時間。預設值為 3600。

rgw_gc_processor_period

垃圾回收處理的週期時間。預設值為 3600。

rgw_s3_success_create_obj_status

create-obj 的備用成功狀態回應。預設值為 0。

rgw_resolve_cname

物件閘道是否應使用要求主機名稱欄位的 DNS CNAME 記錄 (如果主機名稱與物件閘道 DNS 名稱不同)。預設值為 false

rgw_obj_stripe_size

物件閘道物件的物件分割大小。預設值為 4 << 20

rgw_extended_http_attrs

新增可對實體 (例如,使用者、桶或物件) 設定的一組新屬性。使用 POST 方法放置或修改實體時,可透過 HTTP 標題欄位設定這些額外的屬性。如果設定了這些屬性,當對實體發出 GET/HEAD 要求時,它們將做為 HTTP 欄位傳回。預設值為 content_foo, content_bar, x-foo-bar

rgw_exit_timeout_secs

無條件結束前等待程序的秒數。預設值為 120。

rgw_get_obj_window_size

單個物件要求的視窗大小 (以位元組計)。預設值為 16 << 20

rgw_get_obj_max_req_size

傳送到 Ceph 儲存叢集的單次 GET 操作的要求大小上限。預設值為 4 << 20

rgw_relaxed_s3_bucket_names

為 US 區域桶啟用寬鬆 S3 桶名稱規則。預設值為 false

rgw_list_buckets_max_chunk

列出使用者桶時,在一次操作中擷取的桶數量上限。預設值為 1000。

rgw_override_bucket_index_max_shards

表示桶索引物件的分區數量。設為 0 (預設值) 表示沒有分區。不建議將此值設定得太大 (例如 1000),因為這樣會增加列出桶的成本。應在用戶端或全域區段中設定此變數,以便將其自動套用至 radosgw-admin 指令。

rgw_curl_wait_timeout_ms

某些 curl 呼叫的逾時時間 (以毫秒計)。預設值為 1000。

rgw_copy_obj_progress

啟用在費時較長的複製操作期間輸出物件進度的功能。預設值為 true

rgw_copy_obj_progress_every_bytes

兩次複製進度輸出相隔的最小位元組數。預設值為 1024 * 1024。

rgw_admin_entry

管理要求 URL 的進入點。預設值為 admin

rgw_content_length_compat

為設定了 CONTENT_LENGTH 和 HTTP_CONTENT_LENGTH 的 FCGI 要求啟用相容性處理。預設值為 false

rgw_bucket_quota_ttl

已快取定額資訊的受信任時長 (以秒計)。經過此逾時時間後,將從叢集重新擷取定額資訊。預設值為 600。

rgw_user_quota_bucket_sync_interval

同步到叢集前,桶定額資訊的累計時長 (以秒計)。在此期間,其他物件閘道例項將不會看到與此例項上的操作相關的桶定額統計資料發生的變更。預設值為 180。

rgw_user_quota_sync_interval

同步到叢集前,使用者定額資訊的累計時長 (以秒計)。在此期間,其他物件閘道例項將不會看到與此例項上的操作相關的使用者定額統計資料發生的變更。預設值為 180。

rgw_bucket_default_quota_max_objects

每個桶的預設物件數量上限。如果未指定其他定額,此上限將對新使用者設定,對現有使用者無效。應在用戶端或全域區段中設定此變數,以便將其自動套用至 radosgw-admin 指令。預設值為 -1。

rgw_bucket_default_quota_max_size

每個桶的預設容量上限 (以位元組計)。如果未指定其他定額,此上限將對新使用者設定,對現有使用者無效。預設值為 -1。

rgw_user_default_quota_max_objects

使用者的預設物件數量上限。這個數量包括該使用者擁有的所有桶中的全部物件。如果未指定其他定額,此上限將對新使用者設定,對現有使用者無效。預設值為 -1。

rgw_user_default_quota_max_size

如果未指定其他定額,使用者定額大小上限值 (以位元組計) 將對新使用者設定,對現有使用者無效。預設值為 -1。

rgw_verify_ssl

發出要求時驗證 SSL 證書。預設值為 true

rgw_max_chunk_size

將在單個操作中讀取的最大資料區塊大小。將值增至 4MB (4194304) 可以在處理大型物件時提高效能。預設值為 128kB (131072)。

多站台設定
rgw_zone

閘道例項所在區域的名稱。如果未設定區域,可使用 radosgw-admin zone default 指令設定叢集範圍的預設值。

rgw_zonegroup

閘道例項所在區域群組的名稱。如果未設定區域群組,可使用 radosgw-admin zonegroup default 指令設定叢集範圍的預設值。

rgw_realm

閘道例項所在領域的名稱。如果未設定領域,可使用 radosgw-admin realm default 指令設定叢集範圍的預設值。

rgw_run_sync_thread

如果領域中有其他要依據其同步的區域,則繁衍線串來處理資料和中繼資料的同步。預設值為 true

rgw_data_log_window

資料記錄項目時段 (以秒計)。預設值為 30。

rgw_data_log_changes_size

要為資料變更記錄儲存的記憶體內項目數。預設值為 1000。

rgw_data_log_obj_prefix

資料記錄的物件名稱字首。預設值為「data_log」。

rgw_data_log_num_shards

儲存資料變更記錄的分區 (物件) 數。預設值為 128。

rgw_md_log_max_shards

中繼資料記錄的分區數量上限。預設值為 64。

Swift 設定
rgw_enforce_swift_acls

強制執行 Swift 存取控制清單 (ACL) 設定。預設值為 true

rgw_swift_token_expiration

Swift 記號過期時間 (以秒計)。預設值為 24 * 3600。

rgw_swift_url

Ceph Object Gateway Swift API 的 URL。

rgw_swift_url_prefix

Swift StorageURL 中位於「/v1」部分前的 URL 字首。此設定允許在同一主機上執行多個閘道例項。出於相容性考慮,請將此組態變數設為空白,以便使用預設值「/swift」。使用明確的字首「/」會在根目錄啟動 StorageURL。

警告
警告

如果啟用了 S3 API,將此選項設為「/」將不起作用。請注意,如果停用 S3,將無法在多站台組態中部署物件閘道。

rgw_swift_auth_url

未使用內部 Swift 驗證時,用於驗證 v1 驗證記號的預設 URL。

rgw_swift_auth_entry

Swift 驗證 URL 的進入點。預設值為 auth

rgw_swift_versioning_enabled

啟用 OpenStack Object Storage API 的物件版本設定。此選項可讓用戶端對應當建立版本的容器設定 X-Versions-Location 屬性。該屬性指定儲存已歸檔版本的容器名稱。出於存取控制驗證 (ACL 不在考慮範圍之內) 的原因,必須由已建立版本的容器所屬的同一使用者擁有該屬性。無法透過 S3 物件版本設定機制來為這些容器建立版本。預設值為 false

記錄設定
rgw_log_nonexistent_bucket

允許物件閘道記錄針對不存在的桶的要求。預設值為 false

rgw_log_object_name

物件名稱的記錄格式。如需格式指定元的詳細資料,請參閱 man 1 date 手冊頁。預設值為 %Y-%m-%d-%H-%i-%n

rgw_log_object_name_utc

記錄的物件名稱是否包含 UTC 時間。如果設定為 false (預設值),則會使用本地時間。

rgw_usage_max_shards

用於使用率記錄的分區數量上限。預設值為 32。

rgw_usage_max_user_shards

用於單個使用者的使用率記錄的分區數量上限。預設值為 1。

rgw_enable_ops_log

啟用記錄每個成功物件閘道操作的功能。預設值為 false

rgw_enable_usage_log

啟用使用率記錄。預設值為 false

rgw_ops_log_rados

是否應將操作記錄寫入 Ceph 儲存叢集後端。預設值為 true

rgw_ops_log_socket_path

用於寫入操作記錄的 Unix 網域通訊端。

rgw_ops_log_data_backlog

寫入 Unix 網域通訊端的操作記錄的資料積存大小上限。預設值為 5 << 20。

rgw_usage_log_flush_threshold

同步衝洗前使用率記錄中已合併的改動項目數量。預設值為 1024。

rgw_usage_log_tick_interval

每隔「n」秒衝洗待處理使用率記錄資料。預設值為 30。

rgw_log_http_headers

要在記錄項目中包含的 HTTP 標題的逗號分隔清單。標題名稱不區分大小寫,使用完整標題名稱格式,且各單字間以底線分隔。例如「http_x_forwarded_for」、「http_x_special_k」。

rgw_intent_log_object_name

要記錄的記錄物件名稱的記錄格式。如需格式指定元的詳細資料,請參閱 man 1 date 手冊頁。預設值為「%Y-%m-%d-%i-%n」。

rgw_intent_log_object_name_utc

要記錄的記錄物件名稱是否包含 UTC 時間。如果設定為 false (預設值),則會使用本地時間。

Keystone 設定
rgw_keystone_url

Keystone 伺服器的 URL。

rgw_keystone_api_version

應用於與 Keystone 伺服器通訊的 OpenStack Identity API 的版本 (2 或 3)。預設值為 2。

rgw_keystone_admin_domain

使用 OpenStack Identity API v3 時,具有管理員權限的 OpenStack 網域名稱。

rgw_keystone_admin_project

使用 OpenStack Identity API v3 時,具有管理員權限的 OpenStack 專案名稱。如果未設定,將使用 rgw keystone admin tenant 的值取代。

rgw_keystone_admin_token

Keystone 管理員記號 (共享秘密)。在物件閘道中,使用管理員記號的驗證的優先程度高於使用管理員身分證明的驗證 (選項 rgw keystone admin userrgw keystone admin passwordrgw keystone admin tenantrgw keystone admin projectrgw keystone admin domain)。系統將管理員記號功能視為已取代。

rgw_keystone_admin_tenant

使用 OpenStack Identity API v2 時,具有管理員權限的 OpenStack 租用戶 (服務租用戶) 的名稱。

rgw_keystone_admin_user

使用 OpenStack Identity API v2 時,具有管理員權限的 OpenStack 使用者 (服務使用者) 的名稱。

rgw_keystone_admin_password

使用 OpenStack Identity API v2 時 OpenStack 管理員使用者的密碼。

rgw_keystone_accepted_roles

處理要求需要具有的角色。預設值為「Member, admin」。

rgw_keystone_token_cache_size

每個 Keystone 記號快取中的項目數上限。預設值為 10000。

rgw_keystone_revocation_interval

記號撤銷檢查間隔的時間 (以秒計)。預設值為 15 * 60。

rgw_keystone_verify_ssl

向 Keystone 發出記號要求時,驗證 SSL 證書。預設值為 true

28.5.1.1 補充說明

rgw_dns_name

允許用戶端使用 vhost 類型的桶。

vhost 類型存取表示使用 bucketname.s3-endpoint/object-path。與之相對,path 類型存取使用:s3-endpoint/bucket/object

如果設定了 rgw dns name,請確認 S3 用戶端是否設定為將要求轉到 rgw dns name 指定的端點。

28.5.2 設定 HTTP 前端

28.5.2.1 Beast

port、ssl_port

IPv4 和 IPv6 監聽連接埠號碼。您可以指定多個連接埠號碼:

port=80 port=8000 ssl_port=8080

預設值為 80。

endpoint、ssl_endpoint

監聽位址採用「位址[:連接埠]」格式,其中,位址為採用點分隔十進位格式的 IPv4 位址字串,或是採用以方括號括住的十六進位標記法表示的 IPv6 位址。指定將僅監聽 IPv6 的 IPv6 端點。endpointssl_endpoint 的選用連接埠號碼分別預設為 80 和 443。您可以指定多個位址:

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

此為選擇性設定,指定用於啟用了 SSL 的端點的私密金鑰檔案路徑。如果未指定,將使用 ssl_certificate 檔案做為私密金鑰。

tcp_nodelay

如果指定該選項,通訊端選項將針對連接停用 Nagle 的演算法。這表示將會儘快傳送封包,而不會等到發生緩衝區滿載或逾時才傳送。

「1」會對所有通訊端停用 Nagle 的演算法。

「0」會使 Nagle 的演算法保持啟用狀態 (預設值)。

範例 28.1︰ Beast 組態範例
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

port

監聽連接埠號碼。對啟用了 SSL 的連接埠新增「s」尾碼 (例如「443s」)。若要結合特定 IPv4 或 IPv6 位址,請使用「位址:連接埠」格式。您可以透過使用「+」聯結多個端點或透過提供多個選項,來指定多個端點:

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

預設值為 7480。

num_threads

Civetweb 所繁衍以處理內送 HTTP 連接的線串數。此設定可有效限制前端可處理的並行連接數。

預設為 rgw_thread_pool_size 選項所指定的值。

request_timeout_ms

Civetweb 在放棄前需等待更多內送資料的時長 (以毫秒計)。

預設值為 30000 毫秒。

access_log_file

存取記錄檔案的路徑。您可以指定完整路徑,或目前工作目錄的相對路徑。如果未指定 (預設設定),將不會記錄存取。

error_log_file

錯誤記錄檔案的路徑。您可以指定完整路徑,或目前工作目錄的相對路徑。如果未指定 (預設設定),將不會記錄錯誤。

範例 28.2︰ /etc/ceph/ceph.conf 中的範例 Civetweb 組態
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 通用選項

ssl_certificate

用於啟用了 SSL 的端點的 SSL 證書檔案路徑。

prefix

要插入到所有要求的 URI 中的字首字串。例如,僅支援 Swift 的前端可能會提供一個 /swift 的 URI 字首。