作者:姿葱 | 来源:互联网 | 2014-05-27 21:01
摘要:很多管理员发现Citrix系统对WindowsPowerShell支持不好,但PowerShell插件可以改善CitrixXenServer的管理。XenServerPowerShell插件是所有XenServer管理员不可缺少的工具,即使您是XenClient或XenServer命令行的忠实用户。通过向已有Po
很多管理员发现Citrix 系统对Windows PowerShell支持不好,但PowerShell插件可以改善Citrix
XenServer的管理。
XenServer
PowerShell插件是所有XenServer管理员不可缺少的工具,即使您是XenClient或XenServer命令行的忠实用户。通过向已有PowerShell工具箱中添加PowerShell
cmdlets可以在一个命令窗口下一起管理Citrix XenDesktop、XenApp、Provisioning
Server、Netscaler和XenServer。
您可以从Citrix SDK网站下载XenServer
PowerShell插件,我建议同时下载XenServer快照插件,如果您的系统借助快照实现备份和容灾的话。
安装PowerShell插件
XenServer PowerShell插件在32位系统上的安装非常简单。但如果要在64位系统,如Windows
7或Windows Server 2008 R2上启用,需要运行如下命令完成DLL和64位.NET Framework的注册。
C:\windows\microsoft.net\frameowkr64\v2.0.50727\installutil.exe
“c:\program files
(x86)\citrix\xenserverpssnapin\xenserverpssnapin.dll”
会有信息提示XenServer
PowerShell注册完成。接下来,把插件添加到PowerShell会话或窗口中。如果要检查插件是否已经加载,向Windows
PowerShell窗口中输入如下命令:
if (((Get-PSSnapin -Name "XenServerPSSnapIn" -ErrorAction
SilentlyContinue) -eq $null ) -and ((Get-PSSnapin Cregistered -Name
"XenServerPSSnapIn") -ne $null))
{ Add-PSSnapin XenServerPSSnapIn
."C:\Program
Files\Citrix\XenServerPSSnapIn\Initialize-Environment.ps1" }
现在您已经加载XenServer
PowerShell插件。运行Connect-Xenserver命令以root身份登录到宿主机。
PowerShell cmdlets用于XenServer管理
和所有的Windows PowerShell 模块和插件一样,Get-Command和Get-Help
cmdlets是你学习语法和示例的最佳办法。下面是一些我经常使用的PowerShell cmdlets:
?基于模版创建虚拟机并命名(常用于POC测试和实验室环境)
oCopy-LocalVM name1 name2 name3 1 3
?查看哪些模板可以使用
oGet-Template
?查看谁是池的所有者:
oGet-XenServer:Pool.Master
?为虚拟机设置家用服务器
oSet-XenServer:VM.Affinity CVM -Affinity
?为宿主机和所有软件授权版本设置授权管理服务器
oSet-XenServer:Host.LicenseServer Cserver
-Host xenserver -LicenseServer
oInvole-XenServer:Host.ApplyEdition Cserver
-Host xenserver CEdition
如果要把这些XenServer PowerShell cmdlets整合到单一脚本中,您需要创建自己的XenServer
宿主机和虚拟机自动化环境。
该PowerShell脚本是不错的公开脚本示例之一。而Hypervisor
Independent脚本是可用于XenServer和VMware的另一个示例。一旦您适应了XenServer PowerShell
cmdlets,通过创建自己的脚本进行XenServer 宿主机和虚机的创建、修改、汇报和删除工作。
最后还有一点好处就是通过PowerShell管理XenServer,可以收集和报告从OS命令行中获得的数据,例如磁盘I/O使用情况。幸运的是,XenServer有集成的Linux命令可独立显示宿主机和虚拟机在指定时间段内实际的磁盘I/O。但该命令对输出数据的格式调整不太好,只简单地输出为文本文件。
幸运的是,Virtualization Jedi提供了强大的Windows PowerShell
脚本来阅读这些文本并自动生成Excel或Google
Spreadsheets格式的文件。这样,您就可以收集和分析核心的信息数据。
通过向XenServer管理工具箱添加cmdlets,就可以通过Windows
PowerShell管理整个系统架构了。