两台服务器,并且想要搭建 Redis 集群。根据你的命令,Redis 集群将会运行在 Docker 容器中,而你使用的镜像是 redis-cluster:4.0,并且设定了 CLUSTER_ANNOUNCE_IP 环境变量来指定 Redis 实例的 IP 地址。
为了在两台服务器上搭建 Redis 集群,你需要做以下几个步骤:
服务器1:IP 地址 172.16.17.100
服务器2:IP 地址 172.16.17.101
每台服务器上都运行 Redis 集群容器,端口 7000 到 7005 用于 Redis 实例通信,17000 到 17005 用于集群管理。
步骤 1:在每台服务器上启动 Redis 容器
你可以在每台服务器上使用以下命令启动 Redis 集群。确保在每台服务器上指定正确的 CLUSTER_ANNOUNCE_IP 和端口映射。
服务器 1:
docker run --name redis-cluster-1 -d \
-e CLUSTER_ANNOUNCE_IP=172.16.17.100 \
-p 7000-7005:7000-7005 \
-p 17000-17005:17000-17005 \
registry.cn-hangzhou.aliyuncs.com/dockerhub_mirror/redis-cluster:4.0
服务器 2:
docker run --name redis-cluster-2 -d \
-e CLUSTER_ANNOUNCE_IP=172.16.17.101 \
-p 7000-7005:7000-7005 \
-p 17000-17005:17000-17005 \
registry.cn-hangzhou.aliyuncs.com/dockerhub_mirror/redis-cluster:4.0
步骤 2:等待容器启动并确认 Redis 实例是否正常运行
你可以通过以下命令确认容器是否启动成功:
docker ps
如果容器正常运行,你会看到容器 ID 和端口映射。
步骤 3:配置 Redis 集群
你需要在其中一台服务器上执行以下命令来创建一个 Redis 集群。假设你已经在服务器 1 和服务器 2 上启动了 6 个 Redis 实例(每台服务器上有 3 个实例),然后可以通过 redis-trib 工具来创建集群。
在 服务器 1 上进入 Redis 容器:
docker exec -it redis-cluster-1 bash
进入 Redis 容器后,执行以下命令来创建 Redis 集群:
redis-trib create --replicas 1 \
172.16.17.100:7000 172.16.17.100:7001 172.16.17.100:7002 \
172.16.17.101:7000 172.16.17.101:7001 172.16.17.101:7002
步骤 4:验证集群
你可以通过以下命令来检查集群的状态:
redis-cli -c -h 172.16.17.100 -p 7000 cluster info
这将返回集群的信息,确认集群是否成功搭建。