ECS:CAS 連接字串和 SDK 讀取容錯移轉與 Centera 的差異
Summary: Centera 和 ECS 在為軟體開發工具套件 (SDK) 開啟集區後回應初始探針時,其運作方式會有所不同。
Symptoms
當使用內容可定址儲存 (CAS) 通訊協定與 JCASScript 連線至 ECS 時,執行 info 命令中,副本位址為空。
如果主彈性雲伺服器不可用,SDK 如何在讀取過程中進行故障轉移?
Centera 和 ECS 在 SDK 集區開啟後回應初始探針時,其運作方式會有所不同。
Cause
Resolution
Centera:
如果在初始探測過程中在連接字串中提供主 Centera IP,並且在池打開後,Centera 會將探測回應中的副本 IP 位址發回 SDK。SDK 使用這些副本 IP 在主網站或連接故障轉移(Centera 停止或網路到主網站)時進行操作故障切換(讀取、寫入、刪除、存在)。
如果 SDK 選項 lazy_pool_open ,則 SDK 不會探測輔助位址。如果存在操作或網路故障轉移,則會探測輔助位址。
ECS:
如果在池打開后,僅在應用程式連接字串中指定主IP位址作為初始探測回應的一部分,則ECS不會在探測回應中發回副本IP位址。SDK 不知道輔助IP位址。在 ECS 上,存儲桶是全域存儲桶,旨在提供強一致性。在寫入物件時,ECS 會擷取物件,而不考慮複寫狀態。這可提供從任何虛擬資料中心 (VDC) 的作業容錯移轉 (讀取、寫入、存在和刪除)。
建議在連接字串中使用主位址和輔助位址進行連接故障轉移。
SDK 首先探測連接字串中的第一個IP。當它收到所有主 VDC IP 時,作為探測的一部分,SDK 不會探測連接字串中的其他 IP(與 lazy_pool) 的資料儲存應用程式和系統中執行。它使用連接字串中的其他IP進行連接故障轉移。
正常泳池開放(不使用) lazy_pool open - 工程部門建議) 首先探測連接字串中的第一個IP。收到回應后,它會在邏輯上分隔主位址並僅探測連接中的下一個輔助IP,並將所有輔助IP位址保留在緩存中。如果無法連線到主要 VDC,如果已啟用服務中斷期間存取 (ADO) (15 分鐘逾時),它會嘗試所有主要 IP (與 Centera 相同)。在所有 IP 引發網路錯誤後,它會嘗試次要 IP。發生 15 分鐘 ADO 超時後,輔助 VDC 將提供對讀取、寫入、刪除和存在操作的訪問許可權。
如果未使用連接字串中的輔助IP,並且主 VDC 發生故障或失去網路連接。必須手動更新應用程式連接字串,以包含輔助 VDC IP 才能存取輔助 VDC。在操作工作之前,必須經過 15 分鐘的 ADO 超時。