Start or stop ESXi services using PowerCLI
Start the ssh service on all hosts:
1 2 3 |
Get-VMHost | Foreach { Start-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq "TSM-SSH"}) } |
If you want to start the ssh service on a single host, change ESXiHostName to your ESXi FQDN:
1 2 3 |
Get-VMHost -Name ESXiHostName | Foreach { Start-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq "TSM-SSH"}) } |
If you want to stop the ssh service on all hosts:
1 2 3 |
Get-VMHost | Foreach { Stop-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq "TSM-SSH"}) } |
If you have multiple cluster in vCenter, are connected to multiple vCenters, be sure to launch the command only to the necessary hosts:
- Get-Cluster -Name ClusterName will filter to the specified Cluster
- Get-VMHost -Name ESXiHostName will filter to the specified ESXi
- Get-VMHost -Server vCenterServerName will filter to the specified vCenter server
1 2 3 |
Get-Cluster -Name ClusterName | Get-VMHost -Name ESXiHostName -Server vCenterServerName | Foreach { Stop-VMHostService -HostService ($_ | Get-VMHostService | Where { $_.Key -eq "TSM-SSH"} ) } |
These are other services I frequently use:
- DCUI (Direct Console UI)
- lwsmd (Active Directory Service)
- ntpd (NTP Daemon)
- sfcbd-watchdog (CIM Server)
- snmpd (SNMP Server)
- TSM (ESXi Shell)
- TSM-SSH (SSH)
- vmsyslogd (Syslog Server)
- vmware-fdm (vSphere High Availability Agent)
- vpxa (VMware vCenter Agent)
- xorg (X.Org Server)
There are other services available but I have never used them in this context (yet):
- lbtd (Load-Based Teaming Daemon)
- pcscd (PC/SC Smart Card Daemon)
- vprobed (VProbe Daemon)
Change the startup policy for a service:
- Automatic: Start automatically if any ports are open, and stop when all ports are closed
- On: Start and stop with host
- Off: Start and stop manually
1 2 3 |
Get-VMHost | Foreach { Set-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.key -eq "TSM-SSH"}) -policy On } |