Как запустить powercli из powershell
Перейти к содержимому

Как запустить powercli из powershell

  • автор:

Установка и использование модуля VMware PowerCLI для управления ESXi и vSphere

date

31.03.2022

user

itpro

directory

PowerShell, VMware

comments

комментариев 15

VMware vSphere PowerCLI — это набор модулей PowerShell, позволяющий администрировать компонентами инфраструктуры VMware из командной строки. Вы можете использовать PowerCLI для получения состояния виртуальных машин, хранилищ, сетей, пользователей, управлять различными настройками, создавать новые объекты и использовать PowerShell в скриптах автоматизации ESXi, vCenter Server, vSphere, vSAN и других продуктов VMware.

На данный момент VMware разрабатывает версию PowerCLI только для PowerShell Core (7.0+). Эта версия PowerShell является кроссплатформенной, и может использовать как в Windows, так и в Linux или macOS. Для старых модулей PowerCLI под Windows PowerShell 5.x выпускаются только исправления безопасности. Рекомендуется использовать обновленную версию PowerShell Core.

Установка VMware PowerCLI в Windows

Вы можете установить модуль VMvware PowerCLI в Windows в онлайн или офлайн режиме.

Для онлайн установки модуля PowerCLI из PowerShell Gallery выполните команду:

Install-Module -Name VMware.PowerCLI

До версии vSphere 6.5 модуль PowerCLI распространялся в виде MSI установщика.

Если нужно установить модуль только для текущего пользователя:

Install-Module VMware.PowerCLI -Scope CurrentUser

По умолчанию из PowerShell Gallery устанавливается последняя версия PowerCLI. Если вам нужно установить определенную версию PowerCLI, можно вывести полный список версий и установить нужную:

Find-Module -Name VMware.PowerCLI -AllVersions|select version
Install-Module -Name VMware.PowerCLI -RequiredVersion 12.1.0.17009493

установка определенной версии powercli

В процессе установки вам будет предложено обновить Nuget провайдер. Также подтвердите установку из недоверенного репозитория PowerShell Gallery (можно сделать его доверенным с помощью командлета Set_PSRepository ).

Проверьте, что модули PowerCLI установлены и выведите их версии:

Get-Module -ListAvailable VMware* | Select Name,version

вывести список модулей vmware powercli установленных на компьютере

Для обновления версии PowerCLI достаточно выполнить команду:

Update-Module -Name VMware.PowerCLI

Если в Windows установлен модуль управления пакетами Choco, вы можете найти модуль PowerCLI в репозитории:

choco search vmware

и установить его:

choco install vmware-powercli-psmodule

Модуль powercli в winget пока не доступен.

Если вы хотите установить PowerCLI на изолированном от интернета компьютере, можете использовать офлайн установщик.

  1. Скачайте zip архив с модулем PowerCLI https://code.vmware.com/web/tool/vmware-powercli (размер zip архива с текущей версией VMware-PowerCLI 12.4.1 около 80 Мб);
  2. Распакуйте zip архив в каталог с модулями PowerShell на компьютере (список таких каталогов можно получить с помощью команды $env:PSModulePath ). Обычно используется каталог C:\Program Files\WindowsPowerShell\Modules ;
  3. Снимите блокировку с файлов, скачанных с интернета: cd “c:\Program Files\WindowsPowerShell\Modules” Get-ChildItem * -Recurse | Unblock-File
  4. Запустите консоль PowerShell и проверьте что модуль PowerCLI теперь доступен: Get-Module -Name VMware.PowerCLI –ListAvailable

Подробнее про офлайн установку модулей PowerShell описано в статье.

Для импорта модуля PowerCLI в текущую сессию, в PowerShell ISE или Visual Studio Code, выполните команду:

При загрузке модуля может появиться ошибка вида:

Import-Module: File C:\Program Files\WindowsPowerShell\Modules\VMware.VimAutomation.Sdk\12.4.0.18627054\VMware.VimAutomation.Sdk.psm1 cannot be loaded because running scripts is disabled on this system

В этом случае нужно настроить политику выполнения скриптов PowerShell. Чтобы разрешить запуск модуля в текущей сессии:

Set-ExecutionPolicy Unrestricted -Scope Process

Можно использовать модуль PowerCLI, установленный на другом компьютере. Для этого его нужно импортировать удаленно через PSRemoting:

$session = New-PSSession -ComputerName msk-man01

Импортируйте модуль PowerCLI на ваш компьютер:

Import-Module -PSsession $session -Name VMware.VimAutomation.Core

Не забудьте закрыть сессию после окончания:

Установка модулей PowerCLI в Linux

Вы можете установить и использовать PowerCLI не только в Windows, но и в Linux. Сначала установите PowerShell Core в ваш дистрибутив Windows, а затем выполните следующие команды в консоли для установки VMware PowerCLI:

pwsh
Install-Module -Name VMware.PowerCLI

установка модуля vmware powercli в linux

Импортируйте модуль в сессию:

Основные команды PowerCLI для управления VMware vSphere и виртуальными машинами

Список командлетов в модулях PowerCLI можно получить так (доступно более 2200 команд):

Get-Command –Module *vmware*

команды в модуле vmware powercli

Чтобы при запуске модуля не появлялось предложение сбора данных через VMware Customer Experience Improvement Program (CEIP), можно отключите это уведомление:

Set-PowerCLIConfiguration -Scope AllUsers -ParticipateInCeip $false

Для подключения к vCenter Server или конкретному хосту ESXi:

Если вы используете для сервера vCenter самоподписанный SSL сертификат, то PowerCLI запретит подключение:

Connect-VIServer Error: Invalid server certificate. Use Set-PowerCLIConfiguration to set the value for the InvalidCertificateAction option to Prompt if you'd like to connect once or to add a permanent exception for this server. Additional Information: Could not establish trust relationship for the SSL/TLS secure channel with authority.

Чтобы игнорировать самоподписанные сертификаты:

Set-PowerCLIConfiguration -Scope AllUsers -InvalidCertificateAction Warn

Вывести список виртуальных машин, которые зарегистрированы на вашем сервере ESXi (или vCenter):

Вывести только отключенные ВМ:

Get-VM | Where | Select Name, VMHost, NumCPU, MemoryMB, Version|Format-Table

Get-VM вывести список виртуальных машин в vmware vcenter из powerchell

Запустить виртуальную машину:

Start-VM -VM TestVM01

Корректная перезагрузка ВМ (через агента VMware tools):

Restart-VMGuest -VM TestVM01 -Confirm:$False

Shutdown-VMGuest -VM TestVM01 -Confirm:$False

Вывести список снапшотов для конкретной ВМ:

Get-VM| Get-Snapshot| Format-List

Чтобы переместить запущенную ВМ на другой хост с помощью VMotion используется команда Move-VM. Например, мы хотим перенести все ВМ с хоста msk-esxi1 на msk-esxi2:

Get-VMHost msk-esxi1|Get-Vm| Move-VM –Destination (Get-VMHost msk-esxi2)

Чтобы создать новую виртуальную машину используется командлет New-VM:

New-VM –Name testVM -VMHost msk-esxi1 –ResourcePool Production –DiskGB 10 –DiskStorageFormat Thin –Datastore MSA2000_2_Prod1

Чтобы изменить настройки виртуальной машины, используйте Set-VM .

С помощью командлетов PowerCLI можно взаимодействовать с гостевыми операционными системами виртуальных машин. Для этого в ВМ должны быть установлены VMware Tools. Вы можете обновить VMware Tools так:

Get-VMGuest VMname1 | Update-Tools

С помощью Invoke-VMS можно выполнить скрипт в гостевой ОС с Windows:

$script = ‘»%programfiles%\Common Files\Microsoft Shared\MSInfo\msinfo32.exe» /report «%tmp%\inforeport»‘
Invoke-VMScript -ScriptText $script -VM msk-dc01 -HostCredential $hostCred -GuestCredential $msk-dc01Cred -ScriptType Bat

Или можно скопировать файл на все ВМ:

Чтобы скопировать определенный файл на все ВМ, выполните команду:
Get-VM | Copy-VMGuestFile -Source C:\PS\get-info.ps1 -Destination C:\PS\ — LocalToGuest -GuestUser administrator -GuestPassword p@$$w0rdes2

В модуле есть командлеты для управления кластерами, датацентрами, хранилищами и хостами ESXi:

Вывести список ESXi хостов в кластере:

Get-Cluster mskprod1 | Get-VMHost | sort name

Перевести определенный хост ESXi в режим обслуживания:
Set-VMhost -VMHost msk-esxi1 -State Maintenance

Подключить iSCSI LUN к хосту ESXi и создать на нем VMFS хранилище:
Get-ScsiLun -VmHost msk-esxi1 | ft
New-Datastore -Name ‘new-datastore’ -VMHost msk-esxi1 -Path naa.6000xxxxxxxxxxxxxxxx -Vmfs

Информация. PowerCLI работает в режиме только чтения (read-only) с бесплатным VMware vSphere Hypervisor. Это означает, что вы использовать команды для просмотра свойств хоста и ВМ, но не сможете их изменить.

Примеры скриптов PowerCLI

На сайте есть несколько примеров использования PowerCLI для получения информации об элементах инфраструктуры VMware и автоматизации некоторых действий. Вы можете использовать примеры из этих статей в качестве основы для ваших скриптов PowerCLI:

  • Проверка свободного места на VMFS хранилищах
  • Сопоставить диски в ВМ Windows с vmdk дисками
  • Поиск ВМ по IP или MAC адресу
  • Настройка параметров SNMP на хостах VMware ESXi
  • Перезапуск зависшей виртуальной машины на VMware
  • Установка обновлений Windows в шаблоны виртуальных машин
  • Бэкап/восстановление конфигурации ESXi хостов
  • Интеграция драйверов в установочный образ ESXi
  • Поиск ВМ со статусом Virtual Machine disks consolidation is needed
  • Обновление версии vm hardware
  • Настройка автозапуска виртуальных машин VMware

vSphere PowerCLI это мощный инструмент для управления и автоматизации инфраструктуры VMWare. В состав PowerCLI вход более 2000 командлетов для управления облачной и виртуальной инфраструктурой VMware (vSphere, vSAN, vRealize Operations Manager, vCloud Director, Site Recovery Manager, Horizon, NSX-T, VMware Cloud Services, VMware Cloud on AWS и т.д.).

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Установка и использование PowerCLI

В этой статье попытаюсь рассмотреть инсталляцию замечательного инструмента для администрирования и автоматизации управления виртуальной средой vSphere – PowerCLI. По правде сказать, PowerCLI поддерживает и может управлять не только vSphere, но и рядом других продуктов VMware, а именно:

  • NSX-T
  • VMware Cloud Director
  • VMware vSAN
  • VMware Site Recovery Manager
  • vRealize Operations Manager
  • VMware Horizon
  • VMware Cloud on AWS
  • VMware Hybid Cloud Extension

Но к сожалению, или к счастью данный список за пределами нашего топика, и мы сосредоточены на установке и базовом использовании PowerCLI.

Что такое PowerCLI? Это инструмент администрирования вышеописанных продуктов VMware из командной оболочки PowerShell, который после инсталяции добавляет множество дополнительных командлетов в PowerShell для работы с ними. Становиться очень удобно автоматизировать многие рутинные процессы и отчеты в инфраструктуре. Для базового администрирования vSphere PowerCLI не сильно подходит ввиду определенной сложности команд и времени, необходимом на их ввод в консоль.

Когда-то давно, во времена прекрасного C# vSphere Client и когда не выпускались патчи на vSphere пачками, да и в принципе все было безоблачнее, а зеленый цвет – зеленее, PowerCLI распространялся в виде MSI установочного файла, который можно было загрузить с официального сайта VMware, предварительно зарегистрировавшись на нем. Так было до версии 6.5. Но времена изменились и теперь мы имеем версию 12.1.0, а на дворе 2021 год, PowerCLI стал загружаемым модулем в составе PowerShell, и его установка сводится к импорту этого самого модуля средствами самого PowerShell, вместо запуска MSI. В данный момент установить PowerCLI можно на все платформы, поддерживающие и PowerShell, то есть и на Mac и на Linux помимо Windows. Посмотрим программные требования для PowerCLI на всех платформах:

Тип ОС Версия .NET Версия PowerShell
Windows .NET Framework 4.7.2 или новее Windows PowerShell 5.1 или новее
Linux .NET Core 3.1 PowerShell 7
macOS .NET Core 3.1 PowerShell 7

Рассмотрим два варианта установки PowerCLI. Первый вариант прост и подразумевает наличие на машине, на которой производится установка доступа в интернет, а второй – где интернета нет. В обоих случаях, если присутствует старая версия, установленная при помощи MSI файла, ее необходимо удалить через панель управления.

Установка PowerCLI на машину с интернетом

Как ясно из названия нам потребуется доступ в интернет и консоль PowerShell. Запускаем PowerShell от имени администратора и используем команду:

Install-Module -Name VMware.PowerCLI

Опционально можно использовать ключ, чтобы установить PowrCLI только для текущего пользователя:

Install-Module -Name VMware.PowerCLI -Scope CurrentUser

Если на нашей машине ранее не было установок модулей PowerShell из интернета, то скорее всего пошик ругнется на источник пакетов PSGellery и спросит, что делать, выбираем «Y» и продолжается установка. После завершения процесса инсталляции модуля PowerCLI убеждаемся, что все установилось и появились новые командлеты:

Get-Command -Module *VM*

Нам вывалится огромный список командлетов PowerCLI, что означает что установка прошла успешно и можно приступать к их использованию.

Установка PowerCLI на машину без интернета

Частенько в работе инженеров и администраторов возникает задача установить PowerCLI не имея выхода в мировую паутину, например разворачивая инфраструктуру где ни будь в вагончике в Сибири либо же по соображениям политик безопасности.

Нам потребуется загрузить ZIP архив с файлами модулей PowerCLI с официального сайта — https://code.vmware.com/web/tool/12.1.0/vmware-powercli . Скачиваем его. Затем нам нужно определить в какой директории расположены уже существующие модули PowerShell, это повлияет на то, куда нам нужно будет распаковать скачанный архив. В этом нам поможет команда:

$ENV:PSModulePath.Split(";")

Мы увидим список мест где у нас лежат модули пошика, у меня это:

C:\Users\User\Documents\WindowsPowerShell\Modules C:\Program Files\WindowsPowerShell\Modules C:\Windows\system32\WindowsPowerShell\v1.0\Modules

Если мы хотим, чтобы PowerCLI был доступен для всех пользователей данного компьютера, нам нужно распаковать скачанный архив в “C:\Program Files\WindowsPowerShell\Modules”, а если требуется что бы только текущий пользователь мог использовать PowerCLI, то наш выбор “C:\Users\%UserName%\Documents\WindowsPowerShell\Modules ”.

Если вы устанавливаете PowerCLI этим методом, то после того как вы распаковали содержимое архива по одному из путей выше, нужно разблокировать папки модулей командой:

Get-Childitem -Path 'C:\Program Files\WindowsPowerShell\Modules\VMware*' -Recurse | Unblock-File

В моем примере указан путь установки для всех пользователей, в вашем случае используйте тот куда вы распаковали.

Теперь проверяем ранее приведенной командой доступность командлетов PowerCLI.

Get-Command -Module *VM*

Видим, что они присутствуют и можем приступать к работе.

Как пользоваться PowerCLI

Теперь остановимся на использовании данного решения в администрировании. Итак, после того как мы установили PowerCLI и воспылали желанием его использовать, нам нужно подключиться к нашей инфраструктуре vSphere, это может быть, как vCenter так и одиночный хост ESXi. В случае хоста ESXi нужно учесть, что если он лицензирован бесплатной лицензией, то использовать PowerCLI с ним не получиться. Давайте начнем. Открываем консоль PowerShell и запускаем команду:

Connect-Viserver –Server

Эта команда подключает нас к инфраструктуре VMware. Нам сразу же всплывет окно для вывода логина и пароля и после успешной аутентификации мы будем подключены к vCenter или ESXi. Логин с паролем мы можем ввести вместе с командой:

Connect-Viserver –Server -User administrator@vsphere.local –Password VMware!23

Но это достаточно небезопасно. Можно использовать переменную для аутентификационных данных, а потом вставить ее в команду выше:

$cred=Get-Credentials Connect-Viserver –Server -Credentials $cred –SaveCredentials

В команде выше мы использовали ключ «–SaveCredentials», с помощью которого наши логин и пароль запоминаются PowerShell-ом и в последствии при подключении к этому vCenter нам нет необходимости повторно их вводить, если мы работаем на машине под тем же самым пользователем. Если вы подключаетесь к vCenter в первый раз, у которого нет доверенного сертификата, как это бывает в большинстве случаев, то добавьте ключ «–Force» в конец команды, что бы проверка сертификата игнорировалась. Или используйте предварительно команду ниже, чтобы определить будущую реакцию PowerCLI на не доверенные сертификаты.

Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false

После того как мы залогинились, можно приступать к работе. Что бы ознакомиться с доступными командами PowerCLI можно использовать команду ниже.

Get-Command -Module vmware*

И Мы увидим весь список доступных команд PowerCLI. С помощью следующей команды мы можем получить информацию о какой-либо интересующей нас команде, о ее синтаксисе и функционале.

Get-Help -Full
Get-Help Stop-VM –Full

Это отлично помогает разобраться в устройстве командлетов и подобрать нужный для ситуации. Запомнить все командлеты нереально, даже если вы пользуетесь PowerCLI и PowerShell постоянно, то и дело придется регулярно использовать Get-Help. Теперь рассмотрим базовые команды и примеры с ними.

Работа с VM

Для базовой работы с виртуальными машинами в vSphere используются командлеты, в составе которых есть «VM». Вот список этих команд:

Remove-VM New-VM Set-VM Move-VM Start-VM Stop-VM Suspend-VM Restart-VM

Думаю, понятно по названию команд что они делают. Давайте рассмотрим пару примеров. В примере ниже мы создадим VM с простой конфигурацией.

New-VM -Name new-vm -Location Folder-name -VMHost esxi-a-01 -Datastore datastore-a -DiskGB 256 -NumCpu 4 -MemoryMB 2048 -Portgroup vm-net

А теперь из шаблона с использование кастомизации.

New-VM -Template vm-template -OSCustomizationSpec linux-spec -Name new-vm -Location Folder-name -VMHost esxi-a-01 -Datastore datastore-a -Portgroup vm-net

Клонирование существующей виртуальной машины.

New-VM -VM 2016-template -Name new-vm -VMHost esxi-a-01 -Datastore datastore-01 -Location Folder-name -VMHost esxi-a-01 -Portgroup vm-net

А теперь рассмотрим более интересный пример. У PowerShell есть много прекрасных свойств и одно из них — это работа с различными источниками данных, например, с CSV фалами. Для начала нам нужен CSV файл со списком VM и их требуемыми характеристиками. Например, такого состава.

name mem cpu gb
vm-01 2 2 128
vm-02 4 2 256

Мы с помощью PowerShell импортируем содержимое файла в переменную, а затем циклом воспроизведем команду по созданию VM с параметрами из ее строки.

$csv=import-csv -Path 'C:\Temp\vms.csv' foreach ($vm in $csv)

Также возможно создать множество машин похожим способом, но с использованием XML файла как источника информации. Допустим мы имеем XML с таким содержанием.

Теперь загрузим его содержимое в переменную.

[xml]$xml = Get-Content C:\Temp\NewVM.xml

Затем создаем машину.

$xml.NewVM.VM | foreach

И вуаля… Можно усложнять у увеличивать количество данных в источнике информации, что придаст нам удобности и гибкости. Так же мы с помощью PowerCLI можем использовать недоступный из GUI инструмент – InstantClone, который используется в VMware Horizon для быстрого создания машин для развертывания VDI ресурсов. Об этом отлично написано в блоге Уильяма Лама .

Теперь сделаем с помощью PowerCLI список всех включенных машин и выгрузим его в CSV файл.

Get-VM | Where-Object | Export-Csv C:\Temp\vms.csv -NoTypeInformation -UseCulture -Force

Список машин, где не установлены VMware Tools или устарели.

get-vm | where | select name, @> | export-csv -path " C:\Temp\vms.csv"

Где подключен CD привод и отключим его.

Get-VM | Where-Object | Get-CDDrive | FT Parent, IsoPath Get-VM | Where-Object | Get-CDDrive | Set-CDDrive -NoMedia -Confirm:$False

Список снепшотов. О это моя любимая тема. Когда инфраструктура большая и множество людей имеют доступ к vSphere, в промышленных масштабах растет и количество создаваемых снепшотов, которые нам как администратору приходиться вовремя удалять.

get-vm | get-snapshot | select vm, name, sizegb | ft -AutoSize

Управление хостами ESXi

Рассмотрим примеры управлением ESXi хостами. Для этого нам понадобятся команды с именами «VMHost».

Add-VMHost Move-VMHost Remove-VMHost Restart-VMHost Set-VMHost Start-VMHost Stop-VMHost Suspend-VMHost

По названиям команд нетрудно определить их назначение.

Введем хост в Maintenance Mode.

Set-VMhost -VMHost esxi-a-01 -State Maintenance

Переместим хост в другой кластер, для этого предварительно нужно ввести его в Maintenance.

Move-VMHost –VMHost esxi-a-01 –Destination ‘Cluster-B’

С остальными командами проблем думаю не должно быть, кроме того, что перед какими-то серьезными действиями хост должен быть переведен в Maintenance Mode.

Операции с хранилищами

Для работы с хранилищами vSphere есть следующие командлеты:

Get-Datastore Remove-Datastore Set-Datastore Move-Datastore

А также мы можем примонтировать с помощью PowerCLI одно или несколько датасторов к нашей машине и производить операции с ними, копировать файлы и так далее. В этом нам поможет нативный PSProvider VMware – VimDatastore.

$datastore=Get-datastore 'datatstore' New-PSDrive -Name Datastore -Location $datastore -Root "\" -PSProvider Vimdatastore 

Проверим содержимое хранилища:

Get-ChildItem Datastore:\

Мы так же можем копировать файлы и папки между нашим примонтированным хранилищем vSphere и нашей машиной, что существенно облегчает это по сравнению с аналогичными действиями в GUI vSphere Client.

Copy-DatastoreItem -Item 'C:\Users\User\Downloads\TEMPLATE_RHEL_7_7_v2_2\*' -Destination Datastore:\TEMPLATE_RHEL_7_7_v2_2\

Теперь вернемся к более повседневным задачам администрирования vSphere и приведем пример создания нового хранилища NFS.

New-Datastore -Nfs -VMHost esxi-a-01 -Name NFSDatastore -Path /mynfs -NfsHost 10.10.10.3

Создание хранилища VMFS. Тут все немного сложнее, потому что нам нужно выбрать устройство для дальнейшей разметки в VMFS. А информацию об устройстве еще нужно получить, для определения устройства используется его идентификатор вида «naa.XXX XXX». Используем команду ниже и указываем хост, имеющий доступ к устройству.

Get-ScsiLun -VmHost esxi-a-02.lab.local | ft -AutoSize

Выделенное CanonicalName и есть нужный идентификатор устройства. Подсказка – используйте «FormatTable Autosize» для того что бы получаемая информация целиком помещалась на экране консоли. Теперь используем следующую команду для создания хранилища.

New-Datastore -Name 'new-datastore' -VMHost esxi-a-02.lab.local -Path naa.60003ff44dc75adcb3b3ca5f12bc9aa8 -Vmfs

Итоги

PowerCLI это мощнейший инструмент для автоматизации виртуальной инфраструктуры VMware. Он очень гибок и удобен, а синтаксис достаточно понятен и легко запоминается. В некоторых случаях он представляет даже больше удобства и функционала чем другие продукты VMware, разработанные специально для автоматизации, это линейка vRealize, но у каждого из этих решений свое назначение и сравнивать их – неправильно. Функционал PowerCLI выходит намного дальше, чем те примеры, которые я привел в данной статье и писать о нем и приводить другие примеры можно бесконечно долго.

Об авторе

Какой то инженер по виртуализации. В данном контексте это не особо важно. Вы же не за этим сюда пришли, верно?

Как запустить powercli из powershell

You are using an outdated browser. Please upgrade your browser to improve your experience.

expand-card-line
calendar-line —>

Before you can manage vSphere Auto Deploy with rules that you create with PowerCLI cmdlets, you must install PowerCLI .

Prerequisites

  • Select a version of PowerCLI compatible with your version of ESXi by using the VMware Product Interoperability Matrix .
  • Check system requirements for the version of PowerCLI that you selected by using the Compatibility Matrix on the PowerCLI home page for the respective PowerCLI version.
  • Open PowerShell on your workstation. In Windows Server configurations where PowerShell Gallery is not available by default, you must add the PowerShell Gallery as a trusted repository.

Procedure

  1. Download a version of PowerCLI later than PowerCLI 6.5R1 from the PowerCLI home page.
  2. To install all PowerCLI modules, run the command: Install-Module VMware.PowerCLI -Scope CurrentUser . Alternatively, you can install individual PowerCLI modules by running the Install-Module cmdlet with the module name.

If you see a warning that you are installing modules from an untrusted repository, press y and then press Enter to confirm the installation.

  1. Check the PowerShell Module path by using the command: $env:PSModulePath .
  2. Extract the contents of the ZIP file to one of the listed folders.
  3. Unblock the files by using the commands cd and Get-ChildItem * -Recurse | Unblock-File .

You can verify that the PowerCLI module is available by using the command Get-Module -Name VMware.PowerCLI* -ListAvailable .

What to do next

Configure the settings of your target hosts to prepare them for provisioning with vSphere Auto Deploy.

Как установить VMware PowerCLI?

Uninstall VMware PowerCLI MSI-file

VMware PowerCLI начиная с версии 6.5.1 больше не распространяется через MSI-файл для автоматической установки, последняя версия, которую можно использовать для автоматической установки осталась 6.5. Теперь установка выполняется через сам PowerShell.
Существует два способа установки PowerCLI с помощью нового метода: онлайн, который подходит для машин имеющих прямое подключение к сети Интернет и оффлайн, для машин без доступа в Интернет.
Чтобы приступить к установке новой версии VMware PowerCLI, необходимо сначала удалить старую версию, установленную с помощью MSI-файла, это можно сделать через панель управления. Для этого необходимо открыть панель управления, выбрать VMware PowerCLI и нажать правой кнопкой мыши и выбрать Uninstall.
После завершения работы мастера, стоит проверить, что папка «PowerCLI» была удалена из директории: C:\Program Files (x86)\VMware\Infrastructure\. По окончании удаления старой версией PowerCLI, можно приступать к установке новой версии.

Online установка PowerCLI на компьютере с доступом к сети Интернет

Для того чтобы выполнить установку VMware PowerCLI онлайн, потребуется выполнить следующие действия:
1. На компьютере с Интернет соединением запустить командную строку Powershell:
2. В открывшемся окне выполнить командлет:

Find-Module -Name VMware.PowerCLI

и убедиться, что модуль VMware.PowerCLI был найден в галерее PowerShell (PSGallery)

Примечание. Если ранее не было обращений к коллекции PowerShell, то может появиться сообщение о том, что существует отсутствующий или устаревший поставщик NuGet. NuGet-это поставщик управления пакетами. Они в основном используются для автоматической установки, обновления, настройки и/или удаления программного обеспечения. Чтобы принять установку правильной версии NuGet, необходимо нажать “Y».

3. Установить VMware.PowerCLI

Install-Module -Name VMware.PowerCLI -Scope CurrentUser

параметр Scope CurrentUser — указывает, что необходимо выполнить установку модуля только для текущего пользователя (это не требует привилегий администратора)
После успешной установки модулей можно проверить доступность набора команд VMware, например при помощи командлета:

Get-Command -Module *VM*

Offline устанока PowerCLI на компьютере без Интернет

Для того чтобы выполнить установку VMware PowerCLI на компьютере, где отсутствует подключение к сети Интернет, необходимо выполнить следующее:
1. На компьютере с Интернет соединением запустить командную строку Powershell:
2. В открывшемся окне выполнить командлет:

Find-Module -Name VMware.PowerCLI

и убедиться, что модуль VMware.PowerCLI был найден в галерее PowerShell (PSGallery)
2. Сохранить обнаруженный модуль VMware.PowerCLI в локальную папку, выполнить командлет:

Save-Module -Name VMware.PowerCLI -Path
  • C:\Windows\System32\WindowsPowerShell\v1.0\Modules — если необходимо, чтобы доступ к этому модулю имели все пользователи и у вас есть административные права на целевой машине
  • C:\Users\%UserName%\Documents\WindowsPowerShell\Modules — если необходимо, чтобы доступ к этому модулю имел только пользователь из под которого выполняется установка

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *