天天看點

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

目錄

1、Redis鏡像安裝 2、Redis叢集搭建 3、Redis哨兵模式 4、進行驗證

來源: segmentfault.com/a/1190000010131816

1、Redis鏡像安裝 說明:基于Ubuntu16.04-64bit,開始本教程前,請確定您的Linux系統已安裝Docker。

1、下載下傳Redis鏡像

鏡像中心

推薦使用網易蜂巢的鏡像中心
位址:https://c.163.com/hub#/m/home/
           

Redis鏡像

c.
           

安裝完成後,使用

docker images

指令,檢視是否安裝成功

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

2、Redis叢集搭建

1、運作Redis鏡像

分别使用以下指令啟動3個Redis

6379 -p 
           

使用

docker ps

指令,檢視是否啟動成功

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

2、配置Redis叢集

分别使用 

docker inspect 容器ID

 指令,檢視3個Redis的Docker内網IP位址

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

在Networks欄,可以看見該容器的Docker内網IP位址。

三個Redis的内網IP位址如下

redis-6379:172
           

進入Docker容器内部

6379為主機,其餘兩台為從機
           
docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

使用上面的方法,分别進入 redis-6379、redis-6380、redis-6381容器内部,并連接配接redis服務端

分别在redis-6380和redis-6381使用 
           
docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

這樣,redis的叢集環境就搭建好了,本機測試無問題,這裡就不示範了。為了保證redis叢集的高可用,下面開始配置redis哨兵模式。

3、Redis哨兵模式

1、配置Redis哨兵

Redis哨兵配置,有兩種方案

方案一:基于現有的3台Redis容器服務,互相啟動一個Redis哨兵
方案二:重新再啟動3台Redis容器服務,分别啟動一個Redis哨兵
           

方案二會額外的新增3個Redis容器服務,是以這裡示範方案一

分别進入3台Redis容器内部,執行以下操作

首先,進入Docker容器内部

exec -ti 容器ID /bin/bash 分别進入三個Redis容器
           

然後,編寫Redis哨兵配置檔案

cd / 指令,進入根目錄
           

使用 touch sentinel.conf指令,建立哨兵配置檔案

使用 
           

在進行編輯時,需要先按照vim,指令為 apt-get update、apt-get install vim –y

最後,啟動Redis哨兵

使用 redis-sentinel /sentinel.conf 啟動Redis哨兵監控
使用 ps –ef |grep redis 指令,可以看到redis-server和redis-sentinel正在運作
           

至此,哨兵模式配置完畢,按理說,不應在容器内部進行操作,但應個人能力有限,未找到其它的解決方案。有其它方式能夠配置redis哨兵模式,歡迎指教!

4、進行驗證

1、驗證

使用 docker ps 指令,檢視正在運作的鏡像

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

通過檢視Redis哨兵日志,可以看到,redis哨兵正在監控

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式

當我們把redis主機關掉時,可以看到,redis重新選舉了新的主機

docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式
docker部署redis叢集_Linux_基于Docker搭建Redis叢集 哨兵模式