温馨提示×

docker中怎么搭建redis集群

小亿
80
2023-12-11 12:07:57
栏目: 云计算

要在Docker中搭建Redis集群,可以按照以下步骤进行操作:

  1. 创建Docker网络:在终端中运行以下命令创建一个新的Docker网络。

    docker network create redis-net
    
  2. 创建Redis主节点容器:运行以下命令创建3个Redis主节点容器。

    docker run -d --name redis-master1 --net redis-net -p 7001:6379 redis:latest redis-server --appendonly yes --requirepass "password"
    docker run -d --name redis-master2 --net redis-net -p 7002:6379 redis:latest redis-server --appendonly yes --requirepass "password"
    docker run -d --name redis-master3 --net redis-net -p 7003:6379 redis:latest redis-server --appendonly yes --requirepass "password"
    

    这将创建3个Redis容器并将它们连接到redis-net网络中。每个容器都运行在不同的端口上,并使用--requirepass参数设置了密码为"password"。

  3. 创建Redis从节点容器:运行以下命令创建3个Redis从节点容器。

    docker run -d --name redis-slave1 --net redis-net -p 7004:6379 redis:latest redis-server --appendonly yes --requirepass "password" --slaveof redis-master1 6379
    docker run -d --name redis-slave2 --net redis-net -p 7005:6379 redis:latest redis-server --appendonly yes --requirepass "password" --slaveof redis-master2 6379
    docker run -d --name redis-slave3 --net redis-net -p 7006:6379 redis:latest redis-server --appendonly yes --requirepass "password" --slaveof redis-master3 6379
    

    这将创建3个Redis从节点容器,并使用--slaveof参数将它们连接到对应的Redis主节点。

  4. 创建Redis哨兵容器:运行以下命令创建3个Redis哨兵容器。

    docker run -d --name redis-sentinel1 --net redis-net -p 26379:26379 redis:latest redis-sentinel --sentinel announce-ip <IP地址> --sentinel announce-port 26379 --sentinel monitor mymaster redis-master1 6379 2
    docker run -d --name redis-sentinel2 --net redis-net -p 26380:26379 redis:latest redis-sentinel --sentinel announce-ip <IP地址> --sentinel announce-port 26379 --sentinel monitor mymaster redis-master2 6379 2
    docker run -d --name redis-sentinel3 --net redis-net -p 26381:26379 redis:latest redis-sentinel --sentinel announce-ip <IP地址> --sentinel announce-port 26379 --sentinel monitor mymaster redis-master3 6379 2
    

    这将创建3个Redis哨兵容器,并使用--sentinel参数将它们配置为监视对应的Redis主节点。

注意:在以上命令中,需要将<IP地址>替换为主机的IP地址。

  1. 验证集群搭建:通过Redis客户端连接到任意一个主节点容器,并执行CLUSTER NODES命令来验证集群搭建是否成功。

    docker exec -it redis-master1 redis-cli -a "password"
    127.0.0.1:6379> CLUSTER NODES
    

    如果成功搭建了Redis集群,将会看到各个节点的信息。

以上步骤将在Docker中搭建一个包含3个主节点、3个从节点和3个哨兵节点的Redis集群。

0