linux配置系列之redis哨兵配置

一脚囊、浩言

很精辟的一段話,"未曾清貧難做人,不經(jīng)打擊永天真;成熟不過是善于隱藏,滄桑不過是無淚有傷沪斟。"

二、redis的高可用

redis的主從配置比較容易暇矫,主從配置后主之,主主要進(jìn)行寫的操作,從主要進(jìn)行讀的操作,那么如果主掛了,是不是就沒法進(jìn)行寫了?所以redis中可以進(jìn)行哨兵的配置,具有高可用性李根,即是在主掛了之后,哨兵檢測到后槽奕,會在從中進(jìn)行投票,投票數(shù)多的晉升為主。這個配置可折騰我了房轿,按照找的資料進(jìn)行了哨兵的配置粤攒,可是當(dāng)我把主服務(wù)停掉之后,從還在一致嘗試連接主

2.1初次配置問題

啟動哨兵日志

Paste_Image.png

停掉主后從的日志

Paste_Image.png

停掉后哨兵中,日志情況

Paste_Image.png

2.2解決如下

就是這個問題我一直嘗試找到解決辦法冀续,看了其中" sentinel-16379.conf"中的配置差不多琼讽,跟網(wǎng)上的一樣。但是就是不行洪唐。
sentinel-16379.conf配置如下

Paste_Image.png

port 26379
dir "/tmp"
sentinel myid d0d116de4fe76badfeea68e27b0e7c6ac0397f8b
sentinel monitor mymaster 10.10.39.105 16380 1
sentinel down-after-milliseconds mymaster 600
sentinel failover-timeout mymaster 1800
sentinel auth-pass mymaster 123456
maxclients 4064
sentinel config-epoch mymaster 13740
sentinel leader-epoch mymaster 13740
sentinel known-slave mymaster 10.10.39.104 16379
sentinel current-epoch 13740

這是我把這個配置文件的注釋和空格都去掉后的結(jié)果
實際中我修改了如下幾個配置

sentinel monitor mymaster 10.10.39.105 16380 1
sentinel down-after-milliseconds mymaster 600
sentinel failover-timeout mymaster 1800
sentinel auth-pass mymaster 123456

其他的可能都是自動生成的钻蹬。當(dāng)然你也可以自己指定日志位置。
auth-pass是因為我的主中做了配置密碼了凭需。
官網(wǎng)的配置說明:https://redis.io/topics/sentinel

Paste_Image.png

所以那為什么我的哨兵沒有起作用了,最后我找了公司運維一起看,問題的原因就是我的從中的bind的這個屬性沒有做配置问欠。

bind 10.10.39.105

加上了這個,all done!!!
如果你直接使用

./src/redis-cli  -p 13680

報錯如下

Could not connect to Redis at 127.0.0.1:16380: Connection refused
Could not connect to Redis at 127.0.0.1:16380: Connection refused

因為bind只配置了10.10.39.105所以連接如下

 ./src/redis-cli -h 10.10.39.105 -p 16380

2.3測試哨兵

哨兵啟動結(jié)果


Paste_Image.png
Paste_Image.png

干掉主進(jìn)程

kill_process_Image.png

哨兵的日志打印狀況

sen_log_Image.png

從服務(wù)器的日志情況:

slave_log_Image.png

連接39.105設(shè)置數(shù)據(jù)如下

Paste_Image.png

2.4此時在啟動39.104再次測試

哨兵監(jiān)控如下:

sen_info_new_Image.png

39.105的主上顯示已經(jīng)連接上
Paste_Image.png

39.104本身顯示連上主
Paste_Image.png

測試從是否可以設(shè)置數(shù)據(jù)

Paste_Image.png

在主上設(shè)置數(shù)據(jù)

Paste_Image.png

在從上get數(shù)據(jù)

Paste_Image.png

三:問題說明
上面也說了粒蜈,第一次沒有成功的原因是因為bind問題

# By default, if no "bind" configuration directive is specified, Redis listens
# for connections from all the network interfaces available on the server.
# It is possible to listen to just one or multiple selected interfaces using
# the "bind" configuration directive, followed by one or more IP addresses.
#
# Examples:
#
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#
# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
# internet, binding to all the interfaces is dangerous and will expose the
# instance to everybody on the internet. So by default we uncomment the
# following bind directive, that will force Redis to listen only into
# the IPv4 lookback interface address (this means Redis will be able to
# accept connections only from clients running into the same computer it
# is running).
#
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

我嘗試翻譯下如下

默認(rèn)的,如果沒有bind的配置指令,redis監(jiān)聽服務(wù)上的所有連接,如果你僅僅監(jiān)聽一個或者多個的話,bind的配置,按照如下的一個或者多個ip的方式
警告:如果電腦上的redis直接暴露給網(wǎng)絡(luò),綁定所有的了地址是危險的并且將會暴露給在網(wǎng)路上的每一個人顺献。所以我們默認(rèn)的取消注釋,強(qiáng)制的配置了一個IPV4的回環(huán)地址。(那就意味著在redis運行時只可以接收來自本電腦的連接)枯怖。
所以對于指定本機(jī)的ip的問題注整,我的理解就是,在主掛了后,哨兵需要連接到從,喚醒從并修改從的配置,如果不指定或者指定127.0.0.1是不行的,前一個是太多選擇沒有唯一,后面一個也說了只能在自己的電腦上連接肿轨。

四:浩語

                                           __                                                        
                            __  _  ____ __|  |__ _____    ___
                            \ \/ \/ /  |  \  |  \\__  \  /  _ \   
                             \     /|  |  /   Y  \/ __ \(  <_> )
                              \/\_/ |____/|___|  (____  /\____/ 
                                                    \/     \/          
                                 任何事情都是要靠努力和用心寿冕。                                                   
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市椒袍,隨后出現(xiàn)的幾起案子驼唱,更是在濱河造成了極大的恐慌,老刑警劉巖驹暑,帶你破解...
    沈念sama閱讀 223,126評論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件玫恳,死亡現(xiàn)場離奇詭異,居然都是意外死亡优俘,警方通過查閱死者的電腦和手機(jī)京办,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評論 3 400
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兼吓,“玉大人臂港,你說我怎么就攤上這事∈硬” “怎么了审孽?”我有些...
    開封第一講書人閱讀 169,941評論 0 366
  • 文/不壞的土叔 我叫張陵,是天一觀的道長浑娜。 經(jīng)常有香客問我佑力,道長,這世上最難降的妖魔是什么筋遭? 我笑而不...
    開封第一講書人閱讀 60,294評論 1 300
  • 正文 為了忘掉前任打颤,我火速辦了婚禮,結(jié)果婚禮上漓滔,老公的妹妹穿的比我還像新娘编饺。我一直安慰自己,他們只是感情好响驴,可當(dāng)我...
    茶點故事閱讀 69,295評論 6 398
  • 文/花漫 我一把揭開白布透且。 她就那樣靜靜地躺著,像睡著了一般豁鲤。 火紅的嫁衣襯著肌膚如雪秽誊。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,874評論 1 314
  • 那天琳骡,我揣著相機(jī)與錄音锅论,去河邊找鬼。 笑死楣号,一個胖子當(dāng)著我的面吹牛最易,可吹牛的內(nèi)容都是我干的怒坯。 我是一名探鬼主播,決...
    沈念sama閱讀 41,285評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼耘纱,長吁一口氣:“原來是場噩夢啊……” “哼敬肚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起束析,我...
    開封第一講書人閱讀 40,249評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎憎亚,沒想到半個月后员寇,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,760評論 1 321
  • 正文 獨居荒郊野嶺守林人離奇死亡第美,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,840評論 3 343
  • 正文 我和宋清朗相戀三年蝶锋,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片什往。...
    茶點故事閱讀 40,973評論 1 354
  • 序言:一個原本活蹦亂跳的男人離奇死亡扳缕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出别威,到底是詐尸還是另有隱情躯舔,我是刑警寧澤,帶...
    沈念sama閱讀 36,631評論 5 351
  • 正文 年R本政府宣布省古,位于F島的核電站粥庄,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏豺妓。R本人自食惡果不足惜惜互,卻給世界環(huán)境...
    茶點故事閱讀 42,315評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望琳拭。 院中可真熱鬧训堆,春花似錦、人聲如沸白嘁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽权薯。三九已至姑躲,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間盟蚣,已是汗流浹背黍析。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評論 1 275
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留屎开,地道東北人阐枣。 一個月前我還...
    沈念sama閱讀 49,431評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蔼两。 傳聞我的和親對象是個殘疾皇子甩鳄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,982評論 2 361

推薦閱讀更多精彩內(nèi)容