redis主从与集群搭建
redis搭建主从
条件:yum安装(3.2.1)与编译安装(5.0.0)都可以
环境:我这里在同一台主机上搭建,当然也可以两台。
1) 复制redis.conf的主配置文件并命令为slave.conf
2)配置slave.conf
bind 192.168.253.153(主节点ip一致)
slaveof 192.168.253.153 6379 (主节点的ip与端口)
port 6389 (自定义)
3)重启服务
redis-server 文件名(如果不在目录下,就需要带上目录)
4)测试
进入主从节点的redis数据库中,在主节点上添加等操作,如果从节点能够读出来,说明配置成功。
redis-cli -p 6379 -h 192.168.253.10
redis-cli -p 6389 -h 192.168.253.10 #配置的端口和ip
redis集群
环境:两台主机(一台3个主节点,一台三个从节点) 或者一台主机(3台主节点,3台从节点)
条件:编译安装,yum安装的如果时3.2版本或者更早之前很可能会行不通,报错:
Unrecognized option or bad number of args for: '--cluster' #此错误原因为参数错误或者缺少redis cluster
我这里选择一台主机配置集群:
1)创建一个conf目录
mkdir conf
2)创建6个.conf结尾的文件
touch {7000,7001,7002,7003,7004,7005}.conf
3)添加配置内容
port #绑定端口
bind 192.168.253.135 #绑定对外连接提供的ip
daemonize yes #开启守护进程
pidfile .pid #进程文件名
cluster-enabled yes #是否是集群
cluster-config-file 7000_node.conf #集群配置文件
cluster-node-timeout #集群连接超时时间
appendonly yes #数据持久化类型
不同配置文件之间只需更改:port ;pidfile ;cluster-config-file(如果是不同主机上配置,bind也需更改)
4)写一个执行脚本:
#!/bin/bash
for i in `seq `
do
redis-server $i.conf
done
bash a.sh来开启服务
ps -ef | grep redis 来查看是否开启服务
5)早版本需要安装ivm和ruby来做集群操作,现在我们只需要执行以下命令:
redis-cli --cluster create 192.168.253.153: 192.168.253.153: 192.168.253.153: 192.168.253.153: 192.168.253.153: 192.168.253.153: --cluster-replicas

出现以下内容后yes确认接受。
6)测试
进入数据库:redis-cli -p7000 -c -h 192.168.253.153
每一次更改等操作会跳转节点,主节点如果宕机,会由其他两个节点从从节点中选一个来顶替。
拓展:2)、3)、4)步可以通过以下脚本来实现:
#!/bin/bash
for i in `seq `
do
touch "$i".conf
echo -e " port "$i"\nbind 192.168.253.153\ndaemonize yes \npidfile "$i".pid\ncluster-enabled yes\ncluster-config-file "$i"_node.conf\ncluster-node-timeout 15000\nappendonly yes" > "$i".conf
redis-server "$i".conf
done
redis主从与集群搭建的更多相关文章
- redis主从和集群搭建
主从搭建 redis的主从搭建非常简单,打开配置文件6379.conf,只需要将主节点的protected-mode设置为no,然后在从节点配置中加入:slaveof <masterip> ...
- Redis主从&哨兵集群搭建
主从集群 在搭建主从集群前,我们先把Redis安装起来: #解压Redis压缩包 [root@master lf]# tar -zxvf redis-6.2.1.tar.gz -- #安装gcc [r ...
- Redis 3.0 集群搭建
Redis 3.0 集群搭建 开启两个虚拟机 分别在两个虚拟机上开启3个Redis实例 3主3从两个虚拟机里的实例互为主备 下面分别在两个虚拟机上安装,网络设置参照codis集群的前两个主机 分别关闭 ...
- redis主从、集群、哨兵
redis的主从.集群.哨兵 参考: https://blog.csdn.net/robertohuang/article/details/70741575 https://blog.csdn.net ...
- Redis 5.0 集群搭建
Redis 5.0 集群搭建 单机版的 Redis 搭建 https://www.jianshu.com/p/b68e68bbd725 /usr/local/目录 mkdir redis-cluste ...
- 【Redis学习专题】- Redis主从+哨兵集群部署
集群版本: redis-4.0.14 集群节点: 节点角色 IP redis-master 10.100.8.21 redis-slave1 10.100.8.22 redis-slave2 10.1 ...
- Redis进阶实践之十一 Redis的Cluster集群搭建
一.引言 本文档只对Redis的Cluster集群做简单的介绍,并没有对分布式系统的详细概念做深入的探讨.本文只是提供了有关如何设置集群.测试和操作集群的说明,而不涉及Redis集群规范中涵 ...
- linux Redis 5.0集群搭建
文档结构如下: Redis cluster 是redis的分布式解决方案,在3.0版本正式推出后,有效的解决了redis分布式方面的需求:当遇到单机内存,并发,流量等瓶颈是,可以采用cluster架构 ...
- Redis操作及集群搭建以及高可用配置
NoSQL - Redis 缓存技术 Redis功能介绍 数据类型丰富 支持持久化 多种内存分配及回收策略 支持弱事务 支持高可用 支持分布式分片集群 企业缓存产品介绍 Memcached: 优点:高 ...
随机推荐
- Linux中 xargs 命令用法
xargs命令: xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具. 1.它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令的命令 ...
- Java 基础知识整理 (待整理)
JVM之类加载器(ClassLoader)基本介绍 类加载器用于将class文件加载到JVM中去执行.下面介绍类加载器涉及到的基本概念和加载基本过程. 一.Java虚拟机与程序的生命周期 在运行Jav ...
- python程序daemon化
1 直接空格加& python flask_server.py & 最简单的方式 这样还不行,不知道为什么flask server会自动退出. $ nohup python flask ...
- [mysql相关集锦] 001 - mysql zip安装/The service already exists/MySQL 服务无法启动
本随笔参考了其他博客内容,且在验证有效之下才或誊抄或摘录或加上自己经验组合而成. 参考博客: 1,https://www.jianshu.com/p/413d29b67422 2,https://bl ...
- ajax 的post方法 的content-type设置和express里应用body-parser
ajax的post方法相比get方法,在传参形式上很不一样, get把参数用'?'拼接在端口后,并且用'&'连接;而post则是需要在send参数里设置. 根据ajax实例xhr.setReq ...
- 01-HTML控件
1.HTML (常用标签 网页的基本结构)2.CSS (常用样式 网页的显示效果)3.JavaScript (用户交互效果 动态效果)4.jQuery (JavaScript库 简化原生js操作)5. ...
- Hibernate快速入门之CRUD
一.Hibernate的基本概念 前言 Hibernate是一个ORM框架,ORM是Object Relational Mapping的缩写,即对象关系映射,也就是将面向对象思想的编程语言与关系型数据 ...
- 7——C++类的使用
定义了一个类之后,便可以如同用int.double等类型符声明简单变量一样,创建该类的对象,称为类的实例化. 类的定义实际上是定义了一种类型,类不接收或存储具体的值,只作为生成具 ...
- 使用C#解析XMIND文件格式
static void Main(string[] args) { var tempPath = @"c:\Temp"; if (Directory.Exists(tempPath ...
- basename 显示文件名或目录名
1. 命令功能 basename 显示文件名或目录名,不显示文件的全路径文件名 2. 语法格式 basename 文件路径名 3. 使用范例 [root@localhost data]# basen ...