Новости Статьи VMware Veeam StarWind vStack Microsoft Nakivo Citrix Symantec События Релизы Видео Контакты Авторы RSS
Виртуализация и виртуальные машины

Все самое нужное о виртуализации и облаках

Более 6320 заметок о VMware, AWS, Azure, Veeam, Kubernetes и других

VM Guru / Articles / Управление виртуальной и облачной инфраструктурой с помощью VMware vSphere PowerCLI. Часть 1.

Управление виртуальной и облачной инфраструктурой с помощью VMware vSphere PowerCLI. Часть 1.

Управление виртуальной и облачной инфраструктурой с помощью VMware vSphere PowerCLI. Часть 1.

Автор: ИТ-ГРАД
Дата: 25/09/2016

Поддержите VM Guru!

USDT / TRC20, адрес: TCDP7d9hBM4dhU2mBt5oX2x5REPtq9QdU1




Статья:

Это гостевой пост компании ИТ-ГРАД. Те, кто использует продукты VMware, знают, что управление несколькими гипервизорами ESXi происходит с помощью vCenter Server, который чаще устанавливается на виртуальную машину, распложенную на одном из этих же гипервизоров. Выступая в роли подручного средства администрирования, vCenter Server используется для управления ресурсами, позволяя создавать, удалять, редактировать виртуальные машины.

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

Знакомство с PowerShell и PowerCLI

В этой части материала мы познакомим вас с основами PowerShell и PowerCLI. Отметим, что PowerCLI – расширение для Windows Powershell, добавляющее более 500 новых командлетов для управления облачной и виртуальной инфраструктурой. Последняя версия пакета доступна на официальном сайте VMware. После установки дистрибутива необходимо запустить ярлык VMware vSphere PowerCLI. Это позволит открыть консоль PowerShell и загрузить все модули PowerCLI.

Рисунок 1. Запуск VMware vSphere PowerCLI

В качестве альтернативы можно использовать редактор сценариев PowerShell ISE, который позволяет выполнять команды, создавать, изменять, тестировать и отлаживать скрипты в среде, поддерживающей цветное выделение синтаксиса и Unicode.

Итак, что же умеет PowerCLI? Для отображения списка доступных команд в консоли PowerCLI набираем:

Get-VICommand

Имейте в виду, что выводимый список получается достаточно большим. Но если вас интересует что-то конкретное, связанное, к примеру, с виртуальными машинами, команда приобретет следующий вид:

Get-VICommand *VM

Чтобы начать управление виртуальной инфраструктурой, подключимся к vCenter Server. Для этого используем команду Connect-VIServer. А поскольку в рассматриваемом примере vCenter Server имеет название vcsa-01a, используем это значение при подключении. Команда выглядит следующим образом:

Connect-VIServer vcsa-01a -User corp\administrator -Password VMware1!

Если вы не уверены в том, как использовать тот или иной командлет, обратитесь к справке. Для этого необходимо набрать Get-Help или упрощенный вариант «help», после чего указать название командлета:

Рисунок 2. Пример вывода справочной информации

Для отображения детальной информации с примерами использования командлетов и описанием параметров, используйте ключ –Full:

help Connect-VIServer -Full

А если возникла необходимость разобраться только в примерах, используйте ключ –Examples:

help Connect-VIServer -Examples

PowerCLI как средство для построения отчетов

Несмотря на широкие возможности командлетов, PowerCLI выступает отличным инструментом для построения отчетов. Одна из типовых задач – построение списка виртуальных машин vCenter Server для проведения инвентаризации или планов дальнейшего использования объектов инфраструктуры:

Get-VM

Если же возникла необходимость получить детали по конкретной ВМ или списку виртуальных машин, помогут следующие командлеты:

Get-VM linux-CPU-Load-01aGet-VM linux*

Извлечение свойств заданного объекта

Когда вы запускаете командлет, например Get-VM, возвращаемые им значения преобразуются в текст и выводятся на экран. Но если возникла необходимость передать возвращаемое значение одного командлета на вход другого, используйте | или конвейер (pipeline или piping):

Get-VM linux-CPU-Load-01a | Get-Member -MemberType property

В этом примере запрашиваются детали виртуальной машины с именем linux-CPU-Load-01a и выводится информация по конкретному свойству. Если же вы хотите получить информацию с описанием имени машины, указанием количества процессоров, используемой памяти, power-статуса и названием VM-хоста, используйте следующий набор:

Get-VM linux-CPU-Load-01a | Select Name, NumCPU, MemoryMB, PowerState, VMHost

Фильтрация результатов

Используя командлет Get-* совместно с PowerShell-командой ‘where’, вы можете получить результаты по интересующим вас свойствам. Если вы хотите вывести список всех виртуальных машин, находящихся в режиме PoweredOn, и отобразить результаты вывода с характеристиками: имя машины, количество процессоров, используемая память, статус ВМ и имя VM-хоста, примените следующий командлет:

Get-VM | Where {$_.Powerstate -eq "PoweredOn"} | Select Name, NumCPU, MemoryMB, PowerState, VMHost

Обратите внимание на переменную $_, которая хранит текущий объект конвейера, а результат выводится следующим образом:

Рисунок 3. Список виртуальных машин согласно заданным критериям

Экспорт результатов с использованием различных форматов

Согласитесь, что метод построения отчетов и вывод результатов, рассмотренный ранее, не совсем удобен. Особенно если эти результаты необходимо предоставить какой-либо команде для анализа. Работать с таким нечитабельным набором текста достаточно сложно. Для придания отчетам красивого вида с возможностью сохранить результаты локально, используется экспорт данных с выбором соответствующего формата. Это может быть файл txt, csv, xml или html. Предлагаем сравнить вывод результатов отчета в каждом из озвученных форматов.

Таблица 1. Примеры форматов экспорта

Формат TXT

Get-VM | Select Name, NumCPU, MemoryMB, PowerState, VMHost | Out-File c:\myPowerCLIReport.txt
       

Формат CSV

Get-VM | Select Name, NumCPU, MemoryMB, PowerState, VMHost | Export-Csv c:\myPowerCLIReport.csv -NoTypeInformation

Формат XML

(Get-VM | Select Name, NumCPU, MemoryMB, PowerState, VMHost | ConvertTo-Xml -NoTypeInformation).Save("c:\myPowerCLIReport.xml")

Формат HTML

Get-VM | Select Name, NumCPU, MemoryMB, PowerState, VMHost | ConvertTo-Html | Set-Content "c:\myPowerCLIReport.html"


Создание и конфигурация кластера

Настало время практического кейса, приближенного к жизни. В этой части статьи рассмотрим создание виртуального окружения для небольшой вымышленной компании Nephosoft. Для начала создадим и сконфигурируем новый кластер. В процессе настроим сетевые параметры и виртуальный свитч VDS (virtual distributed switch). Затем в рамках созданного виртуального окружения развернем несколько виртуальных машин и зададим соответствующие настройки. Выполним шаги с помощью командной строки.

Для создания нового кластера будем использовать командлет New-Cluster. Обратите внимание, что кластеру необходимо задать имя и локацию. Для этого используем команду:

$cluster1 = New-Cluster -Name "Nephosoft Cluster 1" -Location "Datacenter Site A"

Теперь уделим внимание функциональности vMotion, которая позволяет мигрировать виртуальные машины между хостами без остановки и прерывания их работы. Функционал vMotion доступен с редакции vSphere Advanced, для его работы требуется vCenter, кластер vCenter, общее хранилище виртуальных машин, одинаковая конфигурация виртуальной сети на всех узлах в составе кластера с vMotion, интерфейс VMkernel с включенной опцией vMotion, процессоры с одинаковым набором инструкций.

Следующее, что необходимо сделать, – проверить, поддерживают ли хосты режим EVC (enhanced vMotion compatibility). Для этого используем командлет:

$evcModes = Get-VMHost | Select MaxEVCMode

Теперь необходимо проверить содержимое $evcModes. Для этого вводим название переменной, после чего на экран будут выведены значения. В рассматриваемом примере оба хоста используют одинаковый режим EVC.

Напомним, что EVC автоматически настраивает кластер для совместимости процессоров разных поколений. Применяется ко всему кластеру, ко всем узлам при активации.

В следующем шаге включаем EVC-режим в свойствах кластера. По умолчанию эта функциональность выключена. После применения EVC можно мигрировать виртуальные машины между узлами в кластере. Используем следующую команду:

Set-Cluster $cluster1 -EVCMode $evcModes[0].MaxEVCMode

Настройка функциональности HA и DRS

В следующем шаге выполним конфигурацию высокой доступности кластера (HA), чтобы виртуальные машины были защищены в случае непредвиденных обстоятельств. Для этого используем команду:

Set-Cluster $cluster1 -HAEnabled:$true -Confirm:$false

Рисунок 4. Пример исполнения командлета Set-Cluster

Обращаем ваше внимание, что принцип HA заключается в следующем: несколько физических серверов объединяют в кластер, а при выходе одного узлов из строя виртуальные машины, которые были на нем, запускаются на других узлах кластера, на которых зарезервированы ресурсы. Однако при отказе оборудования будет зафиксировано небольшое время простоя сервиса / виртуальной машины. Чтобы сделать время простоя близким или равным нулю, используют технологию VMware Fault Tolerance.

Далее включим и настроим DRS. Напомним, что VMware DRS – это функциональность, которая определяет, на каком физическом узле запустить или куда смигрировать работающую виртуальную машину, чтобы выровнять нагрузку на всех узлах кластера. DRS объединяет ресурсы кластера в единый пул и в зависимости от выбранного режима распределяет виртуальные машины равномерным слоем по физическим узлам в кластере. В примере используется режим ‘manual’, а командлет выглядит следующим образом: 

Set-Cluster $cluster1 -DRSEnabled:$true -DRSAutomationLevel "Manual" -Confirm:$false

Заключение

В первой части статьи мы познакомились с особенностью администрирования виртуальной инфраструктуры средствами PowerShell и PowerCLI. Научились автоматизировать создание отчетов, извлекать свойства относительно заданных объектов виртуализации, создавать и конфигурировать кластер, настраивать функциональность HA и DRS.

Следите за новыми материалами первого блога о корпоративном IaaS. В следующей статье мы расскажем, как с помощью командной строки перемещать узлы в кластер, настраивать виртуальный свитч, мигрировать сетевые настройки, автоматизировать процесс создания виртуальных машин, наводить порядок в виртуальном и облачном окружении, используя теги.

Ссылка на статью в блоге ИТ-ГРАД.

Интересное:





Зал Славы Рекламодателя
Ближайшие события в области виртуализации:

Быстрый переход:
VMware Veeam Broadcom Offtopic Microsoft Cloud StarWind VMachines NAKIVO vStack Gartner Vinchin Nakivo IT-Grad Teradici VeeamON VMworld PowerCLI Citrix VSAN GDPR 5nine Hardware Nutanix vSphere RVTools Enterprise Security Code Cisco vGate SDRS Parallels IaaS HP VMFS VM Guru Oracle Red Hat Azure KVM VeeamOn 1cloud DevOps Docker Storage NVIDIA Partnership Dell Virtual SAN Virtualization VMTurbo vRealize VirtualBox Symantec Softline EMC Login VSI Xen Amazon NetApp VDI Linux Hyper-V IBM Google VSI Security Windows vCenter Webinar View VKernel Events Windows 7 Caravan Apple TPS Hyper9 Nicira Blogs IDC Sun VMC Xtravirt Novell IntelVT Сравнение VirtualIron XenServer CitrixXen ESXi ESX ThinApp Books P2V Backup Private AI vDefend VCF Workstation Network vSAN Tanzu VMUG HCX VCPP Labs Explore Data Protection ONE AI Intel Live Recovery VCP V2V Aria NSX DPU Update EUC Avi Community Skyline Host Client GenAI Chargeback Horizon SASE Workspace ONE Networking Ransomware Tools Performance Lifecycle AWS API USB SDDC Fusion Whitepaper SD-WAN Mobile SRM ARM HCI Converter Photon OS Operations VEBA App Volumes Certification VMConAWS Workspace Imager SplinterDB DRS SAN vMotion Open Source iSCSI Partners HA Monterey Kubernetes vForum Learning vRNI UAG Support Log Insight AMD vCSA NSX-T Graphics NVMe HCIBench SureBackup Docs Carbon Black vCloud Обучение Web Client vExpert OpenStack UEM CPU PKS vROPs Stencils Bug VTL Forum Video Update Manager VVols DR Cache Storage DRS Visio Manager Virtual Appliance PowerShell LSFS Client Datacenter Agent esxtop Book Photon Cloud Computing SSD Comparison Blast Encryption Nested XenDesktop VSA vNetwork SSO VMDK Appliance VUM HoL Automation Replication Desktop Fault Tolerance Vanguard SaaS Connector Event Free SQL Sponsorship Finance FT Containers XenApp Snapshots vGPU Auto Deploy SMB RDM Mirage XenClient MP iOS SC VMM VDP PCoIP RHEV vMA Award Licensing Logs Server Demo vCHS Calculator Бесплатно Beta Exchange MAP DaaS Hybrid Monitoring VPLEX UCS GPU SDK Poster VSPP Receiver VDI-in-a-Box Deduplication Reporter vShield ACE Go nworks iPad XCP Data Recovery Documentation Sizing Pricing VMotion Snapshot FlexPod VMsafe Enteprise Monitor vStorage Essentials Live Migration SCVMM TCO Studio AMD-V KB VirtualCenter NFS ThinPrint Director Memory SIOC Troubleshooting Stretched Bugs ESA Android Python Upgrade ML Hub Guardrails CLI Driver Foundation HPC Orchestrator Optimization SVMotion Diagram Ports Plugin Helpdesk VIC VDS Migration Air DPM Flex Mac SSH VAAI Heartbeat MSCS Composer
Полезные постеры:

Постер VMware vSphere PowerCLI 10

Постер VMware Cloud Foundation 4 Architecture

Постер VMware vCloud Networking

Постер VMware Cloud on AWS Logical Design Poster for Workload Mobility

Постер Azure VMware Solution Logical Design

Постер Google Cloud VMware Engine Logical Design

Постер Multi-Cloud Application Mobility

Постер VMware NSX (референсный):

Постер VMware vCloud SDK:

Постер VMware vCloud Suite:

Управление памятью в VMware vSphere 5:

Как работает кластер VMware High Availability:

Постер VMware vSphere 5.5 ESXTOP (обзорный):

 

Популярные статьи:
Как установить VMware ESXi. Инструкция по установке сервера ESXi 4 из состава vSphere.

Включение поддержки технологии Intel VT на ноутбуках Sony VAIO, Toshiba, Lenovo и других.

Типы виртуальных дисков vmdk виртуальных машин на VMware vSphere / ESX 4.

Как работают виртуальные сети VLAN на хостах VMware ESX / ESXi.

Как настроить запуск виртуальных машин VMware Workstation и Server при старте Windows

Сравнение Oracle VirtualBox и VMware Workstation.

Что такое и как работает виртуальная машина Windows XP Mode в Windows 7.

Диски RDM (Raw Device Mapping) для виртуальных машин VMware vSphere и серверов ESX.

Работа с дисками виртуальных машин VMware.

Где скачать последнюю версию VMware Tools для виртуальных машин на VMware ESXi.

Подключение локальных SATA-дисков сервера VMware ESXi в качестве хранилищ RDM для виртуальных машин.

Как перенести виртуальную машину VirtualBox в VMware Workstation и обратно

Инфраструктура виртуальных десктопов VMware View 3 (VDI)

Как использовать возможности VMware vSphere Management Assistant (vMA).

Бесплатные утилиты для виртуальных машин на базе VMware ESX / ESXi.

Интервью:

Alessandro Perilli
virtualization.info
Основатель

Ратмир Тимашев
Veeam Software
Президент


Полезные ресурсы:

Последние 100 утилит VMware Labs

Новые возможности VMware vSphere 8.0 Update 1

Новые возможности VMware vSAN 8.0 Update 1

Новые документы от VMware

Новые технологии и продукты на VMware Explore 2022

Анонсы VMware весной 2021 года

Новые технологии и продукты на VMware VMworld 2021

Новые технологии и продукты на VMware VMworld 2020

Новые технологии и продукты на VMware VMworld Europe 2019

Новые технологии и продукты на VMware VMworld US 2019

Новые технологии и продукты на VMware VMworld 2019

Новые технологии и продукты на VMware VMworld 2018

Новые технологии и продукты на VMware VMworld 2017



Copyright VM Guru 2006 - 2025, Александр Самойленко. Правила перепечатки материалов.
vExpert Badge