[李景山php] ubuntu/centos 搭建 搭建 redis 集群

4 篇文章 0 订阅
3 篇文章 0 订阅

1 环境配置:

 ubuntu16.04 
 redis3.0.6

2 机器:

 192.168.50.156
 192.168.50.154
 192.168.50.155

3 下载redis独立文件位置:

http://download.redis.io/releases/

4 安装redis:

 apt-get install redis-server

关键点:redis-trib.rb工具实现集群

5 复制redis-trib.rb到/usr/local/bin目录下。

首先查找:find / -name redis-trib.rb
复制操作:cp /usr/share/doc/redis-tools/examples/redis-trib.rb /usr/local/bin/redis-trib.rb

6 创建redis节点文件

进入到root目录: cd /root
创建相应的节点目录: mkdir redis_cluster
进入到redis_cluster目录,cd redis_cluster
创建子目录:mkdir 7000 7001 7002
查找redis.conf文件:find / -name redis.conf
拷贝配置文件到相应的7001,7002,7000文件夹下面:
cp /etc/redis/redis.conf /root/redis_cluster/7000/redis.conf
cp /etc/redis/redis.conf /root/redis_cluster/7001/redis.conf
cp /etc/redis/redis.conf /root/redis_cluster/7002/redis.conf

7 修改配置文件

默认修改主日志里面的:

#集中调整
port 7000
# 端口 7000,7001,7002
bind 192.168.50.156
# 监听IP 其他人可以访问的IP
daemonize yes
# redis 后台运行
#pidfile /var/run/redis/redis-server.pid
pidfile /var/run/redis/redis_7000.pid
#pidfile 对应pid 文件
cluster-enabled yes
# 开启集群
cluster-config-file nodes-7000.conf
# 集群的配置 配置文件首次启动自动生成 7000,7001,7002
cluster-node-timeout 15000
# 请求超时 默认15秒,可自行设置
appendonly yes
# aof 日志开启 有需要就开启,它会每次写操作都记录一条日志

对应的 7001及7002修改相应的数字

8 调整其它程序

备份机器上执行:192.168.50.154
备份机器上执行:192.168.50.155
如上调整方式,3,4,5,6,7,8 端口进行设置。

9 运行程序

主机上执行:192.168.50.156
redis-server /root/redis_cluster/7000/redis.conf
redis-server /root/redis_cluster/7001/redis.conf
redis-server /root/redis_cluster/7002/redis.conf
备份机器上执行:192.168.50.154
redis-server /root/redis_cluster/7003/redis.conf
redis-server /root/redis_cluster/7004/redis.conf
redis-server /root/redis_cluster/7005/redis.conf
备份机器上执行:192.168.50.155
redis-server /root/redis_cluster/7006/redis.conf
redis-server /root/redis_cluster/7007/redis.conf
redis-server /root/redis_cluster/7008/redis.conf

通过ps查看可以发现如下代码:
主机上执行:192.168.50.156:执行ps xH
1661 ? Ssl 0:00 redis-server 192.168.50.156:7000 [cluster]
1661 ? Ssl 0:00 redis-server 192.168.50.156:7000 [cluster]
1661 ? Ssl 0:00 redis-server 192.168.50.156:7000 [cluster]
1665 ? Ssl 0:00 redis-server 192.168.50.156:7001 [cluster]
1665 ? Ssl 0:00 redis-server 192.168.50.156:7001 [cluster]
1665 ? Ssl 0:00 redis-server 192.168.50.156:7001 [cluster]
1669 ? Ssl 0:00 redis-server 192.168.50.156:7002 [cluster]
1669 ? Ssl 0:00 redis-server 192.168.50.156:7002 [cluster]
1669 ? Ssl 0:00 redis-server 192.168.50.156:7002 [cluster]

备份机器上执行:192.168.50.154:执行ps xH
1544 ? Ssl 0:00 redis-server 192.168.50.154:7003 [cluster]
1544 ? Ssl 0:00 redis-server 192.168.50.154:7003 [cluster]
1544 ? Ssl 0:00 redis-server 192.168.50.154:7003 [cluster]
1548 ? Ssl 0:00 redis-server 192.168.50.154:7004 [cluster]
1548 ? Ssl 0:00 redis-server 192.168.50.154:7004 [cluster]
1548 ? Ssl 0:00 redis-server 192.168.50.154:7004 [cluster]
1552 ? Ssl 0:00 redis-server 192.168.50.154:7005 [cluster]
1552 ? Ssl 0:00 redis-server 192.168.50.154:7005 [cluster]
1552 ? Ssl 0:00 redis-server 192.168.50.154:7005 [cluster]

备份机器上执行:192.168.50.155:执行ps xH
1530 ? Ssl 0:00 redis-server 192.168.50.155:7006 [cluster]
1530 ? Ssl 0:00 redis-server 192.168.50.155:7006 [cluster]
1530 ? Ssl 0:00 redis-server 192.168.50.155:7006 [cluster]
1534 ? Ssl 0:00 redis-server 192.168.50.155:7007 [cluster]
1534 ? Ssl 0:00 redis-server 192.168.50.155:7007 [cluster]
1534 ? Ssl 0:00 redis-server 192.168.50.155:7007 [cluster]
1538 ? Ssl 0:00 redis-server 192.168.50.155:7008 [cluster]
1538 ? Ssl 0:00 redis-server 192.168.50.155:7008 [cluster]
1538 ? Ssl 0:00 redis-server 192.168.50.155:7008 [cluster]

10 创建集群【单独主服务器操作即可】

redis官方提供创建集群工具 redis-trib.rb工具,默认这个工具是在工具箱内,在上面的第五步骤中,我们已经复制到/usr/local/bin下,也就意味者可以全局执行这个命令了。
创建集群命令:
redis-trib.rb create –replicas 1 192.168.50.156:7000 192.168.50.156:7001 192.168.50.156:7002 192.168.50.154:7003 192.168.50.154:7004 192.168.50.154:7005 192.168.50.155:7006 192.168.50.155:7007 192.168.50.155:7008
发现环境需要ruby:
centos下安装方案:
yum -y install ruby ruby-devel rubygems rpm-build
gem install redis

ubuntu16.04 下安装方案:
apt-get install ruby ruby-dev rubygems rpm-build -y
apt-get install ruby ruby-dev rubygems -y

如果:gem install redis 不好用,可以切换到淘宝源:
gem sources -a https://ruby.taobao.org/
然后再次执行gem install redis即可。

11 验证集群

分别连接3台服务器:
连接方式如下:
第一台机器:
redis-cli -h 192.168.50.156 -c -p 7002
说明:加参数 -C 可连接到集群,因为上面 redis.conf 将 bind 改为了ip地址,所以 -h 参数不可以省略。
第二台机器:
redis-cli -h 192.168.50.154 -c -p 7003
第三台机器:
redis-cli -h 192.168.50.155 -c -p 7008
分别设置及读取,说明。说明集群正常工作。

验证效果:

设置数据:

root@ubuntu:~# redis-cli -h 192.168.50.156 -c -p 7002
192.168.50.156:7002> set hello world
-> Redirected to slot [866] located at 192.168.50.156:7000
OK
192.168.50.156:7000>

获取数据:

root@ubuntu:~# redis-cli -h 192.168.50.154 -c -p 7004
192.168.50.154:7004> get hello
-> Redirected to slot [866] located at 192.168.50.156:7000
"world"
192.168.50.156:7000>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值