今天本想在vcenter上建個分佈式交換機,沒想到在遷移主機端口時,由於主機只連了一個物理網卡,導致在遷移到分佈式交換機而失去連接,幾近周折,從網上找了幾篇不錯的文章,與衆同樂
假如一臺ESX主機先通過標準虛擬交換機vSwitch0上的服務控制檯IP(192.168.100.101)連接到vCenter Server。然後新建一個DVS,uplink仍然連接到同一子網(192.168.100.0/24)。此時將主機中空閒的物理網卡添加到uplink是沒有問題的,但如果遷移和vSwitch0連接的物理網卡和上面的服務控制檯,就會與ESX主機失去聯繫。登錄ESX的控制檯用/etc/init.d/network restart重啓網絡也連不到子網了。
我恢復的辦法如下
(1)查看交換機狀況,發現vmnic0(連接到vSwitch0的物理網卡)和vswif0(服務控制檯)都出現在DVS中了
esxcfg-vswitch -l
(2)先將vmnic0從DVS中剝下來
esxcfg-vswitch -Q vmnic0 -V xxx DVS_NAME
參數-V填寫DVport ID,可以從先前的命令看到,DVS_NAME填寫DVS的名稱(3)將vmnic0添加到vSwitch0中
esxcfg-vswitch -L vmnic0 vSwitch0
(4)刪除原來的服務控制檯
esxcfg-vswif -d vswif0
(5)在vSwitch0中添加服務控制檯的端口組
esxcfg-vswitch -A "Service Console" vSwitch0
(6)重新添加服務控制檯
esxcfg-vswif -a -p "Service Console" -i 192.168.100.101 -n 255.255.255.0 -b 192.168.16.255 vswif0
(7)用vsphere client直接登錄ESX主機,選擇主機,在“配置”標籤頁中找到“網絡》分佈式交換機”,刪除即可
esxi 常用命令
一. VMware ESX Command
1. 看你的esx版本vmware –v
2. 查看顯示ESX硬件,內核,存儲,網絡等信息esxcfg-info -a(顯示所有相關的信息)esxcfg-info -w(顯示esx上硬件信息)
3. 列出esx裏知道的服務esxcfg-firewall –s
4. 查看具體服務的情況esxcfg-firewall -q sshclinet
5. 重新啓動vmware服務service mgmt-vmware restart
6. 修改root的密碼passwd root
7. 設置kernel高級選項esxcfg-advcfg -d(將系統內核恢復默認值)
8. 管理資源組esxcfg-resgrp -l(顯示所有資源組)
9. 列出你當前的虛擬交換機esxcfg-vswitch -lesxcfg-vswitch -v 10 -p "Service Console" vSwitch0 (將vSwitch0上的Service Console劃分到vLan 10上,如果vLan號爲0則不設置vLan)
10. 查看控制檯的設置esxcfg-vswif -l (列出已添加的網卡)esxcfg-vswif -a (添加網卡)
11. 列出系統的網卡esxcfg-nics –l
12. 添加一個虛擬交換機,名字叫(internal)連接到兩塊物理網卡,(重新啓動服務,vi就能看見了)esxcfg-vswitch -a vSwitch1esxcfg-vswitch -A internal vSwitch1esxcfg-vswitch -L vmnic1 vSwitch1esxcfg-vswitch -L vmnic2 vSwitch1
13. 刪除交換機,(注意,別把控制檯的交換機也刪了)esxcfg-vswitch -D vSwitch1
14. 刪除交換機上的網卡esxcfg-vswitch -u vmnic1 vswitch2
15. 刪除portgroupesxcfg-vswitch -D internel vswitch1
16. 創建 vmkernel switch,如果你希望使用vmotion,iscsi的這些功能,你必須創建(通常是不需要添加網關的)esxcfg-vswitch -lesxcfg-vswitch -a vswitch2esxcfg-vswitch -A "vm kernel" vswitch2esxcfg-vswitch -L vmnic3 vswitch2esxcfg-vmknic -a "vm kernel" -i 172.16.1.141 -n 255.255.252.0 (添加一個vmkernel)
17. 防火牆設置esxcfg-firewall -e sshclient (打開防火牆ssh端口)esxcfg-firewall -d sshclient (關閉防火牆ssh端口)esxcfg-firewall -e veritasNetBackup(允許Veritas Netbackup服務)esxcfg-firewall -o 123,udp,out,ntp(爲ntp服務打開UDP協議中的123端口的輸出)
18. 路由管理esxcfg-route(VM生成網卡的路由管理)esxcfg-route(顯示路由表)esxcfg-route 172.16.0.254(設置vmkernel網關)
19. 創建控制檯esxcfg-vswitch -a vSwitch0esxcfg-vswitch -A "service console" vSwitch0esxcfg-vswitch -L vmnic0 vSwitch0esxcfg-vswif -a vswif0 -p "service console" -i 172.16.1.140 -n 255.255.252.0
20. 添加nas設備(a添加標籤,-o,是nas服務器的名字或ip,-s是nas輸入的共享名字)esxcfg-nas -a isos -o nas.vmwar.cn -s isos
21. nas連接管理esxcfg-nas -r (強迫esx去連接nas服務器)esxcfg-nas -l (用esxcfg-nas -l來看看結果)esxcfg-nas -a(添加NAS文件系統到/vmfs目錄下)esxcfg-nas -d(刪除NAS文件系統)
22. 掃描SCSI設備上的LUN信息esxcfg-rescan <vmkernel SCSI adapter name>
23. 連接iscsi設備(e:enable q:查詢 d, disable s:強迫搜索)esxcfg-swiscsi -e
24. 設置targetipvmkiscsi-tool -D -a 172.16.1.133 vmhba40
25. 列出和target的連接vmkiscsi-tool -l -T vmhba40
26. 列出當前的磁盤ls -l /vmfs/devices/disks
27. 內核dump管理工具esxcfg-dumppart -l(顯示當前dump分區配置信息)
28. 路徑管理esxcfg-mpath -l(顯示所有路徑)esxcfg-mpath -a(顯示所有HBA卡)
29. ESX授權管理配置esxcfg-authesxcfg-auth --enablenis(運行NIS驗證)
30. 管理啓動設備esxcfg-bootesxcfg-boot -b(更新啓動設備)
31. 執行initrd的初始化設置esxcfg-initesxcfg-init(初始化設備)
32. esxcfg-linuxnet(在linux debug模式中,轉換vswif設備命名爲linux自帶的eth命名規則)esxcfg-linuxnet --setup
33. 升級esxcfg-upgrade(ESX2.X升級到ESX3.X)
二. 使用命令更改Service Console IP在CLI下更改service console的ip地址,注意大小寫,vmware是把物理nic虛擬成vmnic,在vmnic上創建虛擬交換機vswitch,是把網卡當成交換機來使用,不能對網卡進行ip地址的設置,只能在vswitch上創建interface就是vswif,對vswif進行ip設置
1. 使用CLI創建Service Console[root@VI3 root]# esxcfg-vswitch -a vSwitch0
#創建vSwitch0[root@VI3 root]# esxcfg-vswitch -A "Service Console" vSwitch0
#在vSwitch0上創建Portgroup,命名爲Service Console[root@VI3 root]# esxcfg-vswitch -L vmnic0 vSwitch0
#將vmnic0綁定在vSwitch0[root@VI3 root]# esxcfg-vswitch –l
#可以看到service console已經綁定 vmnic0
Switch Name Num Ports Used Ports Configured Ports MTU Uplinks
vSwitch0 64 5 64 1500 vmnic0
PortGroup Name VLAN ID Used Ports Uplinks
Service Console 0 1 vmnic0
[root@VI3 root]# esxcfg-vswif -a vswif0 -p "Service Console" -i 192.168.1.1 -n 255.255.255.0
#設備ID Service Consol 一定要加引號 #創建vswif0並與service console綁定,在ESX裏ip地址只能跟vswif0綁定,也就是虛擬交換機的interface[root@VI3 root]# esxcfg-vswif –l
#可以看到Service console的IP已經配置到vswif0
Name Port Group IP Address Netmask Broadcast Enabled DHCP
vswif0 Service Console 192.168.1.50 255.255.255.0 192.168.1.255 true false
[root@VI3 root]# esxcfg-vswitch –lSwitch
Name Num Ports Used Ports Configured Ports MTU Uplinks
vSwitch0 64 5 64 1500 vmnic0
PortGroup Name VLAN ID Used Ports Uplinks
Service Console 0 1 vmnic0
[root@VI3 root]# service mgmt-vmware restart
#重啓服務,到這裏正常情況下就可以使用VI連接到ESX
--------------↓如果不小心配置錯了要刪除,請看下面↓---------------
[root@VI3 root]# esxcfg-vswif –l
#vswif0代表的虛擬網卡的interface0,service console對應vswif0
Name Port Group IP Address Netmask Broadcast Enabled DHCP
vswif0 Service Console 192.168.1.1 255.255.255.0 192.168.1.255 true false
[root@VI3 root]# esxcfg-vswif -d vswif0
#刪除vswif0
[root@VI3 root]# esxcfg-vswitch -l
Switch Name Num Ports Used Ports Configured Ports MTU Uplinks
vSwitch0 64 5 64 1500 vmnic0
PortGroup Name VLAN ID Used Ports Uplinks
Service Console 0 1 vmnic0
[root@VI3 root]# esxcfg-vswitch –D “Service Console” vSwitch0
#刪除vSwitch0上面portgroup[root@VI3 root]# esxcfg-vswitch –D “VM Network” vSwitch0
[root@VI3 root]# esxcfg-vswitch -d vSwitch0 #刪除vswitch0
[root@VI3 root]# esxcfg-vswitch –l #之前操作刪除了vswitch信息,現在是空白
Switch Name Num Ports Used Ports Configured Ports MTU Uplinks PortGroup Name VLAN ID Used Ports Uplinks
2. 如果不行檢查一下以下配置文件.
[root@VI3 root]# vi /etc/sysconfig/network #這裏紀錄主機名字和網關
NETWORKING=yes
HOSTNAME=VI3
GATEWAY=192.168.251.12 #網關
GATEWAYDEV=vswif0 #網關指定在vswif0
[root@VI3 root]# vi /etc/sysconfig/network-scripts/ifcfg-vswif0 #看看這裏的信息是否跟之前配置吻合
DEVICE=vswif0 #之前把service cosole與vswif0關聯
MACADDR=00:50:56:43:a3:52PORTGROUP=portgroup6 #這裏的protgroup與service console一致
BOOTPROTO=static
BROADCAST=192.168.251.255
IPADDR=192.168.251.60 #與service console一致NETMASK=255.255.255.0
ONBOOT=yes
如果以上不一致,可以手動更改在vi編輯器中,i鍵是插入模式,進行文本更改,esc鍵退出插入模式,:wq保存並退出.編輯完成reboot.可能啓動後顯示地址跟設置不同,但是可以使用VI連接到ESX
關於修改網卡ip整理資料
1.首先,你必須訪問物理控制檯。 2.把ESX主機設爲維護模式並從Virtual Center中斷開。 3.連接到ESX主機的控制檯。 4.刪除舊的IP(即刪除vswif接口),"esxcfg-vswif -d vswif0" (vswif0 你的第一塊網卡) 5.建立一個新的vswif接口及相應的IP地址,"esxcfg-vswif -a vswif0 -p “Service Console” -i 192.168.0.100 -n 255.255.255.0 -b 192.168.0.255″。這裏: -i 是新的IP地址 -n 是子網掩碼 -b 是廣播地址 6.更新默認網關,”nano /etc/sysconfig/network file”按CTRL+O和回車,然後CTRL+Q退出。 7.重新啓動接口。"esxcfg-vswif -s vswif0″ (禁用vswif0接口),然後"esxcfg-vswif -e vswif0″(開啓該接口)。 8.更新DNS和HOSTS文件。接着在Virtual Center服務器上執行"ipconfig /flushdns"和"ipconfig /registerdns"。你可以通過VI圖形界面來更改DNS及hostname信息: 1) 打開VI客戶端並選擇該ESX服務器,然後點擊Configuration。 2) 點擊DNS and Routing。 3) 點擊Properties。 4) 若你想更改hostname, domain, 及DNS服務器,點擊DNS Configuration並輸入你期望的值。 5) 你可以點擊Routing來更新默認網關。 6) 最後通過VI來重啓該ESX服務器就可以了。