主机和复制机之间的通信原理
开启主机hyper-v和备份机之间的复写技术首先要解决的问题是,主机和备份机之间的通信问题。微软为hyper-v主机之间设置了2中选择方式一种是http通信复写另一种是https方式。如下图所示:
如果两台主机都在域范围你可以选择2种方式中任何一种来进行通信复写,但是如果你的2台主机是工作组计算或者是不同域之间的计算机你只能选择通过HTTPS这种通信方式。很不幸的是我的环境是有域但是我的hyper-v主机还有备份机都是在工作组环境。虽然经历了很多波折但是我还是把这个问题解决了,成功的在工作组环境中实现了replica技术。下面我将我如何实现的过程尽量详细的说一下让大家参考并且一起帮我改进一下。关于本文虽然是我自己原创不过很多知识是参考国外大牛的技术博文组织而成我只是根据自己的需要拿了要的东西。
中小企业hyper-v 复写技术的实现
在windows 2012中最耀眼的技术莫过于hyper-v的复写技术,它让你实现了将运行中的虚拟机从一台host复制到另一台host。这种复写技术可以达到5分钟就复写一次的频率,理论上实现了实时的灾难恢复解决方案。
详细的内容你可以参考微软的网站http://www.microsoft.com/en-us/download/details.aspx?id=29189 下图是关于hyper-v复写技术的网络拓扑图
所以,从中小企业的观点来看这样的技术是有用,省钱和非常节约资源的一种做法。
为了让这样的技术成为现实你需要具备以下的条件
1) 2台运行hyper-v的服务器,并且2台服务器不在同一个域,或者都是工作组计算机。其中一台将作为主服务器,另一台作为目标服务器也就是故障后的转移服务器。
2) SSL认证方式将被用到2台服务器上作为通信认证方式。我们将不能用http的Kerberos认证方式,因为这种方式只能在域环境中实现。因为我们现在的运行环境是工作组计算机的hyper-v服务器。
我们的配置步骤简单的来说如下:
· 设置hyper-v服务器名称,主服务器名和复制服务器名。
· 购买SSL认证,分别安装在2台服务器(可以不需购买,用makecert实现具体方法下一章介绍)
· 启用Replication技术在复写主机
· 选择一个虚拟机配置复写技术
· 开始复写初始化
· 配置复写参数
· 测试故障转移
下面我开始阐述我的详细配置
我们需要配置服务器的计算机名这样我们就能有相似的计算机全名。这样做的目的是为了ssl认证的需要。因为服务器没有在域中但是我们可以配置工作组计算机名可以带域的后缀的方式。具体的步骤如下:
1. 开启服务管理
2. 选择本地服务器看你的计算机名
3. 选择更改
4. 单击更多
5. 放主要DNS后缀然后一路确认下去
6. 你需要重启服务器,当服务器重启后你就会发现服务器名已经变成有域后缀的计算机名了
换DNS后缀并不影响本地访问服务器。仅仅是为了让服务器可以用域的计算机名看到自己,也是为了下一步ssl认证的安装做准备。
购买并且暗转SSL认证-----(我并不是用这种方式实现认证而是用了自身生成密钥的方式。)
这个步骤你可以购买并且安装在你的服务器中,在认证生成后你必须要将认证转变成PFX认证并且导入到服务器中。
关于认证的东西我不多讲我用了另一种方式实现欲知更多详情请继续关注,不过给几个外国大牛的链接自己去看。
http://blog.powerbiz.net.au/useful-links/ssl-certificate-tools/
http://blog.powerbiz.net.au/server-2012/importing-a-pfx-certificate-into-windows-server-2012/
SSL安装好后如下图所示
在复制服务器上启用复制选项
如果你已经完成上面的步骤恭喜你了,现在我们就要开始一步步配置hyper-v中的的设置了。其实你可以参考下面一些网站(英文)有些资源还是很好的
- http://www.microsoft.com/en-us/server-cloud/datacenter/virtualization.aspx
- http://blogs.technet.com/b/virtualization/
- http://download.microsoft.com/download/F/6/9/F6932D74-4ADD-4366-B2BE-22CE4D94E54F/Poster Companion Reference – Hyper-V Replica.pdf
- http://www.aidanfinn.com/?p=12147
在备份服务器上开启复写选项
a) 打开备份计算机中hyper-v管理器
b) 点击hyper-v设置
c) 选择复写设置,单击启动这台服务器作为复写服务器
1. 选择用认证方式(HTTPS)。你可以改掉SSL端口号,不过相应的防火墙中你也要设置允许端口
2. 选择认证证书
3. 选择允许从任何服务器复写,或者你可以选择从特定服务器复写这样会更安全
4. 单击确定完成设置
e) 配置Windows的防火墙高级配置
1) 单击本地规则
2) 向下滚动选择Hyper-V Replica HTTPS Listener (TCP-In)
3) 点击启用规则
复写配置到此完成了。
在主服务器上开启虚拟机复写并且成功复写到备份服务器中
最后的设定就是在你的主服务器中选择一台虚拟机并且成功的复写到备份服务器中
1. 开启hyper-v管理器(主服务器)
2. 选择你需要复写的虚拟机在右下角选择开启复写下面开始复写向导
3. 单击下一步,在复写计算机名称中填写复写服务器名称。记得备份计算机名你需要手动在本机的hosts文件中添加
4. 选择证书认证你的主服务器,如果DNS不争取你将不能完成你的设置。
5. 选择你需要复写的驱动器。
6. 这时你可以选择建立几个恢复点,或者自己配置VSS时刻表
7. 下一步就是选择你要复写的方式了和复写的时间
8. 复核一下你的配置信息然后完成向导。如果你没有选择复写时间的话,复写立刻就会开始了。
9. 在备份服务器中你会看到同样名称的虚拟机不过是显示off状态
10. 复写完成后你可以查看复写状态等等
到此我们工作组服务器的hyper-v复写配置全部完成。下个章节我将概括一下我是如何用certificate makecert 生成CA证书配置微软工作组计算机hyper-v的复写技术的