V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
eabet
V2EX  ›  云计算

关于跨地区负载均衡的同步问题

  •  
  •   eabet · Jan 14, 2017 · 6254 views
    This topic created in 3393 days ago, the information mentioned may be changed or developed.

    如题,由于业务原因经常受攻击,攻击太大会被谷歌暂停服务,又想要高可用性,于是想出做跨地区负载均衡的方案。

    现在有 3 个地区 3 台服务器。 1.GCE 台湾机房(主服务器) 2.日本(备用 1 ) 3.OVH 法国机房(备用 2 ,被攻击切换)

    服务器环境: centos7+php5.6+mysql5.6

    问题: MYSQL 数据和文件要怎么做到三个地区同步,以备任何一个地区挂掉的时候可以马上切换到另一个地区 自己的想法: MYSQL 同步在百度查询了一下,基本使用主从同步,不过好像都没有说到跨地区这个点,所有不知道适不适用,文件同步想用 GIT 或者 SVN ,但是不知道优缺点在哪

    问题 2 :有没有办法实现一个地区故障时自动切换到第二个地区 自己的想法:有没有哪家 DNS 有这个功能???

    20 replies    2017-01-15 01:45:52 +08:00
    mytsing520
        1
    mytsing520  
    PRO
       Jan 14, 2017
    可以用隧道进行服务器之间的互联
    oojiayu
        2
    oojiayu  
       Jan 14, 2017 via iPhone
    Dnspod
    crux
        3
    crux  
       Jan 14, 2017   ❤️ 1
    换 MSSQL 可以做 alwayson
    或者买 azure 的 mysql paas 服务
    eabet
        4
    eabet  
    OP
       Jan 14, 2017 via Android
    @mytsing520 没有听说过 可以详细点或者给个参考链接吗 谢谢
    eabet
        5
    eabet  
    OP
       Jan 14, 2017 via Android
    @crux 仅限于微软的云 sql 吗
    eabet
        6
    eabet  
    OP
       Jan 14, 2017 via Android
    @mytsing520 意思是 ssh 隧道吗?
    ZE3kr
        7
    ZE3kr  
       Jan 14, 2017 via iPhone
    一个地区故障切换地区的话几乎都可以吧,你需要的只是分区解析。

    文件同步你需要类似 lsyncd 就行, git 这种带历史的改动次数太多占空间

    还有一点, GCE 难道不抗 DDOS 吗?
    snnn
        8
    snnn  
       Jan 14, 2017 via Android
    MySQL 的主从复制很少有跨大地区的,愿意踩你就上吧
    devopscode
        9
    devopscode  
       Jan 14, 2017
    你可以共用一个数据库,但是要解决 web 到 db 的访问速度。
    lianxiaoyi
        10
    lianxiaoyi  
       Jan 14, 2017
    经常受到 ddos 。而且只能放国外的。。。。也就只有赌博和小黄网了。。。求种子。。。。。
    popil1987
        11
    popil1987  
       Jan 14, 2017
    文件 gluster
    数据库就不知道了
    czb
        12
    czb  
       Jan 14, 2017 via Android
    我们做了 OVH 法国和加拿大同步 上服务器之前记得先看看延迟和带宽
    ihuotui
        13
    ihuotui  
       Jan 14, 2017 via iPhone
    跨地区 mysql 同步不建议吧,同区内切换才是正确,应该解决攻击问题,不是有很多流量过滤么?
    buyssl
        14
    buyssl  
       Jan 14, 2017
    前不久用 python 写了个 cloudflare 故障切换 IP ,贼好用
    dnspod 那个切换太烂了,以前买过。误报一堆,故障不报一堆,找客服,说正在调整优化。
    https://github.com/cloudflare/python-cloudflare
    buyssl
        15
    buyssl  
       Jan 14, 2017
    @czb 法国和加拿大应该 50 左右吧。并且可以组内网
    buyssl
        16
    buyssl  
       Jan 14, 2017
    如果觉得 cloudflare 不好,可以使用 aws route 53 的 dns 故障切换非常好。多地区检测。
    gamexg
        17
    gamexg  
       Jan 14, 2017
    攻击类型?
    买第三方服务过滤攻击最省心。
    想自己解决,那么最简单的隐藏真实的服务器地址,前面放多个反代。
    哪个反代被打挂了就 dns 移除。
    cevincheung
        18
    cevincheung  
       Jan 14, 2017
    dns 做 LB 就可以吧。然后服务器上都装一个 mysql-proxy 。负责连接 MySQL
    bash99
        19
    bash99  
       Jan 15, 2017
    mysql 广域网复制
    基于 Galera 系的复制:
    https://www.percona.com/software/mysql-database/percona-xtradb-cluster
    https://mariadb.com/kb/en/mariadb/what-is-mariadb-galera-cluster/
    或刚刚出的官方模式 mysql group replication
    http://mysqlhighavailability.com/tag/mysql-group-replication/

    前者是相当成熟的方案;后者据说性能更好
    lan894734188
        20
    lan894734188  
       Jan 15, 2017 via Android
    搞个抗 d 的机子做反代就好啦 不用这么麻烦的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5399 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 07:32 · PVG 15:32 · LAX 00:32 · JFK 03:32
    ♥ Do have faith in what you're doing.