在Ubuntu上实现Redis的主从复制可以通过以下步骤完成。以下是一个基本的指南,假设你已经安装了Redis并且有基本的Linux和网络知识。
如果你还没有安装Redis,可以使用以下命令进行安装:
sudo apt update
sudo apt install redis-server
编辑主节点的Redis配置文件 /etc/redis/redis.conf
。
sudo nano /etc/redis/redis.conf
找到并修改以下配置项:
bind
:绑定主节点的IP地址,例如 192.168.1.100
。port
:确保端口号一致,通常是 6379
。requirepass
:设置一个强密码,例如 your_master_password
。保存并退出编辑器。
编辑从节点的Redis配置文件 /etc/redis/redis.conf
。
sudo nano /etc/redis/redis.conf
找到并修改以下配置项:
bind
:绑定从节点的IP地址,例如 192.168.1.101
。port
:确保端口号一致,通常是 6379
。slaveof
:设置主节点的IP地址和端口,例如 192.168.1.100 6379
。masterauth
:设置与主节点相同的密码,例如 your_master_password
。保存并退出编辑器。
在主节点和从节点上分别重启Redis服务以应用配置更改。
sudo systemctl restart redis-server
在主节点上,使用 redis-cli
连接到Redis服务器并检查复制状态:
redis-cli -h 192.168.1.100 -p 6379 -a your_master_password info replication
你应该看到类似以下的输出,表示复制已经成功设置:
# Replication
role:master
connected_slaves:1
slave0:ip=192.168.1.101,port=6379,state=online,offset=12345,lag=0
在从节点上,使用 redis-cli
连接到Redis服务器并检查复制状态:
redis-cli -h 192.168.1.101 -p 6379 -a your_master_password info replication
你应该看到类似以下的输出,表示从节点已经成功连接到主节点:
# Replication
role:slave
master_host:192.168.1.100
master_port:6379
master_link_status:up
在主节点上设置一个键值对:
redis-cli -h 192.168.1.100 -p 6379 -a your_master_password set test_key "Hello, Redis!"
然后在从节点上获取该键值对:
redis-cli -h 192.168.1.101 -p 6379 -a your_master_password get test_key
如果输出是 Hello, Redis!
,则表示复制已经成功。
通过以上步骤,你就可以在Ubuntu上实现Redis的主从复制。