利用docker部署redis集群

2022-06-11 01:57:13 字數 3039 閱讀 8451

目錄

一、首先配置redis.conf檔案,... 1

1、獲取配置檔案... 1

2、修改各配置檔案的引數... 2

1、建立網路... 2

2、拉取映象並啟動容器... 2

三、設定redis集群... 3

1、安裝ruby. 3

2、安裝redis-cluster的ruby介面,並啟動集群... 3

3、測試... 3

redis集群的安裝:版本至少是3.2.8及其以上,這裡以3.2.8版本為例說明

本次在本地主機啟動6個redis容器,相當於6個節點,容器使用的ip: 192.168.100.101~106

本文件部署時建議直接複製貼上

[root@cdh01 ~]# wget

[root@cdh01 ~]# tar xf redis-3.2.8.tar.gz

[root@cdh01 ~]# mkdir -p /myredis/conf/

[root@cdh01 ~]# for i in `seq 6`;do cp redis-3.2.8/redis.conf /myredis/conf/redis$i.conf;done

[root@cdh01 ~]# ls /myredis/conf/     #可以看到共6各檔案,每個容器對應乙個檔案

redis1.conf  redis2.conf  redis3.conf  redis4.conf  redis5.conf  redis6.conf  

a、修改監聽

[root@cdh01 ~]# for i in `seq 6`;do sed -i "s/bind 127.0.0.1/bind 192.168.100.10$i/g" /myredis/conf/redis$i.conf;done

b、開啟集群功能

[root@cdh01 ~]# for i in `seq 6`;do sed -i 's/# cluster-enabled yes/cluster-enabled yes/g' /myredis/conf/redis$i.conf;done

c、啟動aof增量持久化策略

docker network create --subnet=192.168.100.0/24 staticnet  

docker network ls

[root@cdh01 ~]# docker pull redis:3.2.8

[root@cdh01 ~]# for i in `seq 6`;do docker run -d -v /myredis/conf/redis$i.conf:/usr/local/etc/redis/redis.conf -p 700$i:6379 --name myredis$i --net staticnet --ip 192.168.100.10$i redis:3.2.8 redis-server /usr/local/etc/redis/redis.conf;done

首先安裝rvm,然後用rvm安裝ruby

a.安裝rvm

#檢視最新的key,下面的key可能會失效

[root@150 ~]# gpg --keyserver hkp: --recv-keys 7d2baf1cf37b13e2069d6956105bd0e739499bdb

[root@150 ~]# \curl -ssl | bash -s stable

[root@150 ~]# source /usr/local/rvm/scripts/rvm

b.檢視rvm中ruby的版本

rvm list known | grep ruby

c.選擇乙個版本ruby版本安裝,這邊選擇的是ruby 2.4.1

rvm install 2.4.1

d.使用ruby版本並設定為預設版本

rvm use 2.4.1 --default

e.將ruby和gem放入到全域性變數

如果是按照前面安裝的,ruby和gem的位置應該在/usr/local/rvm/rubies/ruby-2.4.1/bin/這個目錄下,如果不在,可以使用whereis ruby 和 whereis  gem來查詢,找到位置後,使用軟鏈命令

ln -s /usr/local/rvm/rubies/ruby-2.4.1/bin/gem  /usr/bin/

ln -s /usr/local/rvm/rubies/ruby-2.4.1/bin/ruby  /usr/bin/

到這裡ruby就安裝完成了

[root@cdh01 ~]# gem install redis #安裝介面

[root@cdh01 ~]# ruby /root/redis-3.2.8/src/redis-trib.rb create --replicas 1 192.168.100.101:6379 192.168.100.102:6379 192.168.100.103:6379 192.168.100.104:6379 192.168.100.105:6379 192.168.100.106:6379

如果一切順利,你會看到類似這樣的訊息: [ok] all 16384 slots covered

本地連線可以用容器的ip

redis-cli -h 192.168.100.101 -c -p 6379

遠端機器連線要使用宿主機的的ip

[root@bigdb01 ~]# redis-cli -h 172.16.20.90 -c -p 7004

結語:至此redis的單機與集群的安裝和啟動就成功了

Docker快速部署Redis

1 查詢docker hub上的redis映象 root wugenqiang redis docker search redis2 pull映象 root wugenqiang docker pull redis 3.2這裡我們拉取官方的映象,標籤為3.2 3 執行映象 命令說明 p 6379 6...

Docker部署Redis集群

centos系統docker部署3主3從redis集群 docker pull redis 6.0.5 alpine密碼為redis2020pass,可自行修改 vi redis cluster.tmplport protected mode no cluster enabled yes clust...

docker 部署redis集群

部署方式這裡沒有採用哨兵模式,而是使用 分片 高可用 負載均衡的模式,架構圖 至少啟動6個容器 建立網絡卡 docker network create redis subnet 192.168.0.0 16 通過指令碼建立6個redis配置 for port in seq 1 6 do mkdir ...