青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Benjamin

靜以修身,儉以養德,非澹薄無以明志,非寧靜無以致遠。
隨筆 - 398, 文章 - 0, 評論 - 196, 引用 - 0
數據加載中……

Redis集群的Sentinel(哨兵)模式的搭建

一、哨兵模式整體架構:主從結構+哨兵(sentinel),實現容災的自動切換。
      一個主節點(master)可擁有多個從節點(slave),從節點實現對主節點的復制,保證數據同步。而哨兵(sentinel)則對各節點進行監控,主要包括主節點存活檢測、主從運行情況檢測等,一旦主節點宕機,哨兵可自動進行故障轉移 (failover)、主從切換通常建議至少部署三個哨兵實例,這樣即使一個哨兵實例發生故障,其他兩個可以繼續進行故障檢測和轉移決策


二、主從配置
:
1配置文件中的各個參數,詳解
2、主機(master)配置:
bind:0.0.0.0   #表示允許所有遠程訪問。如果想指定限制訪問,可設置對應的 ip。
port:6379 #關閉保護模式,可以外部訪問。 
daemonize:yes # 設置為后臺啟動。
logfile:./redis.log # 日志文件。
requirepass:pwdtest@2019   #設置 redis 連接密碼。
masterauth:pwdtest@2019    #slave 服務連接 master 的密碼

3、從機(slave)的配置和主機相似,不同的地方是需要使用replicaof指定主機(master)的IP地址和端口,需要注意的是老版本使用的是 slaveof
當本機為 slave 服務時,設置 master 服務的IP地址及端口,在 redis 啟動的時候會自動跟 master 進行數據同步
4、啟動:
切換到 bin 目錄,使用./redis-server即可啟動 redis 服務,但是這種方式沒有指明配置文件,redis 將采用默認配置,所以我們需要讓 redis 按照我們的配置文件來啟動,啟動時指定剛才我們復制到 etc 文件夾下的redis.conf
三、Sentinel(哨兵)模式:
1、哨兵模式詳解
    Redis Sentinel是Redis 的高可用性解決方案,由一個或多個Sentinel(哨兵)實例組成。它可以監視任意多個主服務器,以及這些主服務器屬下的所有從服務器,并在被監視的主服務器進入下線狀態時,自動將下線主服務器屬下的某個從服務器升級為新的主服務器,它的主要功能如下:
    監控(Monitoring):Sentinel會不斷地檢查你的主服務器和從服務器是否運作正常。
    通知(Notification):當被監控的某個 Redis 服務器出現問題時, Sentinel可以通過API向管理員或者其他應用程序發送通知。
    故障遷移:當主服務器不能正常工作時,Sentinel會自動進行故障遷移,也就是主從切換。
     統一的配置管理:連接者詢問sentinel取得主從的地址。

2、原理:
     Sentinel 使用的算法核心是 Raft 算法,主要用途就是用于分布式系統,系統容錯,以及Leader選舉,每個Sentinel都需要定期的執行以下任務:
          每個 Sentinel 會自動發現其他 Sentinel 和從服務器,它以每秒鐘一次的頻率向它所知的主服務器、從服務器以及其他 Sentinel 實例發送一個 PING 命令。
          如果一個實例(instance)距離最后一次有效回復 PING 命令的時間超過 down-after-milliseconds 選項所指定的值, 那么這個實例會被 Sentinel 標記為主觀下線。 有效回復可以是: +PONG 、 -LOADING 或者 -MASTERDOWN 。
           如果一個主服務器被標記為主觀下線, 那么正在監視這個主服務器的所有Sentinel要以每秒一次的頻率確認主服務器的確進入了主觀下線狀態。
           如果一個主服務器被標記為主觀下線, 并且有足夠數量的Sentinel(至少要達到配置文件指定的數量)在指定的時間范圍內同意這一判斷, 那么這個主服務器被標記為客觀下線。
            在一般情況下, 每個Sentinel會以每 10 秒一次的頻率向它已知的所有主服務器和從服務器發送 INFO 命令。 當一個主服務器被Sentinel標記為客觀下線時,Sentinel向下線主服務器的所有從服務器發送 INFO 命令的頻率會從 10 秒一次改為每秒一次。
            當沒有足夠數量的Sentinel同意主服務器已經下線, 主服務器的客觀下線狀態就會被移除。 當主服務器重新向Sentinel的 PING 命令返回有效回復時, 主服務器的主管下線狀態就會被移除。
 3、哨兵的配置主要就是修改sentinel.conf配置文件中的參數,在Redis安裝目錄即可看到此配置文件

# 哨兵sentinel實例運行的端口,默認26379  
port 26379
# 哨兵sentinel的工作目錄
dir ./
# 是否開啟保護模式,默認開啟。
protected-mode:no
# 是否設置為后臺啟動。
daemonize:yes

# 哨兵sentinel的日志文件
logfile:./sentinel.log

# 哨兵sentinel監控的redis主節點的 
## ip:主機ip地址
## port:哨兵端口號
## master-name:可以自己命名的主節點名字(只能由字母A-z、數字0-9 、這三個字符".-_"組成。)
## quorum:當這些quorum個數sentinel哨兵認為master主節點失聯 那么這時 客觀上認為主節點失聯了  
# sentinel monitor <master-name> <ip> <redis-port> <quorum>  
sentinel monitor mymaster 127.0.0.1 6379 2

# 當在Redis實例中開啟了requirepass,所有連接Redis實例的客戶端都要提供密碼。
# sentinel auth-pass <master-name> <password>  
sentinel auth-pass mymaster 123456  

# 指定主節點應答哨兵sentinel的最大時間間隔,超過這個時間,哨兵主觀上認為主節點下線,默認30秒  
# sentinel down-after-milliseconds <master-name> <milliseconds>
sentinel down-after-milliseconds mymaster 30000  

# 指定了在發生failover主備切換時,最多可以有多少個slave同時對新的master進行同步。這個數字越小,完成failover所需的時間就越長;反之,但是如果這個數字越大,就意味著越多的slave因為replication而不可用。可以通過將這個值設為1,來保證每次只有一個slave,處于不能處理命令請求的狀態。
# sentinel parallel-syncs <master-name> <numslaves>
sentinel parallel-syncs mymaster 1  

# 故障轉移的超時時間failover-timeout,默認三分鐘,可以用在以下這些方面:
## 1. 同一個sentinel對同一個master兩次failover之間的間隔時間。  
## 2. 當一個slave從一個錯誤的master那里同步數據時開始,直到slave被糾正為從正確的master那里同步數據時結束。  
## 3. 當想要取消一個正在進行的failover時所需要的時間。
## 4.當進行failover時,配置所有slaves指向新的master所需的最大時間。不過,即使過了這個超時,slaves依然會被正確配置為指向master,但是就不按parallel-syncs所配置的規則來同步數據了
# sentinel failover-timeout <master-name> <milliseconds>  
sentinel failover-timeout mymaster 180000

# 當sentinel有任何警告級別的事件發生時(比如說redis實例的主觀失效和客觀失效等等),將會去調用這個腳本。一個腳本的最大執行時間為60s,如果超過這個時間,腳本將會被一個SIGKILL信號終止,之后重新執行。
# 對于腳本的運行結果有以下規則:  
## 1. 若腳本執行后返回1,那么該腳本稍后將會被再次執行,重復次數目前默認為10。
## 2. 若腳本執行后返回2,或者比2更高的一個返回值,腳本將不會重復執行。  
## 3. 如果腳本在執行過程中由于收到系統中斷信號被終止了,則同返回值為1時的行為相同。
# sentinel notification-script <master-name> <script-path>  
sentinel notification-script mymaster /var/redis/notify.sh

# 這個腳本應該是通用的,能被多次調用,不是針對性的。
# sentinel client-reconfig-script <master-name> <script-path>
sentinel client-reconfig-script mymaster /var/redis/

 4、搭建:編輯 sentinel.conf,配置文件修改如
//端口默認為26379。 port:26379 //關閉保護模式,可以外部訪問。 protected-mode:no //設置為后臺啟動。 daemonize:yes //日志文件。 logfile:./sentinel.log //指定主機IP地址和端口,并且指定當有2臺哨兵認為主機掛了,則對主機進行容災切換。 sentinel monitor mymaster 192.168.231.130 6379 2 //當在Redis實例中開啟了requirepass,這里就需要提供密碼。 sentinel auth-pass mymaster pwdtest@2019 //這里設置了主機多少秒無響應,則認為掛了。 sentinel down-after-milliseconds mymaster 3000 //主備切換時,最多有多少個slave同時對新的master進行同步,這里設置為默認的1。 sentinel parallel-syncs mymaster 1 //故障轉移的超時時間,這里設置為三分鐘。 sentinel failover-timeout mymaster 180000

 5、啟動:redis-sentinel ./entinel.conf(配置文件路徑)
三、缺點:
資源使用:每個 Sentinel 實例也會占用系統資源,包括 CPU 和內存,尤其是在大型集群中。
網絡依賴性:Sentinel 的效果很大程度上依賴于網絡的可靠性。網絡分區或是延遲高的情況可能會導致誤判或故障轉移延遲。
冷啟動問題:如果所有 Redis 節點同時宕機,Sentinel 系統無法自動恢復,需要手動干預來重新設置主節點和從節點。
數據丟失風險:在發生故障轉移時,如果還有未同步到從節點的數據,那么這部分數據可能會丟失。這是因為 Redis 使用異步復制。
四、寫操作局限性
單點瓶頸在一主多從架構中,所有寫操作都必須由主節點處理。這意味著主節點的處理能力和資源(CPU、內存、網絡帶寬)將直接限制系統的寫入吞吐量。
數據同步延遲盡管從節點可以提供讀擴展性,它們依賴于與主節點的數據同步。高寫負載情況下,數據復制到從節點可能會經歷延遲,影響了數據的最終一致性。
故障風險如主節點出現故障,整個系統的寫能力會喪失直到故障轉移完成并且一個從節點被提升為新的主節點。這個過程可能會導致服務中斷。


posted on 2024-07-11 22:22 Benjamin 閱讀(91) 評論(0)  編輯 收藏 引用 所屬分類: 數據庫

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            日韩午夜在线| 亚洲先锋成人| 久久久久久国产精品mv| 在线亚洲免费视频| 一卡二卡3卡四卡高清精品视频 | 亚洲国产精品成人| 亚洲国产精品一区二区www在线 | 国产精品色在线| 欧美在线三级| 亚洲一区二区免费在线| 亚洲福利专区| 日韩午夜在线观看视频| 一区二区三区四区精品| 欧美亚洲视频| 欧美1区2区视频| 99av国产精品欲麻豆| 先锋影音国产精品| 蜜臀av一级做a爰片久久| 欧美日韩一区二区三区免费 | 国产精品亚洲激情| 在线观看亚洲专区| 亚洲一区三区视频在线观看| 久久亚洲精品一区二区| 亚洲精品护士| 久久国产精品99久久久久久老狼 | 久久精品国产99精品国产亚洲性色 | 免费不卡在线视频| 欧美乱在线观看| 国产精品视频免费观看| 在线观看日韩一区| 亚洲欧美一区二区精品久久久| 老司机午夜免费精品视频| 亚洲午夜久久久| 欧美激情导航| 一区二区三区自拍| 欧美一区二区三区精品| 亚洲精品一品区二品区三品区| 欧美在线观看一区| 国产精品美女一区二区| aa亚洲婷婷| 在线视频欧美精品| 亚洲精品一区二区网址 | 久久国产精品久久精品国产| 国产视频综合在线| 一区二区免费在线观看| 亚洲大胆女人| 久久国产精品黑丝| 国产午夜久久久久| 欧美一级艳片视频免费观看| 99综合视频| 欧美日本韩国在线| 99re6这里只有精品| 欧美电影在线观看| 狂野欧美激情性xxxx欧美| 国际精品欧美精品| 久久久久久久久久码影片| 性欧美xxxx大乳国产app| 久久亚洲色图| 国产目拍亚洲精品99久久精品| 亚洲国产欧美一区二区三区久久| 亚洲一级高清| 欧美日韩一区二区三区高清| 亚洲国产精品久久久| 老牛嫩草一区二区三区日本| 午夜久久影院| 国产在线拍揄自揄视频不卡99| 欧美一区视频在线| 欧美一级精品大片| 国产一区成人| 你懂的亚洲视频| 欧美成人精品不卡视频在线观看 | 亚洲在线观看| 国产日韩欧美中文| 巨胸喷奶水www久久久免费动漫| 欧美一区二区| 亚洲欧美精品一区| 欧美激情视频在线免费观看 欧美视频免费一| 久久综合色播五月| 国产日韩欧美电影在线观看| 欧美怡红院视频| 久久av老司机精品网站导航| 国产婷婷97碰碰久久人人蜜臀| 久久国产免费看| 久久久久免费| aa级大片欧美| 性欧美videos另类喷潮| 亚洲黑丝一区二区| 99视频日韩| 国内欧美视频一区二区| 欧美国产日韩精品| 欧美视频1区| 精品动漫av| 久久av资源网站| 欧美尤物巨大精品爽| 亚洲国产天堂久久综合网| 亚洲人体1000| 国产精品毛片va一区二区三区 | 亚洲精品一二三| 国产目拍亚洲精品99久久精品| 玖玖玖免费嫩草在线影院一区| 欧美国产视频在线观看| 欧美一区二区免费观在线| 久久先锋影音av| 亚洲影视在线播放| 美女精品在线观看| 午夜在线成人av| 欧美成人精品不卡视频在线观看| 136国产福利精品导航| av成人激情| 亚洲国产精品一区| 午夜精品美女自拍福到在线| 91久久在线播放| 欧美一级视频精品观看| 99re这里只有精品6| 久久国产精品黑丝| 亚洲欧美福利一区二区| 欧美精品九九| 欧美顶级艳妇交换群宴| 国产一区二区在线免费观看| 亚洲精品乱码| 亚洲激情视频| 久久午夜色播影院免费高清| 久久久999精品视频| 国产精品久久久久77777| 91久久国产自产拍夜夜嗨| …久久精品99久久香蕉国产 | 激情亚洲一区二区三区四区| 亚洲在线一区二区| 亚洲欧美日韩精品综合在线观看| 欧美精品激情| 亚洲黄色成人| 亚洲欧洲日产国码二区| 国产一区二区三区最好精华液| 免费日韩精品中文字幕视频在线| 国产精品视频一区二区高潮| 亚洲乱码一区二区| 亚洲国产精品va在线观看黑人 | 欧美精品v日韩精品v国产精品| 久久三级福利| 精品动漫av| 乱人伦精品视频在线观看| 久久频这里精品99香蕉| 国产婷婷一区二区| 久久精品国产第一区二区三区| 欧美在线视频一区二区| 国产精品少妇自拍| 午夜一级久久| 久热精品在线视频| 亚洲风情在线资源站| 免费亚洲网站| 99精品欧美一区二区蜜桃免费| 中文日韩在线视频| 国产精品视频免费| 久久国产主播| 亚洲高清在线精品| 亚洲深夜激情| 国产日韩三区| 玖玖玖国产精品| 亚洲免费高清| 久久精品国产久精国产思思| 一区二区三区在线免费观看| 欧美激情影音先锋| 午夜精品成人在线视频| 美日韩丰满少妇在线观看| 999亚洲国产精| 国产欧美日韩专区发布| 免费视频一区| 亚洲欧美日韩国产综合| 亚洲福利av| 欧美在线视频播放| 亚洲另类一区二区| 国产亚洲免费的视频看| 欧美国产日韩一二三区| 亚洲一区精品在线| 亚洲电影有码| 久久久久久色| 亚洲一区二区精品在线| 亚洲国产欧美久久| 国产精品一卡二| 欧美激情1区2区3区| 久久精品国产v日韩v亚洲 | 久久久亚洲午夜电影| 日韩一级免费| 欧美国产综合一区二区| 香蕉成人久久| 日韩午夜在线电影| 黑人操亚洲美女惩罚| 欧美四级在线观看| 欧美v日韩v国产v| 午夜精品一区二区三区在线视| 91久久线看在观草草青青| 久久久久久自在自线| 亚洲一二三四区| 亚洲国产综合在线看不卡| 国产一区二区成人久久免费影院| 久久综合久久综合这里只有精品| 亚洲制服av| 亚洲特级片在线| 亚洲精品国产无天堂网2021| 美女尤物久久精品|