понедельник, 15 января 2018 г.

PowerCLI: включение SSH на хостах ESXi

Мою шпаргалку по использованию PowerCLI начну со статьи о SSH (включение, отключение, статус). 

Попробую охватить различные сценарии, в частности включение доступа по SSH:
- на всех хостах ESXi;
- на определенном хосте ESXi;
- на определенных нескольких хостах ESXi;
- для определенного кластера;
а также получение статуса SSH на хостах ESXi.


1. Включение доступа по SSH на всех хостах ESXi:
Get-VMHost | ForEach {Start-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”})} 
Отключение
Get-VMHost | ForEach {Stop-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”}) -Confirm:$FALSE}
Ключ -Confirm:$FALSE означает, что не запрашивается подтверждение данной операции.

2. Включение доступа по SSH на определенном хосте ESXi:
Get-VMHost "имя хоста" | Get-VMHostService | Where-Object {$_.Key -eq "TSM-SSH"} | Start-VMHostService 
Отключение
Get-VMHost "имя хоста" | Get-VMHostService | Where-Object {$_.Key -eq "TSM-SSH"} | Stop-VMHostService -Confirm:$FALSE
3. Включение доступа по SSH на определенных нескольких хостах ESXi:
Get-VMHost | Where {$_.name -like '*esxi-moscow*'} | Get-VMHostService | Where-Object {$_.Key -eq "TSM-SSH"} | Start-VMHostService 
В данном случае используется ключ Where {$_.name -like '*esxi-moscow*'}, т.е. выбираются все хосты которые содержат в своем имени строку  esxi-moscow.

Отключение:
Get-VMHost | Where {$_.name -like '*esxi-moscow*'} | Get-VMHostService | Where-Object {$_.Key -eq "TSM-SSH"} | Stop-VMHostService -Confirm:$FALSE
4. Включение доступа по SSH для определенного кластера: 
Get-Cluster "Cluster_ИМЯ” | Get-VMHost | ForEach {Start-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”})}
Отключение:
Get-Cluster "Cluster_ИМЯ” | Get-VMHost | ForEach {Stop-VMHostService -HostService ($_ | Get-VMHostService | Where {$_.Key -eq “TSM-SSH”}) -Confirm:$FALSE}
Для получения статуса SSH на хостах ESXi:
Get-VMHost | Get-VMHostService | Where { $_.Key -eq "TSM-SSH" } |select VMHost, Label, Running

Комментариев нет:

Отправить комментарий