<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### 集群伸縮 Redis 集群提供了靈活的節點擴容和收縮方案。在**不影響集群對外服務**的情況下,可以為集群添加節點進行擴容也可以下線部分節點進行縮容。 ![](https://img.kancloud.cn/51/fc/51fce519a97033fcb241ea721cb07ca3_749x447.png) #### 1、槽和數據與節點的對應關系 當主節點分別維護自己負責的槽和對應的數據,如果希望加入1個節點實現集群擴容時,需要通過相關命令把一部分槽和數據遷移給新節點。 ![](https://img.kancloud.cn/fe/b9/feb9266b3ff6f0677a25fc48c4f7fd1f_897x546.png) 上面圖里的每個節點把一部分槽和數據遷移到新的節點newredis,每個節點負責的槽和數據相比之前變少了從而達到了集群擴容的目的,**集群伸縮=槽和數據在節點之間的移動**。 ##### 擴容操作 ###### 1.準備新機器 需要提前準備好新節點并**運行在集群模式下**,新節點建議跟集群內的節點配置保持一致,便于管理統一。 ###### 2.加入集群 通過 `redis-trib.rb add-node ip:6397 ip:6391` 實現節點添加。 ###### 3.遷移槽和數據 **加入集群后需要為新節點遷移槽和相關數據,槽在遷移過程中集群可以正常提供讀寫服務,遷移過程是集群擴容最核心的環節,下面詳細講解。** 槽是 Redis 集群管理數據的基本單位,首先需要為新節點制定槽的遷移計劃,確定原有節點的哪些槽需要遷移到新節點。遷移計劃需要確保每個節點負責相似數量的槽,從而保證各節點的數據均勻,比如之前是三個節點,現在是四個節點,把節點槽分布在四個節點上。 ![](https://img.kancloud.cn/21/d5/21d5be0109f9ebae5ed894732118e648_876x325.png) 槽遷移計劃確定后開始逐個把槽內數據從源節點遷移到目標節點. ![](https://img.kancloud.cn/7e/f1/7ef1d8dd2a802dceed73ba70908c62bf_858x318.png) 數據遷移過程是逐個槽進行的 流程說明: 1)對目標節點發送導入命令,讓目標節點準備導入槽的數據。 2)對源節點發送導出命令,讓源節點準備遷出槽的數據。 3)源節點循環執行遷移命令,將槽跟數據遷移到目標節點。 ![](https://img.kancloud.cn/27/b8/27b8df5500aa31be8d7bb4c68d2c0527_609x383.png) `redis-trib` 提供了槽重分片功能,命令如下: redis-trib.rb reshard host:port --from <arg> --to <arg> --slots <arg> --yes --timeout <arg> --pipeline <arg> 參數說明: `·host:port:`必傳參數,集群內任意節點地址,用來獲取整個集群信息。 `·--from:`制定源節點的 id,如果有多個源節點,使用逗號分隔,如果是all源節點變為集群內所有主節點,在遷移過程中提示用戶輸入。 `·--to:`需要遷移的目標節點的id,目標節點只能填寫一個,在遷移過程中提示用戶輸入。 `·--slots:`需要遷移槽的總數量,在遷移過程中提示用戶輸入。 `·--yes:`當打印出 reshard 執行計劃時,是否需要用戶輸入yes確認后再執行 reshard。 `·--timeout:`控制每次 migrate 操作的超時時間,默認為60000毫秒。 `·--pipeline:`控制每次批量遷移鍵的數量,默認為10。 **遷移操作** redis-trib.rb reshard ip:6379 打印出集群每個節點信息后,reshard 命令需要確認遷移的槽數量,這里我們根據節點個數輸入對應的值: ![](https://img.kancloud.cn/1c/56/1c56171000cdd02b5231d5512c3131dc_465x75.png) 輸入某個節點的節點 ID 作為目標節點,目標節點只能指定一個: What is the receiving node ID xxxx ![](https://img.kancloud.cn/ea/7a/ea7ad627bd5fe6af1e4be203baaa6335_554x151.png) 之后輸入源節點的 ID,這里分別輸入相應的節點 ID 最后用 done 表示結束: 數據遷移之前會打印出所有的槽從源節點到目標節點的計劃,確認計劃無誤后輸入 yes 執行遷移工作 redis-trib 工具會打印出每個槽遷移的進度: ![](https://img.kancloud.cn/26/4a/264a5298d7bf9e37aa25bbdff760a187_468x73.png) 查看節點的信息cluster-node ![](https://img.kancloud.cn/58/63/586376461364673dacc787ae55cd7949_554x88.png) 輸入 `redis-trib.rb rebalance ip:port` ![](https://img.kancloud.cn/4b/6c/4b6c0850ffdcbdd7dbcdb263e8c82b6f_487x115.png) **主從節點設置** 擴容之初我們把6397、6398節點加入到集群,節點6397遷移了部分槽和數據作為主節點,但相比其他主節點目前還沒有從節點,因此該節點不具備故障轉移的能力。 這時需要把節點6398作為6397的從節點,從而保證整個集群的高可用。使用 `cluster replicate{masterNodeId}`命令為主節點添加對應從節點。 #### 收縮集群 收縮集群意味著縮減規模,需要從現有集群中安全下線部分節點,下線節點過程。持續更新中。。。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看