探索VMware ESXI CLI常用命令

时间:2022-06-04 14:36:47

ESXi命令行获取帮助的方法为<命令关键字 --help>,常用的命令一般都是以esxcli开头,如果忘记命令可以使用帮助:esxcli --help;输出如下:

[root@localhost:~] esxcli --help

Usage: esxcli [options] {namespace}+ {cmd} [cmd options]

Options:
  --formatter=FORMATTER
                        Override 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 commands
  elxnet                elxnet esxcli functionality
  esxcli                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 of
                        commands to manipulate virtual networking components (vswitch, portgroup, etc) as well as local host IP, DNS and
                        general 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 packages
  storage               VMware storage commands.
  system                VMKernel system properties and commands for configuring properties of the kernel core system and related system
                        services.
  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 restart

cat /etc/chkconfig.db   查看所有ESXi服务的运行状态

查看服务器IP信息
esxcli network ip interface ipv4 get

查宿主机下每个对应的mac
net-stats -l

查看网卡状态
esxcfg-vmknic -l

vmkping 我们都熟悉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.vmdk

esxtop  对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命令及其提供的功能

以上就是探索VMware ESXI CLI常用命令的详细内容,更多关于VMware ESXI CLI命令的资料请关注服务器之家其它相关文章!