Linux下搭建高可用redis集群方案-chaosuper85-ChinaUnix博客
在单台机器上搭建redis的高可用集群步骤
一, 安装以下
a) redis
b) redis-sentinel
c) nutcracker
d) redis-twemproxy-agent,
e) nodejs
二, 配置和启动redis服务
1, 启动redis-server主一,监听端口6379,
修改./conf/redis.conf,
port 6379
然后启动,执行:
./bin/redis-server ./conf/redis.conf &
2, 启动redis-server从一,监听端口6380,
修改./conf/redis.conf,
port 6380,
slaveof 127.0.0.1 6379
然后启动,执行:./bin/redis-server ./conf/redis.conf &
3, 同样的完成另一备用主从的启动
备份redis
主二,127.0.0.1 6389
从二, 127.0.0.1 6390
4, 使用redis-cli命令,确认四个redis-server的主从关系和运行状态。
三, 配置和启动redis-sentinel服务
1, 修改sentinel.conf,增加一行内容:
sentinel monitor CPymtCache13 127.0.0.1 6379 1
sentinel monitor CPymtCache12 127.0.0.1 6389 1
2, 启动redis-sentinel服务
./bin/redis-sentinel ./conf/sentinel.conf &
四, 配置nutcracker(twemproxy)
1, 修改nutcracker.yml文件
write:
listen: "0.0.0.0:2121"
hash: fnv1a_64
distribution: ketama
auto_eject_hosts: true
redis: true
server_retry_timeout: 2000
server_failure_limit: 1
servers:
- "127.0.0.1:6379:1 CPymtCache13"
- "127.0.0.1:6389:1 CPymtCache12"
五, 配置和启动redis-twemproxy-agent
1, 修改redis-twemproxy-agent/lib/cli.js文件
修改cli.parse里的文件路径为部署的路径。
2, 修改文件
redis-twemproxy-agent/init.d/ twemproxy_sentinel_start.sh
修改该脚本redis-twemproxy-agent,nodejs,forever,的路径为部署的路径。
3, 执行命令启动redis-twemproxy-agent
./init.d/twemproxy_sentinel_start.sh start
4, 检查以下服务是否正常启动
nutcracker
redis-twemproxy-agent
redis-twemproxy-agent forever
六, 验证高可以用方案的正确性
1,./bin/redis-cli -p 6379
2,执行shutdown ,关闭redis-server主一
3,./bin/redis-cli -p 6380
4,执行info命令,观察redis-server从role:slave切换位role:master
5,验证配置文件正确
查看配置文件的servers /nutcracker/conf/nutcracker.yml
Redis HA 方案选型
本文整理了redis当前的高可用方案,以及比较各方案的优劣和我们最后的选型。
Redis-Cluster
-
引入Hash slots概念,便于分片以及数据迁移.解决了按照节点分片带来的扩容以及数据迁移的困难
slot = crc16("foo") mod NUMERSLOTS
- 节点都是对等的,复制是基于slots的,不是基于节点的.每个slots有两份冗余,可以容忍随机的两台节点宕机而不影响服务
- 支持自动重新分片以及故障迁移
- 节点通过PING-PONG以及Gossip互相感知,不需要中心监控服务监控节点的状态
- 通过SmartClient在Client端缓存了slots的分布图,无需中心代理.
详情参看 Redis_Cluster.pdf
- 优点
- 优点很多 能确保高可用 高性能,基本上是分布式缓存的完美方案
- 缺点:
- 还是beta版本,不能在生产环境使用
HAProxy + Twemproxy + redis-twemproxy-agent(NodeJS) + redis sentinel
方案来源(REDIS-SENTINEL TWEMPROXY AGENT)
- Twemproxy 是twitter开源的代理服务,支持Memcached和Redis协议,在这里主要的作用是 1.解决分片的问题,这样就不需要客户端自己做分片,分片对客户端是透明的.2.客户端应用连接Twemproxy,主从切换对客户端透明
- Redis sentinel 是redis官方提供的redis检测工具,会检测redis的状态然后触发事件.
- Redis-Twemproxy-Agent主要是用于监听redis sentinel的变更事件,修改Twemproxy的配置.
-
HAProxy 主要是为了解决Twemproxy的高可用问题。
-
优点
- 解决了分片问题
- 能保证高可用
- 缺点
- Twemproxy的hash规则和我们当前使用的方式不兼容,改造后会有数据迁移的问题,比较麻烦
- 这个方案引入的组件过多,担心不好运维
- 不支持读写分离Slave节点只起备份的作用
Keepalived + HAProxy + Redis sentinel + 自定义脚本
这个方案基本上是上个版本的简化版本
- Keepalived负责虚拟ip和高可用
- HAProxy 负责代理Redis的端口,同一个实例可以代理多个redis节点
- Redis sentinel负责检测Redis的存活状况,并进行主从切换
-
自定义脚本由Keepalived的定时调用,通过命令向Redis sentinel查询Redis Master的ip,判断是否发生变化,如果变化则修改HAProxy配置文件并重启HAProxy.
-
优点:
- 组件较少,并且都比较成熟,运维成本较低
- 缺点:
- redis的slave一直处于备用状态 比较浪费(同上一个方案)
- 没有解决分片问题,分片由应用解决
- 代理对性能有影响
- 脚本是定时轮询的机制通过Redis sentinel查询redis状态,主从变更后感知会比较慢,如果发生切换,整体上服务会有分钟级别的时间处于不可用状态
Zookeeper + Redis sentinel + 自定义同步服务 + SmartClient
这个方案的思路和RedisCluster有一定的共通之处,
- Redis sentinel 检测redis实例并进行主从切换
- 自定义同步服务负责监听Redis sentinel的状态变更,将redis实例的状态同步到Zookeeper
- Zookeeper扮演配置中心角色
-
SmartClient连接到Zookeeper并且watch Redis 实例的状态,根据状态将请求发送到正确的redis节点
-
优点:
- 不需要代理 没有性能浪费
- SmartClient机制是当前分布式缓存的一种通用解决方案
- 缺点:
- 自定义同步服务以及SmartClient当前都需要额外开发 考虑到RedisCluster本身已经包含了这些改造,不如等待Cluster正式发布.
结论
基于当前流量不是太大,数据分片也不是当前最大的的问题,主要的需求点在高可用,最后使用了方案二.上线后整体稳定,服务器重启,网络不通等故障,基本不用人工处理redis的问题
攻略:澳门一日游最佳线路 - 澳门一日游攻略 - 澳门一日游路线 - 美景旅游博客网
路线名称:澳门一日游最佳线路
游览景点:威尼斯人酒店 - 龙环葡韵 - 渔人码头 - 大三巴牌坊 - 澳门博物馆
路线说明:澳门具有400多年历史,东西文化一直在此地相互交融,使澳门成为一个独特的城市,既有古色古香的传统庙宇,又有庄严肃穆的天主圣堂,还有众多的历史文化遗产,以及沿岸优美的海滨胜景。
行程天数:1天
适合人群:初次到澳门游玩的人
上午:澳门威尼斯人酒店
攻略:从珠海横琴过关,关口门口有直达威尼斯人的免费中巴,威尼斯人门口有巴士站直接到官也街。那里有很多美食,例如西餐厅,澳门的小吃木糠布甸等……著名的猪扒包店利记,不过要下午三点才供应的,一日只有一次出炉。
澳门威尼斯人酒店(The Venetian Macao-Resort-Hotel)是由美国拉斯韦加斯金沙集团投资的威尼斯人度假村,投资约200亿元,这所奉行多元经营理念的度假村设有三千间豪华客房及大规模的博彩、会展、购物、体育、综艺及休闲设施等,其中占地十一万平方米的会展场地,势必成为香港的竞争对手。酒店位于澳门路氹城填地区金光大道地段,酒店楼高39层。
威尼斯人度假村拥有世界一流的设施,其规模更超越美国拉斯韦加斯,其中包括超过六十平方米的豪华客房、近十万平方米并汇集世界名牌的大运河购物区、八千平方米的水疗中心,以及驻场表演的太阳马戏团等。预计威尼斯人度假村的开幕,除了能吸引赌客外,亦会吸引不少商务会议及展览活动转到澳门举行,度假村期望可以吸引到一批高消费的商务旅客到澳门消费。
大运河购物中心,零售及餐饮设施: 93,548平方米,大运河购物中心在蓝天白云下漫步,一边陶醉于贡多拉船船夫的美妙歌声中,一边被别具特色的街头表演给吸引着。游走在1,000,000尺的购物空间,提供超过352家国际名店,让您尽情购物。这儿就是大运河购物中心。
澳门威尼斯人酒店交通指南:
如果您从珠海出发:
横琴口岸:乘坐过境巴士,经过边检站抵达澳门。抵步后,可免费搭乘穿梭巴士直达澳门威尼斯人。行驶时间是早上9时至晚上8时。
拱北口岸:经过边检站抵达澳门。抵步后,可免费乘坐穿梭巴士直达澳门威尼斯人。行驶时间是早上7时30分至午夜12时。
如果您从广州/中山/东莞/深圳出发:
乘坐过境巴士直达珠海拱北口岸地下商场或莲花大桥,步行经过边检站抵达澳门。抵步后,再免费搭乘穿梭巴士直达澳门威尼斯人。
如果您从澳门国际机场出发:
乘坐免费威尼斯人穿梭巴士,5分钟即可到达澳门威尼斯人,每15 -20分钟即有一班巴士从机场出发。
如果您从香港国际机场出发:
直接在机场乘坐快速渡轮1个小时内即可抵达澳门,无需花1个小时通过香港海关。
如果您从广州白云机场出发:
搭乘巴士到达珠海信禾汽车站(拱北海关的东面),通过拱北海关抵达澳门。进入澳门后可乘坐免费服务的威尼斯人穿梭巴士到达澳门威尼斯人。从广州至澳门总行程需约两个半小时。
如果您从珠海机场出发:
乘坐穿梭巴士到珠海横琴口岸,经过莲花大桥,搭乘免费服务的威尼斯人穿梭巴士到达澳门威尼斯人。(每日上午9时30分到晚上7时30分,每隔10-12分钟即有一班)。整个行程约30分钟。
如果您从深圳宝安国际机场出发:
乘坐穿梭巴士到达深圳福永码头,搭乘渡轮45分钟可到达澳门。
中午:龙环葡韵 - 渔人码头
之后可以从官也街出发步行到龙环葡韵(五分钟左右)。参观土生葡人之家,行番出来官也街街口有巴士28A到渔人码头(金莎赌场),车费:3.3元,游览之后可以直接打车到新马路(议事亭前地,也可以叫喷水池),大约20元(坐车也可以的,但由于公交车是环线行驶。容易坐错方向,加上公交车车钱好似是2.5元/人
“龙环”是凼仔岛的旧称,“葡韵”是指这里葡萄牙的建筑风格。此五幢葡萄牙式建筑,落成于1921年。原为澳门离岛高级官员的官邸及一些土生葡人家庭住宅。在1992年,澳葡政府对该建筑群进行修复和改建为住宅式博物馆。
开放时间:星期二至日:上午10:00至下午6:00 ,星期一:休息
门票价格:澳门币5元,10岁以下或60岁以上:免费入场,逢星期日:免费入场
澳门渔人码头主要分为三部份:唐城 、东西汇聚、励骏码头。 唐城是一幢仿唐朝建筑风格的中式城楼,城楼内以购物商场为主,集各地潮流商品以至高级食府。 东西汇聚糅合了东方传统概念与西方建筑风格的设计特色。区内设施包罗万有,无论是小朋友喜欢的机动游戏、多用途表演及会展场地、以致电子游戏及购物中心,均应有尽有。在火山里面,游人可乘搭亚洲首创、夺宝奇兵式名为「飞龙快车」的单轨室内过山车及名为「火焰激流」的观光船机动游戏,令游客可亲身体验热力澎湃的熔岩区域。夜晚更可欣赏这个四十米高的人造火山熔岩沸腾蓄势而发的壮丽景观。阿拉伯堡垒将成为小孩们的首选地点。此区设有四个适合小朋友乘坐的机动游戏,名为「飞天骆驼」、「魔法飞毯」、「阿拉丁快车」及「阿拉伯跳跳塔」。
除此以外,同区亦设有游戏摊位、小吃店与及纪念品店等。会议展览中心占地5,000平方米,其中主会展厅占地3,000平方米,楼高6.3米的大堂配合无柱设计,适合会议展览、公司宴会、私人派对或婚宴喜庆。罗马表演场是一个可容纳2,000名观众的户外表演场,附设顶级音响视听设备及占地200 平方米的多用途舞台,务求为观众缔造一个前所未有的难忘回忆 励骏码头以欧陆及拉丁式建筑群组成,游客可在区内找到各国特色的美酒佳肴,又可在林林总总的名牌专门店内选购商品,更有表演者为您带来不同的街头表演。
澳门渔人码头 地址:澳门新口岸友谊大马路及孙逸仙大马路
澳 门渔人码头开放时间:24小时免费入场 (机动游戏:上午十时至晚上九时)
澳门渔人码头公布票价:
夺宝历奇 单项-澳门币 40元
烈焰激流 单项-澳门币 40元
飞天骆驼 单项-澳门币 20元 两项-澳门币 36元
魔法飞毯 单项-澳门币 20元 两项-澳门币 36元
阿拉丁快车 单项-澳门币 20元 两项-澳门币 36元
青云升降 单项-澳门币 20元 两项-澳门币 36元
水世界表演场入场费–澳门币 50元
图片:澳门议事亭前地 、 澳门博物馆 、澳门炮台(点击查看大图)
图片:澳门大三巴牌坊(点击查看大图)
下午:议事亭前地 - 大三巴牌坊 - 澳门博物馆
新马路(议事亭前地,也可以叫喷水池)是购物旺地,各牌子专卖店都集中在这里。另外景点有:大三巴、炮台、澳门博物馆、主教堂、玫瑰堂,之后可以在新马路坐3号车或者打车去关闸(约20元)
澳门地标大三巴牌坊是旅客必到之地。自从1835年一场大火,原为中西合璧的圣保禄教堂,变成了只有前壁的遗址。圣保禄教堂是当时东方最大的天主教堂,号称「东方梵蒂冈」,附属于圣保禄学院。学院是远东地区第一所西式大学,从1594年成立至1762年结束期间,不少访华的外国传教士来修读中文,令学院成为这些传教士进入中国的重要传教基地,对推动欧洲和中国的宗教及文化交流起到无可比拟的卓越作用。
教堂成为遗址之后,因前壁与中国传统牌坊相似,加上「圣保禄」从葡文 (São Paulo) 音译成中文,说成「三巴」,才有大三巴牌坊的称谓。牌坊的建筑是巴洛克式,并有明显东方色彩的雕刻,包括代表中国和日本的牡丹及菊花图案,令她在全世界的天主教教堂中具有独一无二的特色。
大三巴牌坊虽然已失去教堂的实际功能,但她与澳门人的生活息息相关。这里不定期举行各种文化活动,牌坊前长长的梯级正好成为天然的座位,让牌坊刹那间变成巨大的布景,舞台浑然天成。相信几百年前生活在澳门的人,想不到这座教堂竟成为举行文化活动的理想户外场地。
从牌坊后面的铁梯步上,可直达牌坊的第2层。站在这里望出去,仿佛当年站在圣保禄教堂内俯览小城人民的生活情形,必须亲身经历才能领略这种特别感觉。
参观完牌坊,可以到内侧广场的天主教艺术博物馆,馆内收藏了澳门教堂和修院具代表性的画作、雕塑等,当中最珍贵的是一批以宗教生活为题材的油画,这是远东的第一批画作,也是东方最古老的油画。隔壁的墓室更存放着日本和越南殉教者的遗骨,展示澳门的宗教历史。
天主教艺术博物馆与墓室:开放时间:每日上午9时至下午6时 免费入场
世界各地尤以欧洲为主,随处可见大小不一的广场空间,游人相遇倾谈,或是在咖啡座闲适地品味人生。澳门亦有不少广场,地上铺砌着波浪型葡萄牙黑白碎石,仿如大浪滔滔的海洋,配以各款海洋生物及澳门景点为图案,更具立体感,充份表达葡萄牙的航海事业,亦巧妙地切合澳门昔日的渔港形象。当您走过着名的议事亭前地、妈阁庙前地、阿婆井前地、岗顶前地、板樟堂前地、大堂前地、白鸽巢前地以至耶稣会纪念广场,当你举目四周,欣赏中西共融的情境时,别忘了低头细看,你已踏进澳门的文化汪洋。
论及众多广场空间,着名的议事亭前地会否是您必到之选?议事亭前地旧称喷水池,因为广场中央有一座喷水池,虽然多年来换过不同面貌,但不少澳门老居民仍沿用此名称。现今,喷水池上摆放着象征葡萄牙航海远征的天球仪,晚上配上灯光效果让议事亭前地生色不少。
在不同时期来议事亭前地,又有另一番感受。农历新年、中秋节以至圣诞节,这里顿然换上富节日气息的装饰,配合四周的欧陆建筑,将澳门中西文化融合的特色发挥得淋漓尽致。议事亭前地更是举行活动的热门地点,如每年「澳门艺穗」将全城各处变作舞台,当游人途经此地,不知不觉由观众变成表演者。
这里商店林立,从以往到现在都是繁盛的商业区,更因设有不少手信店而吸引旅客到此购物。最难得之处是这里保存着昔日二、三层高的中西房子,而附近又有西式建筑如玫瑰堂、仁慈堂、民政总署大楼以至三街会这类中式庙宇,结合现代人的生活节奏,达至老建筑和现代气息和谐共存,并体现中西文化交融,正是澳门的独特之处。当您继续走访不远处的岗顶前地、板樟堂前地以及其他广场空间,这些属于澳门的特色如影随形,陆续展现她的动人魅力。
澳门博物馆在1998年4月18日落成揭幕。博物馆位于大炮台上,大炮台于十七世纪初由耶稣会会士兴建。当时着名的圣保禄学院 (也称天主圣母学院) 和圣保禄教堂就建在大炮台附近,圣保禄学院被视为远东地区的第一所西方大学。
兴建澳门博物馆旨在保存数个世纪东、西方文化在澳门交汇,并和谐共存的多种面貌:传统、风俗和文化等。
博物馆的藏品并非价值连城,但却蕴藏丰富的历史意义和人们对美好生活的回忆。通过展品向参观者展现,在过去数百年当中居住在澳门的不同民族和平共处的生活状况和历史面貌。
澳门博物馆共有三层:一楼澳门地区文明的原始,介绍澳门地区的起源、欧维士于1513年到达珠江三角洲前中国和葡萄牙各自的发展历程、两者在澳门相遇后引起的贸易、宗教和文化等方面的接触和在往后的数百年里逐渐形成的独特的澳门文化。
二楼澳门民间艺术与传统,让参观者可以了解澳门的传统、民间艺术和现已式微甚至消失的行业或活动。展品还揭示澳门历史的各个阶段和方方面面:娱乐、日常生活方式、宗教礼仪和庆典等,以突显不同文化和种族的人民在澳门相互包容、共存以及既丰富又独特的生活方式。
三楼当代澳门的特色,展示当代澳门城市生活的特色和对未来的展望。此外,还展出一些与澳门有着密切联系的作家的作品,其中包括着名的葡萄牙文学家贾梅士和庇山耶。展览的最后部分向参观者介绍作为中华人民共和国特别行政区的澳门的前景与机遇。
参观博物馆后,游人可顺道游览大炮台花园,俯瞰澳门城市的旖旎风光。
地址:澳门博物馆前地112号 (大三巴牌坊侧)
开放时间:每日上午10时至下午6时 (售票至下午5时30分止),逢星期一休馆 (公众假期除外)
门票价格:成人澳门币15元;11岁以下儿童、60岁以上长者及学生澳门币8元;团体、学校和公共机构优惠价。每月的15日免费开放。
到达的公共汽车有:2,3,3A,4,5,6,7,8A,10,10A,11,17,18,19,21,21A,26,26A,33
出游攻略:
1、如果上炮台,可以从往博物馆的电梯上去,不必走楼梯那么辛苦,到了博物馆后,再继续往上乘,就是炮台了
2、议事厅前地走向大三巴的途中,会有很多所谓的特色小食。例如猪扒包盐酥鸡等,味道不怎么样的。
3、澳门出租车起标是10元
4、过关时可以拿份《澳门地图》和《澳门新福利巴士路线指南》,很有用的
5、拱北的免费巴士比横琴要多,也可以从拱北直接坐车去威尼斯人,从最远的景点玩起,最后去新马路SHOPPING,那么就可以直接拿着手信过关了。