PowerShell cmdlets增强Windows Server故障转移群集管理

日期: 2012-11-29 作者:Bruce Mackenzie-Low翻译:杨旭 来源:TechTarget中国 英文

如果你管理Windows故障转移群集,你会发现安装Windows Server 2012故障转移群集之后,Cluster.exe CLI 命令没了。这些年,系统管理员们一直使用Cluster.exe脚本创建集群、转移故障转移组、修改资源属性和解决集群宕机问题。是的,Cluster.exe命令仍在远程服务器管理工具(RSAT)中。但不是默认安装。

  你可能会在Windows Server 2012中发现任务栏上的PowerShell和Server Manager图标,但可能会疏忽Windows Server 2012操作系统默认安装的是Server Core,包含2300多个PowerShel……

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

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

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

如果你管理Windows故障转移群集,你会发现安装Windows Server 2012故障转移群集之后,Cluster.exe CLI 命令没了。这些年,系统管理员们一直使用Cluster.exe脚本创建集群、转移故障转移组、修改资源属性和解决集群宕机问题。是的,Cluster.exe命令仍在远程服务器管理工具(RSAT)中。但不是默认安装。

  你可能会在Windows Server 2012中发现任务栏上的PowerShell和Server Manager图标,但可能会疏忽Windows Server 2012操作系统默认安装的是Server Core,包含2300多个PowerShell cmdlet。微软明确表明了,就像其他任何数据中心服务器一样,可以远程或者使用脚本管理Windows服务器。在Windows中,意味着PowerShell。

  幸运的是,Windows Server故障转移群集对PowerShell来说不再陌生了。Windows Server 2008 R2 中就有69个群集相关的PowerShell cmdlet协助配置集群、组织和资源。本文探讨Windows Server 2012故障转移集群中的新PowerShell cmdlet

  Windows Server 2012中,总共有81个故障转移群集cmdlet可以用来管理PowerShell组件。新的群集cmdlet可以执行群集资源注册表检查点(Add-ClusterCheckpoint)、监控虚拟机服务故障(Add-ClusterVMMonitoredItem)和配置两个新角色:Scale-Out File Servers(Add-ClusterScaleOutFileServerRole)和iSCSI Target Server (Add-ClusteriSCSITargetServerRole)。

图1. Windows PowerShell ISE帮助管理员熟悉故障转移集群cmdlets 

图1. Windows PowerShell ISE帮助管理员熟悉故障转移集群cmdlets

  图1中,使用PowerShell cmdlet“Get-command –module FailoverClusters”列出了所有的故障转移群集cmdlets。我正在使用内置的Windows PowerShell脚本集成环境(ISE)编辑器,它可以帮助管理员们熟悉所有的故障转移群集cmdlets。

  除了故障转移群集cmdlets之外,微软还有一些新的PowerShell cmdlets模块,包括ClusterAwareUpdating(17个新cmdlets)、ClusterAware ScheduledTasks(19个新cmdlets)和iSCSITarget(23个新cmdlets)。还有很多群集识别更新 cmdlets,比如Add-CauClusterRole(添加CAU角色)、Get-CauReport(获得更新报告)以及Invoke-CauRun(调用执行扫描和安装任何新的更新)

  群集识别任务调度是Windows Server 2012的新功能,并且任务调度程序目前与故障转移群集集成。一个调度任务可以以下面三种方式运行:

  • ClusterWide on all cluster nodes
  • AnyNode on a random node in the cluster
  • ResourceSpecific on a node that owns a specific cluster resource

  新的ScheduledTasks cmdlets创建一个群集识别调度任务。在表格中,你可以看到cmdlets可以注册、获取和设置集群预定任务属性。

在表格中,你可以看到cmdlets可以注册、获取和设置集群预定任务属性。

  想要使用这些PowerShell cmdlets,首先你要指派一个动作和Trigger变量。这个动作变量指定执行程序,比如下面例子中的Windows计算器。Trigger变量在执行任务前设置。生成的cmdlets安排群集中的任务在每天14:00执行,就像下面这样:

  PS C:> $action = New-ScheduledTaskAction –Execute C:WindowsSystem32Calc.exe

  PS C:> $trigger = New-ScheduledTaskTrigger -At 14:00 –Daily

  PS C:> Register-ClusteredScheduledTask -Action $action -TaskName ClusterWideCalculator -Description "Runs Calculator cluster wide" -TaskType ClusterWide -Trigger $trigger

  TaskName TaskType

  -------- --------

  ClusterWideCa... ClusterWide

  PS C:>
 

图2. 在Task Scheduler中,管理员可以浏览所有的群集任务
图2. 在Task Scheduler中,管理员可以浏览所有的群集任务

  但是,只有PowerShell能用来注册、获得/设置和注销群集识别调度任务。你可以在Computer Management中使用Task Scheduler浏览群集任务(图2)。

图3.管理员以使用新的iSCSI Target cmdlets配置iSCSI LUNs 

图3.管理员以使用新的iSCSI Target cmdlets配置iSCSI LUNs

  最后,可以使用高可用的iSCSI Target Server配置故障转移群集。使用Install-WindowsFeature –name FS-iSCSITarget-Server(或使用Server Manager)安装iSCSI Target Server角色。然后使用新的cmdlet Add-ClusteriSCSITargetServerRole创建iSCSI Target资源并产生共享存储。然后,你可以使用新的iSCSI Target cmdlets配置iSCSI LUNs(图3)。

  Windows Server 2012中的PowerShell cmdlets完全可以帮助你管理你的故障转移群集。除了创建、配置和解决群集问题,你还可以使用PowerShell cmdlets添加新的扩展文件服务器、iSCSI Target Server角色、集群调度的任务和Cluster-Aware Updating。

相关推荐