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

Redis集群管理工具Redis-sentinel原理分析

運(yùn)維 系統(tǒng)運(yùn)維 Redis
Redis作為高性能的key-value存儲(chǔ),一直在單實(shí)例上表現(xiàn)良好,但是長(zhǎng)期以來一直缺乏一種官方的高可用方案支持。于是Redis-sentinel應(yīng)運(yùn)而生,提供了對(duì)客戶端透明的高可用支持。本文對(duì)Redis-sentinel的原理進(jìn)行了系統(tǒng)的講解。希望對(duì)大家有幫助。

Redis-sentinel是Redis實(shí)例的監(jiān)控管理、通知和實(shí)例失效備援服務(wù),是Redis集群的管理工具。在一般的分布式中心節(jié)點(diǎn)數(shù)據(jù)庫(kù)中,Redis-sentinel的作用是中心節(jié)點(diǎn)的工作,監(jiān)控各個(gè)其他節(jié)點(diǎn)的工作情況并且進(jìn)行故障恢復(fù),來提高集群的高可用性。

Redis-sentinel是Redis的作者antirez在今年6月份完成的,因?yàn)镽edis實(shí)例在各個(gè)大公司的應(yīng)用,每個(gè)公司都需要一個(gè)Redis集群的管理工具,被迫都自己寫管理工具來管理Redis集群,antirez考慮到社區(qū)的急迫需要,花了幾個(gè)星期寫出了Redis-sentinel。

Redis-sentinel的三大功能:監(jiān)測(cè)、通知、自動(dòng)故障恢復(fù)。首先Redis-sentinel要建立一個(gè)監(jiān)控的master列表,然后針對(duì)master列表的每個(gè)master獲取監(jiān)控其的sentinels和slaves供以后故障恢復(fù)使用。

自動(dòng)發(fā)現(xiàn)sentinel和slave

一個(gè)sentinel實(shí)例的監(jiān)控master在配置文件中指定,如sentinel A在配置文件中指定管理的master ip:port列表,并且指定連接失敗超時(shí)的時(shí)間和是否可以故障恢復(fù)等參數(shù)。這樣,sentinel A就建立了監(jiān)控的master列表。

sentinel A作為客戶端建立對(duì)其監(jiān)控master 1的pub/sub連接和命令傳輸連接,pub/sub連接的目的是通過消息傳遞來獲取監(jiān)控master 1的所有sentinels,具體方式是訂閱”sentinel:hello”頻道,并這個(gè)頻道publish 自己的host信息,這樣,所有監(jiān)控master 1的sentinels都通過訂閱master 1的“sentinel:hello”頻道來獲取其他sentinels的信息。sentinel A就建立了master 1的sentinels列表。 sentinel A還通過間斷的info命令獲取master 1的slaves列表,如果連接超時(shí)或者失敗,就會(huì)進(jìn)入故障處理的例程。

故障恢復(fù)準(zhǔn)備

Redis-sentinel定義了故障的master兩種狀態(tài),O_DOWN(objectively)和S_DOWN(subobjectively)。當(dāng)sentinel A連接master 1失敗后,sentinel A認(rèn)定master 1為subobjectively狀態(tài),然后sentinel A查看監(jiān)控master 1的sentinels的認(rèn)定情況。因?yàn)閟entinel之間會(huì)建立連接并且不斷的發(fā)起info命令詢問和回應(yīng),因此在sentinel A認(rèn)定master 1 S_DOWN后,sentinel A通過SENTINEL IS-MASTER-DOWN-BY-ADDR命令來不斷獲得其他sentinel的認(rèn)定情況,如果有超過quorum(配置中指定)個(gè)sentinel認(rèn)定master 1已經(jīng)DOWN,那么就確定master 1為O_DOWN。然后sentinel A必須有master 1的can failover權(quán)限,這也是配置文件指定的。接著,sentinel A需要得知master 1的leader sentinel,由leader來進(jìn)行master 1的錯(cuò)誤恢復(fù)。

master 1的leader sentinel由選舉產(chǎn)生,每個(gè)監(jiān)控master 1的,并且具有錯(cuò)誤恢復(fù)權(quán)限的sentinel都需要進(jìn)行一次叫做subjective leader判斷,也就是sentinel自己認(rèn)定的leader,然后sentinel之間通過SENTINEL IS-MASTER-DOWN-BY-ADDR命令交流leader的認(rèn)定情況,然后最終得到一個(gè)共識(shí)。

然后由這個(gè)master 1的leader sentinel來啟動(dòng)錯(cuò)誤恢復(fù)例程。

故障處理

sentinel A作為master 1的leader,會(huì)選取一個(gè)master 1的slave作為新的master。slave的選取是根據(jù)一個(gè)判斷DNS情況的優(yōu)先級(jí)來得到,優(yōu)先級(jí)相同通過runid的排序得到,但目前優(yōu)先級(jí)設(shè)定還沒實(shí)現(xiàn),所以直接獲取runid排序得到slave 1。

然后發(fā)送命令slaveof no one來取消slave 1的slave狀態(tài)來轉(zhuǎn)換為master。當(dāng)其他sentinel觀察到該slave成為master后,就知道錯(cuò)誤處理例程啟動(dòng)了。sentinel A然后發(fā)送給其他slave slaveof new-slave-ip-port 命令,當(dāng)所有slave都配置完后,sentinel A從監(jiān)測(cè)的masters列表中刪除故障master,然后通知其他sentinels。

總結(jié)

Redis-sentinel作為一個(gè)集群管理工具,基本滿足了要求。但是Redis集群的需求卻仍然存在。Redis集群作為分區(qū)結(jié)果,分區(qū)的配置仍然需要客戶端或者代理協(xié)議實(shí)現(xiàn),Redis集群作為一個(gè)整體還需要更長(zhǎng)的路。Redis-cluster的草案早于出爐,但是實(shí)現(xiàn)卻已經(jīng)停留了很久。antriez承諾在Redis 3.0推出Redis-cluster功能。

責(zé)任編輯:黃丹 來源: wzxue.com
相關(guān)推薦

2015-12-29 10:24:19

管理工具集群管理

2011-08-12 10:38:09

MongoDB

2025-01-13 08:30:00

開源Redis可視化

2023-06-10 23:09:40

Redis場(chǎng)景內(nèi)存

2020-10-30 11:18:47

網(wǎng)絡(luò)技術(shù)工具

2020-09-30 14:05:22

網(wǎng)絡(luò)管理

2009-04-24 21:13:45

服務(wù)器虛擬化Vmware

2012-12-06 11:31:40

虛擬化

2012-04-09 09:43:49

云計(jì)算云管理

2024-04-17 13:14:46

2021-04-01 08:50:54

SentinelRedis 集群原理

2020-04-29 09:42:51

Linux 服務(wù)器 工具

2023-10-30 14:49:43

2014-03-28 11:15:42

phpmyadminMySQL管理

2012-03-01 10:04:02

虛擬化云計(jì)算混合云

2022-05-06 12:04:24

Ansible管理工具

2013-07-15 15:00:26

項(xiàng)目管理工具

2021-03-04 12:55:01

systemd進(jìn)程管理工具Linux

2013-07-17 09:54:17

2023-03-07 14:21:57

點(diǎn)贊
收藏

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

主站蜘蛛池模板: 天天射天天干 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 国产精品一区网站 | 亚洲精品国产偷自在线观看 | 中文字幕国产精品 | 一级一级毛片免费看 | 成人久久一区 | 亚洲视频欧美视频 | 三级在线观看 | 在线国产中文字幕 | 亚洲精品女优 | 国产片网站 | 久久精品视频一区二区三区 | 久久三区 | 欧美色偷拍 | 欧美黄色大片在线观看 | 中文字幕视频在线观看 | 天堂三级 | 久久99精品久久 | 一区免费观看 | 日本午夜在线视频 | 久久一区二区视频 | 日本天天操 | 欧美精品一区二区三区在线播放 | 久久ww| 欧美色图综合网 | 最新国产精品 | 亚洲精品乱码久久久久久蜜桃91 | 区一区二区三在线观看 | 国产成人综合在线 | 少妇午夜一级艳片欧美精品 | 精品九九 | 亚洲三区视频 | 密桃av | 天天综合永久 | 亚洲精品欧美一区二区三区 | 成人精品免费 | 国产高清在线精品一区二区三区 | 成人性视频免费网站 | 久草色视频 | 国产传媒视频在线观看 |