廣告

2024 年 5 月
 12345
6789101112
13141516171819
20212223242526
2728293031  

彙整

ESXi 下的VM硬碟壓縮釋放空間問題

ESXi 下的VM硬碟壓縮釋放空間問題

文章出處 : http://hector958.pixnet.net/blog/post/26399389

==================================================

20110217補充:

關於VMWARE的thin provisioning,繼某SERVER使用CONVERTER匯出方式解決,另外有這台SERVER配置30GB硬碟,系統中剩餘5GB,但是VMDK一直是佔滿30GB/30GB的異常狀態。

同樣的搞了很久無解,當使用以下方法標記非使用中的BLOCK為0後,SVMOTION無效、CLONE去另個STORAGE無效、只有匯出有效。所以確認一件事就是:

VM的CLONE是BLOCK TO BLOCK的搬動;匯出則是建立VMDK後FILE TO FILE的搬動,而BLOCK標記為0的部分沒有被SVMOTION與CLONE的動作影響。

研究之後發現是VMWARE的BUG,當在作SVMOTION的時候,來源與目標磁區的BLOCK SIZE相同的話,會導致BLOCK被標記為0處無法清除,所以必須SVMOTION去一個不同BLOCK SIZE的STORAGE才行。

例如把VDisk00_V1上的東西(BLOCK SIZE=8MB)搬去VDISK01_V4(BLOCK SIZE=8MB),thin provisioning無效。

但VDisk00_V1上的東西(BLOCK SIZE=8MB)搬去ESXi2_ihd(BLOCK SIZE=1MB) ,thin provisioning生效。

當我們使用虛擬機器時,虛擬硬碟的形式可以選thin provisioning,但是明明配置的空間中只用了一半,為何管理上看起來卻大小明顯超過?VMDK的大小也明顯超過?

像這樣 :WINDOS中明明只有用一半:

但是去觀察虛擬環境中去吃的滿滿的:

這明顯有問題,其實是因為WINDOWS的檔案殺了不是真殺,這大家應該都知道。

在WINDOWS之中原本硬碟塞了資料,而後來砍掉之後卻沒有把空間釋放,vmdk大小沒有縮回來,這一點VMWARE就沒有辦法幫我們處理了。

處理的辦法:

首先有空的話最好是WINDOWS硬碟先重組,然後要用SDELETE這個工具程式,去微軟下載這個47K的小程式:

http://www.microsoft.com/taiwan/technet/sysinternals/FileAndDisk/SDelete.mspx

上面連結似乎沒了,請下載微軟瑞士刀工具: http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx

然後複製去虛擬機器的硬碟下,用命令列執行:

sdelete -c c:

這樣會把 c 槽的空白地方都標成0,等他跑完以後,用storage vmotion把這台vm的檔案搬去另一個storge空間,過程中選thin provisioning形式。

等搬完之後,硬碟所佔用空間的大小就縮回來了。

vcbMounter 備份出現 Error Backup snapshot already exists

解決的方式很簡易,開啟VI Client後,到該台VM刪除底下的“_VCB-BACKUP_” 快照即可。
vcbMounter Error Backup snapshot already exists

http://networkadminkb.com/kb/Knowledge%20Base/VMWare/vcbMounter%20Error%20Backup%20snapshot%20already%20exists.aspx

You must manually delete the existing “_VCB-BACKUP_” snap-shot in VirtualCenter using the VI Client.

1) Open the VI Client

2) Right click the affected virtual machine

3) Select Snapshot…Snapshot Manager

4) Select _VCB-BACKUP_

5) Click Delete

6) Click Yes

ESXi Server使用vcbMounter與vcbRestore線上備份與還原(含異機還原)

ESXi Server使用vcbMounter與vcbRestore線上備份與還原(含異機還原)

這種方式還原系統時,只能還原到該備份檔案當下備份時的主機上,要還原至其他主機上會出錯,異機還原要另外處理。

參考網址

http://www.weithenn.org/cgi-bin/wiki.pl?vcbMounter_%E5%8F%8A_vcbRestore#Heading4

http://blog.slps.tp.edu.tw/00086/?p=220#more-220

異機還原

http://bbs.vmsky.com/thread-11439-1-1.html

使用ssh連線到ESXi Server上

備份指令(留意大小寫)

vcbMounter -h <備份的VM在那台ESXi Server > -u root –p <PW> -a ipaddr:<VM IP> -r <指定ESXi Server上的儲存媒體之備份目錄> -t fullvm

-M 0/1 ç 分割檔案的參數 1為不分割

例:

將 10.10.10.43 的ESXi SERVER上的 10.10.10.2 這台VM 備份到 10.10.10.43 的這個 /vmfs/volumes/NAS-ESXi-VM-Backup/bdc-vm_backup_20110428 儲存媒體的指定目錄下

vcbMounter -h 10.10.10.43 -u root -p <PW> -a ipaddr:10.10.10.2 -r /vmfs/volumes/NAS-ESXi-VM-Backup/bdc-vm_backup_20110428 -t fullvm

還原指令(還原時候該台ESXi Server不可有相同的目錄或同名Guest OS)

vcbRestore -h hostIP -u root -p password -s <來源檔案>

例:

vcbRestore […]

vix-async-pipe程序造成 ESXi Server Cpu Loading滿載問題

今天看到其中一台 ESXi Server Cpu的LOADING滿載,可是看這台下面的VM機器CPU LOADING都很低,是什麼東西造成的到底?

 

使用SSH連入再下 top 指令查看,原來是這隻程序在搞鬼,不太清楚它是做啥用的,

vix-async-pipe

 

查了官方網頁的解法:

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1030894

To renice the vix-async-pipe process:

Identify the PID (process ID) of the process with the command: # ps ax|grep vix-async-pipe In the output, the first number on the left is the PID of the process.

With the […]

ESX下VM機器安裝 USB裝置方式

參考文章:http://www.benjr.tw/?q=node/634

ESX下有很多VM機器,但是實體連USB裝置的在同一時間內只有一台可以連,那麼要怎麼指定USB裝置給那台使用呢? VM Workstation 下只要把視窗作用,然後插入usb裝置後,在該VM下就可以直接連接USB裝置,但是在ESX下要指定USB裝置給那台VM機器使用,則要做一些設定,設定方式如下:

1. 先將欲使用的USB裝置插入該台ESX SERVER實體硬體上。

2. 進 vSphere Cliet

3. 開啟要連USB裝置的硬體設定畫面,確認有USB controller裝置。

4. 新增USB裝置,若不確定,可先拔除實體USB然後再做到這步驟看看與接上USB裝置後的差別來判定那個USB裝置是您要的。

5. 新增完VM機器上的USB裝置,應該可以看到對應的VM機器上抓到USB裝置使用。

esx所用的port列表

參考來源 : http://s852254.blogspot.com/2009/09/esxport.html esx所用的port列表

不翻譯了,直接看比較快 port 80 vCenter Server requires port 80 for direct HTTP connections. Port 80 redirects requests to HTTPS port443. This is useful if you accidentally use http://server instead of https://server. port 389 This port must be open on […]

ESXi 4.1 設定檔重開機後自動復原初始值?無法修改設定檔

今天想修改ESXi 4.1 自動開啟SSH 與關閉LOADING IPMI功能,修改設定檔無法作用,重開機後復原設定值?廠商真是貼心………

IPMI功能為何關閉如下: http://ithelp.ithome.com.tw/question/10051917

==================================================================================

發問文章:http://ithelp.ithome.com.tw/question/10052113

小弟又來了,測試了 ESXi 開啟ssh 與 關閉IPMI功能的方式,修改設定檔,但是只要重開機就會回復預設值,例如我開了 SSH :

 

1、在控制台下,按 ALT+F1 進入控制台界面  
2、輸入 unsupported 然後按 enter  (輸入的時候是看不到你輸入的,所以一定要注意)  
3、如果輸入的 unsupported 正確,您將看到支持模式和密碼提示,然後輸入 root 密碼進行登錄  
4、登錄后,修改設定檔   
     # vi /etc/inetd.conf
5、搜索  #SSH  這一項后,把前面的 # 去掉      
6、然後保存退出 

1、在控制台下,按 ALT+F1 進入控制台界面
2、輸入 unsupported 然後按 enter (輸入的時候是看不到你輸入的,所以一定要注意)
3、如果輸入的 unsupported 正確,您將看到支持模式和密碼提示,然後輸入 root 密碼進行登錄
4、登錄后,修改設定檔
# […]

解決VMWare ESXi 2TB硬碟限制問題

最近公司買了便宜的ASUS TS-300/PS4 SERVER,很怪的是 安裝ESX4.1 到選安裝系統到那個硬碟畫面時,硬碟有抓到 LSI 2.8TB,但是卻是反灰不能選,另外使用USB也是一樣,變成兩個都反灰,已打去原廠反應,但都沒下文………………………可是ESXi4.1免費版本確可以正常安裝,傻眼………

但是遇到了2TB限制問題,外加原廠 LSI 1078 MegaRaid陣列卡配上4顆 1TB 原廠 3.5吋7200轉硬碟做RAID 5,容量有2.8TB左右,可是如果直接安裝系統在 LSI上,因2TB限制,則會有800G空間左右浪費。

我的解決方式如下:

使用USB當開機系統碟。

使用SSH連入

看分割狀況 一個RAID5 一個USB開機

~ # fdisk -l

Disk /dev/disks/naa.600e0180000b5a40143c6d7206ef1a34: 2998.9 GB, 2998960914432 bytes

255 heads, 63 sectors/track, 364602 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/disks/naa.600e0180000b5a40143c6d7206ef1a34p1 1 523 4193280 6 FAT16

Partition 1 does not end on […]

HP NC105iPCIe GIGA SERVER ADAPTER(DL160 G5)網卡不支援Jumbo Frames(MTU 9000)

看來測試的結果應該是如此

[root@HP-ESX-1 ~]# esxcfg-vswitch -m 9000 vSwitch0

Unable to set MTU to 9000 the following uplinks refused the MTU setting

若在這台ESXi SERVER上直接把VM機器內的網卡開啟 Jumbo Frames (MTU 9000),則可能會碰上網路連線的靈異事件,我就碰過連同一台NSA,有些目錄一連線就當在那邊,改回MTU 1500後就完全正常。

HP DL160 G5 VMWare上官網不在支援名冊上,但因為當初有加購 SMART 200 陣列卡,故可以安裝ESXi ,硬碟與網卡都可直接抓到無誤,缺點就是無法開啟Jumbo Frames………..

更改ESX SERVER Switch 的 MTU為9000值(Jumbo Frames)

#esxcfg-vswitch -l

This will allow you to list all the virtual switch you have on the ESX server

#esxcfg-vswitch -m 9000 vswitch1 this command is to enable the mtu value of 9000 for every nics that connected to the same virtual switch which provide the storage access to ISCSI

#vmkping -s 9000 192.x.x.x test […]