Redis企业集群工具RLEC
作者:chszs
一、RLEC介绍
RLEC即Redis Labs Enterprise Cluster,是一个Redis企业集群工具。使用RLEC可以部署一个企业级的Redis集群,它作为一个管理和运行多种Redis数据库的容器,保证了Redis的高可用性和可伸缩性,而且性能和稳定性都极好。
官方主页: https://redislabs.com/redis-enterprise
RLEC支持Ubuntu 14.04、RedHat 6.5和7.0、Amazon Linux三种系统。
RLEC的部署类别
1)RLEC可以部署为单机(即一个主Redis服务器)
2)高可用部署(一主一从)
3)集群部署(多主分片)
4)高可用集群(多主多从分片)
RLEC通过连续性的健康集群中的每一个分片,从而避免了“Noisy Neighbor现象”(吵闹的邻居现象,在虚拟化环境或Docker化环境中比较常见)。当分片表现异常时,RLEC会自动迁移到集群内的另一个相互隔离、负载较小的节点。
RLEC的特性:
1)无缝扩展
在RLEC中,数据集可以跨越到集群中所有节点,通过集群和分片,客服了单节点单核心的性能限制和内存瓶颈。且对于集群的伸缩、节点的升级或降级,都不会产生任何停机时间。
2)真正的高可用性
既可以在同一个数据中心内复制数据库,还可以跨越数据中心和地域,真正实现高可用性、灾难恢复和保持性能优势。
3)内置的数据持久化、备份和复制
RLEC允许每秒使用Redis的AOF(Append Only File,只添加到文件),或在每1小时、6小时或12小时使用数据集快照来实现持久化存储。另外,还可以定期备份数据集到FTP服务器或亚马逊的S3存储。当然,还可以选择微软Azure Geo-Redundant Storage或SoftLayer的Object Storage或Google Cloud Storage等云存储方案。
4)可预测的高性能
RLEC的数据集有多个内核处理,即使是在密集型的磁盘访问场景,也能保证最佳的性能。而且RLEC采用了实时迁移机制来分离同一个节点的其它数据库的高负载。
5)多个专用数据库
可以在单个RLEC部署上允许多个数据库,每一个数据库都运行在专门的进程中,以非阻塞的方式运行。
6)无限的数据库连接
数据库连接可以尽可能的多。
7)全功能的管理界面
RLEC提供了安装、配置和监控集群和每个数据库一个功能齐全,易于使用的管理用户界面。
8)集群自动化
RLEC的全面管理解决方案,负责所有数据库的缩放,数据持久性调整,碎片迁移和自动故障转移的需要。
二、部署
1、部署需求
1)集群部署需要至少3个节点
2)每个节点至少是4核CPU,建议8核以上
如果集群部分节点的CPU利用率大于80%,则集群进行重新平衡
如果集群所有节点的CPU利用率大于80%,则集群需要进行横向扩展
如果集群所有节点的CPU利用率小于20%,则集群需要进行横向收缩,直到最小集群要求(3节点)
3)节点的内存至少是15GB,建议30GB以上
如果集群部分节点的内存利用率大于80%,则集群进行重新平衡
如果集群所有节点的内存利用率大于80%,则集群需要进行横向扩展
如果集群所有节点的内存利用率小于20%,则集群需要进行横向收缩,直到最小集群要求(3节点)
4)RLEC集群的每个节点都能使用两种存储系统:
短暂存储:用于存方复制文件(RDB格式)和集群日志文件。推荐4倍于节点内存的大小
持久存储:用于存储快照(RDB格式)和AOF文件。
持久性存储设备可以有:AWS Elastic Block Storage (EBS),Azure Data Disk
2、部署
1)下载
要下载RLEC,可以访问:https://redislabs.com/redis-enterprise-downloads
2)解压
tar vxf <tarfile name>
3)安装
./install.sh#sthash.6iAzg0Fk.dpuf
4)访问集群配置页面
https://主机名:8443/