在我的工作中,我们使用一个linux框来存储我们的源代码,并托pipe我们的版本控制软件(svn)。 我们还有一些像“trac”项目pipe理,鱼眼和坩埚代码审查等产品。 如果或者当这个盒子坏了,我希望能够保持所有的服务,软件,用户帐户等等几乎零停机。 我在找什么解决scheme?
一些有用的提示:
– 解决scheme的成本不是问题。 我宁愿有一个一次性费用比认购,但。
– 我希望保持备份和恢复的最小pipe理员工作。
– 箱子在晚上和周末闲置。
– 我们还有几英里外的另一个设施,但两个build筑物之间的连接相对较慢(尽pipe晚上更快)。 如果发生火灾等情况,我希望将此恢复选项closures
– 在我打电话之前,我想要购买,运行和准备好的备份。 不是“撞车后买一个新的箱子……”
– 这个盒子没什么特别,只是一个标准的桌面与Ubuntu的Linux上。 没有什么我们使用它是高性能。
有谁知道我的解决scheme? 我不熟悉Linux或服务器相关的东西,所以请给出你的答案的基本解释。
谢谢!
你实际上是在谈论三个相互关联,但不同的东西:
你应该把它们想象成三个截然不同但相互关联的过程。 我将详细介绍容错function,因为这似乎是您最多需要1个小时的停机时间才能find的function。
有些事情要考虑容错:
取这些时间的总和,乘以30%(在紧急情况下没有任何事情顺利),如果总和大于可接受的停机时间,则需要开始查看一些高可用性设置。 如果这个数字更小,那么您的风险就是您的估计已经closures,人们的时间可能会比您预期的要长。
至于一些可能的解决scheme,有很多事情你可以做。 但在任何情况下,我都会高度推荐用服务器级机器来replace桌面。 这些组件的质量更高,而且它们都是全天候运行的,所以硬件中已经有了相当数量的重新统一(好的RAID卡,冗余的PSU等等)
备份也是场景中非常重要的一部分。 你应该记住,没有replace的备份点存储在现场的时间点。 就我个人而言,我仍然认为备份到磁带上,然后由Iron Mountain这样的公司存储在非现场是最好的select。 对于您的大小环境,任何“大”的备份解决scheme – ArcServ,BackupExec,NetBackup都应该做得很好。 还要确保至less每季度testing一次你的备份。 没有什么比发现你需要的备份糟糕。
灾难恢复真的只是坐下来,计划你将从哪里工作,从哪里得到更换设备,确保你有良好的场外备份。 我认为DR是把上面提到的所有组件都变成了一个凝聚力的行动计划,以便在最坏的时候发生。
你可以虚拟化环境,然后你需要做的就是恢复镜像。
这里有很多选项,这取决于数据量,主系统的复杂性以及您想要做多lesspipe理。
如果虚拟化盒子的尺寸比较小(几GB),我喜欢XenServer。 例如,我们运行的内部应用服务器只有3GB大小。 我可以很容易地停止进行备份,并将备份传输到另一个系统。 但是,如果您无法在XenServer上加快速度,这可能是一个陡峭的学习曲线。
我也使用R1Soft的CDP服务器备份软件,但它并不适合快速恢复。 对发生故障的服务器进行完整的裸机还原,但对于分小时备份和恢复来说,这是非常棒的。
我为客户做了这样的事情:使用CDP备份软件将主系统克隆到冷备件。 这保证备用与主系统相同。 然后,我们有小时快照存储在CDP服务器。 CDP服务器使用非常高效的备份algorithm,所以对活动服务器的影响不大。
如果发生故障,可以将CDP服务器上的数据恢复到冷备份。
这个或基于rsync的方法的问题是,您需要确保pipe理热备份和冷备份,以使其软件保持同步。 你不会想在一个上运行操作系统更新,而忘记在另一个上执行它们。
一个build议是尽可能在服务器上使用标准化configuration,这样可以减lessconfiguration/更新更改对恢复/冷启动数据到冷备用系统的影响。
另外,我喜欢保留我的数据 – 这是我添加的东西 – 很好地与系统隔离。 如果您使用LVM,则LVM快照方法也可以工作。
有很多select需要考虑,但最好的select取决于您的内部专业知识,时间来pipe理系统和数据使用模式。
另外,如果数据量非常小,则可能需要查看桌面级备份/恢复工具。 我不太熟悉这些。
http://www.r1soft.com/ CDP服务器软件
http://www.citrix.com/ XenServer
不要在桌面硬件上运行生产软件。 至less,把2个磁盘放在盒子里,并为其configuration软件raid,但在磁盘故障的情况下,这是不理想的:您仍然需要closures服务器以更换磁盘。 有了服务器硬件,你不会有这个问题:热插拔。
监视硬件的健康状况(大量免费的监控工具,我的select将是opsview,因为它是一个辉煌的网页界面,你仍然可以得到所有的nagios插件)。 他们也有一个企业版的所有支持,你可能需要。
对于备份,我会去bacula,如果你需要支持,你也可以从他们(企业版)。
如果你的公司中没有系统pipe理员能够完成这些工作,那么将这些操作外包给另一家公司或者解雇你现在的公司,并且得到一些好的公司。
我与伊格纳西奥·巴斯克斯·阿布兰(Ignacio Vazquez-Abran)达成协议,认为configurationpipe理软件是最重要的事情。 我会和cfengine一起去的,不过傀儡是一只资源猪,比它应该是更多的炒作。 如果你需要另一个svn服务器,只需要netboot,就可以在几分钟内安装和configuration它。 你也可以从他们那里购买你想要的所有支持。
看起来像这样简单的rsync + cron可能就足够了。
木偶可以用来启动和运行系统,当你需要的时候。 设置一个最小安装,添加Puppet客户端,让Puppetmaster完成configuration机器的工作。