redis集群搭建

从ELK到EFK

余生长醉 提交于 2020-02-29 01:46:18
https://my.oschina.net/itshare/blog/775466 http://blog.51cto.com/467754239/1700828 日志系统 日志就是程序产生的,遵循一定格式(通常包含时间戳)的文本数据 通常日志由服务器生成,输出到不同的文件中,一般会有系统日志、 应用日志、安全日志。这些日志分散地存储在不同的机器上。 通常当系统发生故障时,工程师需要登录到各个服务器上,使用 grep / sed / awk 等 Linux 脚本工具去日志里查找故障原因。在没有日志系统的情况下,首先需要定位处理请求的服务器,如果这台服务器部署了多个实例,则需要去每个应用实例的日志目录下去找日志文件。每个应用实例还会设置日志滚动策略(如:每天生成一个文件),还有日志压缩归档策略等。 这样一系列流程下来,对于我们排查故障以及及时找到故障原因,造成了比较大的麻烦。因此,如果我们能把这些日志集中管理,并提供集中检索功能,不仅可以提高诊断的效率,同时对系统情况有个全面的理解,避免事后救火的被动。 日志数据在以下几方面具有非常重要的作用: 数据查找:通过检索日志信息,定位相应的 bug ,找出解决方案 服务诊断:通过对日志信息进行统计、分析,了解服务器的负荷和服务运行状态 数据分析:可以做进一步的数据分析,比如根据请求中的课程 id ,找出 TOP10 用户感兴趣课程。

Redis集群的配置与故障恢复

北战南征 提交于 2020-02-27 20:24:41
集群 Redis在主从复制模式下,每个数据库依然存有集群中的所有数据,从而导致集群的总数据存储量受限于内存最小的服务器。 另外,对Redis进行水平扩展比较麻烦,通常使用客户端分片来解决这个问题,由客户端决定每个键存储到哪个节点。但扩容时想增加新的节点就需要对数据进行手工迁移,为了保证迁移过程中,数据的一致性,还需要将Redis暂时下线。 Redis在3.0版本推出了集群模式,在该模式中由Redis决定key存储在哪个节点,以及查询时从哪个节点查询。 准备8个虚拟机,安装好redis: 192.168.2.104 192.168.2.105 192.168.2.106 192.168.2.107 192.168.2.108 192.168.2.109 192.168.2.110 192.168.2.111 先将前6个节点组成集群,然后在将后两个节点以扩容的形式加入到集群。 配置 要使用集群,首先要开启集群的配置: cluster-enabled yes 如果由防火墙,打开16937端口(默认) 启动Redis后,在redis-cli终端下执行INFO cluster查询集群是否正常: [root@localhost redis-5.0.7]# redis-cli 127.0.0.1:6379> INFO cluster # Cluster cluster_enabled:1

Redis-cluster

一个人想着一个人 提交于 2020-02-27 05:52:41
Redis集群 集群就是 很多服务器组成的一个网络 指的是将多台服务器集中在一起,实现同一业务 集群的特性 可扩展性 动态添加服务器 高可用性 集群提供的从一个出错的服务实体恢复到另一个服务实体的功能增强了应用的可用性当访问的服务器挂了时,集群要有能力找可以正常使用额服务器继续提供服务器。 能力 负载均衡 负载均衡能把任务比较均衡地分布到集群环境下的计算和网络资源 错误恢复 当访问的服务器挂了时,集群要有能力找可以正常使用额服务器继续提供服务器 心跳检查 判断是否故障,每过几秒访问,时间段频率 分布式是指将不同的业务分布在不同的地方 多模块,拆分业务 分布式 分布式集群 大型企业架构,有钱就搞 集群环境搭建 要求 Redis 3.2 · 需要6台redis服务器,搭建伪集群 · 需要运行在不同的端口6379-6384 · 安装Ruby语言运行环境 配置 打开每个Redis目录下的文件 redis.windows.conf,修改里面的端口号分别对应相对应的文件夹名:6379、6380、6381、6382、6383、6384 cluster-enabled yes cluster-config-file nodes-6379.conf cluster-node-timeout 15000 appendonly yes 贴心的我已经全部给大家配置好了,里面还有Ruby的安装包 下载地址

Redis集群

时光怂恿深爱的人放手 提交于 2020-02-26 00:06:55
文章目录 一、Redis Cluster(Redis集群)简介: 二、集群搭建需要的环境: 三、部署集群: 第一步:先都安装好 redis 服务 第二步:修改配置文件,所有节点配置一样 第三步:这步只需要在 master 主服务器中操作 第四步:创建群集 第五步:验证: 一、Redis Cluster(Redis集群)简介: (1)edis是一个开源的key value存储系统,受到了广大互联网公司的青睐。redis3.0版本之前只支持单例模式,在3.0版本及以后才支持集群,这里我搭建用的是最新的版本 redis-5.0.7; (2)redis集群采用P2P模式,是完全去中心化的,不存在中心节点或者代理节点; (3)redis集群是没有统一的入口的,客户端(client)连接集群的时候连接集群中的任意节点(node)即可,集群内部的节点是相互通信的(PING-PONG机制),每个节点都是一个redis实例。 二、集群搭建需要的环境: (1)Redis集群至少需要3个节点,因为投票容错机制要求超过半数节点认为某个节点挂了该节点才是挂了,所以2个节点无法构成集群。 (2)要保证集群的高可用,需要每个节点都有从节点,也就是备份节点,所以Redis集群至少需要6台服务器。 (3)安装ruby 三、部署集群: 为了节省资源,这边准备了两台虚拟机,各自安装三个网卡,这样总共就是六个网卡

Scrapy配置Redis集群

点点圈 提交于 2020-02-25 20:04:56
安装第三方库 pip install scrapy-redis-sentinel 修改 setting.py文件 ITEM_PIPELINES = { 'scrapy_redis_sentinel.pipelines.RedisPipeline': 543, } # Bloomfilter 配置 # 使用的哈希函数数,默认为 6 BLOOMFILTER_HASH_NUMBER = 6 # Bloomfilter 使用的 Redis 内存位,30 表示 2 ^ 30 = 128MB,默认为 30 (2 ^ 22 = 1MB 可去重 130W URL) BLOOMFILTER_BIT = 30 # 是否开启去重调试模式 默认为 False 关闭 DUPEFILTER_DEBUG = False # Redis 集群地址 REDIS_MASTER_NODES = [ {"host": "192.168.56.30", "port": "9000"}, {"host": "192.168.56.31", "port": "9000"}, {"host": "192.168.56.32", "port": "9000"}, ] # REDIS_CLUSTER_PARAMS 集群模式配置参数 REDIS_CLUSTER_PARAMS= { # "password": "password" }

Redis集群-官方推荐方案RedisCluster

本小妞迷上赌 提交于 2020-02-24 13:56:02
Redis集群-官方推荐方案RedisCluster 前情提要 理解RedisCluster的原理和容错机制 能够配置RedisCluster并使用 redis使用中遇到的瓶颈 我们日常工作中使用Redis,经常会遇到一些问题: 1、高可用问题,如何保证redis的持续高可用性。   2、容量问题,单实例redis内存无法无限扩充,达到32G后就进入了64位世界,性能下降。   3、并发性能问题,redis号称单实例10万并发,但也是有尽头的。 RedisCluster的原理和容错机制 redis的集群策略 redis3.0以后推出的redis cluster 集群方案,redis cluster集群保证了高可用、高性能、高可扩展性。 主要有下面三种集群策略,分别为: 推特:twemproxy : 代理式 豌豆荚:codis :代理式 官方:redis cluster : 非代理 我们主要来学习官方推出的 redis cluster,这也是生产项目中用的最多的。 redis-cluster的优势 1、官方推荐,毋庸置疑。   2、去中心化,集群最大可增加1000个节点,性能随节点增加而线性扩展。   3、管理方便,后续可自行增加或摘除节点,移动分槽等等。   4、简单,易上手。 redis-cluster名词介绍 1、master  主节点、   2、slave   从节点   3

redis集群的搭建详细教程

我们两清 提交于 2020-02-23 11:10:25
1 Redis-cluster架构图 redis-cluster投票: 容错 ( 至少要三个才可以,才能超过半数 ) 架构细节 : (1) 所有的 redis 节点彼此互联 (PING-PONG 机制 ), 内部使用二进制协议优化传输速度和带宽 . (2) 节点的 fail 是通过集群中超过半数的节点检测失效时才生效 . (3) 客户端与 redis 节点直连 , 不需要 中间 proxy 层 . 客户端不需要连接集群所有节点 , 连接集群中任何一个可用节点即可 。 (4) redis-cluster 把所有的物理节点映射到 [0-16383]slot 上 ,cluster 负责维护 node<->slot<->value Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value 时, redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余数, 这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽, redis 会根据节点数量大致 均等的将哈希槽映射到不同的节点 搭建集群,极限情况也就最多 16384 个节点 。 2 Redis集群的搭建 Redis集群中至少应该有 3 个节点。要保证集群得 高可用 ,需要每个节点有 1 个备份机。 Redis集群需要6台服务器。 搭建伪分布式

Redis单机和集群配置(版本在5.0后)

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-23 10:59:16
摘抄并用于自己后查 单机版的配置:    1. 下载redis压缩包,然后解压缩文件(tar xzf);   2. 进入解压后的redis文件目录,编译redis源文件(make,没有c环境要gcc);   3. 把编译好的redis源文件安装到/usr/local/redis目录下,如果/local目录下没有redis目录,会自动新建redis目录;   4. 进入/usr/local/redis/bin 目录,直接 ./redis-server启动redis(此时为前端启动redis);   5. 将redis启动方式改为后端启动,具体做法:把解压缩的redis文件下的 redis.conf文件复制到/usr/local/redis/bin目录下,然后修改redis.conf文件 ->daemonize:no 改为yes   6. 在/bin目录下通过./redis-server redis.conf启动redis (此为后台启动) 集群配置:     一、Redis Cluster(Redis集群)简介     1)redis3.0版本之前只支持单例模式,在3.0版本后才支持集群。     2)redis集群采用P2P模式,是完全去中心化的,不存在中心节点或者代理节点。     3)redis集群是没有统一的入口,客户端连接集群时,连接的是集群中的任意节点即可

redis集群搭建

泄露秘密 提交于 2020-02-23 10:57:00
redis集群原理: redis-cluster(集群)架构图 redis-cluster投票: 容错 架构细节 : (1) 所有的 redis 节点彼此互联 (PING-PONG 机制 ), 内部使用二进制协议优化传输速度和带宽 . (2) 节点的 fail 是通过集群中超过半数的节点检测失效时才生效 . (3) 客户端与 redis 节点直连 , 不需要中间 proxy 层 . 客户端不需要连接集群所有节点 , 连接集群中任何一个可用节点即可 (4)redis-cluster 把所有的物理节点映射到 [0-16383]slot 上 ,cluster 负责维护 node<->slot<->value Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value 时, redis 先对 key 使用 crc16 算法算出一个结果,然后把结 果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽, redis 会根据节点数量大致均等的将哈希槽映射到不同的节点 Redis 集群的搭建: redis 集群中至少应该有三个节点。要保证集群的高可用,需要每个节点有一个备份机。 redis 集群至少需要 6 台服务器。 搭建伪分布式。可以使用一台虚拟机运行 6 个 redis 实例。需要修改 redis

redis集群搭建-3.0/4.0版本

喜夏-厌秋 提交于 2020-02-23 10:55:22
1. Redis的安装 1.1. Redis的安装 Redis是c语言开发的。 安装redis需要c语言的编译环境。如果没有gcc需要在线安装。yum install gcc-c++ 安装步骤: 第一步:redis的源码包上传到linux系统。 第二步:解压缩redis。 第三步:编译。进入redis源码目录。make 第四步:安装。make install PREFIX=/usr/local/redis PREFIX参数指定redis的安装目录。一般软件安装到/usr目录下 1.2. 连接redis 1.2.1. redis的启动: 前端启动:在redis的安装目录下直接启动redis-server [root@localhost bin]# ./redis-server 后台启动: 把/root/redis-3.0.0/redis.conf复制到/usr/local/redis/bin目录下 [root@localhost redis-3.0.0]# cp redis.conf /usr/local/redis/bin/ 修改配置文件: [root@localhost bin]# ./redis-server redis.conf 查看redis进程: [root@localhost bin]# ps aux|grep redis root 5190 0.1 0.3 33936