zoukankan      html  css  js  c++  java
  • Rancher搭建Redis主从集群

    主从复制Redis集群

             

    主从容器启动的时候指定不同的配置文件

            

             

             

    #!/bin/bash
    
    #change redis config
    ordinal=`env | grep podname | cut -d"=" -f2 | cut -d"-" -f2`
    sed -i "s/slaveof.*/slaveof rediscluster-0.rediscluster 6379/g" /etc/redis/redis-slave.conf
    if [ $ordinal -eq 0 ]; then
       redis-server /etc/redis/redis-master.conf
    else
       redis-server /etc/redis/redis-slave.conf
    fi
    View Code

            

           

              

                以上步骤实现了主从节点的数据同步,但是当主节点崩溃的时候还不能自动把一个从节点切换成主节点。要实现主从的自动切换就必须另外安装一个redis哨兵服务

                主节点宕机后从节点自动升级为主节点,但主节点的IP已经变动了,此时应用服务还是拿着原主节点的地址去访问
               一旦主节点宕机,从节点晋升成主节点,同时需要修改应用方的主节点地址,还需要命令所有从节点去复制新的主节点,整个过程需要人工干预

    Redis哨兵集群安装配置

             在主从复制的基础上,哨兵实现了自动化的故障恢复

             访问redis集群的数据都是通过哨兵集群的,哨兵监控整个redis集群

             一旦发现redis集群出现了问题,比如刚刚说的主节点挂了,从节点会顶上来。但是主节点地址变了,这时候应用服务无感知,也不用更改访问地址,因为哨兵才是和应用服务做交互的

            redis容器最少需要6个,分别是1主2从3哨兵

            pod0为主  pod1和pod2为从 pod3,pod4,pod5为哨兵

            

           

          

    #!/bin/bash
    
    #change redis config
    ordinal=`env | grep podname | cut -d"=" -f2 | cut -d"-" -f2`
    sed -i "s/slaveof.*/slaveof rediscluster-0.rediscluster 6379/g" /etc/redis/redis-slave.conf
    if [ $ordinal -eq 0 ];
    then
       redis-server /etc/redis/redis-master.conf
    elif [ $ordinal -gt 0  -a $ordinal -le 2 ];
    then
       redis-server /etc/redis/redis-slave.conf
    elif [ $ordinal -gt 2 ];
    then
       redis-sentinel /etc/redis/sentinel.conf
    fi
    shell多条件的复杂判断

       

    Rancher实现一个四层的负载均衡器

           实现给一群pod提供一个对外访问的入口

           

           

             

             

  • 相关阅读:
    4.回归类算法目标值连续型
    springcloud笔记
    5.聚类算法kmeans
    FastdFS文件系统
    ElasticSearch
    cors解决跨域
    Swagger
    miaosha2:高并发抢购方案
    关于javascript中的constructor与prototype
    eclipse布署项目到weblogic时启动两次的问题
  • 原文地址:https://www.cnblogs.com/yxh168/p/14326171.html
Copyright © 2011-2022 走看看