成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

搞容器混搭搞出了線(xiàn)上 Redis 事故什么的

云計(jì)算 Redis
事情是這樣的, 現(xiàn)在有一個(gè) redis 3.0 集群節(jié)點(diǎn)都是裸 redis 或 host 網(wǎng)絡(luò)模式部署的容器 redis (基本上跟裸 redis 差不多), 需要把它們替換成 macvlan 網(wǎng)絡(luò)模式的 redis 容器, 以顯得我們的 dockerized redis cluster 很上檔次。然而……

事情是這樣的, 現(xiàn)在有一個(gè) redis 3.0 集群節(jié)點(diǎn)都是裸 redis 或 host 網(wǎng)絡(luò)模式部署的容器 redis (基本上跟裸 redis 差不多), 需要把它們替換成 macvlan 網(wǎng)絡(luò)模式的 redis 容器, 以顯得我們的 dockerized redis cluster 很上檔次.

這事情幾個(gè)月前也搞過(guò)一次毫無(wú)壓力.

然而這一次又搞, 就出岔子了. (這劇本不對(duì)啊摔)

于是開(kāi)始加了兩個(gè) macvlan 的容器到上述 redis 集群作為從節(jié)點(diǎn), 打算稍候 failover 替換掉主, 過(guò)了十分鐘左右群里炸毛, 說(shuō)數(shù)據(jù)都取不到, 或者格式不對(duì)...

上線(xiàn)一查, 發(fā)現(xiàn)正在加從節(jié)點(diǎn)的這個(gè)集群跟另一個(gè)集群的節(jié)點(diǎn)混到一起去了.

這里吐槽一下 redis 集群的協(xié)議, 兩個(gè)正常服務(wù)的集群可以直接通過(guò)一個(gè) cluster meet 合并成一個(gè)集群, 然后槽位分布亂了...

首先當(dāng)然是緊急恢復(fù)線(xiàn)上業(yè)務(wù), 先拉一個(gè)新集群出來(lái)再說(shuō) (所幸這個(gè)集群的數(shù)據(jù)不需要持久化).

結(jié)果, 新集群剛弄出來(lái), 又被合進(jìn)了上面那個(gè)集群. (這時(shí)我滿(mǎn)腦子都是某個(gè)科教片里兩個(gè)星系合并的一段視頻, 滿(mǎn)天都在炸! (論腦洞

然后 cluster nodes 看了一下, 發(fā)現(xiàn)集群里有幾個(gè)節(jié)點(diǎn)地址變成了 172.17.x.x, 這應(yīng)該是 docker 的內(nèi)部網(wǎng)段地址, 所以反應(yīng)過(guò)來(lái), 可能是 docker 網(wǎng)絡(luò)配置問(wèn)題, 將握手流量發(fā)給了錯(cuò)誤的節(jié)點(diǎn), 然后那些節(jié)點(diǎn)被并了進(jìn)來(lái).

這時(shí)候創(chuàng)建一個(gè)新網(wǎng)段有點(diǎn)來(lái)不及了 (還打了個(gè)電話(huà)給已經(jīng)請(qǐng)假回家的 @小六哇啦啦 老師...) 換了個(gè)思路, 把新 redis 換個(gè)端口部署, 再組個(gè)集群, 觀(guān)察了一會(huì)兒, 這方法起作用了 -.-!!

恢復(fù)了被炸得雞飛狗跳的線(xiàn)上業(yè)務(wù)之后, 就開(kāi)始排查問(wèn)題了.

線(xiàn)索還是之前 cluster nodes 看到的那個(gè) 172.17.x.x 網(wǎng)段, 測(cè)試確認(rèn)了一下, 從 docker 容器內(nèi)連宿主機(jī), 宿主機(jī) accept 得到的會(huì)是 172.17.x.x 這個(gè)地址. 而容器內(nèi)路由表是這樣的

 

確實(shí)如果宿主機(jī)的 IP 是 10.100.1.100 那么流量走的是 eth0 也就是 172.17.x.x 網(wǎng)卡. (10.222.0.0/16 是容器 macvlan 地址)

之后就明白了, 172.17.x.x 這樣的網(wǎng)卡地址在不同物理機(jī)上是可能相同的. 也就是說(shuō), 遭遇的問(wèn)題可能是如下過(guò)程所致

 

  • 四個(gè) redis #a #b #c #d
  • #a #b 是兩個(gè) host 網(wǎng)絡(luò)的 redis, 在同一個(gè)集群中, #d 是 macvlan 部署的 redis, 在另一個(gè)集群中
  • #c 是一個(gè)空閑的 redis, 它與 #d 恰好有相同的 eth0 地址
  1.  #c 通過(guò) eth0 向 #a 發(fā)送了一個(gè) handshake
  2.  #a 確認(rèn), 這時(shí), 它認(rèn)為 #c 的地址是 172.17.0.55
  3. #a 將新節(jié)點(diǎn)地址廣播給 #b
  4. #b 向 172.17.0.55 發(fā)送一個(gè)握手請(qǐng)求, 然而, 此地址在它所在機(jī)器上對(duì)應(yīng)的是 #d, 之后兩個(gè)集群就混一起去了

這也解釋了為啥幾個(gè)月之前這么搞的時(shí)候沒(méi)出問(wèn)題, 應(yīng)該是那時(shí)候運(yùn)氣好沒(méi)有相同地址的容器; 同時(shí)也解釋了為啥不是每個(gè)純 macvlan 模式的 redis 集群都中槍.

后來(lái)在測(cè)試機(jī)房找了兩個(gè)恰好相同網(wǎng)卡的容器, 按上述思路搭了集群試了試, 果然重現(xiàn)了.

解決方案

  • 因噎廢食 : 以后別這么混搭玩了
  • 繞過(guò) : 端口號(hào)不一樣法
  • 改默認(rèn)路由 : 默認(rèn)就走 vlan 網(wǎng)卡, 不過(guò)這樣的話(huà)不能訪(fǎng)問(wèn)外網(wǎng), 對(duì) redis 而言沒(méi)問(wèn)題, 但其他業(yè)務(wù)可能就不行了
  • 加路由 : 其實(shí)可以通過(guò)在容器內(nèi)加一條路由 10.100.0.0/16 走 vlan 這樣宿主機(jī) accept 到的地址就會(huì)是機(jī)房***的 vlan 網(wǎng)卡地址了, 這個(gè)方案 @CMGS 正在評(píng)估中

EOF

原文鏈接:http://m.douban.com/note/520415058/?bid=Mk5VloIg3M8&from=groupmessage&isappinstalled=0&ADUIN=187366795&ADSESSION=1444702325&ADTAG=CLIENT.QQ.5431_.0&ADPUBNO=26497

責(zé)任編輯:Ophira 來(lái)源: 豆瓣
相關(guān)推薦

2014-07-28 15:35:27

混搭NET技術(shù)

2015-07-20 15:06:18

圖文混搭源碼

2023-02-16 08:55:13

2019-04-10 05:00:31

IT事故CIO網(wǎng)絡(luò)安全

2022-11-03 17:33:40

JavaString 類(lèi)型

2020-05-07 11:00:24

Go亂碼框架

2010-02-26 13:42:32

Office 2010SharePoint

2013-10-08 11:26:01

云計(jì)算IT人才復(fù)合型人才

2010-04-15 17:57:38

SOA企業(yè)混搭應(yīng)用用戶(hù)體驗(yàn)

2011-08-10 09:02:22

SaaS云計(jì)算

2017-06-17 08:03:43

區(qū)塊鏈架構(gòu)技術(shù)

2024-09-19 13:04:03

2022-04-08 08:48:16

線(xiàn)上事故日志訂閱者

2024-11-26 06:53:01

雪花算法最大值

2013-04-03 11:26:19

珠江投資控股集團(tuán)微軟Windows Ser

2013-01-31 15:56:42

戴爾XPS 10平板電

2021-10-13 06:49:14

事故復(fù)盤(pán)ID

2009-07-29 17:59:53

ibmdwWeb

2021-05-27 07:54:21

JavaStateAQS

2023-01-16 14:49:00

MongoDB數(shù)據(jù)庫(kù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 日韩视频 中文字幕 | www.嫩草 | 日本中文字幕一区 | 日韩视频在线一区 | 国产成人精品一区二区三区四区 | 色综合视频 | 久久亚洲天堂 | 欧美vide| 欧美另类视频在线 | 亚洲福利在线视频 | 免费一区二区三区在线视频 | 亚洲精品久久久久久国产精华液 | 在线视频91 | 国产丝袜一区二区三区免费视频 | 久久国内精品 | 伊人国产精品 | 国产乱一区二区三区视频 | 成人在线视频一区 | 日韩成人免费av | 狠狠av | 国产黄色在线观看 | 久久精品这里 | 国产高清视频 | 久久久精品久久 | 国产一区二区三区www | 亚洲精品视频观看 | 国产 欧美 日韩 一区 | 亚洲精视频 | 久久久新视频 | 日韩高清电影 | 免费看片国产 | 久久综合入口 | 成人性视频免费网站 | 欧美日韩国产精品 | 国产91视频免费 | 欧美日本亚洲 | 久久精品国产a三级三级三级 | 四虎影视在线 | 国产精品色综合 | 国产视频一视频二 | 中文字幕高清视频 |