none
关于TFS部署方案,讨论到底是单机服务器好还是多服务器热备(高可用)好? RRS feed

  • 常规讨论

  • 我们的服务器即将搭建为双机热备方案,但最近听说双机热备也容易出问题,因为同步容易把坏数据同步到正常的机器上,导致维护成本很高;

    但单机服务器一旦出现问题,需要有半天到一天时间无法使用,有什么折中合理的方案吗?

    另外即使是对于双机热备有3种方案,哪种更好呢?

    http://blog.csdn.net/herry2008/article/details/1916258







    2015年7月2日 11:48

全部回复

  • 你好,

    这个论坛是处理TFS相关问题的,请问你是不是用TFS? 你指的备份场景是什么样的,是TFS 数据库服务器吗? 如果只是没有用到TFS, 建议去数据库或者ThchNet相关论坛发一个新帖子。

    如果是同步两个TFS 服务器,你可以详细说明你的应用场景和需求。这种情况可以使用TFS integration tools 来进行同步工作项或者源文件。

    谢谢,


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2015年7月3日 6:03
    版主
  • 谢谢回复,刚才已修改标题,默认以为大家能理解呢。

    目前刚确定是多物理机(目前只能2台,里面再分为虚机),备份的确是指数据库的备份。

    我已看过这个拓扑方案,但是落到实实在在的物理机和虚机上,还需要更详细的指导才更好。

     https://msdn.microsoft.com/zh-cn/library/dd578592.aspx






    2015年7月3日 6:38
  • 1. 你提到“同步容易把坏数据同步到正常的机器上”

    我看了你的那个链接,那时2007年的帖,近十年前的技术,现在的情况已经大不一样了。

    2. 从你的帖子标题和内容看,你实际要讨论的问题是TFS的高可用性部署,而非备份。

    TFS可以实现分布式的部署,不仅可以实现数据层和应用层的分布式部署,还可以利用成熟的高可用性方案实现两个层面的多节点部署。

    应用层: 通过硬件(例如F5)或者软件(NLB)可以实现应用层Application Tier(web server)的高可用性部署,为TFS部署多个节点的应用层服务器;当任意节点服务器需要维护或者宕机时,高可用性群集中的服务器可以提供不间断的服务。

    数据库层:通过SQL Server 2012/2014的AlwaysOn技术,可以实现数据库层的多节点(最多4个节点)部署,实现各节点之间的数据同步,不会出现“把坏数据同步到正常的机器上”的情况;AlwaysOn还可以实现数据库查询的性能优化,最大化的将高可用性和负载均衡结合在一起,它是TFS高可用性部署的官方推荐方案!

    3. 部署方案中采用单节点还是多节点?

    它取决于以下几个因素:

    - 你的系统可以承受的宕机时间。例如你的TFS系统承受4小时的宕机时间,那么没有必要部署高可用性的多节点群集。如果老板说10分钟的宕机就会造成严重运维事故,那么高可用性是你的标准配置。但是你静下来仔细想一下,你的TFS关机几分钟,开发人员就不能写代码了?

    - 维护人员的技术能力。高可用性涉及到上面提到的NLB和AlwaysOn等故障转移技术(IT),而具备TFS维护能力的人员,一般是开发人员(Dev),他们对IT技术不一定精通。在这种情况下,高可用性往往会成为累赘,成为事故高发的原因;不仅大幅提高了维护人员的工作难度,还为宕机事故埋下了无数颗地雷。当然不排除这种情况,公司有无数闲置的DBA和网管,你可以安排几个作为TFS的维护人员。

    - 硬件资源。多部署一个高可用性节点,则需要增加一倍的硬件资源,你申请硬件资源的能力与此有关。

    - 开发人员规模。根据我们的实践经验,日活动用户300人以下(或总用户1000人以下)研发中心,是不需要高可用性的。因为TFS是一个研发平台产品,并不是象银行柜台系统一样的业务系统。试想,每个开发人员每天也就checkin两次,查询最多10次代码库而已,16C/32G的数据库服务器完全可以承载这样的访问。

    综上所述,一般情况下,你不需要高可用性!

    4. 推荐的方案

    最常见的部署方案,是部署一台数据库服务器和一台应用层服务器。

    加强数据库的备份,设置每周完整备份,每日差异备份,15分钟事务日志备份。

    2015年7月6日 14:52