收藏 分销(赏)

远程启动或关闭ESX Server上的虚拟机.docx

上传人:pc****0 文档编号:7732014 上传时间:2025-01-14 格式:DOCX 页数:9 大小:157.96KB 下载积分:10 金币
下载 相关 举报
远程启动或关闭ESX Server上的虚拟机.docx_第1页
第1页 / 共9页
远程启动或关闭ESX Server上的虚拟机.docx_第2页
第2页 / 共9页


点击查看更多>>
资源描述
远程启动或关闭ESX Server上的虚拟机 作者:upall 发布:2011-04-26 13:48 分类:工作 抢沙发   VMware提供了命令行管理虚拟机的接口,即vmware-cmd,通过这个命令行接口可以完成对虚拟机的诸多操作,比如重启、关闭、开机、配置快照等等。配合Plink.exe这个工具可以实现远程执行Vmware-cmd,plink相当于Putty的命令行模式。这样通过制作脚本,实现在远程批量操作虚拟机了。   文末有我使用的bat文件,配合plink和wol.exe(不需要putty)即可实现ESX的开、关机,其上虚拟机的开、关机。 一、准备工作 1、下载PuTTY:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html   下载PuTTY和plink,将两个文件放入同一文件夹内。 2、双击Putty,“Host Name”处填入ESXSrver主机的名称或IP地址;“Saved Sessions”随便填入一个连接名称,点击“Save”,保存链接: 3、重新打开PUTTY,双击刚才保存的VmServer06的链接,试验能否正确链接到ESXServer主机: 二、试验关闭/开启虚拟机 1、远程主机上,打开CMD命令行,定位到存放putty和plink的文件夹,输入如下命令:    1 plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m stop.txt   提示:“VmServer06”为前面保存的PUTTY的链接名称,“User”用来连接ESXServer的用户名,“Yourpass”SSH连接ESXServer的密码,“Stopt.txt”存放Vmware-cmd执行命令的文件 2、关机脚本“stop.txt”:    1 vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx stop   提示:/vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx 表示虚拟机存放镜像的路径,将stop.txt存放到与putty相同的路径。 3、运行步骤1中的命令,关闭Vmserver02的虚拟机:   说明:显示 stop<> =1,成功关闭虚拟机VmServer02 4、同理试验开启虚拟机,制作开机脚本“start.txt”,命令如下:    1 vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmGhost01/VmGhost01.vmx start exit   保存成start.txt。 5、CMD下输入命令:    1 plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m start.txt 6、结果显示成功启动虚拟机: 三、制作开机/关机脚本。 1、按照试验的方法,将ESXServer上的虚拟机添加到Start.txt和Stop.txt中。   “start.txt”     vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx start     vmware-cmd /vmfs/volumes/VmServer06\:storage1//VmGhost01/VmGhost01.vmx start     vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer04.vmx start     exit   “stop.txt”:     vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx stop     vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmGhost01/VmGhost01.vmx stop     vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer04.vmx stop     exit 2、制作plink命令的脚本   开机脚本start.bat 1 2 @echo off plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m start.txt   关机脚本 1 2 3 4 @echo off echo 确认要关闭虚拟机吗?确认按任意键继续;退出点击关闭 pause plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m stop.txt   现在在任意一台XP客户端双击运行脚本,就可以远程批量开启或关闭虚拟机了。 另一种方法: 先补充一下常用的命令: 1 2 vmware-cmd –l  ##查看长长的.vmx位置 vmware-cmd vmx-path start <poweron_mode>  ##在这,输入vmx-path时,常常会让人感到愤怒,或者是vm很多很多时,眼花撩乱,简直是@#$%&^%$#$% 看下如何用“vmware-vim-cmd”实现开机效果: 1 2 vmware-vim-cmd vmsvc/getallvms  ##获取所有VM的信息,包括我们需要使用的Vmid,值得一赞的是,这里的输出结果太美观了(Putty窗口太窄,换行显示就不漂亮了) vmware-vim-cmd vmsvc/power.on vmid  ##OK,启动虚拟机(注意替换“vmid”)!   另外,使用这种方法去修改网络以及其他配置时,也是更加的有效以及方便的。不过值得注意的时,修改网络配置后,一般需要使用 刷新命令 [refresh], 否则修改后,你getinfo时,就会发现,怎么好像没配置成功,这确实有些让人困惑,但是refresh后,一切都好了! vmware-vim-cmd: 1 2 3 4 [root@esx80 root]# vmware-vim-cmd Commands available under /: hostsvc/  proxysvc/  vimsvc/  help internalsvc/  solo/  vmsvc/ 介绍其中几项:   hostsvc/ 包含的是一些关于host设置的命令,类似网络,硬件信息,存储,防火墙,各种服务等等……   vmsvc/ 则包含的是对Virtual Machine的一些常规设置,类似查看状态,启动,关闭,快照管理,添加/扩展磁盘,等等……   vimsvc/ 包含的是一些权限,license等等更多VI Client以及VC中一些常规的设置 这里附上一个我正在使用的bat脚本:   用法: 1 2 3 4 5 6 7 8 esx on #远程打开ESX主机(需要一个wol.exe工具来发送“Wake-up packet”) esx off #远程关闭ESX主机 esx ste #查看ESX主机的状态 esx l #查看ESX上的虚拟主机列表(列表中有相应的vmid和虚似机的名称)(L的小写) esx 80 on  #远程打开ESX上vmid为80的虚拟主机 esx 80 off  #远程关闭ESX上vmid为80的虚拟主机 esx 80 ste #查看ESX上vmid为80的虚拟主机的状态 esx ?  #查看帮助   最后:1、记得让这个脚本找得到plink和wol,你可修改环境变量,或者指定为“d:\plink.exe”。      2、如果提示是否保存密钥,输入“y”或者“n”都可以,但是输入“y”的话,再次执行将不会再出现这个提示,密钥保存在“HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys”。 Esx.bat的代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 @rem =================================================== @rem 说明: @rem   用于启动或关闭ESX上的虚似主机 @rem   用法请使用命令“esx ?”查看。 @rem   【注意】需要配合plink.exe和wol.exe才能正常工作。 @rem =================================================== @echo off ::=============配置================ set sshHost=192.168.0.250 set sshUser=root set sshPwd=upall ::================================ if '%1'=='?' goto howto if /i '%1'=='on' goto PowerOnEsx if /i '%1'=='off' goto PowerOffEsx if /i '%1'=='ste' goto statusEsx if /i '%1'=='l' goto allVms if '%1'=='' (set vmid=80) else set vmid=%1 if '%2'=='' (set ste=on) else set ste=%2 if /i '%ste%'=='ste' set ste=getstate plink.exe -ssh -l %sshUser% -pw %sshPwd% %sshHost% vmware-vim-cmd vmsvc/power.%ste% %vmid% goto end :PowerOnEsx wol 0002a5ae72bb rem wol后边的是ESX的网卡地址 goto end :PowerOffEsx plink.exe -ssh -l %sshUser% -pw %sshPwd% %sshHost% shutdown -h now goto end :statusEsx plink.exe -ssh -l %sshUser% -pw %sshPwd% %sshHost% service mgmt-vmware status goto end :allVms plink.exe -ssh -l %sshUser% -pw %sshPwd% %sshHost% vmware-vim-cmd vmsvc/getallvms goto end :howto echo 说明:通过plink控制ESX上虚拟机的on和off。 echo 没有vmid参数,on和off将作用于ESX本身, echo l参数(“L”的小写)可以列出所有虚拟机。 echo 用法:esx [vmid = 80] [on^|off^|ste = on] [l] echo 例子:esx 80 on echo 命令:plink.exe -ssh -l sshUser -pw sshPwd sshHostIP vmware-vim-cmd vmsvc/power.on 80 :end <完> 囧rz-----------------我是分割线,超囧的分割线--------------------- 囧rz 远程批量启动或关闭ESXServer上的虚拟机 时间:2009-08-03 09:14来源: 作者:Abner Kou 点击: 1183 次 VMware提供了命令行管理虚拟机的接口,即vmware-cmd,通过这个命令行接口可以完成对虚拟机的诸多操作,比如重启、关闭、开机、配置快照等等。配合Plink.exe这个工具可以实现远程执行Vmware-cmd,plink相当于Putty的命令行模式。这样通过制作脚本,实现在远程 VMware提供了命令行管理虚拟机的接口,即vmware-cmd,通过这个命令行接口可以完成对虚拟机的诸多操作,比如重启、关闭、开机、配置快照等等。配合Plink.exe这个工具可以实现远程执行Vmware-cmd,plink相当于Putty的命令行模式。这样通过制作脚本,实现在远程批量操作虚拟机了。  一:准备工作  1:下载PUTTY  http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html  下载PUTTY和plink,将连个文件放入同一文件夹内  2:双击Putty,Host Name处填入ESXSrver主机的名称或IP地址;Saved Sessions随便填入一个连接名称,点击Save,保存链接    3:重新打开PUTTY,双击刚才保存的VmServer06的链接,试验能否正确链接到ESXServer主机    二:试验关闭、开启虚拟机  1:远程主机上,打开CMD命令行,定位到存放putty和plink的文件夹,输入如下命令  plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m stop.txt  VmServer06 前面保存的PUTTY的链接名称  User 用来连接ESXServer的用户名  Yourpass SSH连接ESXServer的密码  Stopt.txt 存放Vmware-cmd执行命令的文件  2:关机脚本stop.txt  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx stop exit  /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx 表示虚拟机存放镜像的路径  将stop.txt存放到与putty相同的路径  3:运行步骤1中的命令,关闭Vmserver02的虚拟机    显示 stop<> =1,成功关闭虚拟机VmServer02  4:同理试验开启虚拟机,制作开机脚本start.txt,命令如下  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmGhost01/VmGhost01.vmx start exit  保存成start.txt  5:CMD下输入命令  plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m start.txt  6:结果显示成功启动虚拟机    三:制作开机、关机脚本  1:按照试验的方法,将ESXServer上的虚拟机添加到Start.txt和Stop.txt中  如start.txt  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx start  vmware-cmd /vmfs/volumes/VmServer06\:storage1//VmGhost01/VmGhost01.vmx start  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer04.vmx start exit  stop.txt  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer02.vmx stop  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmGhost01/VmGhost01.vmx stop  vmware-cmd /vmfs/volumes/VmServer06\:storage1/VmServer02/VmServer04.vmx stop exit  2:制作plink命令的脚本  开机脚本start.bat  @echo off  plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m start.txt  关机脚本  @echo off  echo 确认要关闭虚拟机吗?确认按任意键继续;退出点击关闭  pause  plink.exe -load “VmServer06″ -ssh -batch -l user -pw yourpass -m stop.txt  现在在任意一台XP客户端双击运行脚本,就可以远程批量开启或关闭虚拟机了 (责任编辑:admin)
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服