redis主从配置+sentinel哨兵

1:编译环境准备

1.1环境确认

Redis是一个开源、支持网络、基于内存、键值对存储数据库,使用ANSI C编写。所以在搭建Redis服务器时需要C语言的编译环境gcc或g++。

首先确认系统中是否存在C语言的编译环境,终端运行如下命令:

 #gcc –version

 #g++ --version

如果没有,就需要在系统中安装gcc、g++。

1:如果连接了网络就直接打命令安装,命令如下:

yum install gcc-c++

2:不能连网就按如下方法安装:

将安装所需的rpm包拷贝到目标机器上,然后按照以下顺序安装:

(1) 安装gcc,软件安装顺序不能错

# rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm

# rpm -ivh kernel-headers-2.6.32-131.0.15.el6.x86_64.rpm

# rpm -ivh libgcc-4.4.5-6.el6.x86_64.rpm

# rpm -ivh glibc-2.12-1.25.el6.x86_64.rpm

# rpm -ivh libgomp-4.4.5-6.el6.x86_64.rpm

# rpm -ivh nscd-2.12-1.25.el6.x86_64.rpm

# rpm -ivh glibc-headers-2.12-1.25.el6.x86_64.rpm

# rpm -ivh glibc-devel-2.12-1.25.el6.x86_64.rpm

# rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm

# rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm

# rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

# rpm -ivh cpp-4.4.5-6.el6.x86_64.rpm

# rpm -ivh gcc-4.4.5-6.el6.x86_64.rpm

(2) 安装gcc-c++

# rpm -ivh libstdc++-4.4.5-6.el6.x86_64.rpm

# rpm -ivh libstdc++-devel-4.4.5-6.el6.x86_64.rpm

# rpm -ivh gcc-c++-4.4.5-6.el6.x86_64.rpm

注意,正常情况下这样安装是不存在问题的,但是在某些环境下安装第一个rpm包的时候就会报错。这个时候就在所有的命令后加“--nodeps –force”,就像:

 # rpm -ivh glibc-common-2.12-1.25.el6.x86_64.rpm --nodeps –force

再次运行就没有问题了。

2、安装及配置Redis

2.1安装Redis

将redis-2.6.16.tar.gz解压,然后安装。步骤及相关命令如下:

    #tar –xvzf redis-2.6.16.tar.gz

    #cd redis-2.6.16

    #make

#make PREFIX=/usr/local/redis install (安装的linux路劲)

启动reids的命令如下:

进入redis的bin路径后打命令:  ./redis-server

退出命令(也是在bin里)为:./redis-cli shutdown

3、Redis主从配置

3.1Redis Master/Slave 主从配置

这里我们配置 1台Master +1台Slave 为例子,其中:

    Master IP:10.0.0.149    Port:6379

    Slave IP:10.0.0.151     Port:6379

注意,两台机器的IP地址要在同一网段内,否则无法实现集群。两台机器上均按照以上步骤安装并配置好redis服务。在Slave机器上修改配置文件,使其成为Master的从机。命令及配置如下:

    #vi /usr/local/webserver/redis/conf/redis.conf

    slaveof  10.0.0.149  6379

3.2启动redis服务

先开启主机上的服务,后开机从机上的服务。

3.3验证M/S服务是否生效

主机上:

    >set key1 val1

    >quit

从机上:

    >get key1

    "val1" (表示数据成功同步了)

4、Redis的sentinel哨兵配置

4.1配置文件位置

sentinel.conf配置文件一般在redis的安装包目录下,将该文件拷贝至拷贝至redis安装目录的根目录下(或/etc下,这个根据个人喜好来定):

[root@master ~]# vi /usr/local/redis/sentinel.conf

# sentinel监听的端口

sentinel monitor mymaster 10.0.0.149 6379 1

sentinel down-after-milliseconds mymaster 30000

# 表示sentinel在多少毫秒后连接不到master认为master断开

sentinel parallel-syncs mymaster 1

sentinel failover-timeout mymaster 18000

sentinel auth-pass mymaster loveit.cn@2016

4.2.启动哨兵

启动哨兵命令,进入到redis的bin目录执行命令:./redis-sentinel ./sentinel.conf

3. 登陆master(10.0.0.149)使用shutdown命令关闭master后,10.0.0.151变成master表示哨兵测试成功。

redis主从配置+sentinel哨兵的更多相关文章

  1. Redis主从配置和哨兵监控配置——服务器端环境搭建

    一:介绍 公司用到的redis框架,主要分为cluster的缓存集群和sentinel中的哨兵主从.这种的选用方式一般需要更具业务场景来做区分,两种框架的配置图为:右图为哨兵主从框架和cliuster ...

  2. spring集成redis——主从配置以及哨兵监控

    Redis主从模式配置: Redis的主从模式配置是非常简单的,首先我们需要有2个可运行的redis环境: master node : 192.168.56.101 8887 slave node: ...

  3. Redis主从配置,哨兵,集群的设计原理

    一 前言 谈到Redis服务器的高可用,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. 哨兵(Sentinel):可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转 ...

  4. Redis主从配置以及哨兵模式

    Redis主从模式,应用写master,读slave,减轻master的压力. 配置主结点: daemonize yes port 6379bind 0.0.0.0 pidfile /opt/redi ...

  5. 通过哨兵机制实现Redis主从配置以及java调用

    Redis版本:3.0.7 操作环境:Linux 一.redis 主从配置的作用是什么 redis主从配置,配置master 只能为写,slave只能为读,在客户端对poolconnect请求时候,, ...

  6. Redis 主从配置密码以及哨兵

    目录: Redis 主从介绍 哨兵机制 Redis 主从配置 环境 安装 启动服务 检查主从状态 测试数据同步 默认是读写分离的 Redis Sentinel 配置 主Redis宕机测试 配置多个哨兵 ...

  7. Redis实战——redis主从备份和哨兵模式实践

    借鉴:http://redis.majunwei.com/topics/sentinel.html     https://blog.csdn.net/u011784767/article/detai ...

  8. csredis-in-asp.net core理论实战-主从配置、哨兵模式

    csredis GitHub https://github.com/2881099/csredis 看了github上的开源项目,上面真的只是单纯的使用文档,可能对于我这种人(菜鸟)就不太友好, 我知 ...

  9. Redis主从配置详细过程

    Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构.下面楼主简单的进行一下配置. 1.上面安装 ...

随机推荐

  1. 使用XWAF框架(5)——XML解析器:CXDP

    XWAF推出了自己的组合式XML文档解析器,英文名叫:“CXDP”,是“Combined XML Document Parser”的缩写.核心代码属XWAF原创,注释.日志和帮助文档采用全中文描述,特 ...

  2. activiti获取到流程图节点信息之任务节点

    //获取bpmnModel对象 BpmnModel model1 = new BpmnJsonConverter().convertToBpmnModel(modelNode); //由于我们这里仅仅 ...

  3. html中的meta元素及viewport属性值

    <meta name="viewport" content="width=device-width , initial-scale=1.0, maximum-sca ...

  4. oracle查询用户的权限

    DBA_* 描述的是数据库中的所有对象 ALL_* 描述的是当前用户有访问权限的所有对象 USER_* 描述的是当前用户所拥有的所有对象 查看所有用户:  select * from dba_user ...

  5. C# lambda 和 Linq

    本章节给大家带来的是Lambda 和 Linq 的关系 Lambda : 是实例化委托的一个参数,也就是一个方法 Linq:是基于委托(lambda)的封装,代码重用,逻辑解耦,是一个帮助类库,lin ...

  6. ORM一对多查询

    现有两张表,一张书籍表(Book),一张作者表(Author) 现在想查询出书本信息和书本的作者 book=Book.objects.get(name="python") book ...

  7. php的mysqli_connect函数显示 No such file or directory错误以及localhost换成127.0.0.1执行成功

    Centos7环境-php7-MariaDB5.5.60 (新安装的php7,执行php -m 显示有mysqli模块,php.ini没有改其它) 测试代码为: <?php //~ echo d ...

  8. windows 使用npm安装webpack 4.0以及配置问题的解决办法

    输入cmd点击打开 输入node -v 出现nodejs版本号 输入npm -v 出现npm版本号则安装npm安装成功, 2.安装webpack 桌面新建一个webpack-test文件夹,点击进入文 ...

  9. jQuey实现轮播图效果

    再平常的浏览器页面,轮播图都是必不可缺少的一个板块,在这总结了一下轮播图基本的一些样式 首先介绍一下,本文实现的轮播图的基本效果: 1. 3s自动切换图片,图片切换时提示点跟随切换 2. 鼠标划到图片 ...

  10. webpack管理输出

    管理html的bundle依赖 html-webpack-plugin可以自动给html添加bundle文件 npm install --save-dev html-webpack-plugin co ...