linux安装redis集群

linux安装redis集群

由于这里需要使用到linux安装redis单机版的知识请看:点击打开链接

准备6节点

为了保证可以进行投票,至少需要3个主节点。每个主节点都需要至少一个从节点,所以需要至少3个从节点。

一共需要6redis服务器;可以使用6redis实例。6redis实例的端口号:7001~7006

复制实例

#停止redis

./redis-cli shutdown

#bin目录里面的rdb,aof文件删除,准备干净的redis

cd /usr/local/redis/bin

rm -rf appendonly.aof

rm -f dump.rdb

#bin复制6

cd ..

#创建redis-cluster目录

mkdir redis-cluster

cp -r bin redis-cluster/redis1 && cp -r bin redis-cluster/redis2 && cp -r bin redis-cluster/redis3

cp -r bin redis-cluster/redis4 && cp -r bin redis-cluster/redis5 && cp -r bin redis-cluster/redis6

 修改端口号

依次修改端口号为7001~7006

cd redis1

vim redis.conf

#修改第84行,端口63797001

port 6379 修改为 port 7001


#其它5个一样修改

同时启动6个实例

cd /usr/local/redis/redis-cluster

#编写启动脚本

vim start-all.sh

#在文件中输入如下内容:

cd redis1

./redis-server redis.conf

cd ..

cd redis2

./redis-server redis.conf

cd ..

cd redis3

./redis-server redis.conf

cd ..

cd redis4

./redis-server redis.conf

cd ..

cd redis5

./redis-server redis.conf

cd ..

cd redis6

./redis-server redis.conf

cd ..

#设置脚本启动权限

chmod u+x start-all.sh

#执行脚本;启动6个实例

./start-all.sh

#查看

ps -ef | grep redis


#停止6redis

ps -ef | grep redis

kill 进程号 进程号 ...

安装环境

redis集群的管理工具使用的是ruby脚本语言,安装集群需要ruby环境。

#安装ruby环境(上课提供的虚拟机,环境已经装好)

这开始yum install ruby

#安装Ruby的打包系统

yum install rubygems

#安装redis-3.3.2.gemruby接口库

cd /root

使用rz 上传“redis-3.3.2.gem

#安装

gem install redis-3.3.2.gem

安装redis集群

配置集群节点

#需要修改每个实例的redis.conf配置文件,开启redis-cluster

cd /usr/local/redis/redis-cluster/

vim redis1/redis.conf

# 取消721行注释(设置集群可用): cluster-enabled yes

# 需要修改其它5个节点;同样修改

# 重启redis实例

./start-all.sh

集群创建

集群管理工具在redis解压文件夹的src的文件夹中;使用redis-trib.rb命令创建集群。

#先进入集群管理工具所在的路径

cd /root/redis-3.2.8/src/

#执行创建命令(注意如下连接中的ip最好不用127.0.0.1和默认端口)

./redis-trib.rb create --replicas 1 192.168.12.128:7001 192.168.12.128:7002 192.168.12.128:7003 192.168.12.128:7004 192.168.12.128:7005 192.168.12.128:7006

格式:./redis-trib.rb create --replicas 1 ip:port

      ./redis-trib.rb 创建 副本 1  ip:port

启动信息(中间需要输入yes,查看如下红色字体)

>>> Creating cluster

>>> Performing hash slots allocation on 6 nodes...

Using 3 masters:

192.168.12.128:7001

192.168.12.128:7002

192.168.12.128:7003

Adding replica 192.168.12.128:7004 to 192.168.12.128:7001

Adding replica 192.168.12.128:7005 to 192.168.12.128:7002

Adding replica 192.168.12.128:7006 to 192.168.12.128:7003

M: f6eb843ea8176c7f9d3dc313fb14e9db18999408 192.168.12.128:7001

   slots:0-5460 (5461 slots) master

M: b227f3c43727b210f42783314d865170a13ea363 192.168.12.128:7002

   slots:5461-10922 (5462 slots) master

M: d6611966e6bf8ed41583f664e12e12c24a358c67 192.168.12.128:7003

   slots:10923-16383 (5461 slots) master

S: 20a4a937bebc174fbac1d1c74dafe975a06ed44c 192.168.12.128:7004

   replicates f6eb843ea8176c7f9d3dc313fb14e9db18999408

S: 5f6b2fd3d2fe6bb9724277bb0f11973469507dc7 192.168.12.128:7005

   replicates b227f3c43727b210f42783314d865170a13ea363

S: f401437efc8efbea56d0389dbf490aa0087a0cf3 192.168.12.128:7006

   replicates d6611966e6bf8ed41583f664e12e12c24a358c67

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.12.128:7001)

M: f6eb843ea8176c7f9d3dc313fb14e9db18999408 192.168.12.128:7001

   slots:0-5460 (5461 slots) master

   1 additional replica(s)

S: 20a4a937bebc174fbac1d1c74dafe975a06ed44c 192.168.12.128:7004

   slots: (0 slots) slave

   replicates f6eb843ea8176c7f9d3dc313fb14e9db18999408

M: d6611966e6bf8ed41583f664e12e12c24a358c67 192.168.12.128:7003

   slots:10923-16383 (5461 slots) master

   1 additional replica(s)

S: f401437efc8efbea56d0389dbf490aa0087a0cf3 192.168.12.128:7006

   slots: (0 slots) slave

   replicates d6611966e6bf8ed41583f664e12e12c24a358c67

M: b227f3c43727b210f42783314d865170a13ea363 192.168.12.128:7002

   slots:5461-10922 (5462 slots) master

   1 additional replica(s)

S: 5f6b2fd3d2fe6bb9724277bb0f11973469507dc7 192.168.12.128:7005

   slots: (0 slots) slave

   replicates b227f3c43727b210f42783314d865170a13ea363

[OK] All nodes agree about slots configuration.

>>> Check for open slots...

>>> Check slots coverage...

[OK] All 16384 slots covered.

 Redis集群连接

工具连接

redis的单机版,默认是16个数据库,但是redis-Cluster集群版,有n个数据库(多个主数据库则多少个,整个集群算是一个数据库)

#使用redis命令行客户端连接

cd /usr/local/redis/bin

./redis-cli -h 192.168.12.128 -p 7006 -c

【注意】一定要-c参数,节点之间则可以互相跳转

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: Age of Ai 设计师: meimeiellie
应支付0元
点击重新获取
扫码支付

支付成功即可阅读