esxi网络模型物理网卡: 一般会有多个物理网卡用于管理口和其他(vsan)虚拟交换机创建虚拟交换机时会要求选择至少1个上行链路(物理网卡)端口组一般一个虚拟交换机会创建两个端口组一个虚机使用一个vmware使用vmware使用的即内部数据和业务使用需要创建vmkernel;每个端口组可以有自己的负载均衡策略端口安全模式vmkernel: 这个是针对每个esxi, vmware内部使用的端口组要求创建vmkernel创建时会提示选择该vmkernel的使用场景比如vsan可以在创建好端口组后直接在端口组上添加vmkernel适配器然后可以批量选择物理机这样可以快速在每台物理机上创建vmkernel通常虚机使用的端口组不需要vmkernel而vmware使用的则需要,比如管理面、vsan等vmkernel适配器就是相当于虚拟网卡可以配置IPesxi安装好后默认会创建一个标准的虚拟交换机vSwitch0,包含两个端口组Manager Network和VM Network默认创建一个vmk0只勾选了管理设置的IP就是给vmk0设置IPvmk0连接Manager Network端口组进而连接到vSwitch0标准虚拟交换机上通过物理口出去通常通过vcenter管理esxi时会将同一机架的esxi添加为一个集群集群内的esxi一般都在同一子网如果不是的话后续配置vsan等需要配置ip时会很麻烦集群要求CPU型号一致同时将esxi的存储组建成vsan另外会创建一个DVS(分布式交换机)添加两个端口组一个用来给虚机使用一个用来给宿主机内部使用需要创建vmkernel包含vMotion、置备、vSphere Replication、vSphere Replication NFC、vSANesxi虚机网络负载默认是根据虚机网卡的端口ID来的这样就会导致某个时刻物理网卡的负载不均衡处理办法1、调整虚机配置编辑虚机将网口的连接和启动连接关闭确认后再次编辑打开2、迁移虚机到其他宿主机3、调整端口组的负载均衡策略改成安装物理网卡的实际负载来执行显示物理网卡信息[rootlocalhost:~] esxcli network nic listName PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description------- ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -----------vmnic0 0000:1a:00.0 i40en Up Up 10000 Full 8c:2a:8e:08:9c:74 9000 Intel(R) Ethernet Connection X722 for 10GbE SFPvmnic1 0000:1a:00.1 i40en Up Up 10000 Full 8c:2a:8e:08:9c:75 9000 Intel(R) Ethernet Connection X722 for 10GbE SFP显示标准虚拟交换机:[rootlocalhost:~] esxcli network vswitch standard listvSwitch0Name: vSwitch0Class: cswitchNum Ports: 9216Used Ports: 4Configured Ports: 128MTU: 1500CDP Status: listenBeacon Enabled: falseBeacon Interval: 1Beacon Threshold: 3Beacon Required By:Uplinks: vmnic2Portgroups: VM Network, Management Network查询标准交换机端口组[rootlocalhost:~] esxcli network vswitch standard portgroup listName Virtual Switch Active Clients VLAN ID------------------ -------------- -------------- -------Management Network vSwitch0 1 0VM Network vSwitch0 1 0显示分布式交换机[rootlocalhost:~] esxcli network vswitch dvs vmware listDVSInfraName: DVSInfraVDS ID: 50 32 c6 7b 2e d8 28 d9-61 62 b4 c0 b4 de 7e daClass: cswitchNum Ports: 3323Used Ports: 8Configured Ports: 512MTU: 9000CDP Status: listenBeacon Timeout: -1Uplinks: vmnic5, vmnic6VMware Branded: trueDVPort:Client: vmnic5DVPortgroup ID: dvportgroup-4970In Use: truePort ID: 16Client: vmnic6DVPortgroup ID: dvportgroup-4970In Use: truePort ID: 17注意这里的Port ID其实是DVS Port ID不能用来抓包esxi上没有查询分布式端口组的命令如果要抓包则可以通过esxcli network vm list 命令显示的虚机world id然后再通过esxcli network vm port list -w WORLDID,这个命令会显示Port ID和DVS Port ID输入esxtop 再按n 可显示虚机的网络使用请求里面有port num可用来抓包跟net-stats -l显示的por num是一样的查询当前vsan下不可访问的虚机esxcli vsan debug object list --health inaccessibleesxi上进行抓包pktcap-uw --vmk vmk0 --dir 2 --mac 00:50:56:bd:ff:f8 -e指定物理网卡抓包pktcap-uw --uplink vmnic0 --dir 2 --mac 00:50:56:bd:ff:f8这里的PortNum可以用来抓包pktcap-uw --dir 2 --switchport [PortNum/PortID]显示esxi上所有活跃的端口信息[rootlocalhost:~] net-stats -lPortNum Type SubType SwitchName MACAddress ClientName2214592530 4 0 DvsPortset-0 8c:2a:8e:08:9c:74 vmnic02214592532 4 0 DvsPortset-0 8c:2a:8e:08:9c:75 vmnic167108887 3 0 DvsPortset-0 00:50:56:6f:ea:93 vmk167108929 5 7 DvsPortset-0 00:50:56:b2:c0:6c centos_7.0.eth067109120 5 9 DvsPortset-0 00:50:56:b2:c5:57 XXX6.3.0-14.eth567109121 5 9 DvsPortset-0 00:50:56:b2:2f:b3 XXX6.3.0-14.eth467109122 5 9 DvsPortset-0 00:50:56:b2:fc:cd XXX6.3.0-14.eth367109123 5 9 DvsPortset-0 00:50:56:b2:88:97 XXX6.3.0-14.eth267109124 5 9 DvsPortset-0 00:50:56:b2:57:40 XXX6.3.0-14.eth167109125 5 9 DvsPortset-0 00:50:56:b2:49:40 XXX6.3.0-14.eth067109126 5 7 DvsPortset-0 00:50:56:b2:02:f5 centos_8.0-12.eth0可以查看某个端口的网络统计信息[rootlocalhost:~] esxcli network port stats get -p 67109168Packet statistics for port 67109168Packets received: 105476160732Packets sent: 9582511311Bytes received: 3982297224Bytes sent: 25482787Broadcast packets received: 85681935373Broadcast packets sent: 62395482Multicast packets received: 8661218972Multicast packets sent: 8699038Unicast packets received: 11133006387Unicast packets sent: 9511416791Receive packets dropped: 1459543Transmit packets dropped: 372当磁盘组显示异常但是虚机都正常时处理步骤1、查看当前esxi中所有加入到vsan的磁盘并过滤磁盘名称和磁盘组uuidesxcli vsan storage list | grep -E naa|Group UUID2、删除磁盘组esxcli vsan storage remove -u [uuid] 这里的uuid就是磁盘组的Group UUID这里可以是磁盘组的uuid也可以是磁盘的uuid如果是磁盘组的uuid则是从vsan中删除磁盘组如果是磁盘的uuid则是从磁盘组中删除磁盘从磁盘组中删除磁盘最好是在界面上操作只有当磁盘组中存在unknown的磁盘才在esxi里面删除显示unknown的磁盘磁盘uuid也会显示UnknownDevice: UnknownDisplay Name: UnknownIs SSD: falseVSAN UUID: 520a6f1c-2d5c-e7b6-f5b5-32454d93c0f1VSAN Disk Group UUID:VSAN Disk Group Name:Used by this host: falseIn CMMDS: falseOn-disk format version: -1Deduplication: falseCompression: falseChecksum:Checksum OK: falseIs Capacity Tier: falseEncryption Metadata Checksum OK: trueEncryption: falseDiskKeyLoaded: falseIs Mounted: falseCreation Time: Unknown这种磁盘在界面上无法删除查询当前vsan下不可访问的虚机esxcli vsan debug object list --health inaccessible命令会显示不可访问对象的路径(部分没有)然后进入/vmfs/volumes/vsan:52ee42c2aeda28e2-edb4ed96882f258d/再执行/usr/lib/vmware/osfs/bin/osfs-rmdir --force XXX6.9.1删除不可访问的对象vsan删除不可访问的对象/usr/lib/vmware/osfs/bin/objtool delete -f -u db6f235b-b856-89dd-6324-0010181a9981/usr/lib/vmware/osfs/bin/objtool delete -f -u 6238115c-0828-2cc6-3dd3-b8aeedb7689f/usr/lib/vmware/osfs/bin/objtool delete -f -u c19a245b-f031-9b4f-9b10-b8aeedb7689f查看磁盘分区partedUtil get /vmfs/devices/disks/naa.600605b00c30f7e027e6d4c16c0d55ff删除指定分区partedUtil delete /vmfs/devices/disks/naa.600605b00c30f7e027e6d4c16c0d55ff 1 #删除第一块分区partedUtil delete /vmfs/devices/disks/naa.600605b00c30f7e027e6d4c16c0d55ff 2 #删除第二块分区重做分区partedUtil mklabel /vmfs/devices/disks/naa.600605b00cc7ae8027e8b92329e47a6b msdos查看partedUtil get /vmfs/devices/disks/naa.600605b00cc7ae8027e8b92329e47a6b1、查询当前esxi中的所有磁盘esxcli storage core device list #会显示磁盘是否为SSDModel是否为启动设备(即安装esxi系统的)2、查看vmfs存储,即本地存储esxcli storage vmfs extent listVolume Name VMFS UUID Extent Number Device Name Partition------------------------------------------ ----------------------------------- ------------- -------------------- ---------datastore1 (1) 674fbf93-5ae75af0-1eed-0894eff96a38 0 naa.500a07513438e2a1 8OSDATA-674fbf93-314af3ee-7a0c-0894eff96a38 674fbf93-314af3ee-7a0c-0894eff96a38 0 naa.500a07513438e2a1 7当使用一个磁盘安装esxi后多余的磁盘空间会被创建成存储OSDATA即为esxi系统分区3、查询加入到vsan的磁盘列表esxcli vsan storage list4、查看磁盘健康状况[rootlocalhost:~] esxcli storage core device smart get -d naa.50014ee05973baf5Parameter Value Threshold Worst Raw--------------------------------- ----- --------- ----- ---Health Status OK N/A N/A N/AWrite Error Count 31 0 N/A 31Read Error Count 0 51 N/A 0Power-on Hours 26 0 26 54164Power Cycle Count 125 0 N/A 125Reallocated Sector Count 0 140 N/A 0Drive Temperature 35 0 N/A 35Initial Bad Block Count 0 0 N/A 0Sector Reallocation Event Count 0 0 N/A 0Pending Sector Reallocation Count 26 0 N/A 26Uncorrectable Sector Count 26 0 N/A 26查看vmk 列表esxcli network ip interface ipv4 getName IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type Gateway DHCP DNS---- -------------- ------------- --------------- ------------ ------------- --------vmk0 10.131.128.34 255.255.240.0 10.131.143.255 STATIC 10.131.128.1 falsevmk1 192.168.128.34 255.255.255.0 192.168.128.255 STATIC 192.168.128.1 false查看路由列表esxcli network ip route ipv4 listNetwork Netmask Gateway Interface Source------------- ------------- ------------- --------- ------default 0.0.0.0 10.131.128.1 vmk0 MANUAL10.131.128.0 255.255.240.0 0.0.0.0 vmk0 MANUAL192.168.0.0 255.255.0.0 192.168.128.1 vmk1 MANUAL192.168.128.0 255.255.255.0 0.0.0.0 vmk1 MANUAL删除路由esxcli network ip route ipv4 remove -n 192.168.0.0/16 -g 192.168.128.1添加路由esxcli network ip route ipv4 add -n 192.168.0.0/16 -g 192.168.128.1查看dns列表esxcli network ip dns server listDNSServers: 10.8.8.8, 10.6.6.6删除dns设置esxcli network ip dns server remove --all添加DNS设置esxcli network ip dns server add -s 10.8.8.8esxcli network ip dns server add -s 10.6.6.6查看ntp设置esxcli system ntp get设置ntp(设置前需要先设置DNS服务器防止无法解析域名而失败)esxcli system ntp set -e true -s ntp.sangfor.com查看网卡列表esxcli network nic listName PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description------- ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -----------vmnic0 0000:1a:00.0 i40en Up Down 0 Half b4:05:5d:22:1e:6c 1500 Intel(R) Ethernet Connection X722 for 1GbEvmnic1 0000:1a:00.1 i40en Up Down 0 Half b4:05:5d:22:1e:6d 1500 Intel(R) Ethernet Connection X722 for 1GbEvmnic10 0000:5f:00.0 igbn Up Down 0 Half 80:61:5f:07:65:40 1500 Intel Corporation I350 Gigabit Network Connectionvmnic11 0000:5f:00.1 igbn Up Down 0 Half 80:61:5f:07:65:41 1500 Intel Corporation I350 Gigabit Network Connectionvmnic2 0000:1a:00.2 i40en Up Down 0 Half b4:05:5d:22:1e:6e 1500 Intel(R) Ethernet Connection X722 for 1GbEvmnic3 0000:1a:00.3 i40en Up Up 1000 Full b4:05:5d:22:1e:6f 1500 Intel(R) Ethernet Connection X722 for 1GbEvmnic4 0000:5e:00.0 ixgben Up Up 10000 Full b4:05:5d:16:d5:ad 9000 Intel(R) 82599 10 Gigabit Dual Port Network Connectionvmnic5 0000:5e:00.1 ixgben Up Down 0 Half b4:05:5d:16:d5:ae 1500 Intel(R) 82599 10 Gigabit Dual Port Network Connectionvmnic6 0000:3b:00.0 i40en Up Down 0 Half 80:61:5f:0f:35:0c 1500 Intel(R) Ethernet Controller X710 for 10GbE SFPvmnic7 0000:3b:00.1 i40en Up Up 10000 Full 80:61:5f:0f:35:0d 9000 Intel(R) Ethernet Controller X710 for 10GbE SFPvmnic8 0000:3c:00.0 i40en Up Down 0 Half 80:61:5f:0b:26:f6 1500 Intel(R) Ethernet Controller X710 for 10GbE SFPvmnic9 0000:3c:00.1 i40en Up Down 0 Half 80:61:5f:0b:26:f7 1500 Intel(R) Ethernet Controller X710 for 10GbE SFP查看esxi上各虚机网口的端口IDesxcli network vswitch dvs vmware listClient: HCI_Witness6.11.1_X86_20250418_B-88159(10.131.138.87).eth1DVPortgroup ID: dvportgroup-235In Use: truePort ID: 4885Client: HCI_Witness6.11.1_X86_20250418_B-88159(10.131.138.87).eth0DVPortgroup ID: dvportgroup-235In Use: truePort ID: 4620查看mac tablenetdbg vswitch mac-table get -dvs DVS2PortID: Uplink MAC: f4:6b:8c:22:c3:b1 vid: 20 vni: 0 type: learned aging: yes elapsed: 1PortID: Uplink MAC: f4:6b:8c:22:c3:ac vid: 20 vni: 0 type: learned aging: yes elapsed: 1PortID: Uplink MAC: f4:6b:8c:0d:cd:06 vid: 20 vni: 0 type: learned aging: yes elapsed: 11PortID: Uplink MAC: f4:6b:8c:0d:cd:04 vid: 20 vni: 0 type: learned aging: yes elapsed: 19PortID: Uplink MAC: e4:3d:1a:27:ba:e3 vid: 20 vni: 0 type: learned aging: yes elapsed: 56PortID: Uplink MAC: fc:73:fb:4b:43:2a vid: 20 vni: 0 type: learned aging: yes elapsed: 2PortID: Uplink MAC: fe:17:12:37:dd:0c vid: 0 vni: 0 type: learned aging: yes elapsed: 7查看指定端口的mac地址表netdbg vswitch mac-table port get -p 4620 -dvs DVS2MAC: 00:50:56:89:a6:d6 vid: 0 vni: 0 type: static aging: no elapsed: 0可以通过mac地址表来粗略判断是否异常如果mac地址条目太多那虚机的网络指定是异常的比如HCI里面的流量镜像netdbg vswitch mac-table port get -p 4620 -dvs DVS2 |wc -l虚机开启流量镜像可能会导致环路物理交换机如果开启了STP环路检测可能会shutdown 物理端口这时候esxi的上行链路可能会显示Link status: downvcenter 磁盘VMDK 1 /boot 存储内核镜像和引导加载程序配置VMDK 2 /tmp 存储vCenter服务生成的临时文件VMDK 3 SWAP 内存不足时作为交换空间使用VMDK 4 /storage/core 存储vCenter VPXD进程的核心转储文件VMDK 5 /storage/log 存储vCenter和Platform Services Controller的日志VMDK 6 /storage/db VMware Postgres数据库主存储位置VMDK 7 /storage/dblog Postgres数据库事务日志存储VMDK 8 /storage/seat 存储统计、事件、告警和任务SEAT数据VMDK 9 /storage/netdump ESXi内核转储文件的收集仓库VMDK 10 /storage/autodeploy Auto Deploy无状态引导ESXi主机的资源库VMDK 11 /storage/imagebuilder 储vSphere镜像配置文件和VIB驱动包VMDK 12 /storage/updatemgr Update Manager存储虚拟机及ESXI主机的补丁VMDK 13 /storage/archive Postgres预写日志WAL存储位置VMDK 14 /storage/vtsdb vTSDB服务统计信息存储VMDK 15 /storage/vtsdblog vTSDB服务的日志存储VMDK 16 /storage/lifecycle Workload Control Plane服务二进制文件库VMDK 17 /storage/lvm_snapshot 临时系统根目录存储用于快照和升级vcenter root密码和sso密码是分开的sso密码是web登录使用root密码是ssh登录使用通常是两者一致按照的时候设置的但是root密码默认90天要求修改可以在vsphere client上修改root密码的生命周期也可以在shell里面修改rootlocalhost [ ~ ]# chageUsage: chage [options] LOGINOptions:-d, --lastday LAST_DAY set date of last password change to LAST_DAY-E, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE-h, --help display this help message and exit-I, --inactive INACTIVE set password inactive after expirationto INACTIVE-l, --list show account aging information-m, --mindays MIN_DAYS set minimum number of days before passwordchange to MIN_DAYS-M, --maxdays MAX_DAYS set maximum number of days before passwordchange to MAX_DAYS-R, --root CHROOT_DIR directory to chroot into-W, --warndays WARN_DAYS set expiration warning days to WARN_DAYS设置root密码永不过期chage -M -1 -E -1 root查看root密码过期情况rootlocalhost [ ~ ]# chage -l rootLast password change : Aug 18, 2025Password expires : neverPassword inactive : neverAccount expires : neverMinimum number of days between password change : 0Maximum number of days between password change : -1Number of days of warning before password expires : 7若 root 密码已完全过期无法验证需通过 GRUB 单用户模式重置重启 vCenter 虚拟机启动时按 e 进入 GRUB 编辑模式。在 linux行末尾添加 rw init/bin/bash → 按 CtrlX 启动 。挂载文件系统并重置密码mount -o remount,rw / # 挂载为可写passwd root # 设置新密码需满足复杂度chage -M -1 root # 禁用密码过期reboot -f # 强制重启如果BIOS里面已经开启MWAIT功能并且组建集群时vCLS虚机已经是正常运行状态运行一段时间后异常config.vcls.clusters.domain-c1313.enabled 设置为false一段时间后再改为true当执行vsan skyline health 检查到存储中存在不可访问的对象并且不可清除时点击虚拟对象找到不可访问对象复制相关uuid:/usr/lib/vmware/osfs/bin/objtool delete -u db6f235b-b856-89dd-6324-0010181a9981 -f执行删除查看NTP配置cat /etc/ntp.conf# Do not edit this file, config store overwrites itrestrict default nomodify notrap nopeer noqueryrestrict 127.0.0.1restrict -6 ::1driftfile /etc/ntp.driftserver ntp.sangfor.comlogconfig clockstatus peerstatus sysstatus syncstatus查看ntp 状态[rootlocalhost:~] ntpq -premote refid st t when poll reach delay offset jitter200.200.0.9 106.55.184.199 3 u 64 64 7 28.057 -1.362 2.485[rootlocalhost:~] esxcli system ntp getEnabled: trueLoglevel: warningPID: 207516106Runtime Seconds: 206Servers: ntp.sangfor.comService Providing Kernel Time: Network Time ProtocolTime Service Enabled: trueTime Synchronized: true# 1. 先停止 NTP 服务esxcli system ntp set -e 0# 2. 强制杀死卡死的进程防止残留kill -9 2099670# 3. 重置内核 NTP 时钟数据关键步骤vsish -e set /system/ntpclock/clockData 1# 4. 重新启动 NTP 服务esxcli system ntp set -e 1查看防火墙状态esxcli network firewall ruleset allowedip list | grep ntpClient**VMware vSphere ESXi 7.0 Enterprise Plus**JJ2WR-25L9P-H71A8-6J20P-C0K3FHN2X0-0DH5M-M78Q1-780HH-CN214JH09A-2YL84-M7EC8-FL0K2-3N2J2JA0W8-AX216-08E19-A995H-1PHH2JJ2WR-25L9P-H71A8-6J20P-C0K3F**VSAN 7.0 Enterprise Plus**HN0D8-AAJ1Q-07D00-6U924-CX22450008-221DH-M7E99-A9CKM-A1030HN0NH-62051-H75E9-P38RM-0H8700F0EU-26H56-085H8-X80GK-9FAHF**vCenter Server 7.0 Standard**104HH-D4343-07879-MV08K-2D2H2410NA-DW28H-H74K1-ZK882-948L4406DK-FWHEH-075K8-XAC06-0JH08K42HJ-9L295-R8LN9-08882-0J7J2**VMware vSphere ESXi 8.0 Enterprise Plus**4V492-44210-48830-931GK-2PRJ4**vCenter Server 8.0 Standard**0Z20K-07JEH-08030-908EP-1CUK4**VSAN 8.0 Enterprise Plus**NF212-08H0K-488X8-WV9X6-1F024