redis集群搭建

Redis之RedisCluster集群

佐手、 提交于 2020-02-01 08:55:23
Redis之Redis Cluster的使用 一、Redis Cluster 简介 Redis Sentinel 水平扩容一直都是一个痛点,因为水平扩容牵涉到数据的迁移。迁移过程一方面要保证自己的业务是可用的,一方面要保证尽量不丢失数据所以数据能不迁移就尽量不迁移。针对这个问题,Redis Cluster就应运而生了。 Redis Cluster 是 Redis 的分布式解决方案,在3.0版本正式推出,有效地解决了 Redis 分布式方面的需求。当遇到单机内存、并发、流量等瓶颈时,可以采用 Cluster 架构方案达到负载均衡的目的。 二、Redis Cluster 和哨兵集群的比较 哨兵集群:本质上还是一个主从模式下的集群方案,增加一个选举机制,当主节点宕机之后会从所有节点中选出新的主节点,选举机制的实现依赖于 sentinel 进程。这种模式基本已经可以实现高可用,读写分离 ,但是在性能,存储量上还是不够好。 cluster 集群:是 Redis 的一种分布式解决方案,在3.0版本中正式提出,这个方案把整个数据集按照分区规则映射到多个节点的问题,即把数据集划分到多个节点上,每个节点负责整个数据的一个子集。 Redis Cluster 槽的范围是0 ~ 16383。槽是集群内数据管理和迁移的基本单位。主要目的是为了方便数据的拆分和集群的扩展,每个节点负责一定数量的槽。通过

Redis集群

家住魔仙堡 提交于 2020-02-01 05:14:55
一.集群与分布式概述 1.1什么是集群 集群就是很多服务器组成的一个网络。指的是将多台服务器集中在一起,实现同一业务 1.2为什么要集群 一台服务器不能满足开发需要的时候,需要多台服务器来支持。这个时候就需要做集群,但是集群往往伴随着分布式 1.3什么是分布式 分布式是指将不同的业务分布在不同的地方. web应用和数据库服务分开,将不同业务分布到不同集群 1.4集群优化 两大关键特性 1.可扩展性--集群的性能不限于单一的服务实体,新的服务实体可以动态地加入到集群,从而增强集群的性能。动态添加服务器 2.高可用性--集群通过服务实体冗余使客户端免于轻易遇到out of service的警告。在集群中,同样的服务可以由多个服务实体提供。如果一个服务实体失败了,另一个服务实体会接管失败的服务实体。集群提供的从一个出错的服务实体恢复到另一个服务实体的功能增强了应用的可用性 1.5分布式和集群相同点和不同点 相同点: 都是处理高并发,而且都需要多台服务器协同.一般在一个系统中同时存在分布式和集群. 不同点: 分布式中不同服务器处理是不同业务.而集群处理时同一业务. 二.集群得几种方案 2.1主从复制 优点: 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离 2.2哨兵模式 当主服务器中断服务后,可以将一个从服务器升级为主服务器,以便继续提供服务,但是这个过程需要人工手动来操作。

Redis主从及集群搭建

↘锁芯ラ 提交于 2020-01-31 17:39:25
1. 主从配置 Redis主从主要用来实现数据的复制,避免数据丢失以及实现读写分离 Redis主从概念:主服务(master)、从服务(slave) - ⼀个master可以配置多个slave,⼀个slave可以拥有多个slave - 通过主从配置可以实现读写分离 - master和slave都是一个redis实例(redis服务) 1. 主服务器配置 - 修改Redis配置文件绑定IP为本地IP:192.168.31.199 端口:6379 - 重启Redis服务:brew services start restart / sudo service redis restart 2. 从服务器配置 - 复制主服务器配置文件为redis_slave.conf(从服务器配置文件) - 修改配置文件内容: 绑定IP:本地IP 192.168.31.199(本地主从) 端口:6378 连接的主服务器信息:replicaof 192.168.31.199 6379(连接的主服务器IP和端口) 低版本:slaveof 192.168.31.199 6379(连接的主服务器IP和端口) - 启动从服务器: sudo /usr/local/opt/redis/bin/redis-server /usr/local/etc/redis_slave.conf 3. 查看主从关系:redis-cli

redis主从、集群

北战南征 提交于 2020-01-30 17:20:31
一.redis主从 在同一台机器上部署主从: 主上的配置 配置文件: /etc/redis.conf 关于和主从有关的具体配置 bind 127.0.0.1 port 6379 pidfile /var/run/redis_6379.pid logfile "/var/log/redis_6379.log" dir /data/redis 从上的配置 配置文件: cp /etc/redis.conf /etc/redis2.conf 具体需要更改的配置: port 6380 pidfile /var/run/redis_6380.pid logfile "/var/log/redis_6380.log" dir /data/redis2 还需要增加一行(指定主): replicaof 127.0.0.1 6379 #我的redis是5以上 或者 Slaveof 127.0.0.1 6379 #5以下的 然后,创建从的数据目录: mkdir /data/redis2 启动主从: redis-server /etc/redis.conf redis-server /etc/redis2.conf 查看: netstat -lnpt | grep redis tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 6669/redis-server 1 tcp 0

Redis-Cluster+ElatisSearch

馋奶兔 提交于 2020-01-27 03:24:10
1.redis集群 1.1、什么叫集群 集群就是:很多服务器组成的一个网络。指的是将多台服务器集中在一起,实现同一业务。 1.2、什么是分布式 分布式就是:把业务拆分开,分布到不同服务器(理解),往往集群都是伴随的分布式。 为什么需要集群: (1)解决单点故障 ​(2)处理高并发 ​(3)处理大数据(高并发) --解决存储问题 1.3、分布式和集群的区别 相同点: 都是处理高并发,而且都需要多台服务器协同.一般在一个系统中同时存在分布式和集群. 不同点: 分布式中不同服务器处理是不同业务.而集群处理时同一业务. 2.Redis集群方案选择 2.1、主从复制 优点: 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离 缺点: Redis不具备自动容错和恢复功能,如果想具备自动重起 ,需要安装插件 2.2、哨兵模式 优点: 主从复制优点都在, 通过哨兵自动恢复 缺点: 比较难扩容,服务占用空间比较多 2.3、 Redis-Cluster集群 Redis-Cluster采用无中心结构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接。其redis-cluster架构图如下: 3.搭建redis-cluster (1) 拷贝6个redis 分别命名为 6379-6384 (2) 修改配置 port 6379 cluster-enabled yes cluster

redis集群搭建笔记

独自空忆成欢 提交于 2020-01-26 14:44:12
确保你的redis单机版已经搭建成功, 可以运行 现在尝试搭建集群 redis集群中至少应该有三个节点. 要保证集群的高可用, 需要每个节点有一个备份机. redis集群至少需要6台服务器. 条件不够,我们搭建伪分布式. 可以使用一台虚拟机运行6个redis实例。需要修改redis的端口号7001-7006 建议保存快照, 如果操作失误, 可以恢复重新操作!! ● 在 /usr/local 下创建redis-cluster文件夹 ● 把usr/local目录下redis/bin中的文件复制一份到redis-cluster中并命名为redis01 (这个redis是单机版的redis的目录) ● 修改redis01中的redis.conf, 找到port **** 修改为 port 7001,找到cluster-enabled no 改为yes, 我的是修改过后的 ● 修改完成后, 把redis01在同一目录下拷贝五份, 分别修改redis02-redis06里面的redis.conf, 把port改为7002-7006 ● 然后启动redis01-redis06, 一个一个启动太麻烦, 可以用批处理 在redis-cluster文件夹下创建一个.sh的文件用来批量启动redis ● redis_start-all.sh内容如下,注意cd与…之间的空格 ●

redis5.0集群搭建

怎甘沉沦 提交于 2020-01-24 02:56:33
至少需要3个master节点,这里搭建三个master节点,并且给每个master节点在搭建一个slave节点,共6个redis节点,这里采用一台机器上创建6个redis实例,并将6个redis实例配置成集群模式,所以这里是伪集群模式,当然真正的分布式集群的配置方法几乎一样,搭建伪集群的步骤如下 基于 centos7搭建单机redis5.0 # 第一步,在/usr/local下创建文件夹redis-cluster ,然后在其下面分别创建6个文件夹如下 mkdir -p /usr/local/redis-cluster cd /usr/local/redis-cluster/ mkdir 8001 8002 8003 8004 8005 8006 # 第二步:把之前redis.conf配置文件copy到8001下,修改如下内容 1. daemonize yes 2. port 8001 (分别对应每个机器的端口号进行设置) 3. bind 192.168.222.129 (必须要绑定当前机器的ip,这里方便redis集群定位机器,不绑定可能会出现循环查找集群节点机器的情况) 4. dir /usr/local/redis-cluster/8001/ (指定数据文件存放位置,必须指定不同的目录位置,不然会丢失数据) 5. cluster-enabled yes (启动集群模式) 6.

Docker搭建Redis4.0集群(不使用Ruby脚本)

萝らか妹 提交于 2020-01-21 18:53:50
前言 生产服务器没法下载ruby,因此我只能这么干啊。 拉取镜像 docker pull docker:4.0 创建网卡 docker network create redis-net 创建redis集群环境 我的文件是放在 /opt/docker/redis-cluster/ 目录下,这里酌情修改为自己的目录。 sudo mkdir /opt/docker/redis-cluster/ 创建模版文件: vim redis-cluster.tmpl port ${PORT} protected-mode no cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 cluster-announce-ip 127.0.0.1 #注意这儿一定是你的外网IP cluster-announce-port ${PORT} cluster-announce-bus-port 1${PORT} appendonly yes 生成配置文件和数据存放目录: for port in `seq 7001 7006`; do \ mkdir -p ./${port}/conf \ && PORT=${port} envsubst < ./redis-cluster.tmpl > ./${port}/conf

redis 安装 集群 主从 哨兵 docker

折月煮酒 提交于 2020-01-20 19:49:31
安装redis 官方文档 docker run -d --net host -v /opt/myconfig/redis/redis.conf:/usr/local/etc/redis/redis.conf --name redis redis redis-server /usr/local/etc/redis/redis.conf 用集群 网络用 --net host 主机模式 用主机模式就不用指定端口映射 。 否则会报错 WARNING: Published ports are discarded when using host network mode redis.conf 官方文档 高可用 主从 哨兵 配置主从 最少配置 replicaof masterip masterport 单独配置主从时 不支持 集群 改为 cluster-enabled no 在集群中 配置主从 需要在创建集群的时通过 --cluster-replicas 指定从机数量 主从管理 查看主从信息 redis-cli -h 127.0.0.1 -p 6379 info replication 配置从机 slaveof MASTER_IP MASTER_PORT 搭建哨兵 在从机中选择主机 搭建哨兵系统 redis安装包里有 该系统 不用重新去下,没有的要下一个 最少配置文件 #指示 Sentinel

Redis集群搭建

邮差的信 提交于 2020-01-20 06:50:25
Redis集群搭建教程 一、概述 Redis3.0之后的版本支持集群。 1.1 Redis cluster现状 节点自动发现 slave->master选举,集群容错 Hot resharding:在线分片 集群管理,cluster xxx 给予配置(nodes-port.conf)的集群管理 ASK转向/MOVED转向机制 二、redis cluster安装 1. 下载并解压 cd /root/software wget http: //download .redis.io /releases/redis-3 .2.4. tar .gz tar -zxvf redis-3.2.4. tar .gz  2. 编译安装 cd redis-3.2.4 make && make install 3. 将 redis-trib.rb 复制到 /usr/local/bin 目录下 cd src cp redis-trib.rb /usr/local/bin/   4. 创建 Redis 节点 首先在 192.168.31.245 机器上 /root/software/redis-3.2.4 目录下创建 redis_cluster 目录; mkdir redis_cluster   在 redis_cluster 目录下,创建名为7000、7001、7002的目录,并将 redis.conf