redis 安装和单机多节点集群
环境:
centOs系统
一、安装redis:
1.下载安装(先装c编译器yum -y install gcc)
$ wget http://download.redis.io/releases/redis-4.0.6.tar.gz
$ tar xzf redis-4.0.6.tar.gz
$ cd redis-4.0.6
$ make
2.启动:
src/redis-server
3.交互
$ src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
二、多节点集群搭建的配置工作:
其实就是启动的配置文件redis.conf不一样,下面是步骤:
1.根目录下创建 redis_cluster文件夹,cd进去:
创建目录:mkdir 7001 7002 7003 7004 7005 7006
2.复制redis目录下的redis.conf文件到/redis_cluster目录下
cp /opt/redis/redis-4.0.6/redis.conf 7001/
修改文件:
port 7001 //六个节点配置文件分别是7001-7006
daemonize yes //redis后台运行
pidfile /var/run/redis_7001.pid //pidfile文件对应7001-7006
cluster-enabled yes //开启集群
cluster-config-file nodes_7001.conf //保存节点配置,自动创建,自动更新对应7001-7006
cluster-node-timeout 5000 //集群超时时间,节点超过这个时间没反应就断定是宕机
appendonly yes //存储方式,aof,将写操作记录保存到日志中
3.复制到7002/ 7003/ ...并修在相应位置修改
4.写一个启动shell脚本
cd /opt/redis/redis-4.0.6
src/redis-server /redis_cluster/7001/redis.conf
src/redis-server /redis_cluster/7002/redis.conf
src/redis-server /redis_cluster/7003/redis.conf
src/redis-server /redis_cluster/7004/redis.conf
src/redis-server /redis_cluster/7005/redis.conf
src/redis-server /redis_cluster/7006/redis.conf
执行脚本,启动6个节点。
查看进程:
[root@master redis-4.0.6]# ps -ef|grep redis
root 1674 1458 0 Jan14 pts/0 00:00:00 vim 7001/redis.conf
root 2681 1 0 01:08 ? 00:00:00 src/redis-server 127.0.0.1:7001 [cluster]
root 2686 1 0 01:09 ? 00:00:00 src/redis-server 127.0.0.1:7002 [cluster]
root 2691 1 0 01:09 ? 00:00:00 src/redis-server 127.0.0.1:7003 [cluster]
root 2696 1 0 01:09 ? 00:00:00 src/redis-server 127.0.0.1:7004 [cluster]
root 2701 1 0 01:09 ? 00:00:00 src/redis-server 127.0.0.1:7005 [cluster]
root 2706 1 0 01:09 ? 00:00:00 src/redis-server 127.0.0.1:7006 [cluster]
root 2719 2026 0 01:09 pts/1 00:00:00 grep --color=auto redis
这里6个节点都跑上了。
干掉所有redis进程:
[root@master ~]# pkill -9 redis
[root@master ~]# ps -ef|grep redis
root 1674 1458 0 Jan14 pts/0 00:00:00 vim 7001/redis.conf
root 3047 2026 0 01:39 pts/1 00:00:00 grep --color=auto redis
三.安装ruby
安装ruby-2.2.7:
yum install curl
curl -L get.rvm.io | bash -s stable
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
curl -L get.rvm.io | bash -s stable
find / -name rvm.sh
source /etc/profile.d/rvm.sh
rvm list known
rvm install ruby-2.2.7
rvm info //查看信息,这里安装结束
rvm use ruby-2.2.7 --default
yum install rubygems
gem install redis //安装redis插件
四.创建集群
复制redis解压文件src下的redis-trib.rb文件到redis-cluster目录
cp src/redis-trib.rb /redis_cluster/
cd到/redis_cluster目录下
[root@master redis_cluster]# ./redis-trib.rb create --replicas 1 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006
使用create命令 --replicas 1 参数表示为每个主节点创建一个从节点,其他参数是实例的地址集合。
下面是集群输出信息:
主节点 -- 从节点
7001 7004
7002 7005
7003 7006

集群搭建成功
五.测试
cd /opt/redis/redis-4.0.6/src/ cd到redis的src目录下
./redis-cli -c -p 7001 集群连接需要参数 -c -p 端口号

可见,name-andy存在了端口号为7002的redis上,而name1-haha存在了端口号为7003的redis上.
redis 安装和单机多节点集群的更多相关文章
- Redis安装(单机及各类集群,阿里云)
Redis安装(单机及各类集群,阿里云) 前言 上周,我朋友突然悄悄咪咪地指着手机上的一篇博客说,这是你的博客吧.我看了一眼,是之前发布的<Rabbit安装(单机及集群,阿里云>.我朋友很 ...
- redis单机多节点集群
# ##安装Redis redis安装参考 https://www.cnblogs.com/renxixao/p/11442770.html Reids安装包里有个集群工具,要复制到/usr/loca ...
- Ambari安装之部署单节点集群
前期博客 大数据领域两大最主流集群管理工具Ambari和Cloudera Manger Ambari架构原理 Ambari安装之Ambari安装前准备(CentOS6.5)(一) Ambari安装之部 ...
- redis单节点集群
一.概念 redis是一种支持Key-Value等多种数据结构的存储系统.可用于缓存.事件发布或订阅.高速队列等场景.该数据库使用ANSI C语言编写,支持网络,提供字符串.哈希.列表.队列.集合结构 ...
- Centos7安装Nacos单机模式以及集群模式(包含nignx安装以及实现集群)的相关配置
Nacos 致力于帮助您发现.配置和管理微服务.Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现.服务配置.服务元数据及流量管理. Nacos支持三种部署模式 单机模式 - 用于测试 ...
- ELK日志框架(1):安装Elasticsearch组建单服务器多节点集群
ELK简介 最近有个需求搭建一套日志系统用于集成几个业务系统的日志提供快速的检索功能,目前是用Log4net存数据库+Error级别发邮件方式,也算简单暴力好用,但历史日志的模糊查询确实很慢,所以使用 ...
- kubeadm安装K8S单master双节点集群
宿主机:master:172.16.40.97node1:172.16.40.98node2:172.16.40.99 # 一.k8s初始化环境:(三台宿主机) 关闭防火墙和selinux syste ...
- CentOS---zookeeper安装(单机、伪集群、集群)
一:单机安装: 可以参考下面的伪集群安装方式 不同点: 不需要在data目录下创建 myid 文件 不需要配置集群 配置好后的启动和状态查询命令相同!! 二:伪集群模式 伪集群模式就是在同一主机上启动 ...
- ActiveMQ 笔记(七)ActiveMQ的多节点集群
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.Activemq 的集群思想 1.使用Activemq集群的原因 面试题: 引入消息中间件后如何保证 ...
随机推荐
- 【狼窝乀野狼】Parallel浅尝辄止
前段时间看到园子里面有同学在用Parallel进行批量插入数据库.后面也有很多同学针对这一事件给出了自己的看法和见解.我在这里不评论内容的好坏,至少能将自己东西总结分享这个是要靠勇气和毅力. 闲话少说 ...
- Flask框架2
Flask框架的学习与实战(二):实战小项目 昨天写了一篇flask开发环境搭建,今天继续,进行一个实战小项目-blog系统. blog系统很简单,只有一个页面,然后麻雀虽小五脏俱全.这里目的不是 ...
- Linux性能测试 uptime命令
uptime 命令用于查看服务器运行了多长时间以及有多少个用户登录,快速获知服务器的负荷情况. 以下是 uptime 的运行实例: :: up days, min, users, load avera ...
- ASP.NET Core 属性路由 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 属性路由 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 属性路由 经过前面章节的学习,想必你已经对 ASP.NET Core ...
- 嵌入式开发(*(volatile unsigned long *)) 认识
一个.说明 (*(volatile unsigned long *)) 这个语句对于不同的计算机体系结构,设备可能是port映射,也可能是内存映射的. 假设系统结构支持独立的IO地址空间.而且是por ...
- 关于 Facebook 的 React 专利许可证
本文转载自:酷 壳 – CoolShell 作者:陈皓 随着 Apache.百度.Wordpress 都在和 Facebook 的 React.js 以及其专利许可证划清界限,似乎大家又在讨论 Fac ...
- ThreadPoolExecutor原理和使用
大家先从ThreadPoolExecutor的整体流程入手: 针对ThreadPoolExecutor代码.我们来看下execute方法: public void execute(Runnable c ...
- Eclipseproject标准的文件夹层次
为什么特别写一个文档首场讲座解释什么层次,你是eclipse正在使用java.io.File类在读workspace档,我相信不知道eclipse,为了避免以后再出现这样的令人难堪的情况,还是编写这样 ...
- cocos2d 滚动背景 举 无限
void Bird::update(float time){ auto bg=this->getChildByTag(200); auto bg1=this->getChildByTag( ...
- WPF4.0用tablet实现手写输入(更新XP SP3下也能手写输入方法)
原文:WPF4.0用tablet实现手写输入(更新XP SP3下也能手写输入方法) 由于项目需求一个手写输入的控件,纠结了2天,终于搞定了. 主要是由于本人的英语不过关,一直和ocr混淆在一起,研究了 ...