日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

云服務器搭建redis主從復制以及哨兵模式(附踩坑記錄)

作者:Sepn1ne 更新時間: 2022-10-11 編程語言

云服務器搭建redis主從復制以及哨兵模式(附踩坑記錄)

踩坑記錄見最后

搭建一主兩從:

  • 在根目錄下任意新建一個目錄/myredis來存放配置文件:

  • 將我們常用的redis.conf文件拷貝到該目錄下:在這里插入圖片描述

  • 創建三個配置文件,分別對應不同端口的redis服務:
    主機的配置文件
    由于我之前使用的是RDB的方式持久化,因此這里只需要更改dbfilename “dump6379.rdb”

    include /myredis/redis.conf
    pidfile "/var/run/redis_6379.pid"
    port 6379
    dbfilename "dump6379.rdb"
    

    兩個從機的配置文件
    注意!這里的replicaof 127.0.0.1 6380 如果將127.0.0.1修改為服務器的ip地址,則一定要在安全組中將該服務器的對應的6380,6381端口放行!!建議初學者這里直接使用127.0.0.1,否則后面會有麻煩!

    如果有設置密碼,則需要加masterauth 你的密碼

    include /myredis/redis.conf
    pidfile "/var/run/redis_6380.pid"
    port 6380
    dbfilename "dump6380.rdb"
    replicaof 127.0.0.1 6380
    masterauth 你的密碼
    
    
  • 以不同的配置文件分別啟動redis-server,可以開三個窗口能更方便的檢測變換。

  • 以不同的端口號啟動redis-cli
    在這里插入圖片描述

  • 在不同的redis客戶端查看各個redis的對應信息:
    使用命令info replication
    主機的部分信息:
    在這里插入圖片描述
    從機的部分信息:
    在這里插入圖片描述

  • 在主機中測試,發現可以進行讀和寫,在從機中測試,發現只能讀不能寫。

這樣主從復制就搭建完畢

搭建哨兵模式

  1. 先創建一個配置文件,命名為sentinel.conf

  2. 在配置文件中加入一段代碼:
    如果之前的服務器都設有密碼則需要 sentinel auth-pass mymaster (你的密碼),如果沒有設置密碼則不需要該句

    sentinel monitor mymaster 127.0.0.1 6379 1
    sentinel auth-pass mymaster (你的密碼)
    

    ? 該Sentinel監控的master(主服務器)的名字叫做mymaster,地址為127.0.0.1:6379

    ? 數字1表示 :當一個哨兵主觀認為主機斷開,就可以客觀認為主機故障,然后開始選舉新的主機。

  3. 啟動哨兵

    redis-sentinel sentinel.conf
    

    在這里插入圖片描述

  4. 將主機shutdown
    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-Hw16Ylur-1665397396862)(Redis筆記.assets/image-20221010175056022.png)]

  5. 此時在查看兩個從機:
    ? 6380端口對應的redis已經變成了主機
    在這里插入圖片描述
    ? 6381端口的主機變為了6380
    在這里插入圖片描述

  6. 再將6379啟動
    在這里插入圖片描述

    ? 6379:發現6379變成了6380的從機!新皇登基!
    在這里插入圖片描述

踩坑記錄!

主從復制:

  • 如果redis的配置文件設置了requiredpass,則在配置從服務器的時候,配置文件需要帶上masterauth 你的密碼

哨兵模式:

  • 如果之前的服務器都設有密碼則在寫sentinel.conf的時候需要 加上sentinel auth-pass mymaster (你的密碼),如果沒有設置密碼則不需要加。如果不加的話,在開啟哨兵模式之后可能無法檢測到從服務器。
  • 如果redis.conf 保護模式在關閉(protected-mode no),則注釋掉ip訪問限制(注釋掉bind 127.0.0.1)
  • 如果redis.conf 保護模式在開啟(protected-mode yes),則添加需要的ip訪問限制 (bind 需要的ip)
  • 在配置主從復制的時候,如果配置從服務器的主服務器IP地址的時候,一定要將服務器的安全組或者防火墻的對應的端口號都打開,否則將不能切換主服務器!
  • 在shutdown主服務器之后,哨兵需要等一會才能檢測到。

原文鏈接:https://blog.csdn.net/weixin_51363503/article/details/127249631

欄目分類
最近更新