博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux运维、架构之路-redis集群
阅读量:5043 次
发布时间:2019-06-12

本文共 4483 字,大约阅读时间需要 14 分钟。

一、介绍

           redis cluster 3.0之后的功能,至少需要3(Master)+3(Slave)才能建立集群,是无中心的分布式存储架构,可以在多个节点之间进行数据共享,解决了Redis高可用、可扩展等问题。

二、安装部署

1、环境

[root@redsi ~]# cat /etc/redhat-release CentOS release 6.9 (Final)[root@redsi ~]# uname -r2.6.32-696.el6.x86_64[root@redsi ~]# /etc/init.d/iptables statusiptables: Firewall is not running.[root@redsi ~]# getenforce Disabled[root@redsi ~]# hostname -I10.0.0.2

2、redis cluster是基于上一篇博文已经安装好的redis

①创建集群节点目录

mkdir /usr/local/redis-cluster/{
9001..9006}/data -p[root@redsi redis-cluster]# ll /usr/local/redis-cluster/total 28drwxr-xr-x 5 root root 4096 2018-05-16 17:17 9001drwxr-xr-x 5 root root 4096 2018-05-16 14:23 9002drwxr-xr-x 5 root root 4096 2018-05-16 14:24 9003drwxr-xr-x 5 root root 4096 2018-05-16 14:28 9004drwxr-xr-x 5 root root 4096 2018-05-16 14:30 9005drwxr-xr-x 5 root root 4096 2018-05-16 14:34 9006drwxr-xr-x 2 root root 4096 2018-05-16 14:54 bin

②创建命令目录

mkdir /usr/local/redis-cluster/bin -pcd /server/tools/redis-3.2.8/srccp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server redis-trib.rb /usr/local/redis-cluster/bin

③创建一个redis实例

cp -a /usr/local/redis/* /usr/local/redis-cluster/9001/

修改redis.conf配置文件

port 9001                                #每个节点的端口号daemonize yesbind 10.0.0.2                            #绑定当前机器 IPdir /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 15000appendonly yes

④再创建其它5个redis实例

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

再依次修改redis.conf配置文件

port 9001                                #修改以下4处,依次改为9002、9003、9004、9005、9006dir /usr/local/redis-cluster/9001/data/  pidfile /var/run/redis_9001.pid         cluster-config-file nodes9001.conf

###到此为止基础环境已准备好###

三、安装完ruby环境

###直接执行gem install redis时,报错###

gem install redis      ERROR:  Error installing redis:              redis requires Ruby version >= 2.2.2.

①安装安装RVM

gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3  curl -L get.rvm.io | bash -s stable  find / -name rvm -print

②查看rvm库中已知的ruby版本

rvm list known

③安装一个ruby版本

rvm install 2.3.3

④使用一个ruby版本

rvm use 2.3.3

⑤设置默认版本

rvm use 2.3.3 --default

⑥卸载一个已知版本

rvm remove 2.0.0

⑦安装redis

gem install redis

⑧查看ruby版本

ruby --version

四、集群搭建

1、启动六个节点的redis

redis-server /usr/local/redis-cluster/9001/redis.conf redis-server /usr/local/redis-cluster/9002/redis.conf redis-server /usr/local/redis-cluster/9003/redis.conf redis-server /usr/local/redis-cluster/9004/redis.conf redis-server /usr/local/redis-cluster/9005/redis.conf redis-server /usr/local/redis-cluster/9006/redis.conf###查看进程###[root@redsi ~]# ps aux|grep redisroot       2441  0.1  0.9 135592  9788 ?        Ssl  08:28   0:21 redis-server 10.0.0.2:9001 [cluster]                root       2445  0.1  0.9 135592  9800 ?        Ssl  08:29   0:20 redis-server 10.0.0.2:9002 [cluster]                root       2449  0.1  0.9 135592  9792 ?        Ssl  08:29   0:21 redis-server 10.0.0.2:9003 [cluster]                root       2453  0.1  0.7 133544  7728 ?        Ssl  08:29   0:21 redis-server 10.0.0.2:9004 [cluster]                root       2457  0.1  0.9 135592  9808 ?        Ssl  08:29   0:20 redis-server 10.0.0.2:9005 [cluster]                root       2461  0.1  0.9 135592  9784 ?        Ssl  08:29   0:20 redis-server 10.0.0.2:9006 [cluster]

2、创建集群

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

###命令说明###

调用ruby命令来进行创建集群,--replicas 1 表示主从复制比例为 1:1,即一个主节点对应一个从节点;然后,默认给我们分配好了每个主节点和对应从节点服务,以及solt的大小,因为在Redis 集群中有且仅有 16383 个 solt ,默认情况会给我们平均分配,当然你可以指定,后续的增减节点也可以重新分配。

###输入yes后开始创建集群###

###如上图所示,集群创建成功###

3、集群验证

①使用客户端命令连接集群节点

[root@redsi ~]# redis-cli -h 10.0.0.2 -c -p 900110.0.0.2:9001> set name lulu-> Redirected to slot [5798] located at 10.0.0.2:9002  #自动连接到了9002节点,这是集群的一个数据分配特性OK10.0.0.2:9002> get name"lulu"

②连接其它节点验证

[root@redsi ~]# redis-cli -h 10.0.0.2 -c -p 900310.0.0.2:9003> get name-> Redirected to slot [5798] located at 10.0.0.2:9002"lulu"

###至此,redis集群搭建完毕###

转载于:https://www.cnblogs.com/yanxinjiang/p/9050859.html

你可能感兴趣的文章
[wp7软件]wp7~~新闻资讯,阅读软件下载大全! 集合贴~~~
查看>>
Extjs String转Json
查看>>
二叉树的遍历问题总结
查看>>
spring回滚数据
查看>>
新浪分享API应用的开发
查看>>
美国专利
查看>>
【JavaScript】Write和Writeln的区别
查看>>
百度编辑器图片在线流量返回url改动
查看>>
我对你的期望有点过了
查看>>
微信小程序wx:key以及wx:key=" *this"详解:
查看>>
下拉框比较符
查看>>
2.2.5 因子的使用
查看>>
css选择器
查看>>
photoplus
查看>>
Python 拓展之推导式
查看>>
[Leetcode] DP-- 474. Ones and Zeroes
查看>>
80X86寄存器详解<转载>
查看>>
c# aop讲解
查看>>
iterable与iterator
查看>>
返回顶部(动画)
查看>>