helm部署Redis哨兵集群


介紹

 Redis Sentinel集群是由若干Sentinel節點組成的分布式集群,可以實現故障發現、故障自動轉移、配置中心和客戶端通知。

 如下圖:

Redis Sentinel 故障轉移過程:

 

從這張圖中我們能看到主節點掛掉了,原先的主從復制也斷開了,客戶端和損壞的主節點也斷開了。從節點被提升為新的主節點,其它從節點開始和新的主節點建立復制關系。客戶端通過新的主節點繼續進行交互。Sentinel 會持續監控已經掛掉了主節點,待它恢復后,集群會調整為下面這張圖。

 

一、部署redis哨兵集群

 官方chart地址:https://github.com/helm/charts/tree/master/stable/redis-ha

集群說明:

By default this chart install 3 pods total:

  • one pod containing a redis master and sentinel container (optional prometheus metrics exporter sidecar available)
  • two pods each containing a redis slave and sentinel containers (optional prometheus metrics exporter sidecars available)

1)編寫values.yaml(注意我這里的storageClass是已經搭好的nfs存儲)

image:
  repository: redis
  tag: 5.0.5
  pullPolicy: IfNotPresent
redis:
  resources: 
    requests:
      memory: 200Mi
      cpu: 100m
    limits:
      memory: 700Mi
sentinel:
  resources:
    requests:
      memory: 200Mi
      cpu: 100m
    limits:
      memory: 200Mi
persistentVolume:
  enabled: true
  storageClass: "managed-nfs-storage"
  accessModes:
    - ReadWriteOnce
  size: 10Gi

 2)安裝

$ helm install -f values.yaml stable/redis-ha --name redis-ha-test --namespace sscp-test

 結果:

 三、應用通過哨兵連接redis

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM