負載平衡考量
您可以使用負載平衡來處理來自 S3 和 Swift 用戶端的擷取和擷取工作負載。
什麼是負載平衡?
當用戶端應用程式從 StorageGRID 系統儲存或擷取資料時、 StorageGRID 會使用負載平衡器來管理擷取和擷取工作負載。負載平衡可在多個儲存節點之間分配工作負載、以最大化速度和連線容量。
此功能可在所有管理節點和所有閘道節點上安裝支援程式、並提供第7層負載平衡功能。StorageGRID它會對用戶端要求執行傳輸層安全性(TLS)終止、檢查要求、並建立新的安全連線至儲存節點。
將用戶端流量轉送至儲存節點時、每個節點上的負載平衡器服務都會獨立運作。透過加權程序、負載平衡器服務會將更多要求路由傳送至CPU可用度較高的儲存節點。
雖然推薦使用「VMware負載平衡器」服務、但StorageGRID 您可能想要改為整合協力廠商負載平衡器。如需相關資訊、請聯絡您的NetApp客戶代表或參閱 "TR-4626:StorageGRID 不包括第三方和全域負載平衡器"。 |
我需要多少個負載平衡節點?
一般最佳實務做法StorageGRID 是、您的一套系統應該在負載平衡器服務中包含兩個或多個節點。例如、站台可能包含兩個閘道節點、或同時包含一個管理節點和一個閘道節點。無論您使用SG100或SG1000服務應用裝置、裸機節點或虛擬機器(VM)型節點、請確定每個負載平衡節點都有足夠的網路、硬體或虛擬化基礎架構。
什麼是負載平衡器端點?
負載平衡器端點會定義傳入和傳出用戶端應用程式要求用來存取包含負載平衡器服務之節點的連接埠和網路傳輸協定( HTTPS 或 HTTP )。端點也會定義用戶端類型( S3 或 Swift )、繫結模式、以及選擇性的允許或封鎖租戶清單。
若要建立負載平衡器端點、請選取 * 組態 * > * 網路 * > * 負載平衡器端點 * 、或完成 FabricPool 和 S3 設定精靈。如需相關指示:
連接埠的考量事項
對於您建立的第一個端點、負載平衡器端點的連接埠預設為 10433 、但您可以指定介於 1 到 65535 之間的任何未使用的外部連接埠。如果您使用連接埠 80 或 443 、端點將僅使用 Gateway 節點上的負載平衡器服務。這些連接埠保留在管理節點上。如果您對多個端點使用相同的連接埠、則必須為每個端點指定不同的繫結模式。
不允許其他網格服務使用的連接埠。請參閱 "網路連接埠參考"。
網路傳輸協定的考量事項
在大多數情況下、用戶端應用程式與 StorageGRID 之間的連線應該使用傳輸層安全性( TLS )加密。支援但不建議連線至無 TLS 加密的 StorageGRID 、尤其是在正式作業環境中。當您選取 StorageGRID 負載平衡器端點的網路傳輸協定時、應該選取 HTTPS 。
負載平衡器端點憑證的考量事項
如果選擇 HTTPS 作爲負載平衡器端點的網絡協議,則必須提供安全證書。建立負載平衡器端點時、您可以使用以下三個選項中的任何一個:
-
* 上傳簽署的憑證(建議) * 。此憑證可由公開信任或私有憑證授權單位( CA )簽署。最佳做法是使用公開信任的 CA 伺服器憑證來保護連線安全。與產生的憑證不同、 CA 簽署的憑證可以不中斷地旋轉、有助於避免過期問題。
您必須先取得下列檔案、才能建立負載平衡器端點:
-
自訂伺服器憑證檔案。
-
自訂伺服器憑證私密金鑰檔案。
-
或者、每個中繼發行憑證授權單位的憑證 CA 套裝組合。
-
-
* 產生自我簽署的憑證 * 。
-
* 使用全球 StorageGRID S3 和 Swift 認證 * 。您必須上傳或產生此憑證的自訂版本、才能為負載平衡器端點選取該憑證。請參閱 "設定S3和Swift API憑證"。
我需要什麼價值?
若要建立憑證、您必須知道 S3 或 Swift 用戶端應用程式用來存取端點的所有網域名稱和 IP 位址。
憑證的 * 主體 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 和 Swift 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 並允許存取所有租戶。
-
*Top secret * 端點:使用連接埠 10444 、僅允許存取 *Top secret * 租戶。所有其他租戶都會被封鎖、無法存取此端點。
-
-
。
top-secret.pdf
位於 *Top Secret * 租戶擁有的貯體內。
存取 top-secret.pdf
、 * 上秘密 * 租戶中的使用者可以向發出 GET 要求 https://w.x.y.z:10444/top-secret.pdf
。由於此租戶可以使用 10444 端點、因此使用者可以存取物件。不過、如果屬於任何其他租戶的使用者向相同的 URL 發出相同的要求、他們就會收到立即存取遭拒訊息。即使認證和簽章有效、存取仍會遭到拒絕。
CPU可用度
將S3或Swift流量轉送至儲存節點時、每個管理節點和閘道節點上的負載平衡器服務都會獨立運作。透過加權程序、負載平衡器服務會將更多要求路由傳送至CPU可用度較高的儲存節點。節點CPU負載資訊會每隔幾分鐘更新一次、但加權可能會更頻繁地更新。所有儲存節點都會被指派最低的基本權重值、即使節點回報100%使用率或無法報告使用率亦然。
在某些情況下、CPU可用度的相關資訊僅限於負載平衡器服務所在的站台。