понедельник, 31 августа 2015 г.

Wake on LAN прокси для запуска ВМ на VMware vSphere

Бывают случаи, когда требуется запустить ВМ в VMware vSphere, используя Wake on LAN (например, при использовании системы управления Microsoft SCCM).

Принцип работы Wake on LAN очень прост. Сервер посылает в широковещательном режиме специально сформированный пакет (Magic Packet), содержащий MAC адрес компьютера, который требуется включить. Сетевой адаптер, поддерживающий Wake on LAN, получив подобный пакет с собственным MAC адресом, запустит компьютера.

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

Для решения этой проблемы я написал небольшой скрипт на PowerShell, который выполняет функцию Wake on Lan прокси сервера. После запуска скрипт подключается к указанному серверу vCenter и собирает информацию о всех доступных ВМ и MAC адресах виртуальных сетевых адаптеров. При получении magic packet'а, скрипт проверяет, не принадлежит ли MAC адрес виртуальному адаптеру одной из ВМ, и в случае совпадения выполняет запуск данной ВМ.

Скрипт доступен для загрузки по данной ссылке: https://drive.google.com/open?id=0B25p_5gdqA35ci12a21DYTVrUzQ

Для запуска скрипта требуется установленный на компьютере PowerShell и VMware PowerCLI (https://my.vmware.com/web/vmware/details?downloadGroup=PCLI550&productId=352).

В архиве два файла:
  • wol-procy.ps1 - сам скрипт
  • config.xml - конфигурационный файл
Перед запуском скрипта требуется изменить конфигурационный файл config.xml, указав в нем адрес сервера vCenter (параметр Server), учетную запись (User) и пароль (Password) для подключения.

Учетной записи пользователя, из-под которой производится подключение, требуются следующие права:
  • Virtual machine > Interaction > Power on
Параметр Interval определяет частоту обновления информации о ВМ и их MAC адресах (в минутах).

Параметр Port определяет на каком порту UDP скрипт получает magic packet'ы. По умолчанию, используется UDP порт 9, но для некоторых приложений может потребоваться его изменить на UDP 7.

Параметр Logmode отвечает за уровень логирования:
  • 1 - Запись журналов в файл.
  • 2 - Вывод журналов на экран.
  • 3 - Вывод на экран и запись в файл.
Параметр Logfolder указывает путь к папке, где будут храниться журналы.

понедельник, 3 августа 2015 г.

Бесплатные и триальные программные СХД для тестов и домашней лаборатории

У меня часто возникает желание что-нибудь протестировать в домашних условиях. Для этих задач как нельзя кстати подходят различные программные СХД.

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

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

ПО
Особенности
Datacore SANSymphony-v
Модель распространения: Триальная лицензия на 30 дней.
Тип установки: Служба Windows Server.
Поддерживаемые протоколы: FC, iSCSI.
Функциональные возможности: тонкие диски, возврат неиспользуемого пространства, тиринг, снапшоты, асинхронная репликация, зеркалирование томов, HA-кластер.
Ограничения: лицензии на 4-е сервера.
Ссылка для загрузки: http://datacore.com/resources/free-virtual-san

EMC Isilon OneFS Simulator
Модель распространения: Бесплатно.
Тип установки: Appliance
Поддерживаемые протоколы: NFS, SMB.
Функциональные возможности: распределенное хранилище.
Ограничения: Кластер до 6 узлов, каждый узел не более 16 ГБ.

EMC Isilon OneFS Simulator
Модель распространения: Триальная лицензия на 90 дней.
Дополнительные протоколы: iSCSI.
Дополнительные возможности: снапшоты, асинхронная репликация, дедупликация, тиринг, VAAI, VMware SRM.

EMC ScaleIO
Модель распространения: Бесплатна для некоммерческого использования.
Дополнительные протоколы: объектное хранение.
Дополнительные возможности: снапшоты, распределенное хранилище, тонкие диски, репликация (EMC RecoverPoint).
Ссылка для загрузки: https://www.emc.com/products-solutions/trial-software-download/scaleio.htm

EMC Unity   Community Edition
Модель распространения: Бесплатна для некоммерческого использования.
Тип установки: Appliance.
Поддерживаемые протоколы: iSCSI, NFS, SMB.
Функциональные возможности: тонкие диски, снапшоты, асинхронная репликация, сжатие и дедупликация файлов, VAAI, VASA, VMware SRM, VVOLs.
Ограничения: до 4 ТБ на один Appliance.

Falconstor Network Storage Server
Модель распространения: Триальная лицензия на 30 дней.
Тип установки: Appliance.
Поддерживаемые протоколы: FC, iSCSI.
Функциональные возможности: тонкие диски, снапшоты, кэширование на SSD, асинхронная репликация, зеркалирование томов, HA-кластер, метро-кластер, VAAI, VMware SRM.
Ссылка для загрузки: http://falconstor.com/subpage/924/'

HP StoreVirtual (P4000) VSA
Модель распространения: Триальная лицензия на 60 дней.
Тип установки: Appliance.
Поддерживаемые протоколы: iSCSI.
Функциональные возможности: тонкие диски, возврат неиспользуемого пространства, снапшоты, тиринг, асинхронная репликация, зеркалирование томов, метро-кластер, распределенное хранилище, Erasure Coding, VAAI, VASA, VMware SRM.

Microsoft Windows Server 2012 R2
Модель распространения: Триальная лицензия на 180 дней.
Тип установки: Bare Metal.
Поддерживаемые протоколы: iSCSI, NFS, SMB.
Функциональные возможности: снапшоты, дедупликация, тиринг, кэширование на SSD, HA-кластер.

NetApp Data ONTAP Simulator
Модель распространения: Бесплатно для клиентов и партнеров.
Тип установки: Appliance.
Поддерживаемые протоколы: iSCSI, NFS, SMB.
Функциональные возможности: тонкие диски, снапшоты, дедупликация, компрессия, асинхронная и синхронная репликация, VAAI, VASA, VVOLs, VMware SRM.
Ссылка для загрузки: http://now.netapp.com/NOW/cgi-bin/simulator
Ограничения: На одну СХД - 28 дисков объемом 1 ГБ каждый.

Nexenta NexentaStor Community Edition
Модель распространения: Бесплатно.
Тип установки: Appliance.
Поддерживаемые протоколы: iSCSI, NFS, SMB.
Функциональные возможности: тонкие диски, дедупликация, снапшоты, VAAI, VASA.
Ограничения: 10 ТБ на хранилище.
Ссылка для загрузки: https://community.nexenta.com/s/community-edition

Openfiler
Модель распространения: Бесплатно.
Тип установки: Bare Metal.
Поддерживаемые протоколы: FC, iSCSI, NFS, SMB.
Функциональные возможности: снапшоты, зеркалирование томов, HA-кластер.
Ссылка для загрузки: https://www.openfiler.com/community/download

StarWind Virtual SAN Free
Модель распространения: Бесплатно.
Тип установки: Служба Windows Server.
Поддерживаемые протоколы: iSCSI, NFS, SMB.
Функциональные возможности: тонкие тома, возврат неиспользуемого пространства, снапшоты, дедупликация, кэширование на SSD, зеркалирование томов, HA-кластер, VAAI.
Ограничения: Устанавливается на выделенный физический сервер, не более 2 серверов.

StarWind Virtual SAN
Модель распространения: Триальная лицензия на 30 дней.
Дополнительные возможности: асинхронная репликация.
Ограничения: не более 3 серверов.

VMware vSAN
Модель распространения: Триальная лицензия на 60 дней.
Тип установки: компонент ESXi.
Поддерживаемые протоколы: объектное хранение.
Функциональные возможности: распределенное хранилище, кэширование на SSD, дедупликация и компрессия, Erasure Coding, управление через политики VASA.
Ограничения: Поддерживает только VMware vSphere.



Краткие пояснения по таблице:
  • Модель распространения - часть ПО распространяется бесплатно (с определенными ограничениями), часть - в тестовом (триальном) режиме с ограниченным временем использования, который, обычно, требует регистрации на сайте и ввода лицензии.
  • Тип установки - Служба Windows Server означает, что ПО устанавливается на сервер с установленной ОС Windows Server, Appliance - означает, что ПО устанавливается как виртуальная машина под тот или иной гипервизор.
  • Поддерживаемые протоколы - содержит перечень протоколов блочного (FC, iSCSI) или файлового (NFS, SMB) доступа. Остальные протоколы пропущены, однако некоторое ПО может поддерживать дополнительные протоколы (FTP, HTTP, rsync и т.п.).
  • Функциональные возможности - перечень основных (но не всех) возможностей данной программной СХД.
  • Ограничения - часть ПО накладывает определенные ограничения на бесплатную или триальную версию, которых нет в полной версии.

Функциональные возможности:
  • Тонкие диски (thin provisioning) - тома, которые не требуют выделения всего дискового пространства при создании, и растут по мере заполнения данными.
  • Возврат неиспользуемого пространства (space reclamation) - возможность, при которой тонкие диски, с которых были удалены данные, могут автоматически или вручную быть уменьшены в размере для уменьшения места, занимаемого на хранилище.
  • Тиринг (tiering) - возможность, при использовании накопителей разных типов (жесткие диски, SSD), автоматически размещать данные, к которым осуществляется активный доступ на более быстрых накопителях, а данные, к которым доступ не осуществляется - на более медленных.
  • Кэширование на SSD (SSD Cache) - возможность использовать SSD накопители в качестве кэш-памяти для ускорения операций ввода-вывода.
  • Снапшоты (Snapshots) - мгновенные снимки, позволяющие сохранять текущее состояние тома для задач резервного копирования или репликации данных на другую СХД.
  • Асинхронная репликация (Asynchronous replication) - процесс периодического копирования тома с основной СХД на резервную с возможностью ручного переключения на резервную СХД в случае отказа основной.
  • Синхронная репликация (Synchronous replication) - процесс непрерывного копирования тома с основной СХД на резервную с возможностью ручного переключения на резервную СХД в случае отказа основной. Подтверждение записи клиенту будет отправлено только после того, как основная СХД примет подтверждение о записи от резервной.
  • Зеркалирование томов (mirroring) - хранение и синхронизация двух одинаковых копий томов на двух разных СХД и/или накопителях. В случае недоступности одной копии СХД может использовать вторую копию, или выполнить переключение на резервный узел (в случае HA-кластера).
  • HA-кластер - кластер из двух узлов, работающих в режиме active-passive. Ввод-вывод осуществляется через активный узел кластера, в случае его недоступности (или невозможности активного узла получить доступ к своей копии данных) пассивный узел переключается в активный режим и начинает обрабатывать запросы на ввод-вывод.
  • Распределенное хранилище - возможность размещать один том на нескольких узлах СХД, обеспечивать избытычность хранения и распределнный доступ к данным.
  • Метро-кластер (Metro-storage Cluster) - возможность организации распределенной СХД, узлы которой находятся на разных, территориально разнесенных, площадках.
  • Дедупликация (Deduplication) - снижение объема занимаемого дискового пространства за счет одногократного хранения одинаковых блоков данных или файлов.
  • Сжатие (Compression) - экономия дискового пространства за счет сжатия данных.
  • Erasure Coding - механизм распределенного хранения с обеспечением избыточности за счет хранения контрольных сумм данных (аналог сетевого RAID-5 или RAID-6).
  • VAAI (vSphere API for Array Integration) - набор API для интеграции СХД с гипервизором VMware ESXi, позволяющий ускорить работу с СХД за счет выполнения части операций на стороне СХД (зануление, блокировка томов, копирование, возврат неиспользуемого дискового пространства).
  • VASA (vSphere API for Storage Awareness) - набор API для интеграции СХД с гипервизором VMware ESXi, позволяющий СХД отправлять информацию о свойствах томов гипервизору (например, типе используемых дисков, уровне RAID, настройках репликации, наличии ssd кэша и т.д.).
  • VMware SRM - наличие агента Storage Replication Adapter для интеграции СХД с VMware SRM.
  • VVOLs (Virtual Volumes) - функционал VMware ESXi 6.0, позволяющий создавать тома и настраивать различные параметры хранения для отдельных ВМ на основе политик VASA.