Redis Cluster节点添加/删除实录

 

Redis还是挺好玩的,今天测试了集群的添加、删除节点、重分配slot等。更深入的理解redis的游戏规则。步骤繁多,但是详细。

 

环境解释:

我是在一台Centos 6.9上测试的,各个redis节点以端口号区分。文中针对各个redis,我只是以端口号代表。

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span>Master Node<span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
<span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span>Slave Node<span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
<span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span>用来折腾的Node<span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span><span style="color:#9a6e3a">~</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span></code></span></span>
 

1. 创建redis集群

注:更多redis集群创建,请参阅

Redis Cluster集群部署搭建             

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb create --replicas 1 172.16.32.116:7000 172.16.32.116:7001 172.16.32.116:7002 172.16.32.116:8000 172.16.32.116:8001 172.16.32.116:8002</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Creating cluster
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing <span style="color:#0077aa">hash</span> slots allocation <span style="color:#0077aa">on</span> <span style="color:#990055">6</span> nodes<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#0077aa">Using</span> <span style="color:#990055">3</span> masters:
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
<span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
Adding replica <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> <span style="color:#0077aa">to</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
Adding replica <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> <span style="color:#0077aa">to</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
Adding replica <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> <span style="color:#0077aa">to</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5462</span> slots<span style="color:#999999">)</span> master
M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
S: aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
   replicates a0b91f48e933c1f1d427c54917ce970bd25d29f8
S: a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
   replicates <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
S: <span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
   replicates <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43
Can I <span style="color:#0077aa">set</span> the above configuration? <span style="color:#999999">(</span><span style="color:#0077aa">type</span> <span style="color:#669900">'yes'</span> <span style="color:#0077aa">to</span> accept<span style="color:#999999">)</span>: yes
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Nodes configuration updated
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Assign a different config epoch <span style="color:#0077aa">to</span> each node
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Sending CLUSTER MEET messages <span style="color:#0077aa">to</span> <span style="color:#0077aa">join</span> the cluster
Waiting <span style="color:#0077aa">for</span> the cluster <span style="color:#0077aa">to</span> <span style="color:#0077aa">join</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span><span style="color:#999999">)</span>
M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5462</span> slots<span style="color:#999999">)</span> master
M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
M: aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   replicates a0b91f48e933c1f1d427c54917ce970bd25d29f8
M: a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   replicates <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
M: <span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   replicates <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> <span style="color:#990055">16384</span> slots covered<span style="color:#999999">.</span></code></span></span>
 

2. 检查集群状态

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb check 172.16.32.116:7000</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span><span style="color:#999999">)</span>
M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5462</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
S: <span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43
S: a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
S: aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates a0b91f48e933c1f1d427c54917ce970bd25d29f8
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> <span style="color:#990055">16384</span> slots covered<span style="color:#999999">.</span></code></span></span>
 

~~~~~~~~~~~~~~~~~~~~~~~~~~~添加节点~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

3. 添加新节点redis-trib.rb add-node 新增节点名  原集群节点名

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb add-node 172.16.32.116:9000 172.16.32.116:7000</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Adding node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> <span style="color:#0077aa">to</span> cluster <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span><span style="color:#999999">)</span>
M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5462</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
S: <span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43
S: a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
S: aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates a0b91f48e933c1f1d427c54917ce970bd25d29f8
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span></code></span></span>
 

4. 查看当前集群状态,9000是一个空的Master

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 9000 cluster nodes</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505321254767</span> <span style="color:#990055">1</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505321250759</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505321251761</span> <span style="color:#990055">3</span> connected <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505321255769</span> <span style="color:#990055">3</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505321253765</span> <span style="color:#990055">1</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505321256771</span> <span style="color:#990055">2</span> connected</code></span></span>
 

5. 为9000分配slot, redis的solt是固定的,就16384个,只能从其他节点获取slot,然后分配到9000

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb reshard  172.16.32.116:9000</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span><span style="color:#999999">)</span>
M: <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5462</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
S: <span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43
S: aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates a0b91f48e933c1f1d427c54917ce970bd25d29f8
M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
S: a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> <span style="color:#990055">16384</span> slots covered<span style="color:#999999">.</span>
How many slots <span style="color:#0077aa">do</span> you want <span style="color:#0077aa">to</span> move <span style="color:#999999">(</span><span style="color:#0077aa">from</span> <span style="color:#990055">1</span> <span style="color:#0077aa">to</span> <span style="color:#990055">16384</span><span style="color:#999999">)</span>? 
What <span style="color:#9a6e3a">is</span> the receiving node ID? <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 Please enter <span style="color:#0077aa">all</span> the source node IDs<span style="color:#999999">.</span>
  <span style="color:#0077aa">Type</span> <span style="color:#669900">'all'</span> <span style="color:#0077aa">to</span> <span style="color:#0077aa">use</span> <span style="color:#0077aa">all</span> the nodes <span style="color:#0077aa">as</span> source nodes <span style="color:#0077aa">for</span> the <span style="color:#0077aa">hash</span> slots<span style="color:#999999">.</span>
  <span style="color:#0077aa">Type</span> <span style="color:#669900">'done'</span> once you entered <span style="color:#0077aa">all</span> the source nodes IDs<span style="color:#999999">.</span>
Source node <span style="color:slategray">#1:all      </span>
Ready <span style="color:#0077aa">to</span> move <span style="color:#990055">300</span> slots<span style="color:#999999">.</span>
  Source nodes:
    M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
    M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5462</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
    M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5461</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
  Destination node:
    M: <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
  Resharding <span style="color:#0077aa">plan</span>:
    Moving slot <span style="color:#990055">5461</span> <span style="color:#0077aa">from</span> <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
    Moving slot <span style="color:#990055">5469</span> <span style="color:#0077aa">from</span> <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
<span style="color:#0077aa">Do</span> you want <span style="color:#0077aa">to</span> proceed <span style="color:#0077aa">with</span> the proposed reshard <span style="color:#0077aa">plan</span> <span style="color:#999999">(</span>yes<span style="color:#9a6e3a">/</span><span style="color:#0077aa">no</span><span style="color:#999999">)</span>? yes
Moving slot <span style="color:#990055">5461</span> <span style="color:#0077aa">from</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> <span style="color:#0077aa">to</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>:</code></span></span>
 

6. 可以看到,9000已经分配到的slot是0-98 5461-5561 10923-11021

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 9000 cluster nodes</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505324905062</span> <span style="color:#990055">1</span> connected <span style="color:#990055">99</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505324910075</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
<span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">7</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">98</span> <span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505324908070</span> <span style="color:#990055">3</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505324911077</span> <span style="color:#990055">1</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505324902057</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505324909073</span> <span style="color:#990055">2</span> connected</code></span></span>
 

~~~~~~~~~~~~~~~~~~~~~~~~~~~将9000变为slave~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

7. 希望将9000变成7000的slave,但是由于有slot,执行失败,需要先转移slot

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># redis-cli -c -p 9000 cluster replicate a0b91f48e933c1f1d427c54917ce970bd25d29f8</span>
<span style="color:#999999">(</span>error<span style="color:#999999">)</span> ERR <span style="color:#0077aa">To</span> <span style="color:#0077aa">set</span> a master the node must be empty <span style="color:#9a6e3a">and</span> without assigned slots<span style="color:#999999">.</span></code></span></span>
 

8. 删除节点也是不可以的,总之,只要上面有slot。redis是不会让你删除的,而且需要人工介入,rebalance这些slot之后才行

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb del-node 172.16.32.116:9000 364ae8322ab2627e25b05d45b702448c74afad10</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Removing node <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#0077aa">from</span> cluster <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
<span style="color:#999999">[</span>ERR<span style="color:#999999">]</span> Node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> <span style="color:#9a6e3a">is</span> <span style="color:#9a6e3a">not</span> empty<span style="color:#9a6e3a">!</span> Reshard <span style="color:#0077aa">data</span> away <span style="color:#9a6e3a">and</span> try again<span style="color:#999999">.</span></code></span></span>
 

9.重新分配9000的slot到7000上

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb reshard  172.16.32.116:9000   <<<<<<重新分配slot</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span><span style="color:#999999">)</span>
M: <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">98</span><span style="color:#999999">,</span><span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span><span style="color:#999999">,</span><span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span> <span style="color:#999999">(</span><span style="color:#990055">299</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>
   slots:<span style="color:#990055">99</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5362</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5361</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
S: <span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43
S: aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates a0b91f48e933c1f1d427c54917ce970bd25d29f8
M: <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
   slots:<span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span> <span style="color:#999999">(</span><span style="color:#990055">5362</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
S: a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> slave
   replicates <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> <span style="color:#990055">16384</span> slots covered<span style="color:#999999">.</span>
How many slots <span style="color:#0077aa">do</span> you want <span style="color:#0077aa">to</span> move <span style="color:#999999">(</span><span style="color:#0077aa">from</span> <span style="color:#990055">1</span> <span style="color:#0077aa">to</span> <span style="color:#990055">16384</span><span style="color:#999999">)</span>? <span style="color:#990055">300</span>     <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><</span><span style="color:#990055">9000</span>节点全部需要迁移的节点
What <span style="color:#9a6e3a">is</span> the receiving node ID? a0b91f48e933c1f1d427c54917ce970bd25d29f8  <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#990055">7000</span>的ID
Please enter <span style="color:#0077aa">all</span> the source node IDs<span style="color:#999999">.</span>
  <span style="color:#0077aa">Type</span> <span style="color:#669900">'all'</span> <span style="color:#0077aa">to</span> <span style="color:#0077aa">use</span> <span style="color:#0077aa">all</span> the nodes <span style="color:#0077aa">as</span> source nodes <span style="color:#0077aa">for</span> the <span style="color:#0077aa">hash</span> slots<span style="color:#999999">.</span>
  <span style="color:#0077aa">Type</span> <span style="color:#669900">'done'</span> once you entered <span style="color:#0077aa">all</span> the source nodes IDs<span style="color:#999999">.</span>
Source node <span style="color:slategray">#1:364ae8322ab2627e25b05d45b702448c74afad10    <<<<<<9000的ID</span>
Source node <span style="color:slategray">#2:done</span>
Ready <span style="color:#0077aa">to</span> move <span style="color:#990055">300</span> slots<span style="color:#999999">.</span>
  Source nodes:
    M: <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>   <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span>Source nodes
   slots:<span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">98</span><span style="color:#999999">,</span><span style="color:#990055">5461</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span><span style="color:#999999">,</span><span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span> <span style="color:#999999">(</span><span style="color:#990055">299</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
  Destination node:
    M: a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>   <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><</span>Destination node
   slots:<span style="color:#990055">99</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5460</span> <span style="color:#999999">(</span><span style="color:#990055">5362</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
  Resharding <span style="color:#0077aa">plan</span>:
    Moving slot <span style="color:#990055">0</span> <span style="color:#0077aa">from</span> <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10
<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
    Moving slot <span style="color:#990055">11021</span> <span style="color:#0077aa">from</span> <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10
<span style="color:#0077aa">Do</span> you want <span style="color:#0077aa">to</span> proceed <span style="color:#0077aa">with</span> the proposed reshard <span style="color:#0077aa">plan</span> <span style="color:#999999">(</span>yes<span style="color:#9a6e3a">/</span><span style="color:#0077aa">no</span><span style="color:#999999">)</span>? yes
Moving slot <span style="color:#990055">0</span> <span style="color:#0077aa">from</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> <span style="color:#0077aa">to</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>:
Moving slot <span style="color:#990055">1</span> <span style="color:#0077aa">from</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> <span style="color:#0077aa">to</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span>:
<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span></code></span></span>
 

10. 查询,可以看到9000已经没有slot了

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 9000 cluster nodes</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505328938056</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505328939059</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
<span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">7</span> connected
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505328936053</span> <span style="color:#990055">3</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505328933046</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505328937054</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505328934049</span> <span style="color:#990055">2</span> connected</code></span></span>
 

11. 再次执行命令,将9000变成7000的slave,成功

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># redis-cli -c -p 9000 cluster replicate a0b91f48e933c1f1d427c54917ce970bd25d29f8</span>
OK</code></span></span>
 

12. 查看状态,9000已经成为7000的slave

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 9000 cluster nodes</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329564286</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329561281</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
<span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> myself<span style="color:#999999">,</span>slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">7</span> connected    <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span>
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505329558274</span> <span style="color:#990055">3</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505329554266</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329563285</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505329562283</span> <span style="color:#990055">2</span> connected</code></span></span>
 

13. 删除节点9000,成功删除

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb del-node 172.16.32.116:9000 364ae8322ab2627e25b05d45b702448c74afad10</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Removing node <span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#0077aa">from</span> cluster <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Sending CLUSTER FORGET messages <span style="color:#0077aa">to</span> the cluster<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">SHUTDOWN</span> the node<span style="color:#999999">.</span></code></span></span>
 

14. 连接9000,发现已经shutdown,无法连接

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 9000 cluster nodes</span>
Could <span style="color:#9a6e3a">not</span> <span style="color:#0077aa">connect</span> <span style="color:#0077aa">to</span> Redis at <span style="color:#990055">127.0</span><span style="color:#990055">.0</span><span style="color:#990055">.1</span>:<span style="color:#990055">9000</span>: Connection refused
Could <span style="color:#9a6e3a">not</span> <span style="color:#0077aa">connect</span> <span style="color:#0077aa">to</span> Redis at <span style="color:#990055">127.0</span><span style="color:#990055">.0</span><span style="color:#990055">.1</span>:<span style="color:#990055">9000</span>: Connection refused</code></span></span>
 

15. 查看集群状态,9000已经不见了

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 7000 cluster nodes</span>
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329693835</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329694837</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505329696841</span> <span style="color:#990055">6</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505329695840</span> <span style="color:#990055">5</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505329692833</span> <span style="color:#990055">8</span> connected</code></span></span>
 

~~~~~~~~~~~~~~~~~~~~~~~~~~~再次启动9000,发现不同~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

16. 再次启动9000,发现一个有意思的事情。上面检查7000,集群已经没有9000了

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 7000 cluster nodes</span>
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329898241</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329899242</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505329902249</span> <span style="color:#990055">6</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505329901246</span> <span style="color:#990055">5</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505329900244</span> <span style="color:#990055">8</span> connected</code></span></span>
 

17. 但是查看9000,确仍然能看到整个集群的信息。说明,在删除节点的过程,只是在原有集群中删除9000的信息。但是9000自身的信息并没有被删除,依然保留全部的信息,只是9000实例被关闭而已。

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-cli  -p 9000 cluster nodes</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329902003</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329903006</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505329906013</span> <span style="color:#990055">3</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505329908019</span> <span style="color:#990055">2</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505329904008</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> myself<span style="color:#999999">,</span>slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">7</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329907016</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span></code></span></span>
 

18. 而9000的全部信息,是记录在自身目录的nodes.conf中

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># more nodes.conf</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329544244</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329542241</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
<span style="color:#990055">364</span>ae8322ab2627e25b05d45b702448c74afad10 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> myself<span style="color:#999999">,</span>slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">7</span> connected
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505329541239</span> <span style="color:#990055">3</span> connected
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505329545246</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329543242</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505329546248</span> <span style="color:#990055">2</span> connected
vars currentEpoch <span style="color:#990055">8</span> lastVoteEpoch <span style="color:#990055">0</span></code></span></span>
 

19. 到7001等其他节点中查看,nodes.conf已经没有9000的信息

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># more nodes.conf</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329680312</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505329684319</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505329686321</span> <span style="color:#990055">6</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505329685318</span> <span style="color:#990055">5</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505329683317</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
vars currentEpoch <span style="color:#990055">8</span> lastVoteEpoch <span style="color:#990055">0</span></code></span></span>
 

~~~~~~~~~~~~~~~~~~~~~~~~~~~再次添加9000,以及9001~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

20. 将9000和9001再次加入集群,开始下面的折腾。

注意:需要将9000和9001下的redis.conf外的文件清除,重启。然后才能再次加入集群。不然会遇到错误:

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:#999999">[</span>ERR<span style="color:#999999">]</span> Node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span> <span style="color:#9a6e3a">is</span> <span style="color:#9a6e3a">not</span> empty<span style="color:#999999">.</span> Either the node already knows other nodes <span style="color:#999999">(</span><span style="color:#0077aa">check</span> <span style="color:#0077aa">with</span> CLUSTER NODES<span style="color:#999999">)</span> <span style="color:#9a6e3a">or</span> <span style="color:#0077aa">contains</span> <span style="color:#0077aa">some</span> <span style="color:#0077aa">key</span> <span style="color:#9a6e3a">in</span> <span style="color:#0077aa">database</span> <span style="color:#990055">0.</span></code></span></span>
 

21. 加入集群

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:#999999">.</span><span style="color:#9a6e3a">/</span>redis<span style="color:#9a6e3a">-</span>trib<span style="color:#999999">.</span>rb <span style="color:#0077aa">add</span><span style="color:#9a6e3a">-</span>node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span>
<span style="color:#999999">.</span><span style="color:#9a6e3a">/</span>redis<span style="color:#9a6e3a">-</span>trib<span style="color:#999999">.</span>rb <span style="color:#0077aa">add</span><span style="color:#9a6e3a">-</span>node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span> <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span></code></span></span>
 

22. 现在是两个空的Master节点

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb check 172.16.32.116:9001</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span><span style="color:#999999">)</span>
M: c4ba7a1f537ac66076791461d6af9012741fee74 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
M: dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
 
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> <span style="color:#990055">16384</span> slots covered<span style="color:#999999">.</span></code></span></span>
 

23. 重分配100个slot到9000上,其实redis很聪明的,我连接的是9001,但是在分配的时候,它会问你,receiving node是谁,Source node 是谁。

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># ./redis-trib.rb reshard 172.16.32.116:9001</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> Performing Cluster <span style="color:#0077aa">Check</span> <span style="color:#999999">(</span><span style="color:#0077aa">using</span> node <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span><span style="color:#999999">)</span>
<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> nodes agree about slots configuration<span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> <span style="color:#0077aa">for</span> <span style="color:#0077aa">open</span> slots<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#9a6e3a">>></span><span style="color:#9a6e3a">></span> <span style="color:#0077aa">Check</span> slots coverage<span style="color:#999999">.</span><span style="color:#999999">.</span><span style="color:#999999">.</span>
<span style="color:#999999">[</span>OK<span style="color:#999999">]</span> <span style="color:#0077aa">All</span> <span style="color:#990055">16384</span> slots covered<span style="color:#999999">.</span>
How many slots <span style="color:#0077aa">do</span> you want <span style="color:#0077aa">to</span> move <span style="color:#999999">(</span><span style="color:#0077aa">from</span> <span style="color:#990055">1</span> <span style="color:#0077aa">to</span> <span style="color:#990055">16384</span><span style="color:#999999">)</span>? <span style="color:#990055">100</span>
What <span style="color:#9a6e3a">is</span> the receiving node ID? dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516  <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><</span>receiving node ID
Please enter <span style="color:#0077aa">all</span> the source node IDs<span style="color:#999999">.</span>
  <span style="color:#0077aa">Type</span> <span style="color:#669900">'all'</span> <span style="color:#0077aa">to</span> <span style="color:#0077aa">use</span> <span style="color:#0077aa">all</span> the nodes <span style="color:#0077aa">as</span> source nodes <span style="color:#0077aa">for</span> the <span style="color:#0077aa">hash</span> slots<span style="color:#999999">.</span>
  <span style="color:#0077aa">Type</span> <span style="color:#669900">'done'</span> once you entered <span style="color:#0077aa">all</span> the source nodes IDs<span style="color:#999999">.</span>
Source node <span style="color:slategray">#1:aeb684429d220c0fd1392574d193cc1ae7577782  <<<<<<<Source node我选的是 8000</span>
<span style="color:#9a6e3a">*</span><span style="color:#9a6e3a">*</span><span style="color:#9a6e3a">*</span> The specified node <span style="color:#9a6e3a">is</span> <span style="color:#9a6e3a">not</span> known <span style="color:#9a6e3a">or</span> <span style="color:#9a6e3a">is</span> <span style="color:#9a6e3a">not</span> a master<span style="color:#999999">,</span> please retry<span style="color:#999999">.</span> <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><</span>然而,并没能欺骗redis,它发现了,这个是slave,没有slot可以提供的。 
Source node <span style="color:slategray">#1:273107e5ac994d675749be0979556e761274bb93   <<<<<<<<Source node再次指定为7001,开始分配了</span>
Source node <span style="color:slategray">#2:done</span>
Ready <span style="color:#0077aa">to</span> move <span style="color:#990055">100</span> slots<span style="color:#999999">.</span>
  Source nodes:
    M: <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span>
   slots:<span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span> <span style="color:#999999">(</span><span style="color:#990055">5361</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">1</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
  Destination node:
    M: dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span>
   slots: <span style="color:#999999">(</span><span style="color:#990055">0</span> slots<span style="color:#999999">)</span> master
   <span style="color:#990055">0</span> additional replica<span style="color:#999999">(</span>s<span style="color:#999999">)</span>
  Resharding <span style="color:#0077aa">plan</span>:
    Moving slot <span style="color:#990055">5562</span> <span style="color:#0077aa">from</span> <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93
    Moving slot <span style="color:#990055">5563</span> <span style="color:#0077aa">from</span> <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93</code></span></span>
 

24. 查看分配情况,redis还是很聪明灵活的。

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># redis-cli -p 7001 cluster nodes</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5662</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505330856605</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505330853598</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505330860611</span> <span style="color:#990055">6</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505330859608</span> <span style="color:#990055">5</span> connected
c4ba7a1f537ac66076791461d6af9012741fee74 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505330862615</span> <span style="color:#990055">9</span> connected                         <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><</span>依然是空的
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505330861612</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505330858607</span> <span style="color:#990055">10</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5661</span>              <span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><<</span><span style="color:#9a6e3a"><</span>从<span style="color:#990055">7001</span>要来<span style="color:#990055">100</span>个slot</code></span></span>
 

25. 将9001添加为9000的slave节点 redis-cli -p <slave IP:port> cluster nodes <Master ID 号>

<span style="color:#333333"><span style="color:black"><code class="language-sql"><span style="color:slategray"># redis-cli -p 9001 cluster nodes dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516</span>
<span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7001</span> myself<span style="color:#999999">,</span>master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">0</span> <span style="color:#990055">2</span> connected <span style="color:#990055">5662</span><span style="color:#9a6e3a">-</span><span style="color:#990055">10922</span>
a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505331457798</span> <span style="color:#990055">8</span> connected <span style="color:#990055">0</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5561</span> <span style="color:#990055">10923</span><span style="color:#9a6e3a">-</span><span style="color:#990055">11021</span>
aeb684429d220c0fd1392574d193cc1ae7577782 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8000</span> slave a0b91f48e933c1f1d427c54917ce970bd25d29f8 <span style="color:#990055">0</span> <span style="color:#990055">1505331454791</span> <span style="color:#990055">8</span> connected
<span style="color:#990055">3</span>d27f60a1cc4d9c8f09aca928b03f0e083722d3b <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8002</span> slave <span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">0</span> <span style="color:#990055">1505331456795</span> <span style="color:#990055">6</span> connected
a96cad95dca2a8e1e0302bff4f835260d92e3d31 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">8001</span> slave <span style="color:#990055">273107</span>e5ac994d675749be0979556e761274bb93 <span style="color:#990055">0</span> <span style="color:#990055">1505331458799</span> <span style="color:#990055">10</span> connected
c4ba7a1f537ac66076791461d6af9012741fee74 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9001</span> slave dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516 <span style="color:#990055">0</span> <span style="color:#990055">1505331459801</span> <span style="color:#990055">10</span> connected
<span style="color:#990055">88</span>fe075375295b59eabe69fa1438ed7c7c314f43 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">7002</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505331455793</span> <span style="color:#990055">3</span> connected <span style="color:#990055">11022</span><span style="color:#9a6e3a">-</span><span style="color:#990055">16383</span>
dbf78b73f2ab9e37cbf31abbc2beb3d5413d5516 <span style="color:#990055">172.16</span><span style="color:#990055">.32</span><span style="color:#990055">.116</span>:<span style="color:#990055">9000</span> master <span style="color:#9a6e3a">-</span> <span style="color:#990055">0</span> <span style="color:#990055">1505331453788</span> <span style="color:#990055">10</span> connected <span style="color:#990055">5562</span><span style="color:#9a6e3a">-</span><span style="color:#990055">5661</span></code></span></span>
 

 

经过各种折腾,redis添加,删除,重分配slot等操作,都测试完了。

中间有很多命令输出部门,视乎有点重复。但是为了更好的阅读理解,观察每一步操作的变化。后面查阅也更容易一些。

毕竟,年纪大了,记性不好。好多自己写过的blog,回头翻阅的时候,发现某些步骤,不是很好理解了。虽然我的blog,都是基于自己测试的结果,但是依然会忘记。

发布了900 篇原创文章 · 获赞 387 · 访问量 279万+

猜你喜欢

转载自blog.csdn.net/kingmax54212008/article/details/104090797