實用 —— PowerCLI (二)

一、PowerCLI基礎命令

二、PowerCLI之快照

三、PowerCLI之ESXi

 

首先我們來介紹快照的一些基礎命令

1、

# PowerCLI makes it easy to deal with snapshots.
# Powercli使得更容易處理快照,通過該命令,可以查看到所有虛擬機的快照、描述以及狀態,但看不出哪個快照屬於哪個虛擬機,所以快照和描述可以寫得詳細些。
Get-VM | Get-Snapshot

 

clip_p_w_picpath001

2、

# One of the most important attributes is the age of the snapshot.
#這個命令就是對無法顯示虛擬機和快照對應關係進行了調用,
#可以看出快照屬於哪個虛擬機,在什麼時間創建的,非常方便用於Troubleshooting
Get-VM | Get-Snapshot | Select Name, VM, Created

wKiom1MQVLPwhYLhAALXCpr_R8U034.jpg

3、

# You can create snapshots in a very targeted way, because we rely on Get-VM
#查看羣集或者主機上的虛擬機,方便接下來的快照創建
Get-Cluster "Cluster 01" | Get-VM
Get-VMHost 10.132.97.x  | Get-VM

 

clip_p_w_picpath002

4、

# Snapshot every VM on host 10.132.97.X
#爲ESXi主機10.132.X.X上每一臺虛擬機創建一個快照,批量創建快照功能
Get-VMHost 10.132.97.19  | Get-VM | New-Snapshot -Name "Snap1"

 

clip_p_w_picpath003

clip_p_w_picpath004

5、

You can search for snapshots based on their age.
# Identify any snapshot older than a day.
#篩選出某個日期之前的快照
Get-Snapshot | Where { $_.Created -lt (Get-Date).addDays(-1) }
提示命令錯誤

 

clip_p_w_picpath005

help get-snapshot

 

clip_p_w_picpath006

#通過命令提示,發現get-snapshot後面缺參數來顯示所有的VM虛擬機,
#那麼剛剛的第一條命令就可以起到作用,顯示主機上虛擬機的全部快照,
#然後設置addDays參數爲-1.這樣剛剛做的snap的快照就不會顯示在清單
get-vm | get-snapshot  | Where { $_.Created -lt (Get-Date).addDays(-1) }

 

clip_p_w_picpath007

#衍生下,針對單個虛擬機查看此刻之前存在的快照
Get-Snapshot AD-25 | Where { $_.Created -lt (Get-Date).addDays(-0) }

 

clip_p_w_picpath008

#那麼,批量創建了10多個快照,怎麼批量刪除剛剛創建的測試快照?
addDays(+1)是不行的,個人也沒有找到命令,不過換個思路,
我們可以通過快照名稱來進行刪除
get-vm | get-snapshot -name "Snap1" | remove-snapshot –confirm Y
刪除前

 

clip_p_w_picpath009

#刪除中,13個虛擬機,命令運行了13分鐘後,去vsphere client界面,
#纔看到任務都完成,刪除的時候有些長

 

clip_p_w_picpath010

刪除後

 

clip_p_w_picpath011

6、

# Remove *ALL* snapshots.
#移除所有快照,命令就不嘗試了,有些測試快照還有用,大家可以試下。。後果自負。。
Get-Snapshot | Remove-Snapshot

 

 

大家有興趣可以跟下一篇,ESXi

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章