[TOC]
0x00 前言描述 描述:VMware基础设施上需要的更多虚拟化管理,关键在于任务的自动化;虽然VMware ESX主机可以管理与vSphere客户端用户界面,数据中心管理员往往喜欢登录到VMware服务控制台和使用ESX命令行来解决,如网络配置问题或重新配置主机。
关于Linux的而一些基础命令我就不说了,本文主要针对于 VMware ESX和ESXI的特定命令进行讲解
VMware ESX和ESXi的命令可以运行在ESX服务控制台(本地或远程使用Secure Shell)或RCLI(在VMware Infrastructure 3)和vSphere CLI的(在vSphere)
在RCLI和vSphere CLI中 注意到很多命令已更名为vicfg,而不是esxcfg -(即esxcfg - nics.pl和vicfg - nics.pl)
,两个命令都执行相同的功能但VMware试图从esxcfg迁移到vicfg
。
常用命令说明 描述:由于采用了借鉴Linux的内核(官方说是自研内核),但是不开放源代码谁知道呢,其系统带有Linux内核相关味道,其采用了BusyBox工具箱里面放置了常见的Linux命令;
ESXI 操作系统命令一览:
[TOC]
0x00 前言描述 描述:VMware基础设施上需要的更多虚拟化管理,关键在于任务的自动化;虽然VMware ESX主机可以管理与vSphere客户端用户界面,数据中心管理员往往喜欢登录到VMware服务控制台和使用ESX命令行来解决,如网络配置问题或重新配置主机。
关于Linux的而一些基础命令我就不说了,本文主要针对于 VMware ESX和ESXI的特定命令进行讲解
VMware ESX和ESXi的命令可以运行在ESX服务控制台(本地或远程使用Secure Shell)或RCLI(在VMware Infrastructure 3)和vSphere CLI的(在vSphere)
在RCLI和vSphere CLI中 注意到很多命令已更名为vicfg,而不是esxcfg -(即esxcfg - nics.pl和vicfg - nics.pl)
,两个命令都执行相同的功能但VMware试图从esxcfg迁移到vicfg
。
常用命令说明 描述:由于采用了借鉴Linux的内核(官方说是自研内核),但是不开放源代码谁知道呢,其系统带有Linux内核相关味道,其采用了BusyBox工具箱里面放置了常见的Linux命令;
ESXI 操作系统命令一览: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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 find grep awk cat tail nano vi su sudo service ps kill df vdf ping vmkping ntpq shutdown.sh services.sh {start,stop,restart} vmware vmware-cmd vim-cmd vmkfstools vm-support esxtop esxcfg-nics esxcfg-vswitch esxcfg-vmknic esxupdate svmotion esxcfg-mpath Esxcfg-rescan esxcfg-ipsec esxcfg-info esxcfg-firewall esxcfg-vswif Esxcfg-auth
0x01 基础命令 vmware 命令 描述:显示当前EXSI主机的相关版本信息1 2 3 $ vmware -vl VMware ESXi 6.0.0 build-3620759 VMware ESXi 6.0.0 Update 2
vmkping 命令 描述:Ping通过发送Internet控制消息协议数据包测试与其他主机和网络设备的网络连接。 Vmkping是VMware的Ping命令的特定版本,它使用的IP VMkernel去Ping另一个ESX主机的VMkernel端口。此命令有助于解决VMotion和网络存储的问题。
基础示例: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 $vmkping 127.0.0.1$vmkping -d -s 8972 127.0.0.1$ esxcfg-vmknic -l Interface Port Group/DVPort/Opaque Network IP Family IP Address Netmask Broadcast MAC Address MTU TSO MSS Enabled Type NetStack vmk0 Management Network IPv4 192.168.1.188 255.255.255.0 192.168.1.255 64:00:6a:6c:14:ca 1500 65535 true STATIC defaultTcpipStack vmk0 Management Network IPv6 fe80::6600:6aff:fe6c:14ca 64 64:00:6a:6c:14:ca 1500 65535 true STATIC, PREFERRED defaultTcpipStack $ vmkping -I vmk0 192.168.1.201 PING 192.168.1.201 (192.168.1.201): 56 data bytes 64 bytes from 192.168.1.201: icmp_seq=0 ttl=62 time=0.620 ms 64 bytes from 192.168.1.201: icmp_seq=1 ttl=62 time=0.637 ms vmkping ++netstack=vxlan <vmknic IP> -d -s <packet size> $ vmkping ++netstack=vxlan 127.0.0.1 -d -s 64 Killed
注意事项:
如果发现 ping 操作出现间歇性成功,可能表明 vMotion 端口上的绑定网卡中存在不兼容的网卡。请选择兼容的网卡进行绑定,或将其中一个网卡设置为备用 (standby)
。
如果用服务器主机名执行 ping 命令时没有看到响应,请使用 IP 地址执行 ping 命令。对 IP 地址启动 ping 操作,可以判断故障是否由主机名解析问题所引起。如果要测试到另一个服务器上的另一个 VMkernel 端口的连接,请谨记要使用 VMkernel 端口的 IP 地址,因为服务器的主机名通常会解析至远程服务器上的服务控制台地址
estop 命令 描述:它提供实时的CPU、内存、硬盘和网络使用的历史表现的统计数字。与linux中top异曲同工之妙;
1 2 3 4 5 6 7 $ estop 5:02:37am up 35 days 10:28, 570 worlds, 8 VMs, 30 vCPUs; CPU load average: 0.17, 0.17, 0.17 PCPU USED(%): 9.4 8.5 9.9 6.4 10 9.7 8.5 8.1 AVG: 8.8 PCPU UTIL(%): 11 9.7 10 7.7 11 10 9.7 8.6 AVG: 9.9 CORE UTIL(%): 18 16 18 16 AVG: 17 ID GID NAME NWLD %USED %RUN %SYS %WAIT %VMWAIT %RDY %IDLE %OVRLP %CSTP 3443044 3443044 K8S-Master-211 9 17.12 18.15 0.16 896.85 0.00 1.60 387.85 0.11 0.00
vim-cmd 命令 描述:Vimsh是一个强大的交互式框架,有很多允许执行的命令,以及具备显示和配置能力,而vim-cmd是是一种逻辑的vimsh,能够简化vimsh,无需知道很多前端交换命令。
1 2 3 4 5 6 7 $ vim-cmd hostsvc/ Commands available under hostsvc/: vim-cmd /hostsvc/maintenance_mode_enter vim-cmd /hostsvc/maintenance_mode_exit
weiyigeek.top-
esxcfg-info 命令 描述:提供了有关运行中的主机信息,它可以重新定向到一个文本文件记录主机配置即导出为xml或者perl解析格式。
基础信息:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 $ esxcfg-info | more +Host : \==+Hardware Info : |----BIOS UUID................................................0x4c 0x4c 0x45 0x44 0x0 0x57 0x30 0x10 0x80 0x42 0xb3 0xc0 0x4f 0x38 0x38 0x32 |----Product Name.............................................Precision T1700 |----Vendor Name..............................................Dell Inc. |----Serial Number............................................3W0B882 |----Hardware Uptime..........................................3066504523329 |----Ipmi Supported...........................................false \==+PCI Info : $ esxcfg-info -s -F xml
vm-support 命令 描述:该命令收集大量信息、日志文件,并把很多命令以单一的tgz存档文件方式输出
1 2 3 4 5 6 7 $ vm-support 06:42:45: Creating /var/tmp/esx-localhost-2019-12-06--06.42.tgz 06:43:05: Gathering output from /usr/sbin/localcli --plugin-dir /usr/lib/vmware/esxcli/int systemInternal coredump06:43:05: Gathering output from /usr/sbin/vmkerrcode -l $ ls -lah /var/tmp/esx-localhost-2019-12-06--06.42.tgz -rwx------ 1 root root 67.8M Dec 6 06:46 /var/tmp/esx-localhost-2019-12-06--06.42.tgz
weiyigeek.top-
esxupdate 命令 描述:ESX和ESXi主机和打补丁, Esxupdate 用于ESX服务控制台和vihostupdate通过RCLI / vSphere CLI使用
。此外vihostupdate35是用来修补ESX和ESXi 3.5版主机。
1 2 3 4 $ esxupdate Options: -h, --help show this help message and exit --HA HA mode only, required
0x02 磁盘管理 df 命令 描述:该不会显示虚拟机文件系统(VMFS)卷,因为它无法阅读。1 2 3 4 5 6 7 8 9 10 $ df -h Filesystem Size Used Available Use% Mounted on VMFS-5 931.2G 574.3G 356.9G 62% /vmfs/volumes/ds5 VMFS-5 465.5G 421.5G 44.0G 91% /vmfs/volumes/ds2 VMFS-5 465.5G 264.3G 201.2G 57% /vmfs/volumes/ds3 VMFS-5 458.2G 301.1G 157.2G 66% /vmfs/volumes/ds1 vfat 285.8M 202.6M 83.2M 71% /vmfs/volumes/40b466b0-95e35fd0-0d26-64006a6c14ca vfat 249.7M 170.9M 78.8M 68% /vmfs/volumes/ec0dcc7f-6713c574-0f64-2a38ec4ed097 vfat 4.0G 29.1M 4.0G 1% /vmfs/volumes/40b466b2-b745fce4-2631-64006a6c14ca vfat 249.7M 16.0K 249.7M 0% /vmfs/volumes/40f32077-1ca96d84-254b-6fcc7ff43ff7
vdf 命令 描述:该命令的VMware的版本,这也将显示VMFS卷的信息。df与vdf命令都可以使用H变换,可用易读的形式显示。(即2 GB 而不是2016044
)
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 $ $vdf -h Tardisk Space Used sb.v00 139M 139M s.v00 315M 315M lsi_mr3.v00 280K 277K lsi_msgp.v00 460K 456K bnxtnet.v00 412K 408K net_tg3.v00 300K 298K ----- Ramdisk Size Used Available Use% Mounted on root 32M 240K 31M 0% -- etc 28M 224K 27M 0% -- opt 32M 0B 32M 0% -- var 48M 452K 47M 0% -- tmp 256M 4K 255M 0% -- iofilters 32M 0B 32M 0% -- hostdstats 303M 5M 297M 1% -- $ $vdf -ph ----- Ramdisk Min Max Used Sure avl Maybe avl Peak used root 32M 32M 240K 31M 31M 240K etc 28M 28M 224K 27M 27M 256K opt 0B 32M 0B 0B 32M 0B var 5M 48M 452K 4M 47M 516K tmp 2M 256M 4K 1M 255M 296K iofilters 0B 32M 0B 0B 32M 0B hostdstats 0B 303M 5M 0B 297M 5M
描述:虚拟磁盘工具被比做虚拟磁盘中的瑞士军刀,可用于复制、转换、重命名、输入、输出和调整虚拟磁盘文件
的大小。
前面我们讲解虚拟磁盘类型:
厚置备 延迟置零
(默认选项):创建过程中为虚拟磁盘分配所需空间。创建时不会擦除物理设备上保留的任何数据,但是以后从虚拟机首次执行写操作时会按需要将其置零 ;
厚置备 置零
: 创建支持群集功能的厚磁盘,在创建时为虚拟磁盘分配所需的空间,创建中会将物理设备上保留数据置零。创建所需的时间可能会比创建其他类型的磁盘长。
精简置备
: 使用该磁盘最初所需要的数据存储空间,简单的说就是当前磁盘有多大的数据就存储占用磁盘多大的空间,存在一个问题精简配置只增长不收缩;
vmdk有两种文件类型:
虚拟机名.vmdk,文件很小,存放了虚拟磁盘的一些配置信息(如虚拟磁盘数据文件等);
虚拟机名-flat.vmdk,实际数据都存放在flat.vmdk文件中转换时需要使用vmdk文件而不是flat.vmdk文件
语法命令:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 vmkfstools -i <source -disk-name.vmdk>-d {thin|thick} <destination-disk-name.vmdk> vmkfstools -X [新的大小] [目的vmdk文件] vmkfstools -C --createfs vmfs3 -b --blocksize -S --setfsname fsName -Z --spanfs span-partition -G --growfs grown-partition
操作实例: 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 vmkfstools -i converter-two.vmdk -d thin converter-two_new.vmdk vmkfstools --inflatedisk /vmfs/volumes/DatastoreName/VMName/VMName.vmdk vmkfstools --eagerzero /vmfs/volumes/DatastoreName/VMName/VMName.vmdk 20.0G converter-two-flat.vmdk 64.0k converter-two.vmdk 7.9G converter-two_new-flat.vmdk 64.0k converter-two_new.vmdk $ mv converter-two_new.vmdk converter-two.vmdk $ mv converter-two_new-flat.vmdk converter-two-flat.vmdk $ cat converter-two.vmdk RW 41932416 VMFS "converter-two-flat.vmdk" $ du -sh *500.0M converter-two-326dc793.vswp ------------------------------------------------------------- $ disk -l /dev/sda Disk /dev/sda: 21.4 GB, 21469396992 bytes vmkfstools -X 40g converter-two.vmdk fdisk -l /dev/sda Disk /dev/sda: 42.9 GB, 42949672960 bytes
partedUtil 命令 - 磁盘分区创建格式化 描述: 该命令是ESXI中的特有命令,用于磁盘分区以及分区格式相关设置。
语法参数: 1 2 3 4 5 6 7 8 9 10 11 12 13 partedUtil -h Usage: Get Partitions : get <diskName> Set Partitions : set <diskName> ["partNum startSector endSector type attr" ]* Delete Partition : delete <diskName> <partNum> Resize Partition : resize <diskName> <partNum> <start> <end> Get Partitions : getptbl <diskName> Set Partitions : setptbl <diskName> <label> ["partNum startSector endSector type/guid attr" ]* Fix Partition Table : fix <diskName> Create New Label (all existing data will be lost): mklabel <diskName> <label> Show commonly used partition type guids : showGuids Get usable first and last sectors : getUsableSectors <diskName> Fix GPT Table interactively : fixGpt <diskName>
实践案例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 esxcfg-scsidevs -l partedUtil get /vmfs/devices/disks/t10.ATA_____ST1000DM0102D2EP102__________________________________ZN168EKQ partedUtil get /vmfs/devices/disks/t10.ATA_____ST1000DM0102D2EP102__________________________________ZN168EKQ________1
0x03 硬件驱动 lspci 命令 - 列出当前系统PCI设备信息 描述: 常见的PCI设备比如显卡/网卡/HBA卡/Raid卡等等,默认情况下它显示一个简短的设备列表,对于输出的某些部分,特别是在高度冗长的模式中,可能只有经验丰富的PCI黑客才能理解。
注意:对PCI配置空间的某些部分的访问限制在许多操作系统上的根用户,因此lspci的特性对普通用户可用性是有限的。
所属软件包:pciutils-3.6.4 语法参数:
基础示例: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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 $ lspci | grep HBA 0000:04:00.0 Mass storage controller: LSI Dell 12Gbps SAS HBA external [vmhba3] $lspci $lspci | grep "SAS" $ ll /sys/block/ | grep 04:00.0 lrwxrwxrwx 1 root root 0 Sep 11 16:57 sdb -> ../devices/pci0000:00/0000:00:02.0/0000:04:00.0/host4/port-4:2/end_device-4:2/target4:0:2/4:0:2:1/block/sdb/ lrwxrwxrwx 1 root root 0 Sep 11 16:57 sdc -> ../devices/pci0000:00/0000:00:02.0/0000:04:00.0/host4/port-4:2/end_device-4:2/target4:0:2/4:0:2:2/block/sdc/ lrwxrwxrwx 1 root root 0 Sep 11 15:15 sdd -> ../devices/pci0000:00/0000:00:02.0/0000:04:00.0/host4/port-4:1/end_device-4:1/target4:0:1/4:0:1:1/block/sdd/ lrwxrwxrwx 1 root root 0 Sep 11 15:15 sde -> ../devices/pci0000:00/0000:00:02.0/0000:04:00.0/host4/port-4:1/end_device-4:1/target4:0:1/4:0:1:2/block/sde/ lspci -t -v| more -+-[0000:ff]-+-08.0 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D QPI Link 0 | +-08.2 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D QPI Link 0 | +-08.3 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D QPI Link 0 | +-09.0 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D QPI Link 1 | +-09.2 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D QPI Link 1 | +-09.3 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D QPI Link 1 \-[0000:00]-+-00.0 Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D DMI2 +-01.0-[01]----00.0 Broadcom / LSI MegaRAID SAS-3 3108 [Invader] +-02.0-[04]----00.0 Broadcom / LSI SAS3008 PCI-Express Fusion-MPT SAS-3 spci -vvv | grep "Ethernet controller" 5e:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) 5e:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) 61:00.0 Ethernet controller: Intel Corporation Ethernet Connection X722 for 10GBASE-T (rev 09) 61:00.1 Ethernet controller: Intel Corporation Ethernet Connection X722 for 10GBASE-T (rev 09) 86:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01) 86:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection (rev 01)
描述:查看你网卡
1 2 3 4 5 6 $ ethtool -i vmnic0 driver: tg3 version: 3.131d.v60.4 firmware-version: FFV20.2.17 bc 5720-v1.39 bus-info: 0000:02:00.0
esxcfg-nics 命令 描述:观察和配置物理网络接口卡(NIC),它显示网卡状态和配置的速度和全双工网卡使用情况的等信息。1 2 3 4 5 6 7 $ esxcfg-nics -l Name PCI Driver Link Speed Duplex MAC Address MTU Description vmnic0 0000:02:00.0 tg3 Up 100Mbps Full 18:66:da:55:a8:83 1500 Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet vmnic1 0000:02:00.1 tg3 Down 0Mbps Half 18:66:da:55:a8:84 1500 Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet vmnic2 0000:03:00.0 tg3 Down 0Mbps Half 18:66:da:55:a8:85 1500 Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet vmnic3 0000:03:00.1 tg3 Down 0Mbps Half 18:66:da:55:a8:86 1500 Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet
esxcfg-vmknic 命令 描述:EXSI主机配置VMkernel网络接口这是VMotion和连接到iSCSI和网络文件系统的网络存储设备所必要的。
基础示例:1 2 3 4 5 $ esxcfg-vmknic -l Interface Port Group/DVPort IP Family IP Address Netmask Broadcast MAC Address MTU TSO MSS Enabled Type vmk0 iSCSI IPv4 10.10.10.10 255.255.255.0 10.10.10.255 00:50:56:XX:XX:64 9000 65535 true STATIC vmk1 Management Network IPv6 fe80::6600:6aff:fe6c:14ca 64 64:00:6a:6c:14:ca 1500 65535 true STATIC, PREFERRED defaultTcpipStack
esxcfg-vswitch 描述:显示和配置虚拟交换机,它是在vSphere不能使用网络中有用的配置客户端; 该命令用于配置端口组和连接物理网卡(称为上行)配置虚拟局域网ID,思科协议(CDP)和vswitch中的MTU
。
1 2 3 4 5 6 7 $ esxcfg-vswitch -l
esxcfg-mpath 命令 描述:显示和设置一台主机从所有路径到达它的存储设备。
1 2 3 4 5 6 7 8 9 10 11 $ esxcfg-mpath -l sata.vmhba32-sata.0:0-t10.ATA_____TOSHIBA_MQ01ACF050____________________________ Runtime Name: vmhba32:C0:T0:L0 Device: t10.ATA_____TOSHIBA_MQ01ACF050_________________________________957EWA Device Display Name: Local ATA Disk (t10.ATA_____TOSHIBA_MQ01ACF050__________ Adapter: vmhba32 Channel: 0 Target: 0 LUN: 0 Adapter Identifier: sata.vmhba32 Target Identifier: sata.0:0 Plugin: NMP State: active Transport: sata
esxfg-rescan 命令 描述: 让主机产生一个特定的存储适配器,用来发现新的存储设备。存储设备已被添加,删除或从存储网络改变都可以进行扫描显示;
基础语法1 2 3 4 5 6 7 8 esxcfg-rescan -h esxcfg-rescan <options> <adapter> -a|--add Scan for only newly added devices. -d|--delete Scan for only deleted devices. -A|--all Scan all adapters. -u|--update Scan existing paths only and update their state. -h|--help Display this message.
基础示例:1 2 3 $ esxcfg-rescan -a Missing Adapter Name $ esxcfg-rescan -a vmhba33
esxcfg-scsidevs 命令 描述:显示存储器适配器相关数据以及硬件设备信息1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 esxcfg-scsidevs -a esxcfg-scsidevs -l
esxcfg-module 命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 $ esxcfg-module -i lsi_mr3 | more input file: /usr/lib/vmware/vmkmod/lsi_mr3 License: GPLv2 Version: 6.605.08.00-7vmw.600.1.17.3029758 Name-space: Required name-spaces: com.vmware.vmkapi@v2_3_0_0 Parameters: max_sectors: int Maximum number of sectors per IO command mfiDumpFailedCmd: int Hex dump of failed command in driver log $ esxcfg-module -d lsi_msgpt3
vmkmgmt_keyval 命令 描述:主要是对于虚拟机的EXSI管理以及硬件信息查看
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 /usr/lib/vmware/vmkmgmt_keyval/vmkmgmt_keyval -a Listing all system keys: Key Value Instance: lsi_msgpt3_0/LSI Listing keys: Name: DriverVersion Type: string value: 16.00.01.00 Name: HBAModel Type: string value: Avago (LSI) HBA 1000:97:1028:1f46 Name: FWVersion Type: string value: Fw Rev. 09.00.09.00 Name: ChipRevision Type: string value: Chip rev. 0x02 Name: CtrlSASAddress Type: string value: sas.51866da091944100 Name: CtrlStatus Type: string value: FwState 0x20000000 Name: CtrlLoggingLevel Type: string value: logging_level(4-Bytes)=0x00000000
vmkload_mod 命令 1 2 3 $ vmkload_mod -s lsi_msgpt3 | grep Version Version: 06.255.12.00-8vmw.600.1.17.3029758
0x04 防火墙 esxcfg-ipsec 命令 描述:显示信息和配置内置的防火墙保护ESX服务控制台。它允许和阻止特定的TCP /IP服务之间的控制台和其他网络设备端口。 基础语法: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 esxcfg-ipsec esxcfg-ipsec <options> --add-sa 添加安全关联 requires sa-src,sa-dst,spi, sa-mode, ealgo and ialgo --add-sp 添加安全策略, requires sp-src, src-port, sp-dst, dst-port, action, ulproto, dir, sp-mode sa-name. Specify sa-name only for unique SA, otherwise specify 'auto' . --remove-sa Remove the given Security Association from kernel. --remove-sp Remove the given Security Policy from kernel. --flush-sa Remove all SAs --flush-sp Remove all SPs -l|--list-sa List all SAs. -L|--list-sp List all SPs. --sa-src SA source IPv6 address <X:X:X:X> --sp-src SP source IPv6 address and prefix length <X:X:X::/X> --sa-dst SA destination IPv6 address <X:X:X:X> --sp-dst SP destination IPv6 address and prefix length <X:X:X::/X> --src-port Source Port for SP --dst-port Destination Port for SP --ulproto Upper layer protocol for SP <any|tcp|udp|icmp6> any, tcp, udp or icmpv6 --dir Flow direction for SP <in |out> --action Action for SP <none|discard|ipsec>. --sa-mode SA mode <transport|tunnel>. --sp-mode SP mode <transport|tunnel>. --sa-name SA name. Specify 'auto' to let vmkernel automatically choose an SA. If no applicable SA exists, then vmkernel may request one using IKE. --spi SPI value for the SA. --ealgo Encryption algorithm for the SA <null|3des-cbc|aes128-cbc>. --ekey Encryption key (ASCII or hex). Length of hex key is dependent upon algorithm used. (optional if ealgo is null). --ialgo Integrity algorithm for the SA <hmac-sha1|hmac-sha2-256>. --ikey Integrity key (ASCII or hex). Length of hex key is dependent upon algorithm used. --ike-conf Pass an IKE config path to IKE daemon, this will copy the config to IKE config and restart
基础示例:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 $ esxcfg-ipsec -l SA Name Src Addr Dst Addr State SPI Mode Encrypt Algo Integrity Algo Lifetime esxcfg-ipsec --add-sa --sa-src x:x:x:: --sa-dst x:x:x:: --sa-mode transport --ealgo null --spi 0x200 --ialgo hmac-sha1 --ikey key saname esxcfg-ipsec --add-sp --sp-src x:x::/x --sp-dst x:x::/x --src-port 100 --dst-port 200 --ulproto tcp --dir out --action ipsec --sp-mode transport --sa-name saname spname esxcfg-ipsec --add-sp --sp-src any -sp-dst any --src-port any --dst-port any --ulproto any --dir out --action ipsec --sp-mode transport --sa-name saname spname esxcfg-ipsec --add-sp --sp-src x:x::/x --sp-dst x:x::/x --src-port 100 --dst-port 200 --ulproto tcp -dir out --action discard spname esxcfg-ipsec --remove-sa saname esxcfg-ipsec --remove-sp spname esxcfg-ipsec --remove-sa --sa-src x:x:x:: --sa-dst x:x:x:: --spi 0x300 auto esxcfg-ipsec --flush-sp
0x05 管理命令 esxcli 命令 描述:这是一个管理EXSI的客户端管理的命令,他有非常丰富的二级命令可监控管理EXSI虚拟机;
software 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 $ esxcli software vib list | grep lpfc lpfc 10.2.309.8-2vmw.600.0.0.2494585 VMware VMwareCertified 2016-09-07 $ esxcli software vib list | grep "msgpt3" lsi-msgpt3 06.255.12.00-8vmw.600.1.17.3029758 VMware VMwareCertified 2016-09-07 lsu-lsi-lsi-msgpt3-plugin 1.0.0-1vmw.600.0.0.2494585 VMware VMwareCertified 2016-09-07 esxcli software vib install -v /tmp/net-i40e_2.0.7-1OEM.600.0.0.2494585.vib esxcli software vib install -d /tmp/net-i40e_2.0.7-1OEM.600.0.0.2494585.zip esxcli software vib remove -n net-i40e esxcli software vib remove –n lsi-msgpt3 reboot
system 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 $esxcli system version getesxcli system module set --enabled=false --module=lsi_msgpt3 esxcli system time set -y 2020 -M 07 -d 12 -H 17 -m 52 -s 35 esxcli hardware clock set -y 2020 -M 07 -d 12 -H 17 -m 52 -s 35 esxcli system time get
storage 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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 $ esxcli storage core adapter list HBA Name Driver Link State UID Capabilities Description -------- ------- ---------- -------------------- ------------ ---------------------------------------------------------- vmhba38 ahci link-n/a sata.vmhba38 (0000:00:1f.2) Intel Corporation Wellsburg AHCI Controller vmhba39 ahci link-n/a sata.vmhba39 (0000:00:1f.2) Intel Corporation Wellsburg AHCI Controller vmhba0 lsi_mr3 link-n/a sas.51866dd06f813b00 (0000:01:00.0) LSI PERC H730 Mini vmhba1 ahci link-n/a sata.vmhba1 (0000:00:11.4) Intel Corporation Wellsburg AHCI Controller vmhba2 ahci link-n/a sata.vmhba2 (0000:00:1f.2) Intel Corporation Wellsburg AHCI Controller $ esxcli storage core path list fc.20000024ff2969e3:21000024ff2969e3-fc.500b34200ff50800:500b34200ff50803-naa.600b3428259 e037de06fd0f2ed0000d8 UID: fc.20000024ff2969e3:21000024ff2969e3-fc.500b34200ff50800:500b34200ff50803-naa.600 b3428259e037de06fd0f2ed0000d8 Runtime Name: vmhba3:C0:T3:L1 Device: naa.600b3428259e037de06fd0f2ed0000d8 Device Display Name: MacroSAN Fibre Channel Disk (naa.600b3428259e037de06fd0f2ed0000d8 ) Adapter: vmhba3 Channel: 0 Target: 3 LUN: 1 Plugin: NMP State: active Transport: fc Adapter Identifier: fc.20000024ff2969e3:21000024ff2969e3 Target Identifier: fc.500b34200ff50800:500b34200ff50803 Adapter Transport Details: WWNN: 20:00:00:24:ff:29:69:e3 WWPN: 21:00:00:24:ff:29:69:e3 Target Transport Details: WWNN: 50:0b:34:20:0f:f5:08:00 WWPN: 50:0b:34:20:0f:f5:08:03 Maximum IO Size: 33553920 $ esxcli storage core path list -d naa.61866da089f2cf001fe33f1f14adc14f sas.51866da089f2cf00-sas.60e33f1f14adc14f-naa.61866da089f2cf001fe33f1f14adc14f UID: sas.51866da089f2cf00-sas.60e33f1f14adc14f-naa.61866da089f2cf001fe33f1f14adc14f Runtime Name: vmhba0:C2:T0:L0 Device: naa.61866da089f2cf001fe33f1f14adc14f Device Display Name: DELL Serial Attached SCSI Disk (naa.61866da089f2cf001fe33f1f14adc14f) Adapter: vmhba0 Channel: 2 Target: 0 LUN: 0 Plugin: NMP State: active Transport: sas Adapter Identifier: sas.51866da089f2cf00 Target Identifier: sas.60e33f1f14adc14f Adapter Transport Details: 51866da089f2cf00 Target Transport Details: 60e33f1f14adc14f Maximum IO Size: 131072 $ esxcli storage core path list | grep "State: active" | wc -l 5 $ esxcli storage core path list | grep "LUN: 2" | wc -l $ esxcli storage core device list naa.600b34236b6535ddb013d87d6d5a00d8 Display Name: MacroSAN Fibre Channel Disk (naa.600b34236b6535ddb013d87d6d5a00d8) Has Settable Display Name: true Size: 2097152 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/naa.600b34236b6535ddb013d87d6d5a00d8 Vendor: MacroSAN Model: LU Revision: 1.0 SCSI Level: 5 Is Pseudo: false Status: on Is RDM Capable: true Is Local: false Is Removable: false Is SSD: false Is VVOL PE: false Is Offline: false Is Perennially Reserved: false Queue Full Sample Size: 0 Queue Full Threshold: 0 Thin Provisioning Status: unknown Attached Filters: VAAI Status: supported Other UIDs: vml.0200030000600b34236b6535ddb013d87d6d5a00d84c5500000000 Is Shared Clusterwide: true Is Local SAS Device: false Is SAS: false Is USB: false Is Boot USB Device: false Is Boot Device: false Device Max Queue Depth: 64 No of outstanding IOs with competing worlds: 32 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false
network 描述:控制台通过客户端命令进行查看测试EXSI网络信息;1 2 esxcli network diag ping --netstack=vxlan --host <vmknic IP> --df --size=<packet size>
0x06 系统配置 ntpq 命令 描述:使用 NTP Query 实用程序 ntpq 远程查询 ESXi/ESX 主机的 ntpd 服务。该实用程序通常安装在 Linux 客户端上,在 ESX 服务控制台和 vSphere Management Assistant 中也提供;
基础示例:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 $ntpq -p 127.0.0.1remote refid st t when poll reach delay offset jitter ============================================================================== *192.168.10.254 144.76.76.107 3 u 53 64 377 1.158 0.805 0.058 remote refid st t when poll reach delay offset jitter
默认情况下ESXi/ESX 使用 NTPv4,但某些 NTP 源会使用 NTPv3 ,此类版本不匹配问题将导致同步失败。要解决此问题必须更新 /etc/ntp.conf
文件以包含要使用的版本。1 2 3 4 5 6 7 8 9 10 $cat /etc/ntp.confrestrict 127.0.0.1 restrict default kod nomodify notrap driftfile /etc/ntp.drift server 192.168.0.10 version 3 statistics loopstats statsdir /var/log /ntp/ filegen peerstats file peers type day link enable filegen loopstats file loops type day link enable
注意事项:
如果收到消息“No association ID’s returned”,ESXi/ESX 主机将无法连接已配置的 NTP 服务器。如果收到消息“***Request timed out”,则说明 ntpq 命令未从 ESXi/ESX 主机的 NTP 守护进程收到响应。
如果显示类似以下内容的消息,则表明 ntpd
成功连接到远程 NTP 服务器: ntpd[263140]:synchronized to **, stratum **
如果显示类似以下内容的消息,则表明 ESXi/ESX 主机与远程 NTP 服务器之间的时间偏移过高,无法自动更正。手动设置 ESXi/ESX 主机时间,并再次启动 NTP 守护进程。 ntpd[263140]:** 秒的时间更正超出健全性限制 (1000);手动设置时钟以更正 UTC 时间。
如果显示类似以下内容的消息,则表明 ESXi/ESX 主机与远程 NTP 服务器之间的时间错误超出了步进阈值。NTP 守护进程已更正 ESXi/ESX 主机时间,以便在一个大跳跃中与 NTP 服务器相匹配。无需执行任何操作。 ntpd[263140]:time reset "+/- "
如果显示类似以下内容的消息,则表明 ESXi/ESX 主机与远程 NTP 服务器之间的时间错误超出了步进阈值。NTP 守护进程将缓慢更正 ESXi/ESX 主机的时间,以与 NTP 服务器相匹配。无需执行任何操作。 ntpd[263140]:time slew "+/- "
VMware 建议仅配置一次服务(netlogond 或 ntp)。但是如果需要将 NTP 与 Active Directory (AD) 结合使用,则配置 AD 服务器以使用可靠的时间源,并配置 ESXi/ESX 主机的 NTP 服务器以使用此 AD 服务器或者 AD 正在使用的 NTP 服务器。