在上一章我们学习了如何手工搭建一个HyperV的群集环境,然后使其在VMM中被管理。本章的内容是,使用VMM的向导,创建一个HyperV群集环境。顺便和大家分享一下,用VMM创建HyperV群集,相对于手工创建,有哪些不同点。

=======我是分割线====================

实验环境依然和上一章一致。准备两台配置一样的物理服务器,以及一个ISCSI的存储(可用WindowsServer2012的服务代替)

操作系统

安装应用

功能

WindowsServer2012

DC+DHCP+DNS+CA

域控制器+DHCP+DNS域名解析+证书

WindowsServer2012

MSSQL2012SP1

SystemCenter数据库环境

WindowsServer2012

SCVMM2012SP1

虚拟化和私有云管理平台+SCAC

WindowsServer2012

ISCSI-HA

ISCSI存储服务器

WindowsServer2012

Contoso2k13a

物理机,准备加入群集

WindowsServer2012

Contoso2k13b

物理机,准备加入群集

销毁群集

为了实现用VMM来创建HyperV群集,我们需要将上一章创建的群集"取消"

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第1张图片

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第2张图片


在作业中可以看到取消群集的详细动作。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第3张图片

如果是在故障转移群集管理器中操作,那么如下选择销毁群集即可。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第4张图片

VMM创建群集

如果没有看过上一章,那么我们直接操作:构造→创建→Hyper-V群集。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第5张图片

首先输入群集名称,和上一章手动创建的方式对比一下?

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第6张图片

接下来选择加入到群集的主机,同样,我们在这里可以选择跳过群集验证(非常不建议的操作)

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第7张图片

接下来输入群集的地址,如果你的网卡是固定IP的,那么在这里就会出现需要手动输入的选项,如果是DHCP获取的,那么这里则是空的。需要注意的是,和手工部署不同的是,这里对于固定IP的网卡必须配置群集地址,偷懒是不行的。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第8张图片

我们之前挂载的两块ISCSI磁盘,在这里依然可以看到,当然这也是必然的。对第二块较大的盘勾选CSV,创建群集共享卷。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第9张图片

如果没有创建相应的虚拟交换机,那么在这里可以创建。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第10张图片

确认摘要无误后,开始运行作业,大约7分钟,完成验证到部署的全部过程。


SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第11张图片

如果不用验证群集,需要多长时间呢?不到三分钟完成。当然这种前提是,你已经确信群集已经验证过了,没有任何问题。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第12张图片

我们可以看看群集属性,在共享卷中,可以发现存储也正常挂载了。

SystemCenter2012SP1实践(26)VMM下HyperV的高可用(下)_第13张图片

=======我是分割线====================

VMM和手动配置群集Hyper的区别

我们来回顾一下手动配置HyperV群集和使用VMM自动化配置HyperV群集的区别,以便我们在工作中选择更适合自己的方法。

手动配置过程:

  1. 获取ISCSI存储,在存储上设置对应的权限
  2. 群集成员挂载至少两块ISCSI磁盘
  3. 群集成员安装群集角色
  4. 群集成员配置虚拟交换机,以保持成员之间配置一致。
  5. 验证群集
  6. 配置群集
  7. 调整磁盘为CSV

VMM自动配置过程:

  1. 获取ISCSI存储,在存储上设置对应的权限
  2. 群集成员挂载至少两块ISCSI磁盘
  3. 使用VMM创建群集,自动安装群集角色、根据提示配置虚拟交换机、验证群集、配置群集、根据提示调整磁盘为CSV。

可以发现,使用自动配置我们可以节省很多操作环节(当然具体的信息还是要填写的)就目前来看,唯一一点不同就是必须对含有固定IP的网卡填写群集地址,当然,这一点在生产环境中一般都不会像我这样使用DHCP的,所以影响并不大。    

=======我是分割线====================

两种方法很难说谁好谁坏:手动配置的过程容易把控整个环节,有问题出现,随时终止,随时调整。而使用VMM自动创建,在作业失败时,那么我们需要排错之后,重新启动整个过程,时间依然节省不下来。

所以最主要的不是我们选择哪种方法配置群集,而是要保证整个配置的过程安全可控,同时对群集的搭建有明确的认识。

=======我是分割线====================

高科技,脚本安装

在VMM中创建集群的脚本如下,供参考。

$credential = Get-SCRunAsAccount -Name "管理员" -ID "63b10446-841e-4379-b60d-10eb14e0b8cb"

$hostsList = @()

$hostsList += Get-SCVMHost -ID "93da82a4-fa0c-4f22-83a4-faaa09f50a55"

$hostsList += Get-SCVMHost -ID "8e25b255-58d0-4b0c-976c-7dc5816c1832"


$vmHost = Get-SCVMHost -ID "93da82a4-fa0c-4f22-83a4-faaa09f50a55"

$hostDisk = Get-SCStorageDisk -VMHost $vmHost | where { $_.SMLunId -eq "60003FF44DC75ADC9FE3CEBC31B16A32" }

Mount-SCStorageDisk -StorageDisk $hostDisk -MasterBootRecord -VolumeLabel "" -FullFormat -JobGroup "09aca01a-4cb6-46b6-905e-f0135b0ba995"


$hostDisk = Get-SCStorageDisk -VMHost $vmHost | where { $_.SMLunId -eq "60003FF44DC75ADCB8B1567C6CEE149F" }

Mount-SCStorageDisk -StorageDisk $hostDisk -MasterBootRecord -VolumeLabel "" -QuickFormat -JobGroup "09aca01a-4cb6-46b6-905e-f0135b0ba995" -CreateClusterSharedVolume -ForceFormat


$witnessDisk = Get-SCStorageDisk -Name "\\.\PHYSICALDRIVE2" | where { $_.ID -eq "0a58e0f2-c10f-4e92-836d-40130fa1c7ed" }

$ips = @("192.168.0.235")


Install-SCVMHostCluster -ClusterName "HypervHA" -JobGroup "09aca01a-4cb6-46b6-905e-f0135b0ba995" -VMHost $hostsList -RunAsynchronously -Credential $credential -SetQuorumDisk $witnessDisk -ClusterIPAddress $ips