CentOS7单节点部署redis主从复制和sentinel
准备一台机器,系统版本为CentOS7。
部署redis
1、下载软件包
# wget http://download.redis.io/releases/redis-3.2.8.tar.gz
2、解压
# tar xvf redis-3.2.8.tar.gz -C /usr/local/
# cd /usr/local/
# ln -sv redis-3.2.8/ redis
3、编译
# yum groupinstall -y "Development Tools"
# cd redis
# make
4、为多实例redis配置启动环境
# mkdir -pv /home/redis-cluster/{9000,9001,9002}
# cp src/{redis-server,redis-sentinel} /home/redis-cluster/9000/
# cp src/{redis-server,redis-sentinel} /home/redis-cluster/9001/
# cp src/{redis-server,redis-sentinel} /home/redis-cluster/9002/
# cp redis.conf sentinel.conf /home/redis-cluster/9000/
# cp redis.conf sentinel.conf /home/redis-cluster/9001/
# cp redis.conf sentinel.conf /home/redis-cluster/9002/
5、修改配置文件
# vim /home/redis-cluster/9000/redis.conf
bind 172.60.0.170
protected-mode no
port 9000
daemonize yes
appendonly yes
# \cp /home/redis-cluster/9000/redis.conf /home/redis-cluster/9001/redis.conf
# \cp /home/redis-cluster/9000/redis.conf /home/redis-cluster/9002/redis.conf
# vim /home/redis-cluster/9001/redis.conf
port 9001
slaveof 172.60.0.170 9000
# vim /home/redis-cluster/9002/redis.conf
port 9002
slaveof 172.60.0.170 9000
6、启动三个redis实例
# cd /home/redis-cluster/9000/
# ./redis-server redis.conf
# cd ../9001/
# ./redis-server redis.conf
# cd ../9002/
# ./redis-server redis.conf
# ps -ef | grep redis
root 23565 1 0 03:29 ? 00:00:03 ./redis-server 172.60.0.170:9000
root 23569 1 0 03:29 ? 00:00:02 ./redis-server 172.60.0.170:9001
root 23575 1 0 03:29 ? 00:00:02 ./redis-server 172.60.0.170:9002
7、验证,查看主从状态
# /usr/local/redis/src/redis-cli -h 172.60.0.170 -p 9000
172.60.0.170:9000> set name keith
OK
172.60.0.170:9000> get name
"keith"
172.60.0.170:9000> info replication
# Replication
role:master
connected_slaves:2
slave0:ip=172.60.0.170,port=9001,state=online,offset=99,lag=1
slave1:ip=172.60.0.170,port=9002,state=online,offset=99,lag=0
master_repl_offset:99
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:98
部署sentinel
1、部署实例一
# cd /home/redis-cluster/9000
# vim sentinel.conf
protected-mode no
port 29000
daemonize yes
dir /home/redis-cluster/9000/logs
sentinel monitor mymaster 172.60.0.170 9000 2
# mkdir logs
# ./redis-sentinel sentinel.conf
# \cp sentinel.conf ../9001/
# \cp sentinel.conf ../9002/
2、部署实例二
# cd ../9001/
port 29001
dir "/home/redis-cluster/9001/logs"
# mkdir logs
# ./redis-sentinel sentinel.conf
3、部署实例三
# cd ../9002/
# vim sentinel.conf
port 29002
dir "/home/redis-cluster/9002/logs"
# mkdir logs
# ./redis-sentinel sentinel.conf
# ps -ef | grep redis
root 23565 1 0 03:29 ? 00:00:03 ./redis-server 172.60.0.170:9000
root 23569 1 0 03:29 ? 00:00:03 ./redis-server 172.60.0.170:9001
root 23575 1 0 03:29 ? 00:00:03 ./redis-server 172.60.0.170:9002
root 23923 1 0 03:43 ? 00:00:04 ./redis-sentinel *:29000 [sentinel]
root 23927 1 0 03:44 ? 00:00:04 ./redis-sentinel *:29001 [sentinel]
root 23965 1 0 03:44 ? 00:00:04 ./redis-sentinel *:29002 [sentinel]
4、验证
# /usr/local/redis/src/redis-cli -h 172.60.0.170 -p 29000
172.60.0.170:29000> sentinel masters
1) 1) "name"
2) "mymaster"
3) "ip"
4) "172.60.0.170"
5) "port"
6) "9000"
7) "runid"
8) "3236841c634359db724f73d4833b003683efa446"
9) "flags"
10) "master"
11) "link-pending-commands"
12) "0"
13) "link-refcount"
14) "1"
15) "last-ping-sent"
16) "0"
17) "last-ok-ping-reply"
18) "65"
19) "last-ping-reply"
20) "65"
21) "down-after-milliseconds"
22) "30000"
23) "info-refresh"
24) "4288"
25) "role-reported"
26) "master"
27) "role-reported-time"
28) "2885298"
29) "config-epoch"
30) "0"
31) "num-slaves"
32) "2"
33) "num-other-sentinels"
34) "2"
35) "quorum"
36) "2"
37) "failover-timeout"
38) "180000"
39) "parallel-syncs"
40) "1"
172.60.0.170:29000> sentinel slaves mymaster
1) 1) "name"
2) "172.60.0.170:9002"
3) "ip"
4) "172.60.0.170"
5) "port"
6) "9002"
7) "runid"
8) "0e741da8193158b565113ec84c6384284d11b0bd"
9) "flags"
10) "slave"
11) "link-pending-commands"
12) "0"
13) "link-refcount"
14) "1"
15) "last-ping-sent"
16) "0"
17) "last-ok-ping-reply"
18) "133"
19) "last-ping-reply"
20) "133"
21) "down-after-milliseconds"
22) "30000"
23) "info-refresh"
24) "4338"
25) "role-reported"
26) "slave"
27) "role-reported-time"
28) "2915465"
29) "master-link-down-time"
30) "0"
31) "master-link-status"
32) "ok"
33) "master-host"
34) "172.60.0.170"
35) "master-port"
36) "9000"
37) "slave-priority"
38) "100"
39) "slave-repl-offset"
40) "632552"
2) 1) "name"
2) "172.60.0.170:9001"
3) "ip"
4) "172.60.0.170"
5) "port"
6) "9001"
7) "runid"
8) "4a500eedd644d89c565773d5e42faf4c2872295e"
9) "flags"
10) "slave"
11) "link-pending-commands"
12) "0"
13) "link-refcount"
14) "1"
15) "last-ping-sent"
16) "0"
17) "last-ok-ping-reply"
18) "133"
19) "last-ping-reply"
20) "133"
21) "down-after-milliseconds"
22) "30000"
23) "info-refresh"
24) "4338"
25) "role-reported"
26) "slave"
27) "role-reported-time"
28) "2915465"
29) "master-link-down-time"
30) "0"
31) "master-link-status"
32) "ok"
33) "master-host"
34) "172.60.0.170"
35) "master-port"
36) "9000"
37) "slave-priority"
38) "100"
39) "slave-repl-offset"
40) "632552"
CentOS7单节点部署redis主从复制和sentinel的更多相关文章
- CentOS7单节点部署redis-cluster
准备一台机器,系统版本为CentOS7.(注意本文描述的是redis-cluster,不是主从复制) 1.下载软件包 # wget http://download.redis.io/releases/ ...
- Ubuntu下用devstack单节点部署Openstack
一.实验环境 本实验是在Vmware Workstation下创建的单台Ubuntu服务器版系统中,利用devstack部署的Openstack Pike版. 宿主机:win10 1803 8G内存 ...
- HyperLedger Fabric 1.4 单机单节点部署(10.2)
单机单节点指在一台电脑上部署一个排序(Orderer)服务.一个组织(Org1),一个节点(Peer,属于Org1),然后运行官方案例中的example02智能合约例子,实现转财交易和查询功能.单机单 ...
- Centos7 单节点安装 FastDFS + FastDHT服务
Centos7 单节点安装 FastDFS + FastDHT服务 1.安装gcc(编译时需要) FastDFS是C语言开发,安装FastDFS需要先将官网下载的源码进行编译,编译依赖gcc环境,如果 ...
- .netcore consul实现服务注册与发现-单节点部署
原文:.netcore consul实现服务注册与发现-单节点部署 一.Consul的基础介绍 Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分 ...
- Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)
0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...
- MongoDB 3.2复制集单节点部署(四)
MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 3.2版本进行复制集实验(但MongoDB配置文件 ...
- MongoDB 2.6复制集单节点部署(三)
MongoDB在单节点中也可以做复制集,但是仅限于测试实验,最大的好处就是部署方便快速,可以随便添加新节点,节省资源.在这里我使用的是MongoDB 2.6版本进行复制集实验(但MongoDB配置文件 ...
- Ubuntu 16.04下使用docker部署Redis主从复制
(以下docker相关的命令,需要在root用户环境下或通过sudo提升权限来进行操作.) 1.拉取Redis镜像到本地 docker pull redis 2. 准备Redis主从配置文件 Redi ...
随机推荐
- easyx图形库做贪吃蛇游戏
编程总是对着一个黑窗口,可以说是非常乏味了,于是喵喵就翻出来了以前用easyx图形库做图形界面的贪吃蛇游戏. 不过大家只是当做提高编程的乐趣来学习吧,想进一步做的话可以学习QT,还有其他的框架. 这是 ...
- css忽略某一层的存在:pointer-events:none
其实早知道这个属性,但是一直没有去研究过.今天正好在twitter看到这个词,就去研究了下,正好解决了目前遇到的一个小难题,所以分享下.嗯,其实这是个比较简单的CSS3属性. 在某个项目中,很多元素需 ...
- Datasets
STL-10 https://cs.stanford.edu/~acoates/stl10/ CIFAR-10 and CIFAR-100 https://www.cs.toronto.edu/~kr ...
- 使用spring整合Quartz实现—定时器
使用spring整合Quartz实现—定时器(Maven项目做演示) 不基于特定的基类的方法 一,开发环境以及依赖的jar包 Spring 4.2.6.RELEASE Maven 3.3.9 Jdk ...
- bootstrape3 模态
version 2 的模态 不能在 version 3 上面用. http://schy-hqh.iteye.com/blog/1995690
- centos7安装oracle亲测可用
http://www.linuxidc.com/Linux/2016-04/130559p2.htm
- NABC for Teamproject
“教育是一个社会发展的支柱, 你和我能看到并理解这个博客, 教育功不可没. 高等教育的形式并不是一成不变的, 高等教育一直在演进.”邹欣老师在博客上如此写道.为了迎合信息化时代的特色,网络上的知识传 ...
- 20135316王剑桥 linux第六周课实验笔记
6.存储器层次结构 6.1存储技术 1.如果你的程序需要的数据是存储在CPU寄存器中的,那么在执行期间,在零个周期内就能访问到它们.如果存储在高速缓冲中,需要1-10个周期.如果存储在主存中,需要50 ...
- iOS开发学习-cocoapods的配置安装
安装coacoapods步骤: 在终端输入如下命令,升级ruby版本: sudo gem update —system 出现这个,标志着安装成功. 完成之后,再输入如下命令: gem sources ...
- MYSQL-不能创建表
Can't create table '.\ticket\user_role.frm' (errno: 121) 语法是对的,但显示上面的错误 原因有三种 1.表名重复 2.以该名字命名的表之前创建过 ...