Linux环境搭建redis集群

1、linux安装redis

下载Redis安装包
wget http://download.redis.io/releases/redis-3.2.9.tar.gz
解压Redis安装包
tar -zxvf redis-3.2.9.tar.gz
安装
cd redis-3.2.9
make
cd src
make install PREFIX=/usr/local/redis
移动配置文件到安装目录下
cd ../
mkdir /usr/local/redis/etc
mv redis.conf /usr/local/redis/etc
配置redis为后台启动

vi /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes
vi /usr/local/redis/etc/redis.conf // requirepass 123 --设置密码
注释掉
#bind 127.0.0.1 开启外网访问


开启redis
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

连接Redis客户端

./redis-cli -h 127.0.0.1 -p 6379 -a "123456"
PING 结果表示成功


关闭防火墙


//临时关闭
systemctl stop firewalld
//禁止开机启动
systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.


停止Redis服务
./redis-cli -h 127.0.0.1 -p 6379 -a "123456"  shutdown
 

2、配置主从复制

修改slave从redis中的 redis.conf文件
slaveof 127.0.0.1 6379  --配置主redis的ip
masterauth 123456--- 主redis服务器配置了密码,则需要配置

如果有多个从节点,只需要在从节点的redis.conf里面配置slaveof主节点的ip即可

3、哨兵模式修改

实现步骤:

1.拷贝到etc目录

cp sentinel.conf  /usr/local/redis/etc

2.修改sentinel.conf配置文件

sentinel monitor mymast  127.0.0.1 6379 1  #主节点 名称 IP 端口号 选举次数

sentinel auth-pass mymaster 123456 

3. 修改心跳检测 30毫秒

sentinel down-after-milliseconds mymaster 30

4.sentinel parallel-syncs mymaster 2 --- 做多多少合格节点

5. 启动哨兵模式

./redis-server /usr/local/redis/etc/sentinel.conf --sentinel &

4、搭建cluster

注意:先安装纯净版redis,不要修改redis.conf文件

说明:由于没有多台机器,只在一台机器上搭建6个redis 用端口区分,下面的步骤基于1,安装好了redis

1、新建cluster文件夹

mkdir /usr/local/redis-cluster
cd redis-cluster/
mkdir -p 9001/data 9002/data 9003/data 9004/data 9005/data 9006/data
2、复制文件
cd /usr/local/redis-cluster
mkdir bin
cd /usr/local/redis-3.2.9/src
cp mkreleasehdr.sh redis-benchmark redis-check-aof  redis-cli redis-server redis-trib.rb /usr/local/redis-cluster/bin

3、复制redis

cp -r /usr/local/redis    /usr/local/redis-cluster/9001


注意,修改 redis.conf 配置和单点唯一区别是下图部分,其余还是常规的这几项:
port 9001(每个节点的端口号)
daemonize yes
bind 192.168.119.131(绑定当前机器 IP)
dir /usr/local/redis-cluster/9001/data/(数据文件存放位置)
pidfile /var/run/redis_9001.pid(pid 9001和port要对应)
cluster-enabled yes(启动集群模式)
cluster-config-file nodes9001.conf(9001和port要对应)
cluster-node-timeout 15000
appendonly yes

4、复制另外五个

\cp -rf /usr/local/redis-cluster/9001/*   /usr/local/redis-cluster/9002
\cp -rf /usr/local/redis-cluster/9001/*   /usr/local/redis-cluster/9003
\cp -rf /usr/local/redis-cluster/9001/*   /usr/local/redis-cluster/9004
\cp -rf /usr/local/redis-cluster/9001/*   /usr/local/redis-cluster/9005
\cp -rf /usr/local/redis-cluster/9001/*   /usr/local/redis-cluster/9006


5、修改配置文件

修改9002-9006的redis.conf文件,将其中的9001替换成对应的端口

vi /usr/local/redis-cluster/9002/redis/etc/redis.conf
vi /usr/local/redis-cluster/9003/redis/etc/redis.conf
vi /usr/local/redis-cluster/9004/redis/etc/redis.conf
vi /usr/local/redis-cluster/9005/redis/etc/redis.conf
vi /usr/local/redis-cluster/9006/redis/etc/redis.conf

%s/9001/9002
%s/9001/9003
%s/9001/9004
%s/9001/9005
%s/9001/9006

其实就是替换这四个

port 9002

dir /usr/local/redis-cluster/9002/data/

cluster-config-file nodes-9002.conf

pidfile /var/run/redis_9002.pid

 

6、启动redis

/usr/local/redis/bin/redis-server  /usr/local/redis-cluster/9001/redis/etc/redis.conf

/usr/local/redis/bin/redis-server  /usr/local/redis-cluster/9002/redis/etc/redis.conf

/usr/local/redis/bin/redis-server  /usr/local/redis-cluster/9003/redis/etc/redis.conf

/usr/local/redis/bin/redis-server  /usr/local/redis-cluster/9004/redis/etc/redis.conf

/usr/local/redis/bin/redis-server  /usr/local/redis-cluster/9005/redis/etc/redis.conf

/usr/local/redis/bin/redis-server  /usr/local/redis-cluster/9006/redis/etc/redis.conf

7、测试

/usr/local/redis-cluster/9001/redis/bin/redis-cli -c -h 127.0.0.1 -p 9001

在设置值的时候会报错

这是因为虽然我们配置并启动了 Redis 集群服务,但是他们暂时还并不在一个集群中,互相直接发现不了,而且还没有可存储的位置,就是所谓的slot(槽)。

8、安装集群所需软件

yum install ruby

yum install rubygems

gem install redis  使用本地上传方式

上传后执行命令

gem install -l redis-3.2.1.gem

9、集群测试

/usr/local/redis-cluster/bin/redis-trib.rb create --replicas 1 127.0.0.1:9001 127.0.0.1:9002 127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005 127.0.0.1:9006

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值