負載平衡的注意事項
您可以使用負載平衡來處理來自 S3 用戶端的提取和檢索工作負載。
什麼是負載平衡?
當用戶端應用程式從StorageGRID系統儲存或擷取資料時, StorageGRID使用負載平衡器來管理擷取和擷取工作負載。負載平衡透過在多個儲存節點之間分配工作負載來最大限度地提高速度和連接容量。
StorageGRID負載平衡器服務安裝在所有管理節點和所有網關節點上,並提供第 7 層負載平衡。它執行客戶端請求的傳輸層安全性 (TLS) 終止,檢查請求,並與儲存節點建立新的安全連線。
將客戶端流量轉送到儲存節點時,每個節點上的負載平衡器服務會獨立運作。透過加權流程,負載平衡器服務將更多請求路由到具有更高 CPU 可用性的儲存節點。
|
|
儘管StorageGRID負載平衡器服務是建議的負載平衡機制,但您可能希望整合第三方負載平衡器。欲了解詳細信息,請聯繫您的NetApp客戶代表或參閱 "TR-4626: StorageGRID第三方和全域負載平衡器"。 |
我需要多少個負載平衡節點?
作為一般的最佳實踐, StorageGRID系統中的每個站點都應包含兩個或更多具有負載平衡器服務的節點。例如,一個站點可能包括兩個網關節點或一個管理節點和一個網關節點。確保每個負載平衡節點都有足夠的網路、硬體或虛擬化基礎設施,無論您使用的是服務設備、裸機節點還是基於虛擬機器 (VM) 的節點。
什麼是負載平衡器端點?
負載平衡器端點定義傳入和傳出的客戶端應用程式請求將用於存取包含負載平衡器服務的節點的連接埠和網路協定(HTTPS 或 HTTP)。端點也會定義用戶端類型(S3)、綁定模式以及可選的允許或封鎖租用戶清單。
若要建立負載平衡器端點,請選擇 CONFIGURATION > Network > Load balancer endpoints 或完成FabricPool和 S3 設定精靈。說明:
港口的考慮因素
對於您建立的第一個端點,負載平衡器端點的連接埠預設為 10433,但您可以指定 1 到 65535 之間的任何未使用的外部連接埠。如果您使用連接埠 80 或 443,端點將僅使用網關節點上的負載平衡器服務。這些連接埠在管理節點上保留。如果對多個端點使用相同的端口,則必須為每個端點指定不同的綁定模式。
不允許使用其他網格服務使用的連接埠。查看"網路連接埠參考"。
網路協定的注意事項
大多數情況下,客戶端應用程式和StorageGRID之間的連線應該使用傳輸層安全性 (TLS) 加密。支援但不建議在沒有 TLS 加密的情況下連接到StorageGRID ,尤其是在生產環境中。當您為StorageGRID負載平衡器端點選擇網路協定時,您應該選擇 HTTPS。
負載平衡器端點憑證的注意事項
如果選擇 HTTPS 作為負載平衡器端點的網路協議,則必須提供安全性憑證。建立負載平衡器端點時,您可以使用以下三個選項中的任何一個:
-
上傳已簽署的憑證(建議)。該證書可以由公眾信任的或私人的證書頒發機構 (CA) 簽署。使用公眾信任的 CA 伺服器憑證來保護連線是最佳做法。與產生的憑證相比,CA 簽署的憑證可以不間斷地輪換,這有助於避免過期問題。
在建立負載平衡器端點之前,您必須取得下列檔案:
-
自訂伺服器證書檔案。
-
自訂伺服器憑證私鑰檔案。
-
可選地,來自每個中間頒發證書機構的證書的 CA 包。
-
-
產生自簽名憑證。
-
使用全球StorageGRID S3 憑證。您必須上傳或產生此憑證的自訂版本,然後才能為負載平衡器端點選擇它。看"配置 S3 API 證書" 。
我需要什麼價值觀?
要建立證書,您必須知道 S3 用戶端應用程式將用於存取端點的所有網域名稱和 IP 位址。
憑證的 Subject DN(可分辨名稱)條目必須包含客戶端應用程式將用於StorageGRID 的完全限定網域名稱。例如:
Subject DN: /C=Country/ST=State/O=Company,Inc./CN=s3.storagegrid.example.com
根據需要,憑證可以使用通配符來表示執行負載平衡器服務的所有管理節點和網關節點的完全限定網域名稱。例如, *.storagegrid.example.com`使用 * 通配符來表示 `adm1.storagegrid.example.com`和 `gn1.storagegrid.example.com。
如果您打算使用 S3 虛擬託管式要求,憑證也必須包含每個"S3 端點域名"您已配置,包括任何通配符名稱。例如:
Alternative Name: DNS:*.s3.storagegrid.example.com
|
|
如果您使用通配符作為域名,請查看"伺服器證書強化指南"。 |
您也必須為安全性憑證中的每個名稱定義一個 DNS 項目。
如何管理即將過期的憑證?
|
|
如果用於保護 S3 應用程式和StorageGRID之間的連線的憑證過期,則該應用程式可能會暫時失去對StorageGRID 的存取權。 |
為避免憑證過期問題,請遵循以下最佳做法:
-
仔細監控任何警告憑證即將到期的警報,例如*負載平衡器端點憑證到期*和*S3 API 的全域伺服器憑證到期*警報。
-
始終保持StorageGRID和 S3 應用程式的憑證版本同步。如果您取代或更新用於負載平衡器端點的證書,則必須取代或更新 S3 應用程式使用的等效證書。
-
使用公開簽署的 CA 憑證。如果您使用由 CA 簽署的證書,則可以無中斷地替換即將過期的證書。
-
如果您已產生自簽署StorageGRID憑證且該憑證即將過期,則必須在現有憑證過期之前手動取代StorageGRID和 S3 應用程式中的該憑證。
綁定模式的注意事項
綁定模式可讓您控制哪些 IP 位址可用於存取負載平衡器端點。如果端點使用綁定模式,則用戶端應用程式只有使用允許的 IP 位址或其對應的完全限定網域名稱 (FQDN) 才能存取該端點。使用任何其他 IP 位址或 FQDN 的用戶端應用程式無法存取該端點。
您可以指定以下任一種綁定模式:
-
全域(預設):用戶端應用程式可以使用任何網關節點或管理節點的 IP 位址、任何網路上任何 HA 群組的虛擬 IP(VIP)位址或對應的 FQDN 存取端點。除非您需要限制端點的可訪問性,否則請使用此設定。
-
HA 群組的虛擬 IP。客戶端應用程式必須使用 HA 群組的虛擬 IP 位址(或對應的 FQDN)。
-
節點介面。客戶端必須使用所選節點介面的 IP 位址(或對應的 FQDN)。
-
節點類型。根據您選擇的節點類型,用戶端必須使用任何管理節點的 IP 位址(或對應的 FQDN)或任何網關節點的 IP 位址(或對應的 FQDN)。
租戶訪問注意事項
租用戶存取是可選的安全功能,可讓您控制哪些StorageGRID租用戶帳戶可以使用負載平衡器端點存取其儲存桶。您可以允許所有租用戶存取一個端點(預設),也可以為每個端點指定允許或封鎖的租用戶清單。
您可以使用此功能在租戶和他們的端點之間提供更好的安全隔離。例如,您可以使用此功能來確保一個租戶擁有的絕密或高度機密的資料對其他租戶完全無法存取。
|
|
為了實現存取控制,租用戶是根據客戶端請求中使用的存取金鑰來確定的,如果請求中沒有提供存取金鑰(例如匿名存取),則儲存桶擁有者將用於確定租用戶。 |
租戶訪問範例
若要了解此安全功能的工作原理,請考慮以下範例:
-
您已建立兩個負載平衡器端點,如下所示:
-
*公共*端點:使用連接埠 10443 並允許所有租戶存取。
-
*最高機密*端點:使用連接埠 10444 並僅允許存取 *最高機密*租用戶。所有其他租戶均無法存取此端點。
-
-
這 `top-secret.pdf`位於*最高機密*租戶擁有的儲存桶中。
要訪問 top-secret.pdf,Top secret 租戶中的使用者可以向 https://w.x.y.z:10444/top-secret.pdf。由於該租用戶被允許使用 10444 端點,因此使用者可以存取該物件。但是,如果屬於任何其他租用戶的使用者向同一 URL 發出相同請求,他們會立即收到「訪問被拒絕」訊息。即使憑證和簽名有效,存取也會被拒絕。
CPU 可用性
每個管理節點和網關節點上的負載平衡器服務在將 S3 流量轉送到儲存節點時獨立運作。透過加權流程,負載平衡器服務將更多請求路由到具有更高 CPU 可用性的儲存節點。節點 CPU 負載資訊每隔幾分鐘更新一次,但權重可能會更頻繁地更新。所有儲存節點都被分配一個最小基本權重值,即使節點報告 100% 使用率或未能報告其利用率。
在某些情況下,有關 CPU 可用性的資訊僅限於負載平衡器服務所在的站點。