一、部署环境

服务器三台:

10.10.15.41(配置运行两个实例,端口:6379,6380)

10.10.15.42(配置运行两个实例,端口:6381,6382)

10.10.15.43(配置运行两个实例,端口:6383,6384)

二、目标

配置10.10.15.41:6379,10.10.15.42:6381,10.10.15.43:6383为Master节点,

10.10.15.42:6382,10.10.15.43:6384,10.10.15.41:6380为相应Salve节点,即10.10.15.42:6382为10.10.15.41:6379的从节点,10.10.15.43:6384为10.10.15.42:6381的从节点,10.10.15.41:6380为10.10.15.43:6383的从节点。

三、配置步骤(其中一台,另外2台同样)

1、安装gcc  yum install gcc

2、在/usr/local目录下创建 soft 目录,用来存放要安装的软件

3、下载redis-5.0.4安装包,并将安装包拷贝到 soft 目录

4、终端进入soft目录,解压安装包 tar -zxvf redis-5.0.4.tar.gz

5、进入解压好的redis-5.0.4目录 cd redis-5.0.4

6、进行编译 make

7、进入 redis-5.0.4/src目录下,验证安装 make install

8、在与redis-5.0.4同级目录下创建三个目录

/redis/bin【将/usr/local/bin下与redis相关的全部文件拷贝至该目录下】

/redis-cluster/6379【将redis-5.0.4目录下的redis.conf文件拷贝至该目录】

/redis-cluster/6380【将redis-5.0.4目录下的redis.conf文件拷贝至该目录】

/redis-cluster-data/6379【用于存放6379实例的本地化数据】

/redis-cluster-data/6380【用于存放6380实例的本地化数据】

9、集群配置,修改配置文件

daemonize yes 【配置redis为后台运行】

port 6379 【修改为相应实例的端口号】

bind 10.10.15.41

dir /usr/local/soft/redis-cluster/6379 【制定redis数据文件存放目录】

cluster-enabled yes

cluster-config-file nodes-6379.conf

cluster-node-timeout 5000

appendonly yes

10、运行实例

进入新建的/redis/bin目录,运行命令

redis-server /usr/local/soft/redis-cluster/6379/redis.conf

redis-server /usr/local/soft/redis-cluster/6380/redis.conf

11、安装ruby

yum install ruby

yum install rubygems

12、6个实例节点创建并启动后台,创建redis集群

redis-cli --cluster create 10.10.15.41:6379 10.10.15.42:6381 10.10.15.43:6383 10.10.15.42:6382 10.10.15.43:6384 10.10.15.41:6380 --cluster-replicas 1

说明:Master节点为前三个,写在前面;Slave节点为相应的后三个。参数cluster-replicas的值是主从节点的比例。此处3主3从为1。若3主6从则为0.5

四、配置redis开机启动

1、在/etc/systemd/system/目录下创建redis-server-6379.service文件

Cd 到/etc/systemd/system/ 【touch redis-server-6379.service】

2、将以下内容粘贴到该文件内

[Unit]

Description=The redis-server Process Manager

After=syslog.target network.target

[Service]

Type=simple

PIDFile=/var/run/redis_6379.pid

ExecStart=/usr/local/soft/redis/bin/redis-server /usr/local/soft/redis-cluster/6379/redis.conf

ExecReload=/bin/kill -USR2 $MAINPID

ExecStop=/bin/kill -SIGINT $MAINPID

[Install]

WantedBy=multi-user.target

3、执行以下命令

systemctl daemon-reload

systemctl start redis-server-6379.service

systemctl enable redis-server-6379.service

CentOS下部署Redis集群的更多相关文章

  1. centos下搭建redis集群

    必备的工具: redis-3.0.0.tar redis-3.0.0.gem   (ruby和redis接口) 分析:     首先,集群数需要基数,这里搭建一个简单的redis集群(6个redis实 ...

  2. window下使用Redis Cluster部署Redis集群

    日常的项目很多时候都需要用到缓存.redis算是一个比较好的选择.一般情况下做一个主从就可以满足一些比较小的项目需要.在一些并发量比较大的项目可能就需要用到集群了,redis在Windows下做集群可 ...

  3. windows下安装redis集群

    前几天在自己在本机win10 电脑下部署了redis集群. 主要通过的是网上两个博客: 如何在windows下部署redis集群:https://blog.csdn.net/zsg88/article ...

  4. Redis笔记 -- 在 Centos7.4单机中部署Redis集群(二)

    0x00--背景和目的 在单台PC服务器上部署Redis集群,通过不同的TCP端口启动多实例,模拟多台独立PC组成集群. 0x01--环境描述: Centos版本:CentOS Linux relea ...

  5. Dubbo入门到精通学习笔记(十五):Redis集群的安装(Redis3+CentOS)、Redis集群的高可用测试(含Jedis客户端的使用)、Redis集群的扩展测试

    文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentO ...

  6. Centos7部署Redis集群

    Redis简介 Redis(Remote Dictionary Server)是完全开源的.遵守BSD协议的.高性能的Key-Value数据库. Redis与其他Key-Value缓存产品有一下三个特 ...

  7. Windows下搭建Redis集群

    Redis集群: 如果部署到多台电脑,就跟普通的集群一样:因为Redis是单线程处理的,多核CPU也只能使用一个核, 所以部署在同一台电脑上,通过运行多个Redis实例组成集群,然后能提高CPU的利用 ...

  8. Redis集群搭建(转自一菲聪天的“Windows下搭建Redis集群”)

    配置Redis参考:http://blog.csdn.net/zsg88/article/details/73715947 使用Ruby配置集群参考:https://www.cnblogs.com/t ...

  9. laravel项目利用twemproxy部署redis集群的完整步骤

    Twemproxy是一个代理服务器,可以通过它减少Memcached或Redis服务器所打开的连接数.下面这篇文章主要给大家介绍了关于laravel项目利用twemproxy部署redis集群的相关资 ...

随机推荐

  1. angr初使用(1)

    angr是早在几年前就出来了的一款很好用的工具,如今也出了docker,所以想直接安个docker来跑一跑. docker pull angr/angr .下载下来以后,进入docker ,这时并没有 ...

  2. java 标准输出与标准错误 out与 err 区别 用法 联系 java中的out与err区别 System.out和System.err的区别 System.out.println和System.err.println的区别 Java重定向System.out和System.err

    本文关键词: java 标准输出与标准错误    out与 err 区别 用法 联系  java中的out与err区别  System.out和System.err的区别 System.out.pri ...

  3. python 使用 thrift 教程

    一.前言: Thrift 是一种接口描述语言和二进制通信协议.以前也没接触过,最近有个项目需要建立自动化测试,这个项目之间的微服务都是通过 Thrift 进行通信的,然后写自动化脚本之前研究了一下. ...

  4. CSS float的相关图文详解(一)

    大家好,作为一个刚入门的小前端,第一次写博客,很是鸡冻.由于涉猎较浅,有些知识可能说的不清楚,或者有什么错误,欢迎留言指正.我的第一篇博客写的关于css的浮动的.想必很多小伙伴特别是刚学的,对浮动有一 ...

  5. JsonRequestBehavior不存在问题,JsonRequestBehavior属于哪个dll

    1.C#.Net.C++.JScript.VB语法 获取或设置一个值,该值指示是否允许来自客户端的 HTTP GET 请求. 命名空间: System.Web.Mvc程序集: System.Web.M ...

  6. javascript基础修炼(3)—What's this(下)

    开发者的javascript造诣取决于对[动态]和[异步]这两个词的理解水平. 这一期主要分析各种实际开发中各种复杂的this指向问题. 一. 严格模式 严格模式是ES5中添加的javascript的 ...

  7. sqlserver数据库发送邮箱

    Exec [msdb].dbo.sp_send_dbmail @profile_name='SQLMailConfig', @recipients = @email,    //需要发送的邮箱 @su ...

  8. WPF 窗口大小自适应

    在设置桌面不同分辨率以及较大DPI下,窗口如何显示的问题. 方案一 设置窗口最大值和最小值显示 通过对比当前屏幕的可显示区域,将窗口高宽最大值和最小值,设置为窗口的实际高宽(此例中仅设置高度) 界面设 ...

  9. js三部曲---预编译

    函数内:1,创建AO对象//Activation Object 2,找函数内形参和变量声明,将其作为AO对象的属性名,值为undefined. 3,实参赋到AO对象 形参名里 4,在函数体里找函数声明 ...

  10. (4)Maven快速入门_4在Spring+SpringMVC+MyBatis+Oracle+Maven框架整合运行在Tomcat8中

    利用Maven 创建Spring+SpringMVC+MyBatis+Oracle 项目 分了三个项目  Dao   (jar)   Service (jar)   Controller (web) ...