绪论

redis集群需要至少要三个master节点,下面将搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用三台机器部署6个redis实例,每台机器一主一从。设备为192.168.137.11、192.168.137.12和192.168.137.13

1. 下载redis

http://www.redis.cn/download.html

2.上传并解压

 tar -zxvf /redis-5.0.4.tar.gz 

需要将redis分别上传到三台设备上执行编译安装,下面以192.168.137.11设备上的编译 、安装和配置为例

3.编译并安装redis

需要安装gcc,如果没有安装gcc,使用yum -y install gcc 安装即可

进入到redis-5.0.4目录,make & make install 即可执行编译和安装,安装后会在/usr/local/bin目录下生成命令文件

4.拷贝并修改配置

在/opt/module目录下创建 redis文件夹,用以保存日志文件、dump文件和配置文件

mkdir -p /opt/module/redis/63{79,80}/logs  

拷贝redis-5.0.4/redis.conf文件到/opt/module/redis/目录下,然后修改该配置文件。找到如下配置项,逐个修改

protected-mode no                                     (关闭保护模式)
port 6379 daemonize yes (设置redis在后台启动) pidfile /var/run/redis_6379.pid logfile "/opt/module/redis/6379/logs/redis_6379.log" (设置日志文件的存放位置) dbfilename dump_6379.rdb (设置dump文件名)
dir "/opt/module/redis/6379" (设置dump文件和nodes文件的存放位置)
masterauth bigdata (设置集群节点间访问密码,跟上面一致) requirepass bigdata (设置redis访问密码) cluster-enabled yes (启动集群模式)
cluster-config-file nodes-6379.conf (集群节点信息文件,这里800x最好和port对应上)
cluster-node-timeout 5000
# bind 127.0.0.1 注释掉该项

拷贝上面的配置文件,分别命名为redis_6379.conf、redis_6380.conf,、vi修改redis_6380.conf文件,将6379替换为6380,命令为:%s/6379/6380/g

然后再分别将它们移动到前面所创建的6380和6379文件夹中

在192.168.137.12和192.168.137.13做同样的操作。如果配置xync了直接同步即可

5.检查配置

检查三台设备上配置是否正确

6.分别启动三台设备上的redis

启动命令为:

redis-server /opt/module/redis/6379/redis_6379.conf
redis-server /opt/module/redis/6380/redis_6380.conf 

为了方便操作可以在xshell或SecureCRT中,进行批量,如下面的在SecureCRT中,设置将命令发送到所有会话

查看三台设备上的redis是否都启动成功:

7.用redis-cli创建整个redis集群

redis5以前的版本集群是依靠ruby脚本redis-trib.rb实现,操作方法参照:https://www.cnblogs.com/wuxl360/p/5920330.html 此处使用更为便捷的redis-cli方式

redis-cli --cluster create --cluster-replicas 1 192.168.137.11:6379 192.168.137.11:6380  192.168.137.12:6379 192.168.137.12:6380 192.168.137.13:6379 192.168.137.13:6380

命令解读:代表为每个创建的主服务器节点创建一个从服务器节点,

8.验证集群

(1)连接任意一个客户端即可:./redis-cli -c -h -p (-a访问服务端密码,-c表示集群模式,指定ip地址和端口号)

redis-cli -a bigdata -c -h 192.168.137.11 -p 6379

 命令解释:-a访问服务端密码,-c表示集群模式,指定ip地址和端口号

(2)cluster info(查看集群信息)

(3)cluster nodes(查看节点列表)

192.168.137.11:6379> cluster nodes
0bd7e769345f4e053bbe83dbbc467af25c299462 192.168.137.11:6379@16379 myself,slave 185b8d64263b7c31c358c327fb2c9dce9a8ed773 0 1566901074000 1 connected
6877fd706dbb17508a4c3f279703fa66706852fc 192.168.137.11:6380@16380 slave 98328749670132748f687a26b6281a4b7163801c 0 1566901073546 5 connected
fd20d54152b0101008d872314268fd17cce39b3d 192.168.137.12:6379@16379 slave dda7a654ba16cbff3b30b25418104cee3709a454 0 1566901073646 7 connected
dda7a654ba16cbff3b30b25418104cee3709a454 192.168.137.13:6380@16380 master - 0 1566901074553 7 connected 5461-10922
98328749670132748f687a26b6281a4b7163801c 192.168.137.13:6379@16379 master - 0 1566901074553 5 connected 10923-16383
185b8d64263b7c31c358c327fb2c9dce9a8ed773 192.168.137.12:6380@16380 master - 0 1566901074653 8 connected 0-5460
192.168.137.11:6379>

更为详细的配置过程,参照博客:https://blog.csdn.net/qq_42815754/article/details/82912130

Redis高可用集群搭建的更多相关文章

  1. 生产环境的redis高可用集群搭建

    这里只是总结一下安装步骤 如果要了解redis集群高可用的原理,推荐仔细看一遍配置文件示例http://download.redis.io/redis-stable/redis.conf,源码包里也有 ...

  2. Redis高可用集群-哨兵模式(Redis-Sentinel)搭建配置教程【Windows环境】

    No cross,no crown . 不经历风雨,怎么见彩虹. Redis哨兵模式,用现在流行的话可以说就是一个"哨兵机器人",给"哨兵机器人"进行相应的配置 ...

  3. Redis安装、主从配置及两种高可用集群搭建

    Redis安装.主从配置及两种高可用集群搭建 一.            准备 Kali Linux虚拟机 三台:192.168.154.129.192.168.154.130.192.168.154 ...

  4. Redis 高可用集群

    Redis 高可用集群 Redis 的集群主从模型是一种高可用的集群架构.本章主要内容有:高可用集群的搭建,Jedis连接集群,新增集群节点,删除集群节点,其他配置补充说明. 高可用集群搭建 集群(c ...

  5. sentinel监控redis高可用集群(一)

    一.首先配置redis的主从同步集群. 1.主库的配置文件不用修改,从库的配置文件只需增加一行,说明主库的IP端口.如果需要验证的,也要加多一行,认证密码. slaveof 192.168.20.26 ...

  6. 基于docker实现redis高可用集群

    基于docker实现redis高可用集群 yls 2019-9-20 简介 基于docker和docker-compose 使用redis集群和sentinel集群,达到redis高可用,为缓存做铺垫 ...

  7. harbor高可用集群搭建

    高可用harbor集群搭建 一.安装部署 1.节点角色 角色 数量 名称 备注 harbor主节点 2 harbor-1 harbor-2 双主模式 haproxy 2 HA-1 HA-2 需要通过k ...

  8. hadoop高可用集群搭建小结

    hadoop高可用集群搭建小结1.Zookeeper集群搭建2.格式化Zookeeper集群 (注:在Zookeeper集群建立hadoop-ha,amenode的元数据)3.开启Journalmno ...

  9. Spark高可用集群搭建

    Spark高可用集群搭建 node1    node2    node3   1.node1修改spark-env.sh,注释掉hadoop(就不用开启Hadoop集群了),添加如下语句 export ...

随机推荐

  1. Python Python Python 100个练手项目

    1.淘宝模拟登录2.天猫商品数据爬虫3.爬取淘宝我已购买的宝贝数据4.每天不同时间段通过微信发消息提醒女友5.爬取5K分辨率超清唯美壁纸6.爬取豆瓣排行榜电影数据(含GUI界面版)7.多线程+代理池爬 ...

  2. 阿里云OSS服务器的使用

    关于文件上传,我们一般使用OSS服务器.大致为两种上传方式: 详情官网参考:https://help.aliyun.com/document_detail/31927.html?spm=a2c4g.1 ...

  3. Android:沉浸式状态栏(一)工具类

    参考自Android 沉浸式状态栏完美解决方案 基本功能 状态栏深色或浅色图标切换 自定义状态栏背景 设置沉浸式状态栏 先准备几个工具类 1.SystemBarTintManager package ...

  4. AI大厂算法测试心得:人脸识别关键指标有哪些?

    仅仅在几年前,程序员要开发一款人脸识别应用,就必须精通算法的编写.但现在,随着成熟算法的对外开放,越来越多开发者只需专注于开发垂直行业的产品即可. 由调查机构发布的<中国AI产业地图研究> ...

  5. pandas_处理异常值缺失值重复值数据差分

    # 处理异常值缺失值重复值数据差分 import pandas as pd import numpy as np import copy # 设置列对齐 pd.set_option("dis ...

  6. GitHub 热点速览 Vol.30:那些提升效率的小工具们

    摘要:虽然 GitHub 是一个学习技术的好去处,但是除了学习,它还集提高"搬砖"效率于一身.GitHub 上散落着各式各样的小工具,比如本周特推的 Adobe 开源的 React ...

  7. MySQL主从同步-原理&实践篇

    来源:Onegoleya 简栈文化 什么是mysql的主从复制? MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点.MySQL 默认采用异步复制方式,这样从节点 ...

  8. 认识IPv4分组

    强化一下记忆:以免忘记. 图就不放了. 首部20B (4B的整数倍) 的固定部分12个域,的确很麻烦的:IPv6才8个域,首部长度8B的整数倍 20B分5行吧,每行4B,即32位.第一行,第二行,第三 ...

  9. Kaggle-SQL(1)

    Getting-started-with-sql-and-bigquery 教程 结构化查询语言(SQL)是数据库使用的编程语言,它是任何数据科学家的一项重要技能. 在本课程中,您将使用BigQuer ...

  10. JAVA的基本程序设计结构<上>

    一个简单的Java应用程序 public class FirstSample { public static void main(String[] args) { System.out.println ...