亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數(shù)據(jù)庫 > Redis > 正文

深入剖析Redis集群故障

2020-02-17 14:53:44
字體:
供稿:網(wǎng)友

其實在此之前,武林技術(shù)小編也有寫過關(guān)于Redis集群故障的問題,也得到不錯的反饋,但依然有些朋友還在困惑,為此,今天武林技術(shù)小編給出這篇深入剖析Redis集群故障,希望能夠幫助到各位更好的學習。

故障表象:

業(yè)務(wù)層面顯示提示查詢redis失敗

集群組成:

3主3從,每個節(jié)點的數(shù)據(jù)有8GB

機器分布:

在同一個機架中,

xx.x.xxx.199
xx.x.xxx.200
xx.x.xxx.201

redis-server進程狀態(tài):

通過命令ps -eo pid,lstart | grep $pid,

發(fā)現(xiàn)進程已經(jīng)持續(xù)運行了3個月

發(fā)生故障前集群的節(jié)點狀態(tài):

xx.x.xxx.200:8371(bedab2c537fe94f8c0363ac4ae97d56832316e65) master
xx.x.xxx.199:8373(792020fe66c00ae56e27cd7a048ba6bb2b67adb6) slave
xx.x.xxx.201:8375(5ab4f85306da6d633e4834b4d3327f45af02171b) master
xx.x.xxx.201:8372(826607654f5ec81c3756a4a21f357e644efe605a) slave
xx.x.xxx.199:8370(462cadcb41e635d460425430d318f2fe464665c5) master
xx.x.xxx.200:8374(1238085b578390f3c8efa30824fd9a4baba10ddf) slave

---------------------------------下面是日志分析--------------------------------------

步1:
主節(jié)點8371失去和從節(jié)點8373的連接:
46590:M 09 Sep 18:57:51.379 # Connection with slave xx.x.xxx.199:8373 lost.

步2:
主節(jié)點8370/8375判定8371失聯(lián):
42645:M 09 Sep 18:57:50.117 * Marking node bedab2c537fe94f8c0363ac4ae97d56832316e65 as failing (quorum reached).

步3:
從節(jié)點8372/8373/8374收到主節(jié)點8375說8371失聯(lián):
46986:S 09 Sep 18:57:50.120 * FAIL message received from 5ab4f85306da6d633e4834b4d3327f45af02171b about bedab2c537fe94f8c0363ac4ae97d56832316e65

步4:
主節(jié)點8370/8375授權(quán)8373升級為主節(jié)點轉(zhuǎn)移:
42645:M 09 Sep 18:57:51.055 # Failover auth granted to 792020fe66c00ae56e27cd7a048ba6bb2b67adb6 for epoch 16

步5:
原主節(jié)點8371修改自己的配置,成為8373的從節(jié)點:
46590:M 09 Sep 18:57:51.488 # Configuration change detected. Reconfiguring myself as a replica of 792020fe66c00ae56e27cd7a048ba6bb2b67adb6

步6:
主節(jié)點8370/8375/8373明確8371失敗狀態(tài):
42645:M 09 Sep 18:57:51.522 * Clear FAIL state for node bedab2c537fe94f8c0363ac4ae97d56832316e65: master without slots is reachable again.

步7:
新從節(jié)點8371開始從新主節(jié)點8373,第一次全量同步數(shù)據(jù):
8373日志::
4255:M 09 Sep 18:57:51.906 * Full resync requested by slave xx.x.xxx.200:8371
4255:M 09 Sep 18:57:51.906 * Starting BGSAVE for SYNC with target: disk
4255:M 09 Sep 18:57:51.941 * Background saving started by pid 5230
8371日志::
46590:S 09 Sep 18:57:51.948 * Full resync from master: d7751c4ebf1e63d3baebea1ed409e0e7243a4423:440721826993

步8:
主節(jié)點8370/8375判定8373(新主)失聯(lián):
42645:M 09 Sep 18:58:00.320 * Marking node 792020fe66c00ae56e27cd7a048ba6bb2b67adb6 as failing (quorum reached).

步9:
主節(jié)點8370/8375判定8373(新主)恢復:
60295:M 09 Sep 18:58:18.181 * Clear FAIL state for node 792020fe66c00ae56e27cd7a048ba6bb2b67adb6: is reachable again and nobody is serving its slots after some time.

步10:
主節(jié)點8373完成全量同步所需要的BGSAVE操作:
5230:C 09 Sep 18:59:01.474 * DB saved on disk
5230:C 09 Sep 18:59:01.491 * RDB: 7112 MB of memory used by copy-on-write
4255:M 09 Sep 18:59:01.877 * Background saving terminated with success

步11:
從節(jié)點8371開始從主節(jié)點8373接收到數(shù)據(jù):
46590:S 09 Sep 18:59:02.263 * MASTER <-> SLAVE sync: receiving 2657606930 bytes from master

步12:
主節(jié)點8373發(fā)現(xiàn)從節(jié)點8371對output buffer作了限制:
4255:M 09 Sep 19:00:19.014 # Client id=14259015 addr=xx.x.xxx.200:21772 fd=844 name= age=148 idle=148 flags=S db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=16349 oll=4103 omem=95944066 events=rw cmd=psync scheduled to be closed ASAP for overcoming of output buffer limits.
4255:M 09 Sep 19:00:19.015 # Connection with slave xx.x.xxx.200:8371 lost.

步13:
從節(jié)點8371從主節(jié)點8373同步數(shù)據(jù)失敗,連接斷了,第一次全量同步失?。?br>46590:S 09 Sep 19:00:19.018 # I/O error trying to sync with MASTER: connection lost
46590:S 09 Sep 19:00:20.102 * Connecting to MASTER xx.x.xxx.199:8373
46590:S 09 Sep 19:00:20.102 * MASTER <-> SLAVE sync started

步14:
從節(jié)點8371重新開始同步,連接失敗,主節(jié)點8373的連接數(shù)滿了:
46590:S 09 Sep 19:00:21.103 * Connecting to MASTER xx.x.xxx.199:8373
46590:S 09 Sep 19:00:21.103 * MASTER <-> SLAVE sync started
46590:S 09 Sep 19:00:21.104 * Non blocking connect for SYNC fired the event.
46590:S 09 Sep 19:00:21.104 # Error reply to PING from master: '-ERR max number of clients reached'

步15:
從節(jié)點8371重新連上主節(jié)點8373,第二次開始全量同步:
8371日志:
46590:S 09 Sep 19:00:49.175 * Connecting to MASTER xx.x.xxx.199:8373
46590:S 09 Sep 19:00:49.175 * MASTER <-> SLAVE sync started
46590:S 09 Sep 19:00:49.175 * Non blocking connect for SYNC fired the event.
46590:S 09 Sep 19:00:49.176 * Master replied to PING, replication can continue...
46590:S 09 Sep 19:00:49.179 * Partial resynchronization not possible (no cached master)
46590:S 09 Sep 19:00:49.501 * Full resync from master: d7751c4ebf1e63d3baebea1ed409e0e7243a4423:440780763454
8373日志:
4255:M 09 Sep 19:00:49.176 * Slave xx.x.xxx.200:8371 asks for synchronization
4255:M 09 Sep 19:00:49.176 * Full resync requested by slave xx.x.xxx.200:8371
4255:M 09 Sep 19:00:49.176 * Starting BGSAVE for SYNC with target: disk
4255:M 09 Sep 19:00:49.498 * Background saving started by pid 18413
18413:C 09 Sep 19:01:52.466 * DB saved on disk
18413:C 09 Sep 19:01:52.620 * RDB: 2124 MB of memory used by copy-on-write
4255:M 09 Sep 19:01:53.186 * Background saving terminated with success

步16:
從節(jié)點8371同步數(shù)據(jù)成功,開始加載經(jīng)內(nèi)存:
46590:S 09 Sep 19:01:53.190 * MASTER <-> SLAVE sync: receiving 2637183250 bytes from master
46590:S 09 Sep 19:04:51.485 * MASTER <-> SLAVE sync: Flushing old data
46590:S 09 Sep 19:05:58.695 * MASTER <-> SLAVE sync: Loading DB in memory

步17:
集群恢復正常:
42645:M 09 Sep 19:05:58.786 * Clear FAIL state for node bedab2c537fe94f8c0363ac4ae97d56832316e65: slave is reachable again.

步18:
從節(jié)點8371同步數(shù)據(jù)成功,耗時7分鐘:
46590:S 09 Sep 19:08:19.303 * MASTER <-> SLAVE sync: Finished with success

8371失聯(lián)原因分析:

由于幾臺機器在同一個機架,不太可能發(fā)生網(wǎng)絡(luò)中斷的情況,于是通過SLOWLOG GET命令查看了慢查詢?nèi)罩?,發(fā)現(xiàn)有一個KEYS命令被執(zhí)行了,耗時8.3秒,再查看集群節(jié)點超時設(shè)置,發(fā)現(xiàn)是5s(cluster-node-timeout 5000)

出現(xiàn)節(jié)點失聯(lián)的原因:

客戶端執(zhí)行了耗時1條8.3s的命令,

2016/9/9 18:57:43 開始執(zhí)行KEYS命令
2016/9/9 18:57:50 8371被判斷失聯(lián)(redis日志)
2016/9/9 18:57:51 執(zhí)行完KEYS命令

總結(jié)來說,有以下幾個問題:

1.由于cluster-node-timeout設(shè)置比較短,慢查詢KEYS導致了集群判斷節(jié)點8371失聯(lián)

2.由于8371失聯(lián),導致8373升級為主,開始主從同步

3.由于配置client-output-buffer-limit的限制,導致第一次全量同步失敗了

4.又由于PHP客戶端的連接池有問題,瘋狂連接服務(wù)器,產(chǎn)生了類似SYN攻擊的效果

5.第一次全量同步失敗后,從節(jié)點重連主節(jié)點花了30秒(超過了最大連接數(shù)1w)

關(guān)于client-output-buffer-limit參數(shù):

# The syntax of every client-output-buffer-limit directive is the following: # # client-output-buffer-limit  # # A client is immediately disconnected once the hard limit is reached, or if # the soft limit is reached and remains reached for the specified number of # seconds (continuously). # So for instance if the hard limit is 32 megabytes and the soft limit is # 16 megabytes / 10 seconds, the client will get disconnected immediately # if the size of the output buffers reach 32 megabytes, but will also get # disconnected if the client reaches 16 megabytes and continuously overcomes # the limit for 10 seconds. # # By default normal clients are not limited because they don't receive data # without asking (in a push way), but just after a request, so only # asynchronous clients may create a scenario where data is requested faster # than it can read. # # Instead there is a default limit for pubsub and slave clients, since # subscribers and slaves receive data in a push fashion. # # Both the hard or the soft limit can be disabled by setting them to zero. client-output-buffer-limit normal 0 0 0 client-output-buffer-limit slave 256mb 64mb 60 client-output-buffer-limit pubsub 32mb 8mb 60 

采取措施:

1.單實例的切割到4G以下,否則發(fā)生主從切換會耗時很長

2.調(diào)整client-output-buffer-limit參數(shù),防止同步進行到一半失敗

3.調(diào)整cluster-node-timeout,不能少于15s

4.禁止任何耗時超過cluster-node-timeout的慢查詢,因為會導致主從切換

5.修復客戶端類似SYN攻擊的瘋狂連接方式

總結(jié)

以上就是深入剖析Redis集群故障的全部內(nèi)容,希望對大家有所幫助,如有不足之處,請留言,小編會及時更正。感謝朋友們對武林技術(shù)頻道的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

国产精品久久久久9999吃药| 中文字幕成人精品久久不卡| 色偷偷成人一区二区三区91| 欧美美女15p| 婷婷成人综合网| 久久久久高清| 一区在线电影| 在线看的网站你懂| 欧美a在线播放| 牛牛影视久久网| 穿情趣内衣被c到高潮视频| 热久久视久久精品18亚洲精品| 欧美日韩爆操| www.久色| 国产91精品在线播放| 欧美成人精品午夜一区二区| 国内自拍视频在线观看| 91精品国产色综合久久不卡电影| 国产伦子伦对白在线播放观看| 亚洲黄色小视频在线观看| 亚洲色图视频免费播放| 啊啊啊啊啊啊啊视频在线播放| 欧美一区第一页| 亚洲人体视频| 中文资源在线网| 成人免费视频久久| 亚洲黄色免费三级| 91日韩中文字幕| 在线观看 亚洲| 一区二区不卡在线| 婷婷六月综合网| 中文字幕人妻熟女人妻洋洋| 亚洲永久av| 亚洲国产成人精品无码区99| 亚洲色图av在线| 色悠悠久久88| 亚洲精品少妇一区二区| 久久人妻少妇嫩草av无码专区| 亚洲欧洲国产综合| 国产婷婷精品av在线| 一个色综合av| 91在线视频在线| 欧美在线一区视频| 99久久久精品免费观看国产| 爱福利视频一区| 97视频精品| 亚洲国产人成综合网站| 韩国主播福利视频一区二区三区| 风流老熟女一区二区三区| 国产精品久久久免费| 国内外成人免费激情在线视频网站| 高潮一区二区三区乱码| 日韩欧美亚洲范冰冰与中字| 亚洲一区二区三区无码久久| 亚洲第一av网| 小泽玛利亚一区二区三区视频| xxxxxx国产| 狠狠爱一区二区三区| 午夜不卡影院| 中文字幕av无码一区二区三区| 99久久99| 亚洲a在线观看| 高清国语自产拍免费一区二区三区| 欧美剧情片在线观看| 亚洲小说春色综合另类电影| av资源站久久亚洲| 国产日本欧美一区| 天天干 夜夜操| 欧美激情亚洲视频| 亚洲精品第二页| 欧美三级三级| 91免费版视频| 亚洲av成人精品一区二区三区| 麻豆免费精品视频| 一区二区不卡久久精品| 国产夫妻性生活视频| 久久久久国产一区二区三区四区| 黄色免费网站观看| 亚洲欧美自拍另类日韩| 人人艹在线视频| 日韩毛片一区| 欧美亚韩一区| 妺妺窝人体色www在线观看| 国产精品网红直播| 亚洲四区在线观看| 亚洲免费福利| 污视频在线播放| 欧美少妇性生活视频| 97久久精品一区二区三区的观看方式| 蜜月aⅴ免费一区二区三区| 欧美网站免费观看| 久久精品动漫| 九色视频在线观看免费播放| yw视频在线观看| 极品美女销魂一区二区三区免费| 久久精品欧美日韩精品| 久久美女精品| 韩国一区二区三区在线观看| 国产精品69久久久久孕妇欧美| 欧美午夜性色大片在线观看| 精品久久久久久中文字幕| 日本一区二区免费在线观看视频| 色哟哟视频在线| japanesexxxx在线播放| 初高中福利视频网站| 影音先锋制服丝袜| 国产91色在线免费| 中文字幕色一区二区| 中文字幕有码在线播放| 亚洲永久网站| 日韩高清在线播放| 91在线播放视频| 国产视频911| 欧美激情一区二区视频| 日韩av视屏| 国产精品久久精品| 在线免费观看色| 一级美女在线| 欧美区国产区| 欧美日韩黄色大片| 久久久无码人妻精品一区| 国内综合精品午夜久久资源| 羞羞影院体验区| 欧美三级在线观看视频| 久久一区亚洲| 国产aⅴ激情无码久久久无码| 欧美人与禽zoz0善交| 极品尤物av久久免费看| 亚洲精品乱码久久久久| 国产精品一国产精品k频道56| 久久久青草青青国产亚洲免观| 亚洲激情六月丁香| 亚洲女人毛茸茸高潮| 国产又白又嫩又紧又爽18p| 免费成年网站| 午夜影院韩国伦理在线| 国产高清精品软男同| 亚洲美女www午夜| 亚洲欧美电影在线观看| 久久久久久91| 国产三级电影在线| 伦理av在线| 日韩最新在线| 香蕉视频在线观看黄| 日本精品一区二区三区在线| 91天堂素人约啪| 国产成人三级一区二区在线观看一| 国产福利视频在线播放| 51社区在线成人免费视频| 亚洲电影欧美电影有声小说| 四虎成人在线观看| 中文国产在线观看| 国产精品一区二区三区网站| 国产三区在线播放| 精品成人国产在线观看男人呻吟| 在线观看av一区二区| 亚洲精品男人的天堂| 国产精品免费视频一区| av中文字幕在线不卡| 精品乱码一区| 国产网站在线免费观看| 国内一区二区三区在线视频| 亚洲精品v欧美精品v日韩精品| 18精品爽国产三级网站| 亚洲欧洲专区| 亚洲精品视频啊美女在线直播| 亚洲激情一区二区三区| 欧美成人直播| 亚洲经典一区| 日本一区二区免费高清视频| 黄色在线观看av| 18+视频在线观看| 浮力影院欧美三级日本三级| 最新国产黄色网址| 麻豆网在线观看| 韩日a级毛片| 六月丁香综合在线视频| 欧美性生活大片视频| 在线免费观看成人短视频| 国产精品日日爱| 四虎精品影院在线观看视频| 亚洲专区中文字幕| 18禁男女爽爽爽午夜网站免费| 欧美一级免费| 久久久精品日本| 免费网站观看www在线观看| 成人福利影视| 亚洲黄色小视频| 性欧美在线看片a免费观看| 亚洲国产一区二区三区在线观看| 国产亚洲一区二区在线观看| 亚洲欧洲成人| 人与牲动交xxxbbb| 国产精品专区第二| 国产精品二区在线| 亚洲欧美日韩精品一区| 9999国产精品| 亚洲视频一区在线观看| 亚洲国产精品区| 欧美日韩精品在线观看视频| 丁香婷婷久久久综合精品国产| 在线免费av片| 亚洲女人被黑人巨大进入| 国产一区二区欧美日韩| 精品亚洲精品| 国产曰肥老太婆无遮挡| 一级黄色特级片| 天码人妻一区二区三区在线看| 亚洲字幕av一区二区三区四区| 综合综合综合综合综合网| 99视频在线免费播放| 国产精品免费看一区二区三区| 天堂资源在线亚洲| 久久精品男女| 日韩欧美一区二区三区四区五区| 成人精品视频.| 美女扒开大腿让男人桶| 国产高清精品久久久久| 日韩成人av在线| 欧美午夜精品免费| 亚洲美女色播| 精品久久一二三区| 久久精品国产91精品亚洲| 清纯唯美日韩制服另类| 欧美三级不卡| 91九色丨porny丨国产jk| 久久爱.com| 久久青草伊人| 国产亚洲综合性久久久影院| 老汉色老汉首页av亚洲| 欧洲精品一区二区三区在线观看| 亚洲国产精品久久一线不卡| 第四色播日韩| 波多野结衣久草一区| 免费久久一级欧美特大黄| av中文在线资源库| 国产精品女上位| 日韩精品电影网站| 欧美日韩综合久久| 91久久精品国产91久久| 亚洲天堂视频一区| 日日摸天天添天天添破| 色伦专区97中文字幕| 成人在线观看你懂的| 含羞草www国产在线视频| 国产精品18久久久久久久久| 久久午夜夜伦鲁鲁一区二区| 日本亚洲欧美美色| 国产精品丝袜一区二区| 亚洲美女久久精品| 久久中文亚洲字幕| 精品一区二区91| 国产91免费在线观看| 亚洲色图校园春色| 亚色视频在线观看| 欧美黑人乱大交| 国产日韩欧美精品在线观看| 黄色的视频在线免费观看| 国产精品中文久久久久久久| 青娱乐免费在线视频| 国产一级片在线播放| 久久伊99综合婷婷久久伊| 成人自拍视频| 污污影院在线观看| 久久久久久久久久成人| 日日干夜夜操s8| 日本一级片免费| 深爱激情久久| 日韩三级高清在线| 伊人久久影院| 色妹子一区二区| 中文字幕在线观看视频免费| 在线不卡日本v二区707| 波多野结衣在线高清| 97视频com| 国产日韩一区二区三区| 精品国产一区二区三区日日嗨| 5月丁香婷婷综合| 亚洲国产精品黑人久久久| a毛片在线播放| 久久综合免费视频| 国产毛片在线看| 一级网站在线观看| gogo高清在线播放免费| 日韩精品免费一区二区三区竹菊| www.久久草.com| 午夜激情影院在线观看| 日韩大尺度视频| 欧美日韩一区二区三区四区| 国产精品美女一区二区视频| 国产精品扒开腿做爽爽| 国产成人综合久久| 日韩国产一二三区| 亚洲乱码国产乱码精品精的特点| 免费亚洲网站| 国产精品原创巨作av| 国产精品综合网| 国产精品免费aⅴ片在线观看| 嫩草影院国产精品| 久久av影视| 国产在线网站| 蜜臀av.com| 最近的2019中文字幕免费一页| 成人福利在线观看| 国产一区二区日韩| 国产口爆吞精一区二区| 国产精品黄视频| 第四色在线一区二区| 夜夜嗨yeyeh| 国产一区二区在线视频播放| 自拍视频在线| 国产三级欧美三级日产三级99| 欧美另类网站| 亚洲视频久久| 国产探花在线观看| 日韩欧美一区二区在线观看| 日本一区美女| 欧美变态xxxx| 久久中国妇女中文字幕| 国产一二三在线观看| 中文字幕欧美日韩一区二区| 国产午夜久久久久| 美女视频久久| 九九热hot精品视频在线播放| 香蕉久久成人网| 国产不卡123| 99精品国产一区二区三区2021| 亚洲大片av|