Hyper-V虚拟机上的Docker主机备份

日期: 2015-05-24 作者:Brien Posey翻译:李志明 来源:TechTarget中国 英文

Docker最近推出了一款名为Docker Machine (目前为beta版本)的新的实用工具,它将使得把Docker部署到云或者Hyper-V等虚拟机管理程序更加容易。把Docker作为虚拟服务器来运行增加复杂性,所以管理员必须考虑需要什么来保护Docker。 要成功备份运行在Hyper-V虚拟服务器的Docker部署,您必须了解Docker虚拟服务器的构造。您还需要了解当您运行Hyper-V感知备份的时候会出现什么情况。

创建Docker主机 Docker Machine允许将Docker主机在云以及虚拟服务器环境中以标准化的方式进行部署。Docker Machine通过使用Docker……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

Docker最近推出了一款名为Docker Machine (目前为beta版本)的新的实用工具,它将使得把Docker部署到云或者Hyper-V等虚拟机管理程序更加容易。把Docker作为虚拟服务器来运行增加复杂性,所以管理员必须考虑需要什么来保护Docker。

要成功备份运行在Hyper-V虚拟服务器的Docker部署,您必须了解Docker虚拟服务器的构造。您还需要了解当您运行Hyper-V感知备份的时候会出现什么情况。

创建Docker主机


Docker Machine允许将Docker主机在云以及虚拟服务器环境中以标准化的方式进行部署。Docker Machine通过使用Docker可以被部署于其中的各种环境的驱动程序来做到这一点。例如,有用于亚马逊网络服务(Amazon Web Services)、Hyper-V、微软Azure、Rackspace以及其它的驱动程序。

要在Hyper-V服务器上创建Docker主机,您需要下载并且安装OpenSSH以及Windows版本的Docker Machine。您还应该将OpenSSH二进制文件添加到您的Hyper-V服务器路径以便Docker Machine可以找到它们。

一旦所需的组件就绪,创建Docker主机如同运行一条命令行一样轻而易举。打开命令提示符窗口,定位到包含Docker Machine的文件夹,然后输入可执行文件名称(Docker-machine_windows-amd64.exe),其后输入-d开关、驱动程序的名称(在本例中是Hyper-V)以及您想分配给您正在创建的虚拟机(VM)的名称。例如,该命令可能如下所示:


Docker-machine_windows-amd64.exe -d hyper-v Docker


当运行这个命令的时候,Docker Machine完成几个不同的任务。其中一些更重要的任务(从备份的角度来看)包括:

使用命令行中指定的名称创建虚拟硬盘(virtual hard disk,VHD);

下载名为Boot2Docker.ISO的DVD映像;

创建虚拟机;

把Boot2Docker.ISO 文件与新创建的VM关联,作为虚拟DVD光驱;

把VHD与VM关联;

启动VM;

向VM分配IP地址和端口号。

保护Docker主机


从表面上看,似乎保护新创建的Docker主机与保护任何其它的Hyper-V VM的方式别无二致。在许多方面确实如此。与大多数Hyper-V VM一样,保护Docker主机涉及使用Hyper-V感知备份应用程序来执行主机级别的备份。然而,也有一些特殊的考虑事项。

Docker主机取决于VM之外的一些组件。有些Hyper-V备份应用程序备份VHD、配置文件以及快照等VM组件,但是忽略可能存在于主机当中的其它所有东西。微软的最佳实践一直说不应该在Hyper-V父虚拟分区(parent partition)运行应用程序,所以有些备份应用程序不保护父虚拟分区的内容,除非你明确让它们这样做。

在Docker主机当中,父虚拟分区包含Docker Machine可执行程序。尽管该可执行程序被用于创建Docker主机,但是它也可以被用于执行检索Docker主机清单、移除Docker主机等其它任务。因此,保护保护Docker Machine可执行程序非常重要。

OpenSSH被用于创建Docker主机,所以您需要保护OpenSSH的配置信息(这些信息被存放在OpenSSH文件夹结构内的文件中)。

您还需要保护Boot2Docker.ISO文件。Docker主机通过这个文件(而不是VHD)启动。确保备份应用程序不仅保护该ISO文件,而且确保VM级别的恢复维持VM和该ISO文件之间的关联。

Boot2Docker是一个大小约为23 MB的细小的Linux内核。因此,Boot2Docker不包含Hyper-V集成服务(Hyper-V Integration Services)。这意味着Docker主机的VM无法利用启用卷影副本服务(Volume Shadow Copy Service)的备份。没有安装Hyper-V集成服务的VM必须暂时被置于被保存的状态,直至快照被创建。VM通常相当短暂地被置于被保存的状态。

相关推荐