Docker 部署 redis 集群

CentOS7一些配置

1. 配置静态IP地址

设置静态IP地址与动态iIP差不多,也是要修改网卡配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33 (最后一个为网卡名称)

vi /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述
重启网络服务

[root@localhost ~]# systemctl restart network

2. ping不通Win10

关闭防火墙
临时关闭(下次开机启动,自动启动防火墙)

[root@localhost ~]# systemctl stop firewalld

查看防火墙状态

[root@localhost ~]# systemctl status firewalld

永久关闭防火墙(开机启动时不在启动)

[root@localhost ~]# systemctl disable firewalld

安装Dockers

参考官方:https://docs.docker.com/engine/install/centos/

1. 卸载旧版本(如果以前安装过旧版本可以先卸载)

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2. 安装docker工具

yum install -y yum-utils

3. 设置镜像仓库

#官方默认的镜像仓库地址
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

#改为阿里云的镜像仓库地址
yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4. 安装docker引擎

yum install docker-ce docker-ce-cli containerd.io

5. 启动docker服务

#启动服务
systemctl start docker

#检查版本
docker version

创建redis集群

创建网络并设置内网ip

docker network create redis --subnet 172.38.0.0/16

创建redis 集群文件目录

下面是shell脚本,复制进Xshell直接运行

for port in $(seq 1 6); \
do \
mkdir -p /mydata/redis/node-${port}/conf
touch /mydata/redis/node-${port}/conf/redis.conf
cat << EOF >/mydata/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

查看脚本新建的文件目录

cd /mydata/redis/
ls
node-1  node-2  node-3  node-4  node-5  node-6

创建 redis 集群容器

复制进去,等待拉取镜像安装

docker run -p 6371:6379 -p 16371:16379 --name redis-1 \
-v /mydata/redis/node-1/data:/data \
-v /mydata/redis/node-1/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.11 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf

docker run -p 6372:6379 -p 16372:16379 --name redis-2 \
-v /mydata/redis/node-2/data:/data \
-v /mydata/redis/node-2/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.12 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf

docker run -p 6373:6379 -p 16373:16379 --name redis-3 \
-v /mydata/redis/node-3/data:/data \
-v /mydata/redis/node-3/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.13 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf

docker run -p 6374:6379 -p 16374:16379 --name redis-4 \
-v /mydata/redis/node-4/data:/data \
-v /mydata/redis/node-4/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.14 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf

docker run -p 6375:6379 -p 16375:16379 --name redis-5 \
-v /mydata/redis/node-5/data:/data \
-v /mydata/redis/node-5/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.15 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf


docker run -p 6376:6379 -p 16376:16379 --name redis-6 \
-v /mydata/redis/node-6/data:/data \
-v /mydata/redis/node-6/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.38.0.16 redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf

查看正在运行的容器

docker ps

在这里插入图片描述

加入集群

进入容器

docker exec -it redis-1 /bin/sh

创建集群主从模式

redis-cli --cluster create 172.38.0.11:6379 172.38.0.12:6379  172.38.0.13:6379 172.38.0.14:6379 172.38.0.15:6379  172.38.0.16:6379 --cluster-replicas 1

在这里插入图片描述

使用可视化工具连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LOVE_DDZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值