V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
eabet
V2EX  ›  云计算

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

  •  
  •   eabet · 2017-01-14 01:49:45 +08:00 · 5395 次点击
    这是一个创建于 2875 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

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

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

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

    还有一点, GCE 难道不抗 DDOS 吗?
    snnn
        8
    snnn  
       2017-01-14 08:57:11 +08:00 via Android
    MySQL 的主从复制很少有跨大地区的,愿意踩你就上吧
    devopscode
        9
    devopscode  
       2017-01-14 09:02:02 +08:00
    你可以共用一个数据库,但是要解决 web 到 db 的访问速度。
    lianxiaoyi
        10
    lianxiaoyi  
       2017-01-14 09:12:48 +08:00
    经常受到 ddos 。而且只能放国外的。。。。也就只有赌博和小黄网了。。。求种子。。。。。
    popil1987
        11
    popil1987  
       2017-01-14 09:22:45 +08:00
    文件 gluster
    数据库就不知道了
    czb
        12
    czb  
       2017-01-14 09:28:52 +08:00 via Android
    我们做了 OVH 法国和加拿大同步 上服务器之前记得先看看延迟和带宽
    ihuotui
        13
    ihuotui  
       2017-01-14 09:55:53 +08:00 via iPhone
    跨地区 mysql 同步不建议吧,同区内切换才是正确,应该解决攻击问题,不是有很多流量过滤么?
    buyssl
        14
    buyssl  
       2017-01-14 10:03:10 +08:00
    前不久用 python 写了个 cloudflare 故障切换 IP ,贼好用
    dnspod 那个切换太烂了,以前买过。误报一堆,故障不报一堆,找客服,说正在调整优化。
    https://github.com/cloudflare/python-cloudflare
    buyssl
        15
    buyssl  
       2017-01-14 10:04:08 +08:00
    @czb 法国和加拿大应该 50 左右吧。并且可以组内网
    buyssl
        16
    buyssl  
       2017-01-14 10:06:38 +08:00
    如果觉得 cloudflare 不好,可以使用 aws route 53 的 dns 故障切换非常好。多地区检测。
    gamexg
        17
    gamexg  
       2017-01-14 11:59:05 +08:00
    攻击类型?
    买第三方服务过滤攻击最省心。
    想自己解决,那么最简单的隐藏真实的服务器地址,前面放多个反代。
    哪个反代被打挂了就 dns 移除。
    cevincheung
        18
    cevincheung  
       2017-01-14 12:10:09 +08:00
    dns 做 LB 就可以吧。然后服务器上都装一个 mysql-proxy 。负责连接 MySQL
    bash99
        19
    bash99  
       2017-01-15 00:07:05 +08:00
    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  
       2017-01-15 01:45:52 +08:00 via Android
    搞个抗 d 的机子做反代就好啦 不用这么麻烦的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1327 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:48 · PVG 01:48 · LAX 09:48 · JFK 12:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.