Docker 部署 Redis 集群 VS 正常部署 Redis 集群
阅读本文大概需要 4 分钟。
前言
yum -y install wget
安装。wget http://download.redis.io/releases/redis-6.0.7.tar.gz
yum -y install gcc-c++
tar xzf redis-6.0.7.tar.gz
cd redis-6.0.7
make
# 1、安装gcc全家桶
yum install cpp
yum install binutils
yum install glibc
yum install glibc-kernheaders
yum install glibc-common
yum install glibc-devel
yum install gcc
yum install make
# 2、升级gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
# 3、设置永久生效
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
make install
redis-server redis.conf
![](https://filescdn.proginn.com/1bd2db836a2b7b39be5c9c0289a59964/30914e0f8c3c30f5908c352b6a25232c.webp)
# 通过脚本创建6个redis配置
for port in $(seq 1 6); \
do \
mkdir -p /root/redis/node-${port}/conf
touch /root/redis/node-${port}/conf/redis.conf
cat << EOF >/root/redis/node-${port}/conf/redis.conf
port 637${port}
bind 0.0.0.0
cluster-enabled yes
cluster-config-file /root/redis/node-${port}/conf/nodes.conf
cluster-node-timeout 5000
appendonly yes
daemonize yes
EOF
done
for port in $(seq 1 6); \
do \
redis-server /root/redis/node-${port}/conf/redis.conf
done
![](https://filescdn.proginn.com/e1e6b3638d516cf1129b54d5a9edcf3b/11bf967eb4942d183a52a0bc61500fe4.webp)
redis-cli --cluster create 127.0.0.1:6371 127.0.0.1:6372 127.0.0.1:6373 127.0.0.1:6374 127.0.0.1:6375 127.0.0.1:6376 --cluster-replicas 1
![](https://filescdn.proginn.com/05ee1071a5218e61b5e27b1b934c4bc5/3b3507fb27bbdf7ecb5db3e1c1716c91.webp)
![](https://filescdn.proginn.com/20e9f8cf20f8951f423b8d9e6a75c04b/f5a6fdef76120bb4a9b0642bba0f79ce.webp)
![](https://filescdn.proginn.com/24ae16a7427c74bfdf1c9bed9f641d33/16750408eacba503dc26939f1c93d6be.webp)
#1、卸载旧的版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#2、需要的安装包
sudo yum install -y yum-utils
#3、安装镜像仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo # 默认是国外的
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 建议使用阿里云的,十分快速
# 配置下加速
# >移动到下述目录:
cd /etc/docker
# >找到daemon.json文件,如果没有就新建一个,填入如下信息:
["https://almtd3fa.mirror.aliyuncs.com"]} :
# >重启下docker
service docker restart
# 更新yum软件包索引
yum makecache fast
#4、安装docker相关的依赖 docker-ce 社区版 ee 企业版
sudo yum install docker-ce docker-ce-cli containerd.io
#5、启动Docker
sudo systemctl start docker
#6、检测是否安装成功
docker version
#7、测试hello-world
docker run hello-world
#8、查看一下下载的这个 hello-world 镜像
~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
latest bf756fb1ae65 7 months ago 13.3kB
docker network create redis --subnet 172.38.0.0/16
# 通过脚本创建6个redis配置
for port in $(seq 1 6); \
do \
mkdir -p /root/redis/node-${port}/conf
touch /root/redis/node-${port}/conf/redis.conf
cat << EOF >/root/redis/node-${port}/conf/redis.conf
port 6379
bind 0.0.0.0
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 172.38.0.1${port}
cluster-announce-port 6379
cluster-announce-bus-port 16379
appendonly yes
EOF
done
for port in $(seq 1 6); \
do \
docker run -p 637${port}:6379 -p 1637${port}:16379 --name redis-${port} \
-v /root/redis/node-${port}/data:/data \
-v /root/redis/node-${port}/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.1${port} redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf; \
done
![](https://filescdn.proginn.com/dd3f2877765b520a68576414bbe6e837/4284c9e8c4555f1c6db6cb847290d326.webp)
[ ]
/data
![](https://filescdn.proginn.com/040ceeaf70aa348e57f2bf04a57ea379/4fd154a7a29f1a0769b26fd3bc9b16ed.webp)
![](https://filescdn.proginn.com/1829ab7b43adae20787312548ffb5715/d54adae6db6969b89998fbfa170081d3.webp)
redis-cli -h 127.0.0.1 -c -p 3679
![](https://filescdn.proginn.com/d56cc945525e765817163fc8f91a53af/40c515b21129af668e7a681e6025d145.webp)
[ ]
![](https://filescdn.proginn.com/76a0792620e9f1f3822aceb10374f76a/6fd371a50e76c8c4bffa0eb5a89f402d.webp)
[root@localhost ~]# docker exec -it redis-2 /bin/sh
/data #
/data # redis-cli -h 127.0.0.1 -c -p 3679
![](https://filescdn.proginn.com/fe563db0ed040529bbf1b615e56d7858/df77906441c608770cf39b48626ed1fd.webp)
搞定,收工!!
别忘记点个再看,咱们下篇见!
每天进步一点点
慢一点才能更快
推荐阅读:
只需4步,自己搞个 Spring Boot Starter !
为什么 Java 中“1000==1000”为false,而”100==100“为true?
微信扫描二维码,关注我的公众号
朕已阅
评论