【软件安装】redis集群搭建

目录

1、准备条件

2、在虚拟机中创建六个redis实例

3、启动每个redis实例,并且使用ruby脚本搭建集群

3.1 启动六个redis实例(执行批量脚本)

3.2 使用ruby脚本搭建集群

3.3 集群使用方法


1、准备条件

Redis集群中至少应该有三个节点。要保证集群的高可用,需要每个节点有一个备份机(主机出错,备份机替补)。

Redis集群至少需要6台服务器。搭建伪分布式。可以使用一台虚拟机运行6个redis实例。需要修改redis的端口号7001-7006

2、在虚拟机中创建六个redis实例

  • 查询redis开启的端口号

         ps aux|grep redis

  • 退出客户端命令------------shutdown,返回命令行------------quit
  • 复制redis到redis-luster集群目录中

      cp -r redis/bin redis-cluster/redis01

  • 进入第一个redis文件夹中

      cd redis-cluster/redis01

  • 删除原来的数据文件

        rm -rf dump.rdb

  • 修改配置文件redis.conf

          Vim redis.conf

  • 快寻找端口号,

      /port

  • 键盘---i字母进入插入模式,插入后Esc退出插入模式
  • 修改后,查找cluster,

/cluster

  • 开启集群模式,把cluster-enabled yes前的注释去掉

 

  • 最后退出

:WQ

  • 配置第二个redis。复制redis01

Cp -r redis01/ redis02  …….到redis06

  • 修改每个redis的端口号

如上代码

  • 启动每个redis实例,采用批量脚本的方式

        Vim start-all.sh

  • 键盘 I 字母,进入insert 模式,输入以下信息
cd redis01

./redis-server redis.conf

cd ..

cd redis02

./redis-server redis.conf

cd ..

cd redis03

./redis-server redis.conf

cd ..

cd redis04

./redis-server redis.conf

cd ..

cd redis05

./redis-server redis.conf

cd ..

cd redis06

./redis-server redis.conf

cd ..
  • 完成后退出insert模式,退出并保存。

 

  • 赋给批量脚本start-all.sh可执行权限

chmod +x start-all.sh

3、启动每个redis实例,并且使用ruby脚本搭建集群

3.1 启动六个redis实例(执行批量脚本)

./start-all.sh

3.2 使用ruby脚本搭建集群

3.2.1 ruby的运行环境

yum install ruby

yum install rubygems

3.2.2 将ruby脚本运行使用的包上传至linux服务器

Alt + P 进入上传SFTP文件传输模式

安装包

[root@localhost ~]# gem install redis-3.0.0.gem 
Successfully installed redis-3.0.0
1 gem installed
Installing ri documentation for redis-3.0.0...
Installing RDoc documentation for redis-3.0.0...

3.2.3 通过redis-trib.rb 搭建集群

本来需要将安装的redis-3.0.0.gem中的src下的 redis-trib.rb 放到redis-cluster文件夹中进行搭建六个redis实例的。

但是由于找不到redis-3.0.0这个文件夹,所以不能够正常运行以下语句

[root@localhost ~]# cd redis-3.0.0/src
[root@localhost src]# ll *.rb
-rwxrwxr-x. 1 root root 48141 Apr  1  2015 redis-trib.rb

所以本次采用的以下语句,经过测试是成功的。

[root@itcast redis-3.0.0]# find / -name  redis-trib.rb
/usr/local/redis/redis-3.0.7/src/redis-trib.rb
[root@itcast redis-3.0.0]# cd /usr/local/redis/redis-3.0.7/src/redis-trib.rb
-bash: cd: /usr/local/redis/redis-3.0.7/src/redis-trib.rb: 不是目录
[root@itcast redis-3.0.0]# cd /usr/local/redis/redis-3.0.7/src/
[root@itcast src]# ./redis-trib.rb create --replicas 1 192.168.93.88:7001 192.168.93.88:7002 192.168.93.88:7003 192.168.93.88:7004 192.168.93.88:7005 192.168.93.88:7006
成功信息


>>> Creating cluster
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
192.168.93.88:7001
192.168.93.88:7002
192.168.93.88:7003
Adding replica 192.168.93.88:7004 to 192.168.93.88:7001
Adding replica 192.168.93.88:7005 to 192.168.93.88:7002
Adding replica 192.168.93.88:7006 to 192.168.93.88:7003
M: 12bedbf0aacea1aa9bd181f804cc3b40059e0b46 192.168.93.88:7001
   slots:0-5460 (5461 slots) master
M: f5cd4e70cf304643546ce5679f9961a63edafdab 192.168.93.88:7002
   slots:5461-10922 (5462 slots) master
M: b65c255766c1a40bb2a9128012ee1c0a1c1857bb 192.168.93.88:7003
   slots:10923-16383 (5461 slots) master
S: 8e06946baf2dd07af31792037a7a33e626a5c2dc 192.168.93.88:7004
   replicates 12bedbf0aacea1aa9bd181f804cc3b40059e0b46
S: 7026c98859062058fb4db08898e23a11128e12e5 192.168.93.88:7005
   replicates f5cd4e70cf304643546ce5679f9961a63edafdab
S: 7b44d793116419d5e3752e9b17eb6aa2ef4bdda3 192.168.93.88:7006
   replicates b65c255766c1a40bb2a9128012ee1c0a1c1857bb
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join...
>>> Performing Cluster Check (using node 192.168.93.88:7001)
M: 12bedbf0aacea1aa9bd181f804cc3b40059e0b46 192.168.93.88:7001
   slots:0-5460 (5461 slots) master
M: f5cd4e70cf304643546ce5679f9961a63edafdab 192.168.93.88:7002
   slots:5461-10922 (5462 slots) master
M: b65c255766c1a40bb2a9128012ee1c0a1c1857bb 192.168.93.88:7003
   slots:10923-16383 (5461 slots) master
M: 8e06946baf2dd07af31792037a7a33e626a5c2dc 192.168.93.88:7004
   slots: (0 slots) master
   replicates 12bedbf0aacea1aa9bd181f804cc3b40059e0b46
M: 7026c98859062058fb4db08898e23a11128e12e5 192.168.93.88:7005
   slots: (0 slots) master
   replicates f5cd4e70cf304643546ce5679f9961a63edafdab
M: 7b44d793116419d5e3752e9b17eb6aa2ef4bdda3 192.168.93.88:7006
   slots: (0 slots) master
   replicates b65c255766c1a40bb2a9128012ee1c0a1c1857bb
[OK] All nodes agree about slots configuration.

3.3 集群使用方法

  • Redis-cli连接集群。

[root@localhost redis-cluster]# redis01/redis-cli -p 7002 -c

-c:代表连接的是redis集群

-h:代表连接的是host的ip地址

  • 包含地址的连接方式

redis01/redis-cli  -h192.168.93.88 -p 7002 -c

  • Cluster info 查看当前集群的而状态
  • Cluster nodes 查看当前节点的信息

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值