Redis4集群安装部署实战

redis服务器的集群主从配置,从redis的安装到实例开启,到集群创建。集群配置如图:

Redis集群优点摘自官网

So in practical terms, what you get with Redis Cluster? The ability to automatically split your dataset among multiple nodes. The ability to continue operations when a subset of the nodes are experiencing failures or are unable to communicate with the rest of the cluster.

1.安装redis,下载Redis并编译

在三台服务器上分别安装redis,进行如下操作:

ubuntu需要安装 sudo apt install tcl8.6

$ wget http://download.redis.io/releases/redis-4.0.1.tar.gz
$ tar xzf redis-4.0.1.tar.gz
$ cd redis-4.0.1
$ make
$ mv /opt/
$ make test

2.集群文件配置

resdis集群整体架构

三台服务器,配置如上图,在每台服务器上配置如下(以服务器3为列)

$ /opt/redis-4.0.1# mkdir redis-cluster

$ /opt/redis-4.0.1# mkdir redis-cluster/nodes-7004
$ /opt/redis-4.0.1# mkdir redis-cluster/nodes-7005

$ /opt/redis-4.0.1# cp redis.conf redis-cluster/nodes-7004
$ /opt/redis-4.0.1# cp redis.conf redis-cluster/nodes-7005

依次配置redis.conf(以nodes-7005为列)

$ /opt/redis-4.0.1# vim redis-cluster/nodes-7005/redis.conf
port 7005 #在不同的服务器和nodes-xx中,端口也不同
cluster-enabled yes
bind 10.80.67.238
# daemonize yes #redis后台运行
cluster-config-file nodes-7005.conf
cluster-node-timeout 5000
appendonly yes

3.依次启动redis实例

src/redis-server redis-cluster/nodes-7000/redis.conf

后台启动

nohup src/redis-server redis-cluster/nodes-7000/redis.conf > redis-cluster/nodes-7000/redis-server.out 2>&1 &

nohup(no hang up) 不挂起,后台运行程序。并将输出信息重定向到redis-cluster/nodes-7000/redis-server.out 如何关闭? 查看pidps aux | grep redis关闭进程kill -9 pid

每个redis实例都有独立唯一都id,启动和关闭不会改变id。如上依次开启6个redis实例。

4.创建集群

只需在redis-cluster1服务器上操作

仅需要在redis-cluster1服务器上安装gem redis (为来redis-trib可以执行),其他服务器不用。

gem install redis #默认安装的版本上3.3(无所谓)

开启集群

src/redis-trib.rb create --replicas 1 10.80.67.225:7000 10.80.67.225:7001 10.80.67.230:7002 10.80.67.230:7003 10.80.67.238:7004 10.80.67.238:7005

Can I set the above configuration? (type 'yes' to accept):输入yes

集群创建完成,运行正常。

[OK] All 16384 slots covered.意味着集群中的16384个槽至少有一个主节点在处理。

参考Redis集群官方文档

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python爬虫与数据挖掘

在navicat中如何新建连接数据库

前几天给大家分享了如何安装Navicat,没有来得及上车的小伙伴可以戳这篇文章:手把手教你安装Navicat——靠谱的Navicat安装教程。今天给大家分享一下...

902
来自专栏Linux运维学习之路

NFS存储服务部署

什么是NFS 中文意思是网络文件系统,主要功能是通过网络(一般是局域网)让不同主机之间可以共享文件或目录 NFS属于本地文件存储服务  缺点1: windows...

2319
来自专栏.NET后端开发

RabbitMQ消息队列系列教程(二)Windows下安装和部署RabbitMQ

1514
来自专栏Java成神之路

Git_学习_06_ 放弃本地修改

git checkout . 用来放弃掉所有还没有加入到缓存区(就是 git add 命令)的修改:内容修改与整个文件删除。

685
来自专栏linux运维学习

linux学习第五十四篇:Tomcat介绍,安装jdk,安装Tomcat

Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apac...

2158
来自专栏CDN及云技术分享

如何通过命令行访问unix socket文件

socket文件不能通过普通的文件读写命令操作(比如说echo "xxx" > socket.file)它。因为它是在网络上面工作的。只能通过socket读写函...

60127
来自专栏偏前端工程师的驿站

CentOS6.5菜鸟之旅:U盘安装CentOS64位

一、前言                                      之前下载了个CentOS7 32位版,一下就安装成功了,但由于其目录结构等与...

1795
来自专栏菩提树下的杨过

kafka集群部署

前提: kafka集群依赖于zk集群,没有zk集群环境的请先参考 http://www.cnblogs.com/yjmyzz/p/4587663.html . ...

2779
来自专栏漫漫全栈路

【腾讯云的1001种玩法】Ngrok编译Win下客户端和相关配置

上一篇文章提到了在服务器槡搭建Ngrok服务来实现内网穿透,因为我的服务器和本地环境都是Ubuntu的缘故,故直接完成了客户端的链接.那么在win下如何使用搭建...

5141
来自专栏编程坑太多

『中级篇』Docker 水平扩展和负载均衡(40)

PS:Docker的scale 可以扩展,也可以所有,他们自动来控制的。web=10 可以改成5 其中的6,7,8,9,10就被删除了。

693

扫码关注云+社区