ESXi8常用命令
常用的esxcli命令:
https://developer.aliyun.com/article/531304
配置自动补全
这一步操作未经验证,可能并不生效。
# 安装bash-completion软件包:
esxcli software vib install -n bash-completion
编辑/etc/profile
文件,并添加以下行:
source /usr/share/bash-completion/bash_completion
保存并关闭文件。
# 重新加载profile文件:
source /etc/profile
查看帮助
esxcli esxcli – esxcli命令包括一个称为esxcli的命名空间,通过使用esxcli命名空间,你可以获得更多信息。
# 列出所有的esxcli命令及其提供的功能。
esxcli esxcli command list
查看硬件信息:
esxcli hardware
– 想获取ESXi主机的硬件及配置信息时,esxcli硬件命名空间就能够派上用场了。
# 获取CPU信息(系列、型号以及缓存)
esxcli hardware cpu list
# 获取内存信息(可用内存以及非一致内存访问)
esxcli hardware memory get
查看ESXi主机信息:
# 查看ESXi主机信息
esxcli system version get
管理网络配置:
esxcli network–需要监控vSphere网络并对如下网络组件进行调整时,包括虚拟交换机、VMkernel网络接口、防火墙以及物理网卡等,esxcli网络命名空间就派上用场了。
# 获取服务器BMC的管理IP地址
esxcli hardware ipmi bmc get
# 或
localcli hardware ipmi bmc get
# 查看所有网卡
esxcfg-nics -l
# 查看更加详细的网卡信息
# 查看vmnic0对应的驱动和固件
esxcli network nic get -n vmnic0
# 显示网卡的VID,DID 等信息
vmkchdev -l |grep vmnic0
# 查看网络接口列表
esxcli network ip interface list
# 禁用网络接口
esxcli network ip interface set -i <interface_name> -d true
# 列出并修改网卡信息,比如名字、唤醒网卡以及速度。
esxcli network nic
# 列出有一个活动网络端口的虚拟机的网络信息。
esxcli network vm list
# 检索并管理VMware的标准交换机以及分布式虚拟交换机。
esxcli network vswitch
# 管理VMkernel端口,包括管理、vMotion以及FT网络。还可以修改主机的所有IP栈,包括DNS、IPsec以及路由信息。
esxcli network ip
# 查看网络配置信息:
esxcli network ip interface ipv4 get
DNS管理
# 设置 DNS 服务器:
esxcli network ip dns search add --domain="example.com" --nameserver="DNS_server_IP_address"
# 查看 DNS 配置信息:
esxcli network ip dns search list
管理存储:
esxcli storage – 可能是最常用
的esxcli命令命名空间之一,包括了管理连接到vSphere的存储的所有信息。
# 查看VMFS扩展列表:
esxcli storage vmfs extent list
# 查看存储设备列表:
esxcli storage core device list
# 获得存储设备支持的VAAI的当前状态。
esxcli storage core device vaai status get
管理iscsi:
esxcli iscsi – iscsi命名空间可以被用于监控并管理硬件iSCSI及软件iSCSI设置。
# 用于启用/禁用软件iSCSI initiator。
esxcli iscsi software
# 用于设置软硬件iSCSI适配器的发现、CHAP以及其他设置
esxcli iscsi adapter
# 用于列出主机上已建立的iSCSI会话。
esxcli iscsi sessions
管理vsan
esxcli vsan – ESXi的VSAN命名空间包括配置并维护VSAN的很多命令,包括数据存储、网络、默认域名以及策略配置。
# 配置VSAN使用的本地存储,包括增加、删除物理存储并修改自动声明。
esxcli vsan storage
# 本地主机脱离/加入VSAN集群。
esxcli vsan cluster
管理虚拟机:
https://www.yuque.com/bienangnang/mzxaud/krdbmg
esxcli vm – ESXi的虚拟机命名空间用于列出运行在主机上的虚拟机的各种信息,如果需要可以强制关闭这些虚拟机。
# 查看已启动的虚拟机的进程信息。
esxcli vm process list
# 停止正在运行的虚拟机的进程,关闭虚拟机或者强制关闭虚拟机电源。
esxcli vm process kill
# 强制终止虚拟机进程
esxcli vm process kill -t hard -w <world_id>
管理ESXi主机:
# 关闭或重启ESXi主机:
esxcli system shutdown poweroff -r "Shutdown reason"
ESXi软件和驱动管理
esxcli software – 软件命名空间可以用于检索ESXi主机已安装的软件及驱动并可以安装新组件。
(注:如果执行安装后提示could not find a trusted signer
,可以在命令后添加参数 –no-sig-check
)
当前可用的ESXi 软件包
列表:
https://vibsdepot.v-front.de/wiki/index.php/List_of_currently_available_ESXi_packages
# 列出ESXi主机上已经安装的软件及驱动。
esxcli software vib list
# 列出所有已安装的软件包或驱动:
esxcli software vib list
# 安装一个软件包或驱动:
## -v 指定vib文件
esxcli software vib install -v /path/to/vib/file
# 安装一个软件包或驱动:
## -v 指定vib文件
## 在安装 VIB 文件时跳过签名验证
esxcli software vib install -v /path/to/vib/file --no-sig-check
# 安装一个离线文件
## -d 离线文件(通常是zip,包含多个vib)
esxcli software vib install -d {OFFLINE_BUNDLE}
# 更新一个软件包或驱动:
## -v 指定vib文件
esxcli software vib update -v /path/to/vib/file
# 卸载一个软件包或驱动:
esxcli software vib remove -n VIBName
ESXi升级
# 查看ESXi补丁包包含的profile名称:
esxcli software sources profile list -d /vmfs/volumes/SS
D/VMware-ESXi-7.0U3-18644231-depot.zip
# 安装更新--指定profile
esxcli software profile update -d <VMware-ESXI-xxxxx-xxxxxx-depot.zip> -p <上一步记录下来的profile名称>
esxi安全管理命令
以下是一些 ESXi 安全管理命令:
注意:许多 ESXi 安全操作都需要管理员权限
才能执行。
将主机设置为维护模式
# 将主机设置为维护模式
esxcli system maintenanceMode set –enabled yes
# 退出维护模式
esxcli system maintenanceMode set –enabled no
主机维护模式2
# 进入维护模式
vim-cmd hostsvc/maintenance_mode_enter
# 退出维护模式
vim-cmd hostsvc/maintenance_mode_exit
查看当前安全配置:
# 查看当前安全配置:
esxcli system security get
开启或关闭 SSH 服务:
# 开启或关闭 SSH 服务:
esxcli system ssh set --enabled=true/false
配置 ESXi 防火墙规则:
# 查看防火墙状态:
esxcli network firewall get
# 打开某个端口:
esxcli network firewall ruleset set -e true -r <rule_name>
# 关闭某个端口:
esxcli network firewall ruleset set -e false -r <rule_name>
管理 ESXi 主机证书:
# 查看证书列表:
esxcli certificate-manager get-certificates
# 导入证书:
esxcli certificate-manager import --cert /path/to/cert.pem --pk /path/to/key.pem --chain /path/to/chain.pem
# 删除证书:
esxcli certificate-manager remove --thumbprint <certificate_thumbprint>
配置 ESXi 账户和密码:
# 修改 root 用户密码:
passwd root
# 添加新用户:
useradd <username>
# 设置新用户密码:
passwd <username>
允许 ESXi 8 执行第三方程序
# 关闭安全策略,允许未安装的二进制文件运行
esxcli system settings advanced set -o /User/execInstalledOnly -i 0
# 开启安全策略,不允许未安装的二进制文件运行
esxcli system settings advanced set -o /User/execInstalledOnly -i
system管理
esxcli system – 通过该命令使你能够控制ESXi的高级选项,比如设置syslog并管理主机状态。
查看系统信息
# 查看系统信息:
esxcli system version get
主机名管理
# 设置主机名:
esxcli system hostname set --hostName=new_host_name
# 查看主机名:
esxcli system hostname get
查看并更改ESXi高级设置
esxcli system settings advanced命令是用于检索和更改ESXi主机高级系统设置的命令。该命令提供了许多子命令,可以用于列出
、获取
、设置
和删除
高级系统设置。
# 列出所有高级系统设置及其当前值。
esxcli system settings advanced list
# 查看非默认设置
esxcli system settings advanced list –d
# 将指定的高级系统设置更改为给定的值。
esxcli system settings advanced set -o <option> -i <value>
# 从高级系统设置中删除指定的选项。
esxcli system settings advanced unset -o <option>
# 查看 Syslog 及配置信息
esxcli system syslog
NTP管理
时间管理命令。
# 查看服务器时间
date
# 查看硬件时间
esxcli hardware clock get
# 设置 NTP 服务器:
esxcli system ntp set --servers=ntp_server_name_or_IP_address
# 查看 NTP 服务器列表:
esxcli system ntp server list
# 手动更新时间戳:
esxcli system time sync refresh
# 将系统时间写入硬件时间:---未验证的命令
hwclock --systohc