如何在 Docker 中搭建 Redis 集群
分步说明:如何在 Docker 中搭建 Redis 集群?
-
安装 Docker:
- 根据你的操作系统,下载并安装 Docker。
- Docker 官方文档
-
创建项目目录:
- 在终端中创建一个新的工作目录:
mkdir redis-cluster && cd redis-cluster
- 在终端中创建一个新的工作目录:
-
编写 docker-compose 文件:
- 创建
docker-compose.yml
文件,定义 Redis 节点。version: '3' services:redis-1:image: redis:6.2.6-alpineports:- "6379:6379"volumes:- ./redis.conf:/usr/local/etc/redis/redis.confcommand: redis-server /usr/local/etc/redis/redis.confredis-2:image: redis:6.2.6-alpineports:- "6380:6379"volumes:- ./redis.conf:/usr/local/etc/redis/redis.confcommand: redis-server /usr/local/etc/redis/redis.conf# 类似地定义 redis-3 到 redis-6,每个监听不同的端口。
- 创建
-
编写 Redis 配置文件:
- 创建
redis.conf
文件,启用集群模式和其他必要配置。bind 0.0.0.0 protected-mode yes port 6379 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes
- 创建
-
启动 Redis 节点:
- 在项目目录下运行:
docker-compose up -d
- 检查容器状态:
docker ps | grep redis
- 在项目目录下运行:
-
进入 Redis CLI:
- 选择一个节点,进入交互式终端:
docker exec -it redis-1 redis-cli
- 选择一个节点,进入交互式终端:
-
创建 Redis 集群:
- 在 Redis CLI 中执行集群创建命令:
cluster create 127.0.0.1:6379 127.0.0.1:6380 ... --yes
- 确保列出所有节点的地址和端口。
- 在 Redis CLI 中执行集群创建命令:
-
验证集群状态:
- 使用以下命令检查集群信息:
cluster info cluster nodes
- 使用以下命令检查集群信息:
-
测试键值对操作:
- 设置和获取键值对,确保数据在不同节点间正确同步。
-
维护与扩展:
- 添加或移除节点时,使用
cluster add-node
和cluster del-node
命令。 - 定期备份数据,监控集群状态。
- 添加或移除节点时,使用
通过以上步骤,你可以在 Docker 环境中成功搭建一个高可用的 Redis 集群。该集群具备负载均衡和故障转移功能,能够满足分布式应用的需求。