精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Redis Cluster遷移遇到的各種運維坑及解決方案

運維 系統運維 Redis
這個7月注定不平凡,通過7月連續的Redis故障,本文主要涉及到的故障包括:1.網卡故障2.這該死的連接數3.疑似 Cluster 腦裂?4.Bgsave傳統的典型問題5.主庫重啟 Flush 掉從庫

   [[157959]]

       嘉賓介紹

董澤潤 【高級DBA】

  2010—2012年在搜狐暢游,負責游戲Mysql相關的運維。

  2012—2015年在趕集網擔任DBA,負責整個數據庫團隊的建設,主要研究 Mysql、Redis、MongoDB 等技術。

  2015—至今在一家圖片社交公司,專注于 Redis 的運維和自動化研發工作。

  引子

  這個7月注定不平凡,通過7月連續的Redis故障,細心如你,一定會對技術、公司、同事、職業有了更深刻的認識和反思,先回憶下吧……

  本文主要涉及到的故障包括:

  1.網卡故障

  2.這該死的連接數

  3.疑似 Cluster 腦裂?

  4.Bgsave傳統的典型問題

  5.主庫重啟 Flush 掉從庫

  好的,敬請欣賞。

  Redis Cluster 的遷移之路

  我們Redis 部署特點如下:

  ◆集中部署,N臺機器專職負責某個產品線。

  ◆傳統 Twemproxy 方式,額外會有自己定制幾套 Twemproxy 。

  可以看出來,非常傳統的方式。開始只有一個Default集群,PHP 所有功能獲取Redis句柄都是這個,流量增長后開始按功能劃分。

  5月中旬,我來到公司,開始推進 Redis Cluster,爭取替換掉 Twemproxy,制定了如下方案:  

  1. Redis Cluster => Smart Proxy => PHP 

  集群模式能夠做到自動擴容,可以把機器當成資源池使用

  在 PHP 前面部署基于 Cluster 的 Smart Proxy,這是非常必要的,后文會說到。由于公司有自定義 Redis 和 Twemproxy 版本,所以為了做到無縫遷移,必須使用實時同步工具。

  好在有@goroutine Redis-Port,非常感謝原 Codis 作者劉奇大大。

  基于Redis-Port,修改代碼可以把 Redis 玩出各種花樣,如同七巧板一樣,只有你想不到的沒有他做不到的,可以不夸張的說是 Redis 界的瑞士軍刀

  ◆實時同步兩套集群

  ◆跨機房同步

  ◆同步部分指定Key

  ◆刪除指定Key

  ◆統計Redis內存分布

  ◆……

  遷移方案如下:

  1.Redis Master => Redis-Port => Smart Proxy => Redis Cluster

  也即,Redis-Port 從原Redis Master 讀取數據,再通過Smart Proxy 寫入到 Redis Cluster。

  2.修改 PHP Config, Gitlab 發布上線,使用新集群配置。

  3.停掉老 Twemproxy 集群,完成遷移。

  這種遷移方案下,原Redis 無需停業務。

  注意:

  此方案中的Smart Proxy 是我們自己寫的,事實證明很有必要,其作為Redis Cluster 的前端,用來屏蔽Redis Cluster 的復雜性。

  方案看似簡單,實際使用要慎重。大家都知道 Redis Rdb Bgsave 會使線上卡頓,所以需要在低峰期做,并且輪流 Redis Master 同步,千萬不能同時用 Redis Port 做 Sync。

  在實施過程中,遇到多種問題,現在簡要闡述如下:

  問題1:還是網卡故障

  想起《東京愛情故事》主題曲,突如其來的愛情,不知該從何說起。

 

  故障的圖找不到了,截圖一張正常網卡流量圖 -_^

  千兆網卡在某個周五23:00業務高峰期被打滿,導致線上請求失敗—如坐針氈的波峰圖。

  如前文所說,公司集中部署 Redis,此業務是線上 Cache 個人詳情頁登陸相關的,一共4臺機器,每臺20實例,無法做到立刻擴容,緊急之下 RD 同學降級,拋掉前端30%的請求。只是恢復后,高峰期已過。

  Leader要求周六所有人加班去遷移,But,2點多大家睡了,嗯,就這樣睡了ZZZZ~~ 故障暫時解決,但故事依然繼續……

  周六上午10點,市場運營推送消息,導致人為打造了小高峰,又是如坐針氈的波峰圖,服務立馬報警,緊急之下立馬再次拋掉30%請求。

  然后,緊急搭建兩套不同功能的 Redis Cluster 集群,采用冷啟動的方式,一點點將 Cache 流量打到新集群中,Mysql 幾臺從庫 QPS 一度沖到8K。

  針對網卡最后引出兩個解決方案:

  1.所有Redis 機器做雙網卡 Bonding,變成2000Mbps。

  2.所有 Redis 產品線散開,混合部署打散。

  3.增加網卡流量監控,到達60%報警。

  反思:

  為什么要睡覺?而不是連夜遷移?做為運維人員,危險意識不夠足。

  另外:還有一起網卡故障,是應用層 Bug,頻繁請求大 Json Key 打滿網卡。當時QPS穩定保持在20W左右,千兆網卡被打滿。臨時解決方案直接干掉這個Key,過后再由 RD 排查。

  深度剖析

  ◆監控報警不到位,對于創業公司比較常見,發生一起解決一起。

  ◆針對這類問題,有兩個想法:QPS 報警,比如閥值定在2W。還有一個在Proxy上做文章,對 Key 的訪問做限速或增加 Key 的屏蔽功能。

  ◆QPS報警后運維人員排查,可能已經產生影響了,在Proxy層做對性能會有影響。

#p#

  問題2:你這該死的連接數

  某天8點40左右,還在地鐵的我接到電話,Redis 連接報錯,貌似幾個實例的連接數被打滿。這個故障持續時間較長,PHP Redis 擴展直連 Redis Cluster,連接持續增長,直到打滿完全連不上。

  后來經過排查,確認是擴展 Bug,導致老連接不釋放。同時,其他原因也很多:

  1.公司使用 Redhat7,所有的應用都是由 systemd 管理,啟動沒有指定Limit NOFILE,導致 Redis maxclients 限制死在4000左右。

  2.PHP Redis 擴展 Bug,連接不釋放,線下穩定復現。

  這幾次連續故障很嚴重,Leader 直接決定全部回退到老的 Twemproxy 版本,最后回退了兩個最重要的產品線。

  反思:

  1.架構改動沒有經過充分測試,線下穩定復現的Bug沒有仔細測試直接上線。

  2.運維意識不足,對 systemd 了解不夠深入,沒有對所有配置做嚴格檢查。

  3.做為”世界上最好的語言”,偶爾還是有些問題,最好在 Redis 和 PHP 間隔層 Proxy,將后端 Redis 保護在安全的位置。

  問題3:疑似 Cluster 腦裂?

  腦裂在所謂的分布式系統中很常見,大家也不陌生,做為DBA最怕的就是Mysql keepalived 腦裂,造成主庫雙寫。難道 Redis Cluster中也會有腦裂么?

  凌晨5點接到電話,發現應用看到數據不一致,偶爾是無數據,偶爾有數據,很像讀到了臟數據。

  Mysql 在多個從庫上做讀負載均衡很常見,Redis Cluster也會么?

  登上Redis,Cluster Nodes,Cluster Config,確實發現不同 Redis 實例配置了不同的Cluster Nodes。想起了昨天有對該集群遷移,下掉了幾個實例,但是在 PHP 配置端沒有推送配置,導致 PHP 可能讀到了舊實例數據,馬上重新推送一遍配置,問題解決。

  反思:

  1.有任務配置的變更,一定考慮好所有環境的連動。這也是當前配置無自動發現的弊端。

  2.屏蔽細節,在Redis Cluster上層做 Proxy 的重要性再一次得到驗證。

  3.運維意識不足,嚴重的人為故障。

  問題4:Bgsave傳統的典型問題

  問題很典型了,非常嚴重的故障導致Redis OOM(Out of Memory)。

  解決方案:

  單臺機器不同端口輪流 Bgsave,內存不足時先釋放 Cache,釋放失敗拒絕再 Bgsave 并報警。

  問題5:主庫重啟 Flush 掉從庫

  考慮不周,備份時,只在 Slave 上 Bgsave。主庫由于某些原因重啟,立馬被 systemd 拉起,時間遠短于 Cluster 選舉時間。

  后面就是普通 Redis Master/Slave 之間的故事了,Master 加載空 dump.rdb,replicate 到 Slave,刷掉 Slave數據。

  解決方案:

  1.備份的同時,將 dump.rdb rsync 到主庫 datadir 目錄下面一份。

  2.根據 Redis 用途,做存儲使用的 Redis systemd 去掉 Auto Restart 配置。

  其它典型故障/問題

  1.應用設計問題,部分 hset 過大,一度超過48W條記錄,Redis頻繁卡頓感。

  2.使用 Redis 做計數器,占用過大內存空間。這個 Redis 官網有解決方案,利用 hash/list 的線性存儲,很有效。但是由于 mget 無法改造,我們沒采用。

  3.混布,導致部份產品線消耗資源過高,影響其它所有實例。

  4.機房IDC故障,單個機柜不通,里面所有混布的產品線無法提供請求,數據請求失敗。

  5.應用端分不清 Cache/Storage,經常可以做成 Cache 的 Key,不加ttl導致無效內存占用。

  寫在最后

  雖然寫在最后,但遠沒有結束,征程才剛剛開始。

  每次故障都是一次反思,但我們拒絕活在過去,生活還要繼續。

  公司重度依賴Redis,除了圖片其它所有數據都在Redis中。在穩定為主的前提下,還在向Redis Cluster遷移,其中有幾個問題還待解決:

  1.Redis 實例級別高可用,機柜級別高可用。

  2.混布的資源隔離,看了 hunantv CMGS 的分享,Docker是一個方案。

  3.隔離上層語言與 Redis,提供穩定的 Smart Proxy接口。

  4.Redis 集群 build 和交付,缺少配置集中管理。

  5.很多集群 QPS 并不高,內存浪費嚴重,急需持久化 Redis 協議存儲,基于 ardb/ledisdb 的 sharding 是個方案,自己開發需要同事的信任,這點很重要。

  最終公司線上存在兩個版本,Twemproxy 開啟 auto_reject_host 做 Cache 集群,Redis Cluster + Smart Proxy做存儲。

如何一起愉快地發展

“高效運維”公眾號(如下二維碼)值得您的關注,作為高效運維系列微信群的唯一官方公眾號,每周發表多篇干貨滿滿的原創好文:來自于系列群的討論精華、運維講壇線上精彩分享及群友原創。“高效運維”也是互聯網專欄《高效運維最佳實踐》及運維2.0官方公眾號。

提示:目前高效運維新群已經建立,歡迎加入。您可添加蕭田國個人微信號xiaotianguo8 為好友,進行申請,請備注“申請入群”。

重要提示:除非事先獲得授權,請在本公眾號發布2天后,才能轉載本文。尊重知識,請必須全文轉載,并包括本行。

責任編輯:武曉燕 來源: 高效運維
相關推薦

2009-09-15 21:21:54

IT服務運維管理摩卡軟件

2017-08-01 05:44:10

Dockerweave虛擬機

2012-05-15 09:57:39

運維安全\運維審計

2024-06-24 00:30:00

2017-06-23 11:20:00

DockerWeave內核

2009-01-14 10:04:22

2009-07-17 09:17:41

IT運維SiteView游龍科技

2024-08-14 16:09:10

2017-08-03 09:37:35

SparkStreamKafkaDirect

2012-05-16 15:06:07

華為

2010-11-25 12:40:10

泰然神州企業安全運維

2020-03-04 13:35:23

高可用MySQL數據庫

2020-12-08 12:50:17

向日葵遠程運維

2016-01-27 15:07:11

IT運維管理/呼叫中心

2019-12-05 08:44:20

MybatisSQL場景

2018-10-24 19:59:45

Kubernetes混合云云擴展

2016-07-26 11:33:57

易維幫助臺運維服務

2018-12-03 12:18:27

2010-01-15 19:40:50

BMCIT運維ITSM
點贊
收藏

51CTO技術棧公眾號

一区二区精品免费视频| 91国在线精品国内播放| 天堂在线中文在线| 亚洲综合图区| 91丨国产丨九色丨pron| 国产精品美女主播| 免费网站看av| 成人vr资源| 精品日韩av一区二区| 欧美一级黄色片视频| 国产黄色在线观看| 久久久久久久久久久久久夜| 亚洲aaaaaa| 日日噜噜噜噜人人爽亚洲精品| 久久在线播放| 精品一区二区三区三区| 一级黄色高清视频| 男人最爱成人网| 亚洲午夜久久久久中文字幕久| 欧美日本韩国国产| 亚洲精品一级片| 巨乳诱惑日韩免费av| 色哟哟亚洲精品一区二区| 亚洲精品第二页| 国产亚洲高清一区| 日本韩国精品在线| 欧美激情亚洲天堂| 日p在线观看| 久久综合色8888| 风间由美久久久| 国产精品久久久久久在线| 久久免费高清| 91av中文字幕| 久草免费在线视频观看| 91麻豆国产自产在线观看亚洲| 日韩av在线不卡| 中文字幕在线观看91| 伊人久久一区| 欧美日本在线播放| 国产又黄又猛视频| 小早川怜子影音先锋在线观看| 亚洲精品成人天堂一二三| 自拍另类欧美| 欧美高清视频| 中文字幕一区二区三区蜜月| 日本欧洲国产一区二区| 亚洲人视频在线观看| 成人av资源站| 国产一区二区高清不卡| 精品久久久无码中文字幕| 激情五月婷婷综合| 成人福利视频网| 在线观看免费高清视频| 美洲天堂一区二卡三卡四卡视频| 国产精品9999| 青青国产在线视频| 喷水一区二区三区| 国产精品丝袜视频| 在线观看国产精品视频| 久久激情五月激情| 成人免费视频在线观看超级碰| 中文字幕+乱码+中文字幕明步 | 亚洲精品一二三四五区| 亚洲第一二三四区| 欧美丝袜第三区| 91亚洲免费视频| 四虎国产精品成人免费影视| 91精品国产综合久久小美女| 免费观看黄网站| a看欧美黄色女同性恋| 亚洲精品videossex少妇| 成人无码www在线看免费| 亚洲人成亚洲精品| 这里只有精品视频在线| 91日韩中文字幕| 狠狠综合久久| 91av视频在线免费观看| 中文字幕一区二区三区四区免费看 | 欧洲精品在线视频| 亚洲精品国产精品国自产网站按摩| 蜜桃精品在线观看| 成人免费视频观看视频| 色综合888| 国产精品五月天| 久久久无码中文字幕久...| 黄色成人在线网| 色综合久久综合网欧美综合网| 成人在线观看a| 欧洲午夜精品| 亚洲国产精品yw在线观看| 国产精品高清无码在线观看| 天天av综合| 77777少妇光屁股久久一区| 亚洲精品国产欧美在线观看| 国产一区不卡精品| 欧美第一黄网| 1stkiss在线漫画| 色综合一区二区| 视频区 图片区 小说区| 自拍偷拍一区| 欧美黑人xxxx| 亚洲av综合一区| 成年人国产精品| 一本久久a久久精品vr综合| av在线资源| 91精品综合久久久久久| 国产中年熟女高潮大集合| 欧美 日韩 国产一区二区在线视频 | 先锋影音男人资源| 涩涩涩视频在线观看| 91精品国产一区二区| a天堂中文字幕| 激情欧美国产欧美| 91日韩在线播放| 三级网站在线看| 亚洲欧美中日韩| 精品久久久久久久免费人妻| 亚洲国产视频二区| 日韩中文字幕在线视频| 久久久久无码精品国产| 久久国产高清| 国产精品久久久久77777| 婷婷开心激情网| 中文字幕久久午夜不卡| 亚洲国产精品无码av| www一区二区三区| 一色桃子一区二区| 翔田千里88av中文字幕| 久久福利影视| 国产精品一区二区三区精品| 在线观看国产原创自拍视频| 91久久精品一区二区二区| 91精品人妻一区二区三区四区| 伊人久久大香线蕉无限次| 日韩精品一区二区三区swag | 国产精品的网站| 又色又爽又高潮免费视频国产| 99精品国产高清一区二区麻豆| 久久久精品在线观看| 久久99精品波多结衣一区| 国产盗摄女厕一区二区三区 | 一本色道88久久加勒比精品| 成人精品网站在线观看| 无码精品一区二区三区在线| 亚洲成av人片一区二区三区| 人妻体内射精一区二区三区| 黄色成人精品网站| 国产福利久久精品| av今日在线| 日韩经典中文字幕在线观看| 久久精品国产成人av| 91性感美女视频| 中国成人在线视频| 精品视频成人| 欧美国产激情18| 免费观看黄色av| 婷婷开心久久网| 成人免费av片| 日韩中文字幕91| 亚洲不卡中文字幕| 欧产日产国产精品视频| 亚洲免费精彩视频| 无码一区二区三区在线观看| 成人中文字幕合集| 国产午夜精品视频一区二区三区| 亚洲一二三区视频| 97在线观看视频国产| 你懂的视频在线| 在线观看不卡一区| 亚洲熟女少妇一区二区| 国产在线观看免费一区| 精品久久久无码人妻字幂| 久久精品国产亚洲5555| 98精品国产高清在线xxxx天堂| 欧美在线观看在线观看| 欧美日韩三级一区二区| 少妇愉情理伦三级| 国产精品一区二区无线| ww国产内射精品后入国产| 精品国产91乱码一区二区三区四区 | 欧美调教网站| 国产精品日韩欧美大师| 丝袜综合欧美| 亚洲网站在线播放| 精品国产免费无码久久久| 亚洲成人精品一区| 日韩欧美黄色网址| 成人在线综合网| 亚洲无吗一区二区三区| 国产精品分类| 久久久久久久久一区| 午夜精品久久久久久毛片| 久久久久久中文字幕| yiren22综合网成人| 日韩久久久精品| 无码人妻精品一区二| 一区二区免费看| 精品人伦一区二区| 丁香激情综合国产| 国产成人黄色网址| 99热这里只有成人精品国产| 中文字幕在线中文字幕日亚韩一区| 狠狠一区二区三区| 亚洲va久久久噜噜噜久久天堂| 中文在线资源| 欧美激情网站在线观看| aaa在线免费观看| 日韩电影免费在线观看中文字幕| 国产一区二区三区中文字幕| 欧美性生交xxxxxdddd| 国产成人无码aa精品一区| 国产视频一区不卡| 久久久国产精品无码| 国产精品一二二区| 天天综合网久久| 日韩中文字幕亚洲一区二区va在线| 欧美一区二区激情| 久久久国产精品| 亚洲高清视频一区| 国产精品嫩草影院在线看| 国产精品免费区二区三区观看 | 天堂一区二区三区| 日韩极品少妇| 国产精品久久亚洲7777| 国产亚洲字幕| 91精品视频免费| 日本精品久久| 国产日韩在线看| 巨胸喷奶水www久久久免费动漫| 91a在线视频| 国产欧洲在线| 97免费视频在线| 国产探花在线观看| 欧美大片免费观看| 中文字幕有码在线观看| 久久久91精品国产一区不卡| 日本a在线播放| 日韩中文字幕网站| 日p在线观看| 久久深夜福利免费观看| 免费**毛片在线| 日韩视频免费看| 黄色网址免费在线观看| 日日狠狠久久偷偷四色综合免费| 91sp网站在线观看入口| 日韩一区视频在线| 国产视频中文字幕在线观看| 超碰97人人做人人爱少妇| 污污影院在线观看| 久久久久久久97| а√在线中文网新版地址在线| 久久久影视精品| 妞干网免费在线视频| 欧美亚洲午夜视频在线观看| 成人av三级| 国产精品v片在线观看不卡| 日本黄色一区| 亚洲精品日韩av| 国产精品欧美大片| 牛人盗摄一区二区三区视频| 欧洲乱码伦视频免费| 一区二区在线观| 欧美成人久久| 18岁网站在线观看| 视频一区视频二区中文| 免费av不卡在线| caoporen国产精品视频| 国产人妻一区二区| 中文字幕一区三区| 精品一区在线视频| 色视频欧美一区二区三区| 亚洲综合免费视频| 日韩欧美成人一区| 香蕉视频网站在线| 中文字幕成人在线| 日韩av毛片| 国产成人精品a视频一区www| 香蕉成人在线| 精品亚洲第一| 99精品网站| 亚洲自偷自拍熟女另类| 免费在线观看视频一区| 国产精品19p| 国产视频911| 久久久久无码国产精品不卡| 在线日韩国产精品| 性欧美一区二区三区| 亚洲欧美日韩第一区| caopen在线视频| 日本不卡高字幕在线2019| 亚洲aⅴ网站| 久久久久天天天天| 天堂美国久久| www黄色在线| 懂色一区二区三区免费观看| 人人爽人人爽人人片| 亚洲自拍偷拍av| 亚洲天堂网在线观看视频| 亚洲国产日韩欧美在线图片 | 欧美劲爆第一页| 巨胸喷奶水www久久久 | 日韩在线视频精品| 国产原创中文在线观看| 国产精一区二区三区| 性欧美一区二区| 午夜影院久久久| 国产wwwwwww| 这里只有精品在线播放| 黑森林国产精品av| 97se在线视频| 99久久综合| 中文字幕有码av| 久久这里只有精品视频网| 久久精品性爱视频| 欧美一区二区精品| 91激情在线| 国产精品99久久久久久久久| 欧美成人专区| 大胆欧美熟妇xx| 国产在线看一区| 日本黄区免费视频观看| 色综合久久66| 青青草在线视频免费观看| 久久久日本电影| 在线精品视频一区| 日本老太婆做爰视频| 久国产精品韩国三级视频| 久久只有这里有精品| 午夜视频在线观看一区二区三区 | 亚洲人成五月天| 中文日产幕无线码一区二区| 精品国产_亚洲人成在线| 伊人激情综合| 成年人小视频在线观看| 亚洲综合激情另类小说区| 国产成人精品毛片| 美日韩精品免费观看视频| 9999在线精品视频| 中国成人在线视频| 国产一区二区三区综合| 日韩欧美综合视频| 91麻豆精品国产91久久久久久 | 色综合久久88色综合天天| 头脑特工队2免费完整版在线观看| 久久久久久一区二区三区| 国产成人澳门| 久在线观看视频| 91美女精品福利| 亚洲成熟少妇视频在线观看| 亚洲人成在线观看网站高清| av亚洲一区| 中文字幕一区二区三区5566| 国产一区二区三区日韩| 全网免费在线播放视频入口 | 久久久久久久久久久久国产精品| 亚洲高清在线精品| 四虎在线观看| 国产精品福利无圣光在线一区| 成人国产精品一级毛片视频| 性生活免费在线观看| 亚洲欧洲成人av每日更新| 精品国产99久久久久久宅男i| 欧美激情精品久久久久久蜜臀| 国产区精品视频在线观看豆花| 国产在线青青草| 中文字幕av一区二区三区| 国产女人18毛片水18精| 欧美激情视频在线观看| 亚洲黄页网站| 日韩av加勒比| 黄色精品一区二区| 成人欧美一区| 91在线观看免费网站| 精品999成人| 影音先锋制服丝袜| 欧美一区二区三区免费视频| 波多野一区二区| 亚洲美女搞黄| 成人黄色一级视频| 最好看的日本字幕mv视频大全| 欧美另类交人妖| 亚洲春色h网| 成人性生交视频免费观看| 狠狠色香婷婷久久亚洲精品| 三区四区电影在线观看| 动漫3d精品一区二区三区| 手机精品视频在线观看| 午夜免费激情视频| 亚洲人成网站999久久久综合| 秋霞影院一区| 亚洲少妇久久久| 亚洲高清免费视频| 日本天堂在线观看| 精选一区二区三区四区五区| 狠狠色伊人亚洲综合成人| 国产原创视频在线| 久久69精品久久久久久国产越南| 久久91麻豆精品一区| 国产精品一区二区无码对白| 欧美日韩久久一区二区|