ESXi命令行获取帮助的方法为<命令关键字 --help>,常用的命令一般都是以esxcli开头,如果忘记命令可以使用帮助:esxcli --help;输出如下:
[root@localhost:~] esxcli --helpUsage: esxcli [options] {
namespace}+ {
cmd} [cmd options]Options:--formatter=FORMATTEROverride the formatter to use for a given command. Available formatter: xml, csv, keyvalue--debug Enable debug or internal use options--version Display version information for the script-?, --help Display usage information for the script
Available Namespaces:device Device manager commandselxnet elxnet esxcli functionalityesxcli Commands that operate on the esxcli system itself allowing users to get additional information.fcoe VMware FCOE commands.graphics VMware graphics commands.hardware VMKernel hardware properties and commands for configuring hardware.iscsi VMware iSCSI commands.network Operations that pertain to the maintenance of networking on an ESX host. This includes a wide variety ofcommands to manipulate virtual networking components (vswitch, portgroup, etc) as well as local host IP, DNS andgeneral host networking settings.rdma Operations that pertain to remote direct memory access (RDMA) protocol stack on an ESX host.sched VMKernel system properties and commands for configuring scheduling related functionality.software Manage the ESXi software image and packagesstorage VMware storage commands.system VMKernel system properties and commands for configuring properties of the kernel core system and related systemservices.vm A small number of operations that allow a user to Control Virtual Machine operations.vsan VMware Virtual SAN commands
【常用命令】
1)vmware -v
查看系统版本,例子:
[root@localhost:~] vmware -v
VMware ESXi 6.0.0 build-3620759
2)esxcli system version get
查看系统版本包括patch等信息,例子:
[root@localhost:~] esxcli system version get
Product: VMware ESXi
Version: 6.0.0
Build: Releasebuild-3620759
Update: 2
Patch: 34
3)esxcli system time get
查看系统时间,例子:
[root@localhost:~] esxcli system time get
2016-09-13T02:02:39Z
4)esxcli system time set
修改系统时间,例子:
Cmd options:-d|--day=<long> Day-H|--hour=<long> Hour-m|--min=<long> Minute-M|--month=<long> Month-s|--sec=<long> Second-y|--year=<long> Year
[root@localhost:~] esxcli system time set -y=2016 -M=9 -d=13 -H=10 -m=9
[root@localhost:~] esxcli system time get
2016-09-13T10:09:27Z
5)esxcli system maintenanceMode set --enable true/false
ESXi主机进入/退出,维护模式,例子:
[root@localhost:~] esxcli system maintenanceMode set --enable true
[root@localhost:~] esxcli system maintenanceMode get //查看维护模式的状态
Enabled
[root@localhost:~] esxcli system maintenanceMode set --enable false
[root@localhost:~] esxcli system maintenanceMode get
Disabled
[root@localhost:~]
6)esxcli system shutdown reboot/poweroff
系统重启/关机(必须处于维护模式,否则命令不生效)
7)esxcli network ip interface ipv4 get
查看接口ipv4地址,例子:
[root@localhost:~] esxcli network ip interface ipv4 get
Name IPv4 Address IPv4 Netmask IPv4 Broadcast Address Type DHCP DNS
---- ------------- ------------- -------------- ------------ --------
vmk0 10.1.98.165 255.255.255.0 10.1.98.255 STATIC false
8)esxcli network ip route ipv4 list
查看路由表,例子:
[root@localhost:~] esxcli network ip route ipv4 list
Network Netmask Gateway Interface Source
----------- ------------- ------------- --------- ------
default 0.0.0.0 10.1.98.254 vmk0 MANUAL
10.1.98.0 255.255.255.0 0.0.0.0 vmk0 MANUAL
9)esxcli network nic list
查看ESXi主机网卡列表(nic)或up-link列表,例子:
[root@localhost:~] esxcli network nic list
Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description
------ ------------ ------ ------------ ----------- ----- ------ ----------------- ---- ---------------------------------------------------
vmnic0 0000:03:00.0 e1000e Up Up 1000 Full 00:50:56:9d:bd:b7 1500 Intel Corporation 82574L Gigabit Network Connection
vmnic1 0000:0b:00.0 e1000e Up Up 1000 Full 00:50:56:9d:7c:7f 1500 Intel Corporation 82574L Gigabit Network Connection
10)esxcli network nic down/up -n=vmnic1
关闭/打开vmnic1接口
11)esxcli storage core device list
查看磁盘列表
【关于esxi常用命令总结】
services.sh Linux服务通常使用services命令管理,管理ESXi服务是通过使用services.sh命令实现的。Services.sh命令支持的参数包括stop、start、restart,通过这三个参数可以停止、启动或重启所有的ESXi服务。重启管理服务
/etc/init.d/hostd restart
/etc/init.d/vpxa restartcat /etc/chkconfig.db 查看所有ESXi服务的运行状态查看服务器IP信息
esxcli network ip interface ipv4 get查宿主机下每个对应的mac
net-stats -l查看网卡状态
esxcfg-vmknic -lvmkping 我们都熟悉ping命令的用法及功能。Vmkping命令更进一步,允许使用Vmkernel的IP堆栈通过特定的接口发送ICMP数据包。这意味着你可以通过vMotion网络而非管理网络发送ping包。
例:vmkping –I vmk1 10.10.10.1 通过vmkl接口向10.10.10.1发送ICMP请求nc 组合使用vmkping、nc命令(netcat),可以确认ESXi主机与特定IP之间的网络连通性。尽管vmkping命令通过ICMP确认连通性,但有时我们想确认是否可以访问特定的TCP端口(例如iSCSI的TCP端口是3260)。
例:nc -z 10.10.10.10 3260 测试是否能够访问10.10.10.10的3260端口。vmkfstools 如果需要通过命令行管理VMFS数据卷以及虚拟磁盘,那么vmkfstools命令就派上用场了。使用vmkfstools命令可以创建、克隆、扩展、重命名并删除VMDK文件。除了虚拟磁盘选项,你还可以使用vmkfstools命令创建、扩展、增大、回收文件系统的数据块。
例:vmkfstools –i test.vmdk testclone.vmdk 将test.vmdk克隆为testclone.vmdkesxtop 对ESXi主机进行性能监控以及故障诊断时,很少有工具能够提供和esxtop同样多的信息。除提供和Linux top命令类似的功能外,esxtop还可以收集很多VMware专有的指标,包括中断、内存、网络、磁盘适配器、磁盘设备以及电源管理。vscsistats – 需要进一步监控存储I/O的性能时,vscsiStats命令就能够派上用场了。vscsiStats命令能够帮助你收集与虚拟机磁盘I/O负载相关的性能数据。进行容量规划或者迁移后端存储时,使用vscsiStats命令收集到的数据可谓价值连城。vim-cmd vim-cmd是构建在hostd进程之上的命令空间,允许最终用户调用几乎所有的vSphere API。Vim-cmd提供了一些ESXi子命令管理不同的虚拟基础设施,而且和vimsh相比,更容易使用。dcui 登录到ESXi主机时,VMware直接用户控制台接口(DCUI)提供了基于菜单的主机管理功能。DCUI提供了很多不同的功能,比如root密码维护、网络维护。有时你可能只能通过SSH访问主机,但幸运的是,在命令行下执行dcui命令就可以进入基于菜单的DCUI系统。vm-support 曾经想过收集ESXi主机所有的支持及日志信息吗?Vm-support命令恰好能够满足你的要求。如果之前与VMware的技术支持热线联系过,那么很可能用过这个命令。
【esxcli命令探究】
esxcli命令用途广泛,我们不能简单地将其归为单个命令。esxcli包括许多不同的命名空间,允许你控制ESXi提供的几乎所有设备。下面列出了使用最频繁(肯定不是所有)的命名空间:
esxcli hardware 想获取ESXi主机的硬件及配置信息时,esxcli硬件命名空间就能够派上用场了。esxcli hardware cpu list 获取CPU信息(系列、型号以及缓存)esxcli hardware memory get 获取内存信息(可用内存以及非一致内存访问)esxcli iscsi iscsi命名空间可以被用于监控并管理硬件iSCSI及软件iSCSI设置。esxcli iscsi software 用于启用/禁用软件iSCSI initiator。esxcli iscsi adapter 用于设置软硬件iSCSI适配器的发现、CHAP以及其他设置esxcli iscsi sessions 用于列出主机上已建立的iSCSI会话。esxcli network 需要监控vSphere网络并对如下网络组件进行调整时,包括虚拟交换机、VMkernel网络接口、防火墙以及物理网卡等,esxcli网络命名空间就派上用场了。esxcli network nic 列出并修改网卡信息,比如名字、唤醒网卡以及速度。esxcli network vm list 列出有一个活动网络端口的虚拟机的网络信息。esxcli network vswitch 检索并管理VMware的标准交换机以及分布式虚拟交换机。esxcli network ip 管理VMkernel端口,包括管理、vMotion以及FT网络。还可以修改主机的所有IP栈,包括DNS、IPsec以及路由信息。esxcli software 软件命名空间可以用于检索ESXi主机已安装的软件及驱动并可以安装新组件。esxcli software vib list 列出ESXi主机上已经安装的软件及驱动。esxcli storage 可能是最常用的esxcli命令命名空间之一,包括了管理连接到vSphere的存储的所有信息。esxcli storage core device list 列出当前存储设备esxcli storage core device vaai status get 获得存储设备支持的VAAI的当前状态。esxcli system 通过该命令使你能够控制ESXi的高级选项,比如设置syslog并管理主机状态。esxcli system maintenanceMode set --enabled yes/no 将主机设置为维护模式esxcli system syslog 查看 Syslog 及配置信息esxcli vm ESXi的虚拟机命名空间用于列出运行在主机上的虚拟机的各种信息,如果需要可以强制关闭这些虚拟机。esxcli vm process list 列出已启动的虚拟机的进程信息。esxcli vm process kill 停止正在运行的虚拟机的进程,关闭虚拟机或者强制关闭虚拟机电源。esxcli vsan ESXi的VSAN命名空间包括配置并维护VSAN的很多命令,包括数据存储、网络、默认域名以及策略配置。esxcli vsan storage 配置VSAN使用的本地存储,包括增加、删除物理存储并修改自动声明。esxcli vsan cluster 本地主机脱离/加入VSAN集群。esxcli esxcli esxcli命令包括一个称为esxcli的命名空间,通过使用esxcli命名空间,你可以获得更多信息。esxcli esxcli command list 列出所有的esxcli命令及其提供的功能