方案選型
Elasticsearch(ES)異地容災主要有以下2種方案:
OSS快照備份與恢複:通過將索引資料備份到阿里雲Object Storage Service,實現資料持久化儲存。首次快照為全量備份,後續為增量備份。通過跨叢集OSS倉庫,可將快照資料恢複到目標ES執行個體。詳情請參見通過跨叢集OSS倉庫備份與恢複資料。
跨叢集複製(CCR):將Leader叢集的可寫索引,以非同步、增量的方式自動複製到一個或多個Follower叢集。支援近即時同步,適用於對RPO和RTO要求較高的容災情境,詳情請參見通過CCR實現跨叢集資料複製。
方案對比
方案 | 適用情境 | RPO | RTO | 主要限制 |
OSS快照 | 大規模資料(GB~PB層級)的定期備份與恢複 | 小時級到天級(取決於快照間隔) | 數小時(取決於資料量和分區恢復) | 無法實現持續同步;恢複期間可能需要停止服務 |
CCR | 異地容災、讀寫分離、就近訪問 | 近零(秒級) | 秒級到分鐘級 | Follower索引唯讀;需要相同的mapping和分區數 |
對於RPO和即時性要求高的異地容災情境,CCR是最佳選擇:
CCR實現秒級資料同步,資料丟失最小化。
主叢集故障時,業務流量切換到Follower叢集即可恢複服務,無需等待快照恢複。
雖然初始部署成本較高,但長期來看避免了資料丟失導致的業務損失,性價比更高。