redis高可用性設定組群方案及應急維護技巧

來源:互聯網
上載者:User

前提:現在有主從結構,主庫沒有配置持久化,從庫配置AOF。(主庫用來備份和寫服務,從庫用來提供讀服務)

情境:哪天主庫突然宕了,怎麼辦?

方法:連上從庫,做save操作。將會在從庫的data目錄儲存一份從庫最新的dump.rdb檔案。將這份dump.rdb檔案拷貝到主庫的data目錄下。再重啟主庫。

就因為這個我想到了用叢集的方案,但是redis官方沒有mysql那樣的master-

master的模式~   這樣的情況下,只能咱們自己想辦法了~

實現的原理~

當 Master 與 Slave 均運作正常時, Master負責讀,Slave負責同步;

當 Master 掛掉,Slave 正常時, Slave接管服務,同時關閉主從複製功能;

然後依次迴圈。

這樣,兩台redis伺服器中的任何一台掛掉,都會由另一台繼續提供服務,不會對網站形

成可察覺的影響,也不會遺失資料。

你也可以實現

當 Master 恢複正常,則從Slave同步資料,同步資料之後關閉主從複製功能,恢複

Master身份,於此同時Slave等待Master同步資料完成之後,恢複Slave身份。

高可用方面

需要把讀寫進行分離的,寫的話,就指向到一個vip~ 那兩個主 用keepalived加指令碼進行判斷。

讀的話,盡量用haproxy進行分流,這樣的話,哪怕一個從down的話,haproxy會自動剔除的~

redis安裝~

wget http://redis.googlecode.com/files/redis-2.2.13.tar.gz    tar -zxf redis-2.2.13.tar.gz    cd redis-2.2.13make    make install

keepalived的安裝~

tar -xzvf keepalived-1.1.20.tar.gz            cd keepalived-1.1.20            ./configure --prefix=/usr/local/webserver/keepalived            make            make install            cp /usr/local/webserver/keepalived/sbin/keepalived /usr/sbin            cp /usr/local/webserver/keepalived/etc/sysconfig/keepalived /etc/sysconfig            cp /usr/local/webserver/keepalived/etc/rc.d/init.d/keepalived /etc/init.d            mkdir /etc/keepalived            cp /usr/local/webserver/keepalived/etc/keepalived/keepalived.conf /etc/keepalived

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.