redis4.0.2版本集群搭建

2023-05-16

redhat7下redis源码编译安装,需要先安装pcre,openssl等依赖。

yum install openssl-devel pcre-devel

然后下载redis-4.0.2.tar.gz,解压,进入redis-4.0.2解压完的目录,以root用户运行make && make install

make install会将src下面可执行程序如redis-server,redis-cli,redis-check-aof,redis-check-rdb,redis-benchmark安装到/usr/local/bin目录下。

redis4.0.2cluster搭建相对于单节点搭建稍微复杂一点,就是要为每个节点单独配置一个配置文件,而且启动的时候必须进入配置文件所在的目录,不能通过redis-server 指定配置文件绝对路径或者相对路径来启动实例,另外在配置文件中需要开启cluster-enabled配置,默认是不开启的。这里假设在一个服务器上开启6个节点构建集群。6个节点对应的端口分别为6379,6380,6381,6382,6383,6384。以其中一个6387/redis.conf配置文件为例:

bind 192.168.42.128
port 6379
daemonize yes
pidfile /var/run/redis_6379.pid
appendonly yes
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000

其中cluster-enabled,cluster-config-file是必须配置的,另外为了区别本机上的其他节点,port,pidfile做配置,其余配置基本和以前版本没有区别。

依次启动每一个节点:

[root@server 6379]# /usr/local/bin/redis-server redis.conf 
5930:C 28 Nov 03:25:09.979 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5930:C 28 Nov 03:25:09.979 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=5930, just started
5930:C 28 Nov 03:25:09.979 # Configuration loaded
[root@server 6379]# cd ../6380/
[root@server 6380]# /usr/local/bin/redis-server redis.conf
5935:C 28 Nov 03:25:25.177 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5935:C 28 Nov 03:25:25.177 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=5935, just started
5935:C 28 Nov 03:25:25.177 # Configuration loaded
[root@server 6380]# cd ../6381/
[root@server 6381]# /usr/local/bin/redis-server redis.conf
5940:C 28 Nov 03:25:35.654 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5940:C 28 Nov 03:25:35.655 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=5940, just started
5940:C 28 Nov 03:25:35.655 # Configuration loaded
[root@server 6381]# cd ../6382/
[root@server 6382]# /usr/local/bin/redis-server redis.conf
5945:C 28 Nov 03:25:44.166 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5945:C 28 Nov 03:25:44.166 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=5945, just started
5945:C 28 Nov 03:25:44.166 # Configuration loaded
[root@server 6382]# cd ../6383/
[root@server 6383]# /usr/local/bin/redis-server redis.conf
5950:C 28 Nov 03:25:52.197 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5950:C 28 Nov 03:25:52.197 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=5950, just started
5950:C 28 Nov 03:25:52.197 # Configuration loaded
[root@server 6383]# cd ../6484/
-bash: cd: ../6484/: No such file or directory
[root@server 6383]# cd ../6384/
[root@server 6384]# /usr/local/bin/redis-server redis.conf
5957:C 28 Nov 03:26:06.756 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
5957:C 28 Nov 03:26:06.756 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=5957, just started
5957:C 28 Nov 03:26:06.756 # Configuration loaded

查看启动的节点


		
  

安装rubygems

[root@server redis-4.0.2]# yum install rubygems
[root@server redis-4.0.2]# gem install redis -v 3.3.3
Fetching: redis-3.3.3.gem (100%)
Successfully installed redis-3.3.3
Parsing documentation for redis-3.3.3
Installing ri documentation for redis-3.3.3
1 gem installed

说明:如果你有多个虚拟机,rubygems只需要在一台机器上安装,这里指定gem install redis -v 3.3.3版本,因为最新的版本存在bug,最终执行redis-trib.rb命令构建集群在哪台机器上都可以。

构建集群

[root@server redis-4.0.2]# src/redis-trib.rb create --replicas 1 192.168.42.128:6379 192.168.42.128:6380 192.168.42.128:6381 192.168.42.128:6382 192.168.42.128:6383 192.168.42.128:6384
>>> Creating cluster
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
192.168.42.128:6379
192.168.42.128:6380
192.168.42.128:6381
Adding replica 192.168.42.128:6382 to 192.168.42.128:6379
Adding replica 192.168.42.128:6383 to 192.168.42.128:6380
Adding replica 192.168.42.128:6384 to 192.168.42.128:6381
M: 8a3124f8fd8f9925b0202c4072fcf9fe34df4a61 192.168.42.128:6379
   slots:0-5460 (5461 slots) master
M: bfda1c760994f1805de78dfd692a19a3807431f5 192.168.42.128:6380
   slots:5461-10922 (5462 slots) master
M: 2a72906ca42ed83065f8ec8a60483ff5e6715bcd 192.168.42.128:6381
   slots:10923-16383 (5461 slots) master
S: dae96e813dc06ae7ad9b771cc4ec7887111ec32a 192.168.42.128:6382
   replicates 8a3124f8fd8f9925b0202c4072fcf9fe34df4a61
S: debbb67f323b41ee4dde48d904003340cde6507b 192.168.42.128:6383
   replicates bfda1c760994f1805de78dfd692a19a3807431f5
S: 10493890436c3a364ccbb640e137810ca4261fe1 192.168.42.128:6384
   replicates 2a72906ca42ed83065f8ec8a60483ff5e6715bcd
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join...
>>> Performing Cluster Check (using node 192.168.42.128:6379)
M: 8a3124f8fd8f9925b0202c4072fcf9fe34df4a61 192.168.42.128:6379
   slots:0-5460 (5461 slots) master
   1 additional replica(s)
S: 10493890436c3a364ccbb640e137810ca4261fe1 192.168.42.128:6384
   slots: (0 slots) slave
   replicates 2a72906ca42ed83065f8ec8a60483ff5e6715bcd
S: dae96e813dc06ae7ad9b771cc4ec7887111ec32a 192.168.42.128:6382
   slots: (0 slots) slave
   replicates 8a3124f8fd8f9925b0202c4072fcf9fe34df4a61
S: debbb67f323b41ee4dde48d904003340cde6507b 192.168.42.128:6383
   slots: (0 slots) slave
   replicates bfda1c760994f1805de78dfd692a19a3807431f5
M: 2a72906ca42ed83065f8ec8a60483ff5e6715bcd 192.168.42.128:6381
   slots:10923-16383 (5461 slots) master
   1 additional replica(s)
M: bfda1c760994f1805de78dfd692a19a3807431f5 192.168.42.128:6380
   slots:5461-10922 (5462 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
[root@server redis-4.0.2]#

检验集群


	
  

三个主节点,三个从节点

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

redis4.0.2版本集群搭建 的相关文章

  • windows上Flask环境搭建

    Flask是python开发框架 用来快速构建web项目 下面介绍如何在windows上搭建flask开发环境并运行一个demo 第一步 创建项目并构建flask环境 mkdir flaskapp cd flaskapp virtualen
  • WebSocket 测试工具

    一 WebSocket 简介 WebSocket是一种在单个TCP连接上进行全双工通信的协议 WebSocket使得客户端和服务器之间的数据交换变得更加简单 xff0c 允许服务端主动向客户端推送数据 在WebSocket API中 xff
  • 利用pipework为docker容器设置固定IP

    今天介绍如何在redhat centos7系列机器上使用pipework为docker启动的容器指定一个固定ip 我们知道默认情况下 xff0c docker会使用bridge网络模式为每一个启动的容器动态分配一个IP xff0c 以172
  • 用docker玩坏ubuntu虚拟机容器

    当我们装上docker之后 xff0c 自然会pull一个或多个镜像玩玩 xff0c 这时候 xff0c docker hub仓库上有很多系列操作系统镜像 xff0c 每个系列又有很多不同功能的虚拟机镜像 xff0c 比如centos分6还
  • tornado入门实例

    tornado是python web开发的又一个轻量级框架 tornado框架需要安装 xff0c 为了方便 xff0c 我直接安装了Anaconda 2 4 1 里面直接就带了tornado 还有很多python库 numpy scipy
  • web.py框架入门

    web py是python web开发的一个轻量级框架 web py可以通过pip命令安装 xff0c pip install web py 编写官网示例代码 xff1a vi index py import web urls 61 34
  • graphviz快速上手

    graphviz最初是AT amp T实验室用来画流程图的工具 xff0c 使用dot语言 其中根据图的类型可以分为有向图 dirgraph 和无向图 graph 我们知道图是由点 node 和边 edge 组成的 xff0c 在有向图中边
  • mysqld: File './mysql-bin.index' not found (Errcode: 13 - Permission denied)

    我们通过yum方式安装mysql 会生成mysql mysql用户组和用户 xff0c 启动mysql默认是使用mysql用户 如果我们开启了慢log日志 xff0c 而且我们使用service mysqld start启动mysql 会报
  • redhat7编译安装php-5.5.38

    1 从官网下载php源码包 php 5 5 38 2 安装依赖包 yum install libxml2 libxml2 devel bzip2 devel libcurl devel y yum install openssl opens
  • spark-1.6.0源码编译安装

    环境准备 spark是scala语言写的 xff0c scala运行需要jdk 如果通过maven编译 xff0c 还需要maven环境 xff0c 因此spark源码编译需要安装jdk scala apache maven这三样环境 这里
  • ZendStudio+php+Apache开发环境搭建

    学习php xff0c 我们就想有一个好的ide xff0c ZendStudio是专门为php开发提供的ide xff0c 写完代码立马能够在工作空间中调试 xff0c 可以通过Run As gt PHP CLI Application
  • 图文详解win7实现局域网共享文件

    工作中 xff0c 我们有时候会拥有两台机器 xff0c 避免机器之间文件传来传去 xff0c 可以使用局域网文件共享 xff0c 在一台机器上开启文件共享 xff0c 另一台机器通过IP访问 xff0c 即可轻松实现文件互访 今天介绍我们
  • 模拟画图题P1185 绘制二叉树

    可能更好的观看体验 题目链接P1185 绘制二叉树 题意概述 根据规则绘制一棵被删去部分节点的满二叉树 节点用 o o o 表示 xff0c 树枝用 表示 每一层树枝长度会变化 xff0c 以满足叶子结点有如下特定 xff1a 相邻叶子节点
  • win7+MySQL5.7.18zip版本安装

    mysql5 7 18zip版本在windows的安装 xff0c 就是解压 xff0c 初始化 xff0c 然后做一些密码修改的设置即可使用 xff0c 如果需要远程连接 xff0c 需要更改用户表的host值为 39 39 xff0c
  • redhat7源码编译hadoop2.6.0

    以前在32位linux机器上编译过hadoop2 6 0 这次在redhat7 64bit上再次编译hadoop2 6 0 xff0c 除必须的jdk maven protobuf需要安装之外 xff0c 还需要安装系统依赖库gcc gcc
  • elasticsearch启动错误

    最近想尝试一下elk搭建实时日志分析系统 xff0c 结果运行elasticsearch时 xff0c 就遇到了一些问题 这些问题基本都是系统参数相关的 现在整理出来 xff0c 以免后面再次遇到 xff0c 也供大家参考 xff0c 少走
  • kafka+flume+hdfs实时日志流系统初探

    本次实验 xff0c 主要为了测试将kafka的消息通过flume接收并存入hdfs xff0c 如果之前搭建过hadoop flume kafka的 xff0c 这里会很快就会完成 xff0c 思路比较清晰 xff0c 主要配置在flum
  • 让Eclipse中spring的xml配置文件出现属性和类提示

    在spring配置文件中可以让配置bean的时候出现提示 xff0c 这里需要做一些设置 设置包括安装springide插件 spring beans version xsd文件引入 xff0c 增加xml编辑提示的字符 xff0c 默认只
  • win7查看端口占用的进程

    之前遇到一个问题 xff0c 系统上mysql启动了 xff0c 无法通过navicat客户端来连接 xff0c 这就很郁闷了 xff0c 最后定位到问题 xff0c 是我机器上还开启了一个开发php的应用程序phpwamp 它自带了一个m
  • cxf+spring实现webservice

    1 构建maven项目 xff0c 工程结构如下 xff1a 这里需要特别指出就是cxf core 3 1 12 jar类路径META INF cxf下有一个cxf xml的配置文件 xff0c 这个在applicationContext

随机推荐

  • Activemq+spring整合

    activemq与spring的整合需要用到线程池 考虑到连接 会话等资源的建立和释放 xff0c 无须人工操作 xff0c 全部交给容器来处理 这里通过一个实例讲解activemq与spring如何整合 项目大致是这样的设计 xff1a
  • springsecurity4.2入门完整实例

    1 构建maven项目 xff0c 引入springsecurity相关依赖 项目结构如下 xff1a pom xml配置文件主要部分 xff1a lt properties gt lt spring version gt 4 2 0 RE
  • Linux上tensorflow安装

    选择安装Anaconda xff0c 然后激活tensorflow 环境 最后使用pip install安装 第一步 xff1a 安装Anaconda xff0c Anaconda集成了很多python库 xff0c 不用手动额外安装 An
  • Window安装Anaconda后,conda不是内部或者外部命令

    今天在安装Theano的时候 xff0c 需要看一下 xff0c anaconda已经安装了哪些包 使用命令如下 在控制台 xff0c cmd回车输入即可 xff1a conda list 但是 xff0c 显示出错 xff0c conda
  • zookeeper集群环境搭建

    zookeeper是一个分布式框架 xff0c 它的用途在今天非常广泛 xff0c 通常与dubbo一起构成分布式系统 xff0c 另外kafka消息系统也自带了zookeeper hadoop集群也少不了zookeeper xff0c z
  • hadoop-2.8.0完全分布式环境搭建

    一 机器及环境准备 1 jdk安装不用多说 xff0c 安装完成配置环境变量即可 export JAVA HOME 61 usr java latest export JRE HOME 61 JAVA HOME jre export CLA
  • Your password does not satisfy the current policy requirements解决办法

    mysql5 7 x安装以后 xff0c 想修改随机生成的密码为简单容易记忆的密码 xff0c 如root 123456等 xff0c 这时候通过修改密码的几种方式都不行 xff0c 出现密码不符合当前安全策略要求 为了解决这种问题 xff
  • redhat7安装oracle11gR2之环境准备

    redhat7安装oracle11gR2环境准备 xff1a 内存 xff1a 2g 磁盘空间 xff1a 15g以上 交换分区 xff1a 3g 我们将oracle安装到 opt app oracle目录下 xff0c 后面的环境变量则以
  • redhat7安装oracle11gR2之动手安装

    oracle11gR2 64位数据库下载地址 xff1a http www oracle com technetwork database enterprise edition downloads 112010 linx8664soft 1
  • redhat7静默安装oracle11gR2

    所谓的静默安装是指不用安装redhat7桌面系统 xff0c 并进入桌面利用界面安装oracle xff0c 这里采用最小化安装redhat7 xff0c 直接在命令行下通过命令执行安装 环境配置和用户设置基本和界面安装一致 就是进入 op
  • docker+nextcloud搭建个人云存储系统

    一 docker安装和启动 yum install epel release yum install docker service docker start 二 docker compose安装 curl L http github com
  • kafka集群搭建以及运行kafka监控平台kmonitor

    kafka集群搭建 kafka依赖zookeeper运行 xff0c 在搭建kafka系统之前需要搭建zookeeper集群 xff0c 这里先略过zookeeper集群搭建的过程 另外 xff0c kafka需要运行在jdk环境中 xff
  • CDH5安装失败如何重新安装

    cdh安装失败的原因可能有以下原因 xff1a 1 机器内存不足 xff0c server节点我用了6G xff0c 两个agent节点均是4G才安装成功 2 需要的mysql驱动文件没有拷贝到指定位置 具体重新安装步骤如下 xff1a 一
  • nginx日志切割和日志定期清理

    nginx日志默认不做人为处理 xff0c 日志文件会存放在access log error log两个文件中 xff0c 随着时间的推移 xff0c 日志量会越来越大 xff0c 不方便编辑查看 xff0c 为了让日志按天存放 xff0c
  • 结构体(参数、嵌套)、结构体指针、结构体中const的使用场景

    结构体 xff1a 属于用户自定义的数据类型 xff0c 允许用户存储不同的数据类型 xff1b 结构体定义和使用 通过结构体创建变量的方式有三种 xff1a struct 结构体名 变量名struct 结构体名 变量名 61 成员1 xf
  • CentOS7.3安装mesos1.4.0

    按照官网一步一步安装mesos 这里选择的版本是1 4 0 download mesos wget http archive apache org dist mesos 1 4 0 mesos 1 4 0 tar gz tar xzf me
  • redhat7上rpm方式安装mongodb

    1 下载相关文件 xff0c 下载地址 xff1a http mirrors aliyun com mongodb yum redhat 7 mongodb org stable x86 64 RPMS mongodb org 3 2 9
  • mongodb集群搭建之Replica-Set方式

    mongodb集群搭建有三种方式 1 Master Slave模式 2 Replica Set方式 3 Sharding方式 其中 xff0c 第一种方式基本没什么意义 xff0c 官方也不推荐这种方式搭建 另外两种分别就是副本集和分片的方
  • solr5.5.5入门实例

    solr是apache开源的搜索引擎 xff0c 底层基于lucene 将lucene难以使用的api 通过封装 xff0c 为用户提供方便的接口 solr国内下载地址 xff1a https mirrors cnnic cn apache
  • redis4.0.2版本集群搭建

    redhat7下redis源码编译安装 xff0c 需要先安装pcre openssl等依赖 yum install openssl devel pcre devel 然后下载redis 4 0 2 tar gz xff0c 解压 xff0