10 手動設定 #
本節為更喜歡在指令行上手動設定儀表板設定的使用者提供了進階資訊。
10.1 設定 TLS/SSL 支援 #
所有連至儀表板的 HTTP 連接預設均使用 TLS/SSL 來保障安全。安全連接需要 SSL 證書。您可以使用自行簽署的證書,也可以產生證書並讓知名證書管理中心 (CA) 簽署該證書。
您可能會出於某種原因需要停用 SSL 支援。例如,如果儀表板是在不支援 SSL 的代理之後執行。
停用 SSL 要慎重,因為停用 SSL 後,使用者名稱和密碼將以未加密的形式傳送至儀表板。
若要停用 SSL,請執行以下指令:
cephuser@adm >
ceph config set mgr mgr/dashboard/ssl false
變更 SSL 證書和金鑰後,您需要手動重新啟動 Ceph 管理員程序。您可以透過執行以下指令
cephuser@adm >
ceph mgr fail ACTIVE-MANAGER-NAME
或停用儀表板模組之後再重新將其啟用的方式來執行此操作,如此還會觸發管理員自行重新繁衍:
cephuser@adm >
ceph mgr module disable dashboardcephuser@adm >
ceph mgr module enable dashboard
10.1.1 建立自行簽署的證書 #
為了安全通訊而建立自行簽署的證書的過程非常簡單。採用這種方式可迅速讓儀表板執行起來。
大多數網頁瀏覽器都將對自行簽署的證書發起控訴,並需要在建立與儀表板的安全連接前進行明確確認。
若要產生並安裝自行簽署的證書,請使用以下內建指令:
cephuser@adm >
ceph dashboard create-self-signed-cert
10.1.2 使用 CA 簽署的證書 #
為了正確保障連至儀表板的連接安全,以及消除網頁瀏覽器對自行簽署的證書的控訴,我們建議使用 CA 簽署的證書。
您可以使用如下指令產生證書金鑰組:
root #
openssl req -new -nodes -x509 \
-subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650 \
-keyout dashboard.key -out dashboard.crt -extensions v3_ca
以上指令會輸出 dashboard.key
和 dashboard.key.crt
檔案。獲得 CA 簽署的 dashboard.key.crt
檔案後,請執行以下指令為所有 Ceph 管理員例項啟用該證書:
cephuser@adm >
ceph config-key set mgr/dashboard/crt -i dashboard.crtcephuser@adm >
ceph config-key set mgr/dashboard/key -i dashboard.key
如果您需要為每個 Ceph 管理員例項使用不同的證書,請依如下所示修改指令,並在其中指定例項的名稱。以 Ceph 管理員例項的名稱 (通常是相關的主機名稱) 取代 NAME:
cephuser@adm >
ceph config-key set mgr/dashboard/NAME/crt -i dashboard.crtcephuser@adm >
ceph config-key set mgr/dashboard/NAME/key -i dashboard.key
10.2 變更主機名稱和連接埠號碼 #
Ceph Dashboard 結合至特定 TCP/IP 位址和 TCP 連接埠。依預設,代管儀表板的目前使用中 Ceph 管理員會結合至 TCP 連接埠 8443 (如果停用 SSL,則結合至 8080 連接埠)。
如果在執行 Ceph 管理員 (以及 Ceph Dashboard) 的主機上啟用了防火牆,則您可能需要變更組態以啟用對這些連接埠的存取。如需 Ceph 防火牆設定的詳細資訊,請參閱第 13.7 節 「Firewall settings for Ceph」。
Ceph Dashboard 預設結合至「::」,該符號表示所有可用的 IPv4 和 IPv6 位址。您可以使用以下指令變更 Web 應用程式的 IP 位址和連接埠號碼,以使它們適用於所有 Ceph 管理員例項:
cephuser@adm >
ceph config set mgr mgr/dashboard/server_addr IP_ADDRESScephuser@adm >
ceph config set mgr mgr/dashboard/server_port PORT_NUMBER
因為每個 ceph-mgr
精靈都代管著各自的儀表板例項,您可能需要單獨設定每個 Ceph 管理員例項。使用以下指令 (以 ceph-mgr
例項的 ID 取代 NAME) 變更特定管理員例項的 IP 位址和連接埠號碼:
cephuser@adm >
ceph config set mgr mgr/dashboard/NAME/server_addr IP_ADDRESScephuser@adm >
ceph config set mgr mgr/dashboard/NAME/server_port PORT_NUMBER
ceph mgr services
指令會顯示目前設定的所有端點。尋找 dashboard
鍵可獲取用於存取儀表板的 URL。
10.3 調整使用者名稱和密碼 #
如果您不想使用預設管理員帳戶,可建立其他使用者帳戶,並將其與至少一個角色相關聯。我們提供了一組預先定義的系統角色供您使用。如需詳細資訊,請參閱第 11 章 「在指令行上管理使用者和角色」。
若要建立具有管理員權限的使用者,請使用以下指令:
cephuser@adm >
ceph dashboard ac-user-create USER_NAME PASSWORD administrator
10.4 啟用物件閘道管理前端 #
若要使用儀表板的物件閘道管理功能,您需要提供啟用了 system
旗標的使用者的登入身分證明:
如果您沒有帶
system
旗標的使用者,請建立一個:cephuser@adm >
radosgw-admin user create --uid=USER_ID --display-name=DISPLAY_NAME --system記下指令輸出中的 access_key 和 secret_key 金鑰。
您還可以使用
radosgw-admin
指令來獲取現有使用者的身分證明:cephuser@adm >
radosgw-admin user info --uid=USER_ID向儀表板提供收到的身分證明:
cephuser@adm >
ceph dashboard set-rgw-api-access-key ACCESS_KEYcephuser@adm >
ceph dashboard set-rgw-api-secret-key SECRET_KEY
依預設,SUSE Linux Enterprise Server 15 SP2 中會啟用防火牆。如需防火牆組態的詳細資訊,請參閱第 13.7 節 「Firewall settings for Ceph」。
請注意以下幾點事項:
系統會自動確定物件閘道的主機名稱和連接埠號碼。
如果使用多個區域,物件閘道會自動確定主區域群組和主區域內的主機。此方式足以符合大部分設定的需求,但在某些情況下,您可能需要手動設定主機名稱和連接埠:
cephuser@adm >
ceph dashboard set-rgw-api-host HOSTcephuser@adm >
ceph dashboard set-rgw-api-port PORT您可能需要進行的額外設定如下:
cephuser@adm >
ceph dashboard set-rgw-api-scheme SCHEME # http or httpscephuser@adm >
ceph dashboard set-rgw-api-admin-resource ADMIN_RESOURCEcephuser@adm >
ceph dashboard set-rgw-api-user-id USER_ID如果您在物件閘道設定中使用的是自行簽署的證書 (第 10.1 節 「設定 TLS/SSL 支援」),請在儀表板中停用證書驗證,以避免發生因證書是由未知 CA 簽署或與主機名稱不符而導致連接遭拒。
cephuser@adm >
ceph dashboard set-rgw-api-ssl-verify False如果物件閘道處理要求所花的時間過長,導致儀表板逾時,則可調整逾時值 (預設為 45 秒):
cephuser@adm >
ceph dashboard set-rest-requests-timeout SECONDS
10.5 啟用 iSCSI 管理 #
Ceph Dashboard 使用 Ceph iSCSI 閘道的 rbd-target-api
服務所提供的 REST API 管理 iSCSI 目標。確定已在 iSCSI 閘道上安裝並啟用它。
Ceph Dashboard 的 iSCSI 管理功能取決於 ceph-iscsi
專案的最新版本 3。請確定您的作業系統提供了正確的版本,否則 Ceph Dashboard 將無法啟用管理功能。
如果 ceph-iscsi
REST API 以 HTTPS 模式設定並使用自行簽署的證書,請設定該儀表板以避免在存取 ceph-iscsi API 時發生 SSL 證書驗證。
停用 API SSL 驗證:
cephuser@adm >
ceph dashboard set-iscsi-api-ssl-verification false
定義可用的 iSCSI 閘道:
cephuser@adm >
ceph dashboard iscsi-gateway-listcephuser@adm >
ceph dashboard iscsi-gateway-add scheme://username:password@host[:port]cephuser@adm >
ceph dashboard iscsi-gateway-rm gateway_name
10.6 啟用單一登入 #
單一登入 (SSO) 是一種允許使用者以單個 ID 和密碼同時登入多個應用程式的存取控制方法。
Ceph Dashboard 支援透過 SAML 2.0 通訊協定對使用者進行外部驗證。由於仍由儀表板負責進行授權,因此您需要先建立使用者帳戶,並將其與所需角色相關聯。不過,可由現有身分提供者 (IdP) 來執行驗證。
若要設定單一登入,請使用以下指令:
cephuser@adm >
ceph dashboard sso setup saml2 CEPH_DASHBOARD_BASE_URL \
IDP_METADATA IDP_USERNAME_ATTRIBUTE \
IDP_ENTITY_ID SP_X_509_CERT \
SP_PRIVATE_KEY
參數:
- CEPH_DASHBOARD_BASE_URL
可用於存取 Ceph Dashboard 的基本 URL (例如「https://cephdashboard.local」)。
- IDP_METADATA
IdP 中繼資料 XML 的 URL、檔案路徑或內容 (例如「https://myidp/metadata」)。
- IDP_USERNAME_ATTRIBUTE
選擇性。將用於從驗證回應中獲取使用者名稱的屬性。預設為「uid」。
- IDP_ENTITY_ID
選擇性。當 IdP 中繼資料上存在多個實體 ID 時,請使用該參數。
- SP_X_509_CERT / SP_PRIVATE_KEY
選擇性。Ceph Dashboard (服務提供者) 進行簽署和加密時將使用的證書的檔案路徑或內容。
SAML 要求的發出者值將採用以下格式:
CEPH_DASHBOARD_BASE_URL/auth/saml2/metadata
若要顯示目前的 SAML 2.0 組態,請執行以下指令:
cephuser@adm >
ceph dashboard sso show saml2
若要停用單一登入,請執行以下指令:
cephuser@adm >
ceph dashboard sso disable
若要檢查是否啟用了 SSO,請執行以下指令:
cephuser@adm >
ceph dashboard sso status
若要啟用 SSO,請執行以下指令:
cephuser@adm >
ceph dashboard sso enable saml2