1. 程式人生 > >Redis docker叢集重啟

Redis docker叢集重啟

當我們關閉虛擬機器時, 而虛擬機器上有6個redis叢集,這是redis叢集也就全部關閉了,那麼如何重新啟動redis叢集呢?

首先嚴謹起見,我們啟動其中一個redis節點

docker start r1 #我第一個redis容器的名字 

lsof -i :5001 #redis 叢集在啟動時,我為容器指定了ip : 172.19.0.2, 對映埠是5001->6379 ,這裡檢查埠號是否正常監聽

 

#如果忘記了容器的ip怎麼辦?

docker inspect +容器名/容器id,你會看到IPv4Address就知道了

 

#進入容器,啟動redis

docker exec -it r1 bash 

cd /usr/redis/src
./redis-server ../redis.conf #啟動redis

 

#客戶端登陸測試 ,-h指定自己容器的ip 

./redis-cli -h 172.19.0.2 

#測試docker容器和宿主機連通性

telnet 172.19.0.2 6379 

#測試宿主機和最外層windows環境連通性

windows --> cmd --> telnet 虛擬機器ip 5001 #5001是docker容器6379對映到宿主機的埠

#其他節點也是這種啟動方式,但可以同時啟動多節點:docker start r1 r2  r3 r4 r5 r6 

#進入每個redis 容器啟動服務: 

cd /usr/redis/src

./redis-server ../redis.conf

#進入r1 節點,檢查叢集健康狀況

cd /usr/redis/cluster

./redis-trib.rb check 172.19.0.2:6379   # r1 的ip和r1 redis啟動埠,很顯然,叢集正常,即時重啟也沒關係

 

#測試

./redis-cli -h 172.19.0.2 

#報錯

原因是沒有加-c啟動客戶端,所以修改為

./redis-cli  -c  -h 172.19.0.2 

顯然資料被轉發到了其他redis節點上,顯示redis叢集啟動正常