Содержание

1. Общая информация
1.1 О гиперконвергентной инфраструктуре ОТВ эв3
1.2 Безопасность
1.3 Масштабирование
1.4 Производительность
2. Технические требования
2.1 Требования к инфраструктуре и оборудованию
3. Первичное знакомство
3.1 Устройство панели управления
3.2 Система
3.3 Создание проекта
3.4 Определение метаданных
4. Запуск виртуальной машины
4.1 Что такое инстанс?
4.2 Что такое образ, бэкап, снапшот
4.3 Быстрый запуск инстанса в ОТВ эв3
4.4 Изменение инстансов
4.5 Образы
5. Диски
6. Сетевые настройки
6.1 Сеть и настройка сети
6.2 Группы безопасности / Firewall
6.3 Балансировщик нагрузки
6.4 Ключевая пара и правила для сети
6.5 VPN
6.6 Плавающие IP
7. Продвинутые настройки
7.1 Справочник по командам API
7.2 Доступ к API
7.3 Резервное копирование
7.4 Лицензии Windows, RDS/RDP, 1C и MS SQL
Термины и определения
Вопросы и ответы
А) Проблемы и решения

1. Общая информация Содержание | Термины и определения

1.1 О гиперконвергентной инфраструктуре ОТВ эв3

Введение

При построении ИТ-инфраструктуры предприятия (Enterprise) наиболее значимыми критериями выбора решения становятся:

  • высокая доступность,
  • непрерывность предоставляемых ИТ услуг (инфраструктурных сервисов),
  • целостность хранимых данных,
  • возможности обеспечения эластичности.

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

Таким задачам отвечает гиперконвергентная инфраструктура, в которой вычислительные мощности, хранилища, серверы и сети объединяются в одно целое с помощью программных средств, а управление ими происходит через общую консоль администрирования.

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

Следующие категории ИТ-сервисов рассматриваются для построения:

  1. Вычислительные ресурсы
  2. Сетевые ресурсы
  3. Репликация
  4. Система хранения данных
  5. Сбор метрик
  6. Управление жизненным циклом инфраструктурных сервисов
  7. Эксплуатационные (Операционные) расходы

Рассмотрим общие принципы построения 'ОТВ эв3" и его возможности.

Общие принципы построения архитектуры

Для обеспечения высокого уровня автоматизации и автономности работы, на уровне инфраструктуры используется программно-определяемая среда:

  • Вычисления (виртуализация вычислений/гипервизор)
  • Сеть (изоляция сетевого трафика)
  • Хранение (R.A.I.N. - redundant/reliable array of inexpensive/independent nodes)
  • Построено на основе СПО (Open Source) - отсутствие зависимости от поставщика (vendor lock)
  • Уникальная симметричная архитектура решения (нет единой точки отказа), позволяющая оптимально утилизировать выделенные ресурсы и реализующая Shared-nothing подход
  • Детерминированное планирование ресурсов, обеспечивающее реальную эластичность и высокую эффективность использования оборудования
  • Изоляции рабочих нагрузок (вычислений, обработки данных, сетевого взаимодействия)
  • Высокий уровень отказоустойчивости основных сервисов, входящих в решения за счет избыточности
  • Обеспечение возможности как вертикального, так и горизонтального масштабирования приложений, помещенных в облачную среду
  • Высокий уровень автоматизации управления виртуальными ресурсами, такими как вычисления, частные сети, блочные устройства, приложения

Базовые функциональные возможности

Виртуальные серверы:
  • Создание, перегрузка (в том числе "жёсткая"), выключение и удаление виртуального сервера
  • Постановка на и снятие с "паузы" виртуального сервера
  • Назначение ранее созданного правила доступа на конкретный виртуальный сервер
  • Просмотр журнала создания, загрузки виртуального сервера
  • Доступ к консоли виртуального сервера
  • Изменение размера виртуального сервера
  • Пересоздание виртуального сервера (сброс всех ранее произведённых настроек)
  • Назначение и освобождения IP адреса Использование API для управления виртуальными серверами
Сеть:
  • Создание и управление частными локальными виртуальными сетями (VxLAN)
  • Создание и управление маршрутизаторами
  • Управление правилами маршрутизации между локальными виртуальными сетями (Лист контроля доступа)
  • Построение туннеля между территориально-распределенными частными сетями (VPN), с использованием протокола IP Sec для защиты трафика данных, передаваемых по межсетевому протоколу IP
  • Создание балансировщика нагрузки (LBaaS) для обеспечения горизонтального масштабирования вычислений и обеспечения отказоустойчивости разворачиваемых ИТ сервисов
  • Использование API для управления сетями
Список контроля доступа:
  • Создание собственных правил доступа к вычислительным ресурсам в облачной инфраструктуре
  • Создание групп правил доступа к собственным вычислительным ресурсам в облачной инфраструктуре
  • Назначение групп правил доступа к собственным вычислительным ресурсам в облачной инфраструктуре
  • Использование API для управления списком контроля доступа
Виртуальные блочные устройства:
  • Создание и удаление блочных устройств
  • Управление "горячими" подключениями блочных устройств к виртуальным серверам без необходимости их (серверов) перегрузки
  • Создание и хранение снимка (Snapshot) блочного устройства
  • Создание и хранение резервной копии блочного устройства (в том числе инкрементальное)
  • Использование API для управления блочными устройствами
Среда исполнения сценариев управления:
  • Исполнение шаблонна оркестровки управления сервисами для создания экземпляров ИТ сервисов
  • На уровне шаблона поддерживает описание отношения между ресурсами (например, это блочное устройство подключено к этому виртуальному серверу)
  • Содержит функциональность, обеспечивающую высокую доступность экземпляров виртуальных серверов и автоматическое масштабирование виртуальных ресурсов по требованию
  • Использование API для управления шаблонами оркестровки управления сервисами
Сервис сбора ключевых показателей производительности (сервис телеметрии) виртуальных ресурсов (в разрезе проектов) и оборудования:
  • Загрузка ЦПУ.
  • Использование RAM.
  • Загрузка сетевых интерфейсов.
  • Значение температуры (опрос оборудования по протоколам SNMP или IPMI).
  • Опрос иных компонентов через Restful API
  • Опрос иных компонентов через разработанные агенты
  • Использование API для управления данными и отображения их в графической консоли

Планирование ёмкости систем хранения и масштабируемость

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

Разворачиваемое решение обеспечивает как вертикальное, так и горизонтальное масштабирование:

  • Вертикальное масштабирование вычислений ограничено максимальными объемами памяти и ЦПУ гипервизора.
  • Горизонтальное масштабирование вычислений обеспечивается в рамках одной зоны доступности, а также нескольких зон доступности.
  • Горизонтальное масштабирование системы хранения операционных (горячих) данных обеспечивается в рамках зоны доступности. При этом обеспечивается обезличенное хранение 3-х независимых копий данных.
  • Горизонтальное масштабирование системы хранения резервных данных обеспечивается как в рамках одной зоны доступности, так и нескольких зон доступности. При этом обеспечивается распределенное хранение не менее 3 копий данных, причем в каждой из зон доступности хранится не менее одной копии данных.

Для повышения эффективности хранения, а также повышения производительности ввода/вывода, используется компрессия данных.

Компонентная диаграмма, пример развертывания в 2-х ЦОДах:

Слой гипервизоров (вычислительные узлы)

В каждой из зон доступности (локации) выполняется группировка (агрегация) вычислительных узлов. При необходимости добавления дополнительных вычислительных мощностей, стандартизированные вычислительные узлы автоматически присоединяются в развернутой инфраструктуре "ОТВ эв3" и тем самым обеспечивается горизонтальное масштабирование. Как правило, предлагается иметь одну и более группу (агрегацию) вычислительных узлов. При этом все вычислительные узлы отдельно взятой группы имеют одинаковую, типовую конфигурацию: схожий тип процессора, объем памяти. Слой программно-определяемых сетей В каждой из зон доступности разворачивается программно-определяемая сеть. Отказоустойчивость обеспечивается за счет избыточности маршрутизаторов и DHCP служб. Функциональные возможности этого слоя позволяют пользователям настраивать и определять сетевые подключения, а также управлением инфраструктурой виртуальных сетей, включая сети, коммутаторы, подсети и маршрутизаторы для устройств, управляемых службой, отвечающей за виртуализацию вычислений. Также используются расширенные сужбы, такие как VPN, LBaaS, ACL.

Слой программно-определяемых систем хранения данных

В каждой из зон доступности разворачивается программно-определяемая система хранения данных. Она имеет полностью симметричную архитектуру, где все узлы хранения равны между собой. Добавление или удаление любого узла хранение не ведет к каким-либо изменениями в конфигурации. Для определения места, где данные будут сохранены (узел хранения, дисковый носитель) используется алгоритм консистентного хеширования. Это повышает автономность работы системы хранения данных и минимизирует потребность в администрировании. Каждое виртуальное блочное устройство представляет собой совокупность объектов, хранящихся на основе ключ-значения.

При этом каждый упомянутый объект имеет размер 4МБ. Хранимый объект не может быть модифицирован (доступен лишь в режиме только для чтения / read only), любое изменение данных происходит путем записи нового объекта (copy-on-write). Сервис хранения данных оптимизирован для OLTP нагрузки и обеспечивает: хранение не менее 3 копий виртуальных блочных устройств, распознавание ошибок ввода / вывода, автоматическую балансировку нагрузки и хранимых данных. Доступ к виртуальным блочным устройствам возможен только с уровня гипервизора. Создаваемое пользователем виртуальное блочное устройство может быть подключено к одному из виртуальных серверов, созданных в решении "ОТВ эв3".

Компонентная диаграмма

Пояснение:

Используемый Instance HA Service позволяет обеспечить высокую доступность унаследованных приложений, работающих на виртуальной машине. В случае сбоя экземпляра виртуальной машины (instance), или даже целого вычислительного узла обеспечивается восстановление работы этого экземпляра виртуальной машины или экземпляров виртуальных машин вышедшего из строя физического узла на исправном и доступном узле. Существенным требованием для корректной работы данного сценария является наличие shared системы хранения. Это может быть как хранилище доступное в рамках одного центра обработки данных, так и гео-распределенная система хранения, имеющаяся в распоряжении у предприятия.

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

Слой средств управления виртуальными ресурсами и сбора метрик

На этом уровне выделяются следующие логические подслои управления:

  • Аутентификация и авторизация пользователей, позволяющий разделить права пользователей с точки зрения управления виртуальными ресурсами
  • Шаблоны виртуальных серверов
  • Виртуальные серверы
  • Сети, в том числе VPN, и балансировка нагрузки
  • Списки контроля доступа
  • Виртуальные блочные устройства, в том числе их резервное копирование
  • Сценарии хореографии виртуальных ресурсов
  • Сбор метрик производительности, в том числе используется при хореографии виртуальных ресурсов и мониторинге
  • Средства управления виртуальными ресурсами и сбора метрик представляют собой единую точку доступа и управления ресурсами, вне зависимости от количества cформированных зон доступности.

Слой гео-распределённой программно-определяемой СХД

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

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

Сетевой взаимодействие, логический уровень

Для развертывания облачной инфраструктуры "ОТВ эв3" выделяют 3 уровня абстракции: сеть управления, используемая для коммуникации служебных ИТ сервисов и сетевого трафика между виртуальными машинами; внутренняя частная сеть, объединяющая зоны доступности и позволяющая привилегированным пользователям организации работать с развернутыми сервисами; публичная сеть интернет. Сеть управления находится за NAT по отношению к частной сети организации и публичной сети интернет. В рамках "ОТВ эв3" у администраторов решения есть возможность создавать сетевую топологию любой сложности (создавать нужные уровни абстракции, формировать DMZ, управлять правилами доступа, назначать IP адреса виртуальным серверам из выделенного пула адресов публичной и частной / внутренних подсетей и т.п.).

Пояснение:

Производительность рассматривалась критическим фактором при проектировании облачной инфраструктуры. Основное внимание уделено системе хранения данных, являющейся, чаще всего, наиболее узким местом. При использовании NL SAS дисков со скоростью 7500 оборотов в секунду и полосой пропускания сети 20Гб/сек, решение "ОТВ эв3" обеспечивает производительность ввода вывода не хуже 22-25 тысяч IOPS для блока размером 4Кб на уровне виртуального сервера. Суммарная производительность системы хранения гиперконвергентной инфраструктуры, состоящей из пяти узлов - не хуже 110 тысяч IOPS для блока размером 4Кб.

1.2 Безопасность

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

1.3 Масштабирование

Гиперконвергентная инфраструктура ОТВ эв3 позволяет в реальном времени распределять имеющиеся ресурсы в зависимости от требуемой нагрузки. Масштабирование решения осуществляется линейно и предсказуемо в соответствии с потребностями бизнеса.

1.4 Производительность

ОТВ эв3 позволяет обрабатывать транзакции за меньшее время. Более быстрый анализ данных позволяет быстро принимать верные управленческие решения. Производительность рассматривалась критическим фактором при проектировании облачной инфраструктуры. Основное внимание уделено системе хранения данных, являющейся, чаще всего, наиболее узким местом.

При использовании NL SAS дисков со скоростью 7500 оборотов в секунду и полосой пропускания сети 20Гб/сек, решения ОТВ эв3, обеспечивает производительность ввода вывода не хуже 22-25 тысяч IOPS для блока размером 4Кб на уровне виртуального сервера. Суммарная производительность системы хранения гиперконвергентной инфраструктуры, состоящей из пяти узлов - не хуже 110 тысяч IOPS для блока размером 4Кб.

2. Технические требования Содержание | Термины и определения

2.1 Требования к инфраструктуре и оборудованию

Наименование Минимальная конфигурация Ограничения
       
1 Количество узлов 3 физических узла Количество узлов не ограничено
2 Системный HDD 1 шт. на узел 300 Гб и выше
3 Диски данных 8 шт. одинаковых HDD на узел, обязательно наличие noraid HBA Требования к минимальному размеру диска отсутствуют
4 ОЗУ От 128 ГБ на узел Ограничено возможностями оборудования и целесообразностью
5 Сетевой адаптер 2 порта 10G на узел Ограничено возможностями оборудования и целесообразностью
6 Процессор Архитектура x86 с поддержкой виртуализации, не менее 2 шт. на узел Минимально 6 ядер на процессор, 12 потоков на процессор
7 Коммутатор Минимально 10 G Ограничено возможностями оборудования и целесообразностью
8 Маршрутизатор Минимально 10 G (в случае отсутствия функции маршрутизации в коммутаторе) Ограничено возможностями оборудования и целесообразностью

3. Первичное знакомство Содержание | Термины и определения

3.1 Устройство панели управления

3.1.1 Вход в проект

Для того, чтобы войти в систему управления ОТВ эв3 необходимо запустить любой интернет-браузер и ввести адрес, по которому опубликован данный сервис. Например: http://companyname.ru/horizon/auth/login/?next=/horizon/

Шаг 1: В поле "Проект" необходимо ввести название Вашего проекта.

Шаг 2: В поля "Имя пользователя" и "Пароль" – введите логин и пароль, которые выдал администратор системы:

При корректном вводе параметров, вы увидите панель управления проектом. На скриншоте ниже видно, что мы находимся в проекте "demo" (левый верхний угол) и вошли под пользователем "amih" (правый верхний угол):

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

3.1.2 Настройки пользователя

Шаг 1: Для изменения настроек текущего пользователя надо кликнуть по выделенной области в правой верхней части экрана с логином пользователя (в нашем примере "amih") и выбрать пункт "Настройки" в выпадающем меню:

Шаг 2: При необходимости смените язык системы и часовой пояс:

Шаг 3: Сохраните настройки, нажав кнопку "Сохранить" в правом нижнем углу.

Шаг 4: Чтобы сменить пароль пользователя, выберите пункт "Изменить пароль" в меню справа. Введите старый пароль и дважды новый пароль:

Шаг 5: Сохраните настройки нажатием на кнопку "Изменить пароль". На этом настройки пользователя завершены.

3.1.3 Идентификация - настройки пользователей

В левом меню выберите пункт "Идентификация", подпункт "Пользователи". Отобразится таблица, в которой указаны все пользователи проекта:

При нажатии на ссылку "Имя пользователя" в первом столбце появится форма настроек выбранного пользователя.

3.1.4 Создание нового пользователя

Для создания пользователя необходимо нажать на кнопку " + Создать пользователя" в верхнем правом углу. Отобразится форма:

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

Строка формы Описание
     
1 ID домена Идентификационный номер проекта, в котором создается пользователь
2 Имя домена Имя домена, в котором создается пользователь
3 Имя пользователя Логин для входа в систему
4 Описание Комментарий администратора
5 E-mail Контакт пользователя для связи с ним
6 Пароль Пароль пользователя для входа в систему
7 Выбрать проект Проект пользователя по умолчанию. У пользователя может быть доступ в несколько проектов, данный параметр определяет, в какой проект пользователь попадает при входе в систему в первую очередь
8 Роль Определяет права пользователя в соответствии с настройками групп безопасности (firewall)
9 Включено Определяет, активен ли пользователь. Пользователя можно активировать или деактивировать после создания в настройках пользователя.

3.1.5 Как создать группы пользователей

Шаг 1: В меню слева выберите пункт "Идентификация", затем подпункт "Группы":

Шаг 2: В правом верхнем углу нажмите на кнопку " + Создать группу ". Отобразиться форма создания группы:

Шаг 3: Заполните наименование группы и заполните комментарий по необходимости. Сохраните настройки, нажатием на кнопку "Сохранить".

3.1.6 Как создать и настроить роли пользователей

Роли пользователей определяют права пользователя, которому они присвоены, в проекте.

Шаг 1: В меню слева выберите пункт "Идентификация", подпункт "Роли". Отобразится таблица со списком уже существующих ролей:

Роли по умолчанию:

Роль Описание
     
1 heat_stack_owner Служебная роль для работы с пулом ресурсом и оркестрации, как базовый для функционирования каталога приложений. Удаление пользователя может привести к потере работоспособности отдельных компонентов системы.
2 heat_stack_user Служебная роль для работы с пулом ресурсом и оркестрации, как базовый для функционирования каталога приложений. Удаление пользователя может привести к потере работоспособности отдельных компонентов системы.
3 admin Администратор проекта, ему доступен весь функционал решения в пределах проекта.
4 user Пользователь проекта, которому доступен ограниченный функционал по использованию ресурсов проекта.
5 member Пользователь проекта с ограниченными правами только на чтение.

Шаг 2: Для создания роли нажмите на кнопку вверху справа " + Создать роль". Введите наименование роли:

3.2 Система

В разделе система отображается системная информация.

3.2.1 Как посмотреть сводную информацию о параметрах системы?

Для отображения сводной информации о параметрах, присвоенных системе, необходимо зайти в панель управления под пользователем с правами администратора. Выберите в меню слева пункт "Администратор", затем "Параметры по умолчанию". Отобразиться перечень параметров (квот) и присвоенные им значения:

3.2.2 Просмотр системных служб

Для просмотра списка системных служб и точек доступа к ним, выберите в меню слева пункт "Администратор", далее подпункт "Системная информаци", вкладка "Службы". Отобразиться таблица с перечнем служб, отдельно будут указаны точки доступа к ним в сетях проекта:

3.2.4 Службы вычислительных ресурсов

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

3.2.5 Службы блочного хранилища:

3.2.6 Сетевые агенты:

3.2.7 Службы оркестрации:

3.3 Создание проекта

3.3.1 Как создать проект

Создать проект может только пользователь с правами администратора.

Шаг 1: Выберите пункт "Идентификация" в меню слева, затем подпункт "Проекты". Отобразиться перечень созданных проектов:

Шаг 2: Чтобы создать проект, необходимо кликнуть по кнопке "Создать проект" в правом верхнем углу. В результате отобразится окно создания проекта. Укажите наименование проекта и описание его содержания, после чего выберите следующую вкладку "Участники проекта":

3.3.2 Настройка участников проекта

Шаг 3: Переходим на вкладку "Участники проекта". Здесь необходимо выбрать пользователей, которые будут иметь доступ к проекту:

.

3.3.3 Настройка групп проекта

Шаг 4: Переходим на закладку "Группы" и определяем группы участников проекта, если это необходимо:

3.3.4 Настройка квоты проекта

Шаг 5: Заполнение квот проекта.

В ней мы видим заданные по умолчанию настройки квот (ограничений) проекта. Можно внести изменения в необходимых полях. Например, сразу увеличить размер оперативной памяти (RAM, Mb), выделенной под проект. Для этого введем значение ОЗУ в мегабайтах – 65535, вместо 51200. Изменение этого (или любого другого) параметра можно сделать и позже, по мере разрастания или уменьшения проекта:

Шаг 6: Теперь осталось только нажать кнопку "Создать проект" – и проект будет создан через несколько минут. Перейдите на страницу "Проекты", чтобы увидеть вновь созданный проект в перечне всех проектов.

3.4 Определение метаданных

Метаданные — это параметры для фиксации особенностей инстансов и других компонентов решения, например:

  1. Срок жизни ВМ 1 год
  2. Владелец ВМ - username
  3. Теги

3.4.1 Как импортировать пространство Имен

Шаг 1: Для того чтобы импортировать пространство имен, выберите в левом меню вкладку "Администратор", затем - "Система", "Определения метаданных".

Шаг 2: Выберите источник определения пространства имен.

Шаг 3: Загрузите файл определения метаданных.

Шаг 4: Определите доступность метаданных - "Публичную" или "Защищенную":

  • Публичная: доступен во всех проектах.
  • Защищенная: доступен только для определенных проектов.

Шаг 5: Завершите импорт пространства имен, нажав на кнопку "Импортировать пространство имен".

4. Запуск виртуальной машины Содержание | Термины и определения

4.1 Что такое инстанс?

Инстанс — это виртуальная машина, создаваемая и функционирующая в облачной инфраструктуре.

4.2 Что такое образ, бэкап, снапшот

Образ - установленная и настроенная специальным образом операционная система (шаблон), в которой хранится начальное состояние инстанса.

Бэкап (или backup) - резервная копия диска виртуальной машины, создаваемая регулярно. Позволяет восстановить работоспособность в случае программного или аппаратного сбоя.

Снимок (или snapshot) – это сохранение промежуточного состояния инстанса на определенный момент времени. Как правило, снимок создается для клонирования полностью настроенных ВМ, или для возможности "отката" на стабильное состояние ВМ перед тем, как проделать глобальные или рискованные операции с виртуальной машиной.

4.3 Быстрый запуск инстанса в ОТВ эв3

4.3.1 Как создать инстанс

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

Шаг 1: Выберите пункт "Сеть", далее "Инстансы" в боковом меню управления. Укажите начальное имя хоста для экземпляра, зону доступности для его развертывания и количество разворачиваемых экземпляров. Увеличьте количество для развертывания нескольких одинаковых экземпляров:

После заполнения, нажмите кнопку "Следующая".

4.3.2 Источник инстанса

Источник инстанса - шаблон, используемый при создании инстанса. Можно использовать образ, снимок инстанса (снимок образа), диск или снимок диска (если доступно). Также можно выбрать постоянный тип хранения, создав новый диск.

Шаг 2: В качестве "Источника загрузки" выберите один из 4 вариантов: образ, снимок инстанса, диск и снимок диска.

Образ - это предварительно подготовленный самостоятельно или скачанный с сайта-эмитента имидж загрузочного диска с необходимой операционной системой. Снимок инстанса – это зафиксированное на определенный момент состояние какой-либо ВМ со всеми настройками и данными, которые она содержала на момент создания снимка. Диск – это имидж жесткого диска (см. главу 5 – Диски). Снимок диска – соответственно, снимок диска со всеми изменениями.

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

4.3.3 Выбор типа инстанса

Шаг 3: В зависимости от задач проекта и доступных по квоте ресурсов, определитесь с размером инстанса, выбрав его тип, например, s1.small.

Выбрав тип инстанса, нажмите на кнопку "Следующая".

4.3.4 Выбор сетей для инстанса

Сеть представляет собой канал связи между инстансами в облаке.

Шаг 4: Выберите одну из доступных сетей, из которых в последствии будет доступен инстанс. По умолчанию доступны следующие сети:

Сеть Описание
     
1 selfservice Сеть самообслуживания, собственная сеть проекта.
2 internet Внешняя сеть с публичными ip-адресами.
3 provider Внешняя сеть с внутренними ip-адресами.

Выбрав сеть инстанса, нажмите на кнопку "Следующая".

4.3.5 Настройка сетевых портов при создании инстанса

Сетевые порты обеспечивают дополнительные каналы связи для экземпляров.

Шаг 5: Выберите порты и (или) сети в любом сочетании.

После настройки портов, нажмите кнопку "Следующая".

4.3.6 Выбор группы безопасности

Шаг 6: Назначьте группы безопасности (или иначе firewall) при создании инстанса. Выбранные группы безопасности будут назначены экземпляру ВМ (инстансу).

После выбора группы безопасности, нажмите кнопку "Следующая".

4.3.7 Настройка ключевой пары

Ключевая пара позволяет войти в новый экземпляр инстанса по SSH.

Шаг 7: Назначьте инстансу пару ключей.

Вам доступен выбор как существующей пары ключей (кнопка "Импортировать пару ключей"), так и создание ключевой пары (кнопка " + Создать связку ключей "):

После настройки ключевой пары, нажмите кнопку "Следующая".

4.3.8 Настройка конфигурации

После запуска можно настроить экземпляр с указанными параметрами. "Скрипт настройки" - это аналог "пользовательских данных" в других системах.

Шаг 8: Загрузите скрипт из файла или добавьте его в область "Скрипт настройки" вручную.

Разбиение диска позволяет по скрипту разбивать диск:

После настройки конфигурации нажмите кнопку "Следующая".

4.3.9 Выбор группы серверов

Шаг 9: Выберите группу серверов, иначе говоря, зону доступности, в которой будет размещен инстанс:

После выбора группы серверов, нажмите кнопку "Следующая".

4.3.10 Выбор подсказок планировщика

Этот шаг позволяет добавить подсказки планировщика к вашему инстансу. Вы можете определить подсказки планировщика, перемещая элементы из левой в правую колонку. В левой колонке отображаются определения подсказок планировщика из каталога метаданных Glance. Используя опцию "Custom", вы можете добавлять подсказки планировщика с выбранным Вами ключом:

После выбора подсказок планировщика, нажмите кнопку "Следующая".

4.3.11 Настройка метаданных

На этом этапе в экземпляр можно добавить метаданные. Вы можете указать метаданные ресурса, перемещая элементы из левого столбца в правый. В левом столбце имеются определения метаданных из каталога метаданных Glance. Используйте опцию "Другой" для добавления выбранных Вами ключей.

Шаг 9: Добавьте метаданные:

После добавления метаданных нажмите кнопку "Запустить инстанс".

4.3.12 Справка: типы инстансов

Типы инстансов или, по-другому, шаблоны типов виртуальных машин, определяют объем базовых ресурсов будущих ВМ. На этапе проектирования будущей ВМ необходимо определиться с некоторыми важными требованиями к ресурсам, исходя из их функциональности, прогнозируемых темпов роста, а также ожидаемому быстродействию.

Например, поставлена задача создать ВМ, которая будет выполнять функции сервера 1С Предприятие, сервера баз данных MS SQL и сервера вэб-публикаций. Кроме того, необходимо обеспечить одновременное подключение до 20 программистов и методистов по RDP-протоколу для локального оперативного управления сервисами. Первоначальный объем баз данных MS SQL (их 5 шт.) – 200 Гб.

Проанализировав данные требования, специалист-оператор определил следующие требования к ресурсам:

  1. для обеспечения достаточного быстродействия необходимо не менее шести процессорных ядер;
  2. размер оперативной памяти должен быть не менее 32Gb: из них 10Gb будет выделено под сервер 1С Предприятие, 16Gb – займет сервис баз данных и оставшиеся 6Gb будут задействованы под все остальное;
  3. в качестве ОС будем использовать MS Windows Server 2012, значит под системный диск будет достаточно закрепить 60Gb дискового пространства (рекомендации вендора);
  4. основное хранилище данных будем размещать на внешнем, подключаемом диске, размер которого определим в 400Гб – двукратный запас от текущего размера по ТЗ.

Сразу оговоримся, что 4-й пункт вышеперечисленных требований никак не скажется на определении типа инстанса, т.к. внешний подключаемый диск – это отдельная сущность ВМ. Теперь необходимо проверить, есть ли в нашей инфраструктуре тип инстанса с подобными параметрами. Для этого необходимо войти в панель управления от имени пользователя с правами администратора или переключиться в тот проект, где у текущего пользователя есть права администратора. После перехода в проект, в боковом меню будет доступен расширенный набор пунктов. Нас интересует пункт "Администратор".

Выберите пункт "Типы инстанса". Откроется несортированный список – реестр типов инстансов:

По умолчанию, в списке отображаются 20 строк.

Этот параметр можно поменять в настройках пользователя, рассмотренных нами ранее в главе 3 (параметр – "Элементов на странице). Чтобы было удобнее посмотреть, есть ли нужный нам тип инстанса, можно воспользоваться сортировкой и фильтрацией данных таблицы. Эта два метода применяются в любых подобных ситуациях для работы со списками (таблицами).

Чтобы воспользоваться методом "сортировка" – надо щелкнуть мышью по необходимому заголовку параметра – например "RAM" (количество оперативной памяти). При первом щелчке система установит сортировку таблицы по возрастанию значения параметра, а при повторном – по убыванию.

Для создания нового типа инстанса необходимо нажать кнопку "+ Создать тип инстанса". Появится форма для заполнения параметров. Далее последовательно заполните все поля:

  1. название типа инстанса: m1.srv1
  2. идентификатор инстанса: auto – уникальный ID система присвоит автоматически
  3. количество виртуальных процессорных ядер: 6
  4. размер ОЗУ в мегабайтах: 32768 (желательно в степени двойки – 32*1024=32768)
  5. размер корневого жесткого диска в Гигабайтах: 60
  6. размер временного диска: 0 (не используем)
  7. размер диска для подкачки: 0 (не используем) RX/TX фактор: 1 (по умолчанию).

Дополнительное свойство, которое применяется только в системах на базе Xen или NSX гипервизоров: оно разрешает создание ВМ с различной полосой пропускания относительно присоединенной сети.

После нажатия кнопки "Создать тип инстанса" в систему будет записан новый тип, который сразу не будет доступен в нашем проекте (demo). Чтобы изменить видимость типа инстанса, нажмем кнопку "Изменить тип инстанса". Выберем наш проект и запишем изменения.

Теперь вновь созданный тип инстанса будет доступен в проекте demo. После переключения в проект demo мы сможем создать ВМ на базе типа инстанса m1.srv1.

4.4 Изменение инстансов

Рассмотрим основные операции, которые можно осуществлять с инстансами через панель управления.

4.4.1 Как настраивать созданные инстансы

Шаг 1: Выберите в панели слева вкладку "Вычислительные ресурсы", в ней подраздел "Инстансы".

Отобразится полный перечень инстансов в данном проекте в табличном виде. В данном представлении можно отфильтровать инстансы по требуемому параметрам, например, по имени, статусу и типу инстансов. Для того, чтобы отредактировать инстанс, в столбце "Действия" нажмите на кнопку "Редактировать инстанс" в строке выбранного вами инстанса:

4.4.2 Смена наименования инстанса

Шаг 2: При нажатии на кнопку "Редактировать инстанс" отображается окно с редактированием наименования инстанса.

Измените наименование инстанса, после чего нажмите кнопку "Сохранить".

4.4.3 Изменить тип инстанса

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

Шаг 1: Для создания типа инстансов нажмите на кнопку " + Создать инстанс " в правом углу экрана:

Отобразиться форма изменения типа инстанса.

Внимание!
Смена параметров существующего типа инстанса не приведет к изменениям ранее созданных инстансов, где данных тип инстанса используется. Однако для всех вновь создаваемых инстансов будут применяться измененные параметры.

Мы не рекомендуем создавать новые типы инстансов без предварительного анализа существующего пула ресурсов.

Шаг 2: Заполните поля формы:

  1. Имя типа инстанса.
  2. Количество VCPU
  3. RAM в МБ
  4. Корневой диск в ГБ
  5. Временный диск в ГБ
  6. SWAP диск в МБ
  7. RT/TX Фактор

Шаг 3: Выберите проекты, в которых будут использоваться данные типы инстансов.

Шаг 4: Для завершения редактирования инстанса, нажмите кнопку "Сохранить" в нижнем правом углу.

4.5 Образы

4.5.1 Образы - общее описание

Важнейшим элементом любой виртуальной машины является ее образ (шаблон), в котором хранится начальное состояние инстанса – установленная и настроенная специальным образом операционная система.

Создание и импорт в Вашу систему образов ВМ, в основном, осуществляет администратор центра обработки данных. Здесь мы кратко рассмотрим, как можно импортировать в наш проект заранее подготовленный образ. При этом необходимо учесть, что для добавления образа в систему пользователь demo должен иметь права "admin, user" на проект.

Чтобы посмотреть, какие образы уже есть в системе, необходимо выбрать в левом боковом меню пункты "Вычислительные ресурсы", "Образы":

4.5.2 Создание образа

Шаг 1: Для создания нового образа надо нажать кнопку "Создать образ".

В поле "Название" вводим имя шаблона (обязательно), в поле "Описание" заполняем справочные данные по этому образу. Далее необходимо указать, откуда мы будем брать образ – либо с локального диска, либо с сайта дистрибьютора.

Если в колонке "Публичный" указано "Да", то образ доступен из любого проекта.

Если образ защищен от удаления, то в колонке "Защищенный" стоит значение "Да".

Стандартный формат имиджа – QCOW2, применяется также формат Raw.

В колонке "Размер" отображается реальный размер, который занимает файл образа на системе хранения. Следует отметить, что при создании и подготовке образа следует следить за этим показателем – рекомендуемый размер не должен быть более 10 Гб, иначе время создания ВМ значительно увеличится, а в некоторых случаях создание инстанса на большом по размеру имидже может закончиться неудачей.

4.5.3 Как использовать импортированные образы

Шаг 2: После завершения импорта мы увидим наш новый образ в списке образов текущего проекта.

Чтобы увидеть все публичные образы, необходимо выбрать закладку "Публичный". Теперь мы можем использовать импортированный образ в нашем проекте для создания ВМ:

5. Диски Содержание | Термины и определения

5.1 Обзор дисков

Информация по дискам, доступным в системе, отображается в разделе "Диски" в левом меню:

5.2 Диски - общая информация

Хорошей практикой является создание новых ВМ с применением двух и более дисков:

  1. первый – обязательный системный диск, на котором будет ОС и все минимальное рабочее окружение для нормального функционирования ВМ;
  2. второй и последующие– диски для размещения уникальной информации (данных), как правило большего размера.

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

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

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

5.3 Как создать диск?

Шаг 1: Создать новый диск очень просто: надо выбрать "Вычислительные ресурсы", "Диски", "+ Создать диск" и заполнить поля по аналогии с нижеприведенным примером.

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

Зона доступности - позволяет выбрать, в какой зоне доступности находится диск. Часто используют отдельные зоны доступности для быстрых и медленных данных, а также в зависимости от типа оборудования (если одновременно эксплуатируется не стандартизированное оборудование разного типа или разных вендоров):

5.4 Какие действия доступны с созданным диском?

Рассмотрим, какие действия мы можем совершить с нашим созданным диском.

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

  1. расширить диск;
  2. управление подключениями;
  3. создать снимок;
  4. изменить тип инстанса;
  5. загрузить образ;
  6. создать передачу;
  7. удалить диск.

Рассмотрим их подробнее ниже:

5.5 Как расширить диск?

Расширение диска – это операция увеличения объема диска без потери данных. После увеличения размера диска необходимо задействовать новое пространство средствами операционной системы путем расширения текущего раздела диска или добавления нового раздела на диске, в зависимости от наших целей и задач:

5.6 Как закрепить диск за инстансом?

Для закрепления диска за инстансом выберите пункт "Управление подключениями" в меню действий с диском, отобразится форма "Управление подключением дисков". Закрепите диск за определенным инстансом, воспользовавшись выпадающем списком, после чего не забудьте нажать кнопку "Подключить диск":

.

5.7 Как создать снимок (Snapshot)

Снимок (или snapshot) – это сохранение промежуточного состояния инстанса на определенный момент времени. Как правило, снимок создается для клонирования полностью настроенных ВМ или для возможности "отката" на стабильное состояние ВМ перед тем, как проделать глобальные или рискованные операции с виртуальной машиной.

Действие "Создать снимок" сохраняет текущее состояние диска (данные на диске на текущий момент времени).

Это удобное средство создания резервных копий.

После создания снимок будет отображен на закладке "Снимки дисков":

5.8 Как создать резервную копию, бэкап (Backup)?

Бэкап (или backup) - резервная копия виртуальной машины, создаваемая регулярно. Позволяет восстановить работоспособность виртуальной машины в случае программного или аппаратного сбоя.

Резервные копии диска хранятся, используя сервис хранения объектов. У вас должен быть активирован этот сервис, чтобы создать резервную копию.

Если имя контейнера не предоставлено, будет подготовлен контейнер по умолчанию с именем volumebackups.

Резервные копии такого же размера, что и в оригинальном диске.

Для создания резервной копии выберите пункт меню "Резервная копия" в списке действий с диском, заполните поля в появившейся форме:

5.9 Как изменить тип диска?

Чтобы изменить тип диска, выберите соответствующий пункт "Изменить тип диска" в меню действий с диском.

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

  1. Redundant EBS - три копии данных, размещённых в распределенном блочном хранилище в виде объектов по 4Мб.
  2. Simple - одна копия данных, размещённая на одном из хостов, в блочном хранилище в виде объектов по 4Мб. "Политика миграции" используется только если удалось изменить тип диска. Если выбрана "Политика миграции" по требованию, решение выполнит миграцию диска.

5.10 Как импортировать образ диска?

Образ - установленная и настроенная специальным образом операционная система (шаблон), в которой хранится начальное состояние инстанса. Загрузка диска в службу образов эквивалентно команде cinder upload-to-image.

Чтобы загрузить образ, выберете пункт "Импортировать образ диска" в меню действий с диском. В появившейся форме заполните поля "Имя образа" и выберите "Формат диска" в выпадающем меню. Импорт образа диска на текущий диск начнется после нажатия на кнопку "Загрузить".

Образы дисков создаются с помощью утилиты QEMU disk image:

5.11 Как передать диск?

Передача диска позволяет передавать диск в другой проект.

В левом меню выберите пункт "Диски", затем нажмите на выпадающее меню рядом с кнопкой "Редактировать диск", пункт "Создать передачу диска". Вводим название передачи и жмем "Создать передача диска".

Далее необходимо записать ID передачи и ключ авторизации, который будут сгенерированы автоматически.

После закрытия формы статус диска изменится на ожидание передачи (awaiting-transfer).

Затем необходимо переключиться на проект-рецептор (принимающий) и нажать кнопку "Принять передачу". Система запросит ID и ключ передачи, который мы ранее сохранили:

Принять передачу диска:

5.12 Как изменить метаданные диска?

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

5.13 Как управлять диском?

Для включения управления диском нажмите кнопку "Управлять диском" в разделе "Диски" в левом меню панели управления.

Заполните все поля, обозначенные как обязательные, в появившейся форме. Подсказки в виде вопроса помогут Вам сориентироваться в заполняемой информации:

5.14 Как обновить статус диска?

Обновление статуса диска позволяет установить, используется ли выбранный диск.

Нажмите кнопку "Обновить статус диска" в строке нужного Вам диска в таблице дисков меню "Диски":

5.15 Как мигрировать диск?

Операция необходима для переноса диска Simple с одного узла гиперконвергентной инфраструктуры на другой. "Принудительное копирование" разрешает миграцию на другой узел в обход оптимизации драйвера.

Для миграции диска выберите пункт "Мигрировать диск" в выпадающем списке действий.

6. Сетевые настройки Содержание | Термины и определения

6.1 Сеть и настройка сети

6.1.1 Сеть - обзор

Для просмотра сетевой инфраструктуры проекта необходимо выбрать в меню "Сеть".

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

  1. Сеть provider связывает аппаратные коммутаторы с внутренней сетевой инфраструктурой системы neutron и является проводником (провайдером) всех внутренних сетевых соединений в системе.
  2. Сеть public, обеспечивает связь с внешним миром, эта сеть имеет публичный интернет адрес. Через нее происходит взаимодействие с сетью интернет, если это необходимо для каких-либо виртуальных машин проекта.

6.1.2 Как посмотреть топологию сети?

Для просмотра сетевой топологии, выберите в левом меню пункт "Сеть", подпункт "Сетевая топология". Отобразиться следующее окно:

Для просмотра топологии сети в увеличенном масштабе и с подробностями, нажмите кнопку "Нормальный" под вкладкой "Топология". Отобразиться следующее окно:

Также доступно отображение топологии сети в виде графа, нажмите кнопку "Граф". Отобразиться следующее окно:

6.1.3 Как создать сеть?

Для правильного и безопасного функционирования сетевой инфраструктуры проекта, необходимо создать как минимум одну сеть – внутреннюю сеть проекта. По этой сети, в случае необходимости, можно организовать непосредственную связь всех будущих ВМ проекта между собой.

Нажмите на кнопку "+ Создать сеть" в разделе "Сеть":

Для создания сети система предложит в три этапа ввести все необходимые данные с помощью мастера создания сети.

На первом шаге надо ввести название сети и определить, будет ли она "Общей" (т.е. доступной в других проектах).

Параметр "Административное состояние" можно изначально выставить в DOWN, если не планируется немедленно начать использовать эту сеть.

Заполните имя подсети и CIDR сети.

Здесь также можно принудительно указать шлюз сети (не рекомендуется) или вообще отказаться от использования шлюза.

На третьем шаге определите детальную информацию для подсети.

Здесь можно определить необходимость использования DHCP-сервера для автоматической раздачи IP-адресов в проекте, задать диапазон IP-адресов для выделения, а также прописать статические маршруты к другим сетям, если это необходимо.

После ввода всех необходимых данных – нажмите "Создать". Через несколько секунд будет сообщение об успешном создании сети и наша сеть появится в списке доступных сетей.

6.1.4 Как посмотреть порты, параметры сети и подсети?

Шаг 1: Выберите в меню слева вкладку "Сеть", отобразиться список доступных сетей.

По умолчанию доступны сети "Provider" и "Internet". В данном примере сеть "Selfservice" - сеть проекта.

Шаг 2: Нажмите на наименование сети, отобразиться информация о сети, начальная вкладка "Обзор":

Шаг 3: Для просмотра подсетей, выберите вкладку "Подсети":

Шаг 4: Для просмотра портов сети, выберите вкладку "Порты":

Шаг 5: Для редактирования порта сети, нажмите на кнопку "Редактировать порт":

На данном шаге можно создать связь типа VNIC:

6.1.5 Как создать и настроить маршрутизатор?

Виртуальный роутер проекта будет связывать внутреннюю сеть проекта и общую внутреннюю сеть всей системы (provider).

Выберите в левом меню пункт "Сеть", подпункт "Маршрутизаторы". Отобразиться список всех доступных маршрутизаторов:

Нажмите на кнопку "+ Создать маршрутизатор", выберите сеть, с которой необходимо связать сеть проекта и дать название роутеру. После нажатия кнопки "Создать Маршрутизатор" - он будет создан:

Нажмите на название роутера, чтобы посмотреть его спецификацию. Здесь виден идентификатор созданного коммутатора (ID), идентификатор проекта, статус (активный), административное состояние (UP - включен):

Кроме того, видны уникальные коды сети и подсети и IP-адрес шлюза с сети provider (10.0.2.127). Через этот IP-адрес будут выходить наружу сетевые пакеты. Состояние SNAT: включено:

Необходимо настроить интерфейс, по которому вновь созданный маршрутизатор будет связан с внутренней сетью проекта. Для этого перейдем на закладку "Интерфейсы" и нажмем кнопку "+ Добавить интерфейс". Появится форма добавления интерфейса.

Выберите нужную подсеть в выпадающем списке подсетей и нажать кнопку "Submit". После этого – увидим в списке, что автоматически присвоен IP-адрес интерфейса сети:

6.2 Группы безопасности / Firewall

6.2.1 Firewall / Группы безопасности

При создании проекта генерируется минимальный набор правил безопасности, который разрешает любой исходящий трафик по двух версиям протоколов TCP (v4, v6) и минимальный входящий трафик, который разрешает только подключение из подсети проекта:

Набор правил, называемый default, можно посмотреть выбрав пункт меню "Сеть" –> "Группы безопасности". Этот набор правил можно использовать за основу и, в простейшем варианте, добавлять новые необходимые правила по мере необходимости непосредственно в default. В данной политике безопасности изначально разрешены любые исходящие подключения по любым IP-адресам и портам, а входящий трафик разрешен только в пределах группы default, также по протоколам 4-ой и 6-ой версии IP.

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

Например, если в проекте есть группа ВМ, на которых размещены вэб-сайты, то необходимо создать запись разрешающую доступ из интернета по портам 80 и 443. Кроме того, для контроля доступности этих виртуальных машин командой ping, можно разрешить протокол ICMP. Для сотрудника, отвечающего за проект, настроим доступ к просмотру электронной почты по протоколу IMAPS (порт 993) с его внешнего служебного IP-адреса (212.48.192.12). И еще откроем порт 22 (SSH) для управления ВМ с помощью командной строки.

6.2.2 Как создать группу безопасности?

Выберите в левом меню пункт "Сеть", подпункт "Группы безопасности". Нажмите кнопку "+ Создать группу безопасности" – и введите название нового набора правил. Если необходимо исправить название политики или ее описание необходимо щелкнуть по кнопке выпадающего меню, и выбрать пункт "Редактировать группу безопасности":

6.2.3 Управление правилами файрвола

Для редактирования набора правил – надо нажать кнопку "Управление правилами". Отобразиться таблица, в которой видны правила, разрешающие трафик:

6.2.4 Редактирование групп безопасности

Нажмите на выпадающее меню рядом с кнопкой "Управление правилами" в строке выбранной группы безопасности. Нажмите на кнопку "Редактировать группу безопасности":

6.3 Балансировщик нагрузки

6.3.1 Балансировщики

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

Для просмотра доступных в системе балансировщиков, выберите в левом меню пункт "Сеть", подпункт "Load Balancers". Отобразиться следующая таблица:

6.3.2 Как создать балансировщик нагрузки?

Для создания балансировщика нажмите кнопку " + Create Load Balancer ". Отобразится форма, в которой последовательно нужно заполнить несколько групп полей.

Шаг 1: Укажите наименование балансировщика, добавьте описание и выберите подсеть:

6.3.4 Настройка слушателей

Шаг 2: Настройте параметры сервиса слушателей (Listeners). Заполните название, описание, выберите протокол работы сервиса и порт:

6.3.5 Настройка пула

Шаг 3: Укажите параметры пула. Заполните наименование пула, его описание и выберите Метод в выпадающем меню:

6.3.6 Участники пула

Шаг 4: Настройте участников пула. Укажите IP адреса ВМ, для которых обеспечивается балансировка. Для этого добавьте ВМ из списка доступных ВМ.

Внимание!
Отказоустойчивость обеспечивается в том случае, если ВМ-участники пула располагаются на разных хостах.

6.3.7 Мониторинг балансировщиков

Шаг 5: Настройте мониторинг балансировщиков. Заполните тип мониторинга, интервал, число попыток и таймаут:

6.4 Ключевая пара и правила для сети

6.4.1 Ключевая пара и правила сети - обзор

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

  1. закрытый ключ (private key) известен только его владельцу и никому не передается ни при каких обстоятельствах;
  2. открытый ключ (public key) свободно передается в сертификате и размещается в инстансе, в который предполагается получить защищенный доступ.

Функции удостоверяющего центра выполняет специальный сервис, размещенный в системе.

6.4.2 Как создать ключевую пару

Выберите в левом меню пункт "Сеть", в нем "Ключевые пары", в отобразившемся окне необходимо нажать кнопку "+ Создать ключевую пару" на закладке "Пары ключей". Вслед за этим, будет предложено сохранить на локальном диске файл с именем demo_key.pem, который содержит сертификат закрытого ключа. Загрузка произойдет автоматически. В списке ключей появится только что созданный ключ.

Следует помнить, что этот ключ можно использовать напрямую только из linux/unix систем. Если доступ к виртуальным машинам проекта необходимо осуществлять из рабочих станций Windows, это ключ необходимо сконвертировать в формат putty. Сделать это можно на любой Linux-системе с помощью утилиты puttygen из пакета putty-tools.

6.5 VPN

6.5.1 VPN

Для просмотра VPN в панели управления, выберите в меню слева пункт "Сеть", подпункт "VPN". Отобразиться окно с вкладками по типам VPN:

6.5.2 IPSEC

Просмотр VPN IPSEC:

Для создания IPSEC Policy, нажмите кнопку " + Add IPSec Policy ". Заполните все поля в отобразившемся окне:

6.5.3 Добавить сервис VPN

Для добавления сервиса VPN на вкладке VPN Services нажмите на кнопку " + Add VPN Service ". Заполните имя сервиса, его описание, выберите маршрутизатор и подсеть:

6.5.4 IPSEC SITE подключения

Для добавления сервиса IPSec Site Connections на вкладке IPSec Site Connections нажмите на кнопку " + Add IPSec Site Connections ". Заполните форму, в конце нажмите на кнопку "Добавить":

6.6 Плавающие IP

6.6.1 Общая информация по плавающим IP

Плавающий IP-адрес - это общедоступный статический IP-адрес, который можно назначить инстансу. Он предоставляет собой дополнительный статический адрес, который вы можете использовать для доступа к инстансу, не заменяя и не изменяя первоначальный публичный IP-адрес инстанса:

В панели Сеть:

6.6.2 Выделить плавающий IP для проекта

На этой закладке можно выделить floating ip для проекта. Для того, чтобы, в дальнейшем, получать доступ к управлению созданной ВМ, необходимо присвоить (назначить) этому инстансу конкретный IP-адрес, выделяемый из пула IP-адресов для двух глобальных сетей проекта (public и private):

6.6.3 Подключение плавающего IP по ключу

По умолчанию, первоначальный вход в систему после создания новой ВМ Linux осуществляется исключительно по ключу. Чтобы получить возможность подключения к инстансу по ключу, необходимо сначала обеспечить SSH-доступ – т.е. подключение на порт 22. В правилах безопасности разрешен входящий трафик на порт 22, но это не работает до тех пор, пока ВМ не будет присвоен плавающий IP адрес (floating ip).

6.6.4 Присвоение плавающего IP созданному инстансу

Чтобы присвоить вновь созданному инстансу плавающий ip-адрес, надо выбрать пункт "Связать назначаемый IP" в выпадающем меню "Actions" (Действия). Откроется форма для добавления назначаемого IP-адреса. Нажмем кнопку [+] и выберем сеть из которой нам необходимо выделить плавающий IP-адрес – provider. Если нам нужен публичный (интернет) IP-адрес- то надо выбрать сеть "public".

. После нажатия кнопки "Выделить IP" появится форма с автоматически присвоенным IP-адресом. Осталось только нажать кнопку "Назначить" и данный публичный IP-адрес будет связан с нашим инстансом website:

Теперь можно сделать ping на присвоенный ранее IP и зайти по SSH, используя приватный ключ и логин пользователя.

7. Продвинутые настройки Содержание | Термины и определения

7.1 Справочник по командам API

7.1.1 Создание и управление инстансами

7.1.1.1 Действие:
Создание ВМ
Команда API:
openstack server create 
Синтаксис:
openstack server create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>]
[--noindent] [--prefix PREFIX]
(--image <image> | --volume <volume>) 
--flavor <flavor>
[--security-group <security-group-name>]
[--key-name <key-name>]
[--property <key=value>]
[--file <dest-filename=source-filename>]
[--user-data <user-data>]
[--availability-zone <zone-name>]
[--block-device-mapping <dev-name=mapping>]
[--nic <net-id=net-uuid,v4-fixed-ip=ip-addr,v6-fixed-ip=ip-addr,port-id=port-uuid>]
[--hint <key=value>]
[--config-drive <config-drive-volume>|True]
[--min <count>] [--max <count>] [--wait]
<server-name>
Пример:
openstack server create --image 98ef3b79-e63d-4014-bdd6-fc37ffdef7c4 --flavor 4 --security-group default --key-name sil-omega --nic net-id=f6471e0e-0ac3-4557-b6ed-a60ed5846507 zerno-01
Раздел:
Работа с ВМ
7.1.1.2 Действие:
Просмотр типоразмеров инстанса
Команда API:
openstack flavor list
Синтаксис:
usage: openstack flavor list [-h] [-f {csv,json,table,value,yaml}]
[--max-width <integer>] [--noindent]
[--quote {all,minimal,none,nonnumeric}]
[--public | --private | --all] [--long]
[--marker <marker>] [--limit <limit>]
Пример:
openstack flavor list -c ID -c Name -c RAM -c Disk -c VCPUs
Раздел:
Работа с ВМ
7.1.1.3 Действие:
Создать типоразмер инстанса
Команда API:
openstack flavor create <flavor-name>
Синтаксис:
usage: openstack flavor create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>]
[--noindent] [--prefix PREFIX] [--id <id>]
[--ram <size-mb>] [--disk <size-gb>]
[--ephemeral <size-gb>] [--swap <size-gb>]
[--vcpus <vcpus>] [--rxtx-factor <factor>]
[--public | --private]
<flavor-name>
Пример:
openstack flavor create -ram 1024 --disk 10 --vcpus 2 --public c1.minimal
Раздел:
Работа с ВМ

7.1.2 Управление образами ОС

7.1.2.1 Действие:
Импорт образа по http
Команда API:
glance image-create
Синтаксис:
glance [--version] [-d] [-v] [--get-schema] [--no-ssl-compression] [-f]
[--os-image-url OS_IMAGE_URL]
[--os-image-api-version OS_IMAGE_API_VERSION]
[--profile HMAC_KEY] [--insecure] [--os-cacert <ca-certificate>]
[--os-cert <certificate>] [--os-key <key>] [--timeout <seconds>]
[--os-auth-url OS_AUTH_URL] [--os-domain-id OS_DOMAIN_ID]
[--os-domain-name OS_DOMAIN_NAME]
[--os-project-id OS_PROJECT_ID]
[--os-project-name OS_PROJECT_NAME]
[--os-project-domain-id OS_PROJECT_DOMAIN_ID]
[--os-project-domain-name OS_PROJECT_DOMAIN_NAME]
[--os-trust-id OS_TRUST_ID] [--os-user-id OS_USER_ID]
[--os-username OS_USERNAME]
[--os-user-domain-id OS_USER_DOMAIN_ID]
[--os-user-domain-name OS_USER_DOMAIN_NAME]
[--os-password OS_PASSWORD] [--key-file OS_KEY]
[--ca-file OS_CACERT] [--cert-file OS_CERT]
[--os-tenant-id OS_TENANT_ID] [--os-tenant-name OS_TENANT_NAME]
[--os-region-name OS_REGION_NAME]
[--os-auth-token OS_AUTH_TOKEN]
[--os-service-type OS_SERVICE_TYPE]
[--os-endpoint-type OS_ENDPOINT_TYPE]
Пример:
glance image-create --name "Cirros 0.3.3" --disk-format qcow2 --container-format bare --visibility public --os-distro
http://download.cirros-cloud.net/0.3.3/cirros-0.3.3-x86_64-disk.img
Раздел:
Образы ВМ
7.1.2.2 Действие:
Импорт образа из файла на локальном диске
Команда API:
glance image-create
Синтаксис:
см. ранее
Пример:
glance --os-image-api-version 2 image-create --name 'Fedora-24-x86_64' --protected false --progress --visibility public --disk-format qcow2 --container-format bare --file Fedora-Cloud-Base-24-1.2.x86_64.qcow2
Раздел:
Образы ВМ
7.1.2.3 Действие:
Просмотр списка образов
Команда API:
glance image-list
Синтаксис:
glance image-list [--limit <LIMIT>]
[--page-size <SIZE>]
[--visibility <VISIBILITY>]
[--member-status <MEMBER_STATUS>] [--owner <OWNER>]
[--property-filter <KEY=VALUE>]
[--checksum <CHECKSUM>] [--tag <TAG>]
[--sort-key {name,status,container_format,disk_format,size,id,created_at,updated_at}]
[--sort-dir {asc,desc}] [--sort <key>[:<direction>]]
Пример:
glance image-list
Раздел:
Образы ВМ
7.1.2.4 Действие:
Просмотр подробной информации об образе
Команда API:
glance image-show <image_uuid>
Синтаксис:
glance image-show [--human-readable] [--max-column-width <integer>] <IMAGE_ID>
Describe a specific image.

Positional arguments:

 <IMAGE_ID>            ID of image to describe.
Optional arguments:

 --human-readable      Print image size in a human-friendly format.
 --max-column-width <integer>
                       The max column width of the printed table.

Пример:
glance image-list
Раздел:
Образы ВМ

7.1.3 Работа с проектами

7.1.3.1 Действие:
Создание проекта
Команда API:
openstack project create
Синтаксис:
openstack project create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>]
[--noindent] [--prefix PREFIX]
[--domain <domain>] [--parent <project>]
[--description <description>]
[--enable | --disable]
[--property <key=value>] [--or-show]
<project-name>
Пример:
openstack project create --domain default --enable project_alpha
Раздел:
Работа с проектами
7.1.3.2 Действие:
Добавление пользователя в проект
Команда API:
openstack user create <user_name>
Синтаксис:
openstack user create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>] [--noindent]
[--prefix PREFIX] [--domain <domain>]
[--project <project>]
[--project-domain <project-domain>]
[--password <password>]
[--password-prompt]
[--email <email-address>]
[--description <description>]
[--enable | --disable] [--or-show]
<name>
Пример:
openstack user create --project alpha dmitry
Раздел:
Работа с проектами
7.1.3.3 Действие:
Назначение квот в проекте
Команда API:
openstack quota set -- properties <properties> <project>
Синтаксис:
openstack quota set [-h] [--class] [--properties <properties>]
[--ram <ram>] [--secgroup-rules <secgroup-rules>]
[--instances <instances>] [--key-pairs <key-pairs>]
[--fixed-ips <fixed-ips>] [--secgroups <secgroups>]
[--injected-file-size <injected-file-size>]
[--floating-ips <floating-ips>]
[--injected-files <injected-files>]
[--cores <cores>]
[--injected-path-size <injected-path-size>]
[--gigabytes <gigabytes>] [--volumes <volumes>]
[--snapshots <snapshots>]
[--volume-type <volume-type>]
<project/class>
Пример:
Установить максимальное количество ВМ для проекта default равное 30: openstack quota set --instances 30 default
Раздел:
Работа с проектами

7.1.4 Работа с сетями

7.1.4.1 Действие:
Создание сети
Команда API:
openstack network create
Синтаксис:
usage: openstack network create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>]
[--noindent] [--prefix PREFIX]
[--share | --no-share] [--enable | --disable]
[--project <project>]
[--project-domain <project-domain>]
[--availability-zone-hint <availability-zone>]
<name>
Пример:
openstack network create --enable --no-share --project demo --description 'Demo network for functional test' --project-domain default --internal --no-default --provider-network-type vxlan --tag test demo_test
Раздел:
Сеть
7.1.4.2 Действие:
Создание подсети
Команда API:
openstack subnet create
Синтаксис:
usage: openstack subnet create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>]
[--fit-width] [--print-empty] [--noindent]
[--prefix PREFIX] [--project <project>]
[--project-domain <project-domain>]
[--subnet-pool <subnet-pool> | --use-default-subnet-pool]
[--prefix-length <prefix-length>]
[--subnet-range <subnet-range>]
[--dhcp | --no-dhcp] [--gateway <gateway>]
[--ip-version {4,6}]
[--ipv6-ra-mode {dhcpv6-stateful,dhcpv6-stateless,slaac}]
[--ipv6-address-mode {dhcpv6-stateful,dhcpv6-stateless,slaac}]
--network <network>
[--allocation-pool start=<ip-address>,end=<ip-address>]
[--dns-nameserver <dns-nameserver>]
[--host-route destination=<subnet>,gateway=<ip-address>]
name
Пример:
openstack subnet create \
--network demo_test \ --project demo \ --project-domain default \ --subnet-range 172.27.117.0/24 \ --dhcp \ --gateway auto \ --ip-version 4 \ --allocation-pool start=172.27.117.100,end=172.27.117.199 \ --dns-nameserver 8.8.8.8 \ --dns-nameserver 10.0.0.3 \ --host-route destination=192.168.200.0/24,gateway=192.168.200.1 \ --tag test_subnet \ --description 'Demo subnet for functional test' \ demo_subnet
Раздел:
Сеть
7.1.4.3 Действие:
Просмотр списка сетей
Команда API:
openstack network list
Синтаксис:
usage: openstack network list [-h] [-f {csv,json,table,value,yaml}]
[-c COLUMN] [--max-width <integer>] [--noindent]
[--quote {all,minimal,none,nonnumeric}]
[--external] [--long]
Пример:
openstack network list
Раздел:
Сеть
7.1.4.4 Действие:
Просмотр списка подсетей
Команда API:
openstack subnet list
Синтаксис:
usage: openstack subnet list [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN]
[--max-width <integer>] [--noindent]
[--quote {all,minimal,none,nonnumeric}] [--long]
Пример:
openstack network list
Раздел:
Сеть
7.1.4.5 Действие:
Запретить сеть
Команда API:
openstack network set
Синтаксис:
openstack -h network set
usage: openstack network set [-h] [--name <name>] [--enable | --disable]
[--share | --no-share]
<network>
Пример:
openstack network set --disable
Раздел:
Сеть
7.1.4.6 Действие:
Разрешить сеть
Команда API:
openstack network set
Синтаксис:
openstack -h network set
usage: openstack network set [-h] [--name <name>] [--enable | --disable]
[--share | --no-share] <network>
Пример:
openstack network set --enable
Раздел:
Сеть
7.1.4.7 Действие:
Расшарить сеть
Команда API:
openstack network set
Синтаксис:
openstack -h network set
usage: openstack network set [-h] [--name <name>] [--enable | --disable]
[--share | --no-share] <network>
Пример:
openstack network set --share
Раздел:
Сеть
7.1.4.8 Действие:
Удалить сеть
Команда API:
openstack network delete <network-id>
Синтаксис:
usage: openstack network delete [-h] <network> [<network> ...]
Пример:
openstack network delete internal
Раздел:
Сеть
7.1.4.9 Действие:
Посмотреть параметры сети
Команда API:
openstack network show <network-id>
Синтаксис:
usage: openstack network show [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>] [--noindent] [--prefix PREFIX] <network>
Пример:
openstack network show internal
Раздел:
Сеть
7.1.4.10 Действие:
Посмотреть параметры подсети
Команда API:
openstack subnet show <network-id>
Синтаксис:
usage: openstack subnet show [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>] [--noindent] [--prefix PREFIX] <subnet>
Пример:
openstack subnet show internal_subnet
Раздел:
Сеть
7.1.4.11 Действие:
Удалить подсеть
Команда API:
openstack network delete <subnet-id>
Синтаксис:
usage: openstack subnet delete [-h] <subnet>
Пример:
openstack subnet delete internal_subnet
Раздел:
Сеть
7.1.4.12 Действие:
Создать маршрутизатор
Команда API:
openstack router create <router-name>
Синтаксис:
usage: openstack router create [-h] [-f {json,shell,table,value,yaml}]
[-c COLUMN] [--max-width <integer>]
[--noindent] [--prefix PREFIX]
[--enable | --disable] [--distributed]
[--project <project>]
[--availability-zone-hint <availability-zone>]
[--project-domain <project-domain>]
<name>
Пример:
openstack router create --enable --distributed --no-ha --project demo --project-domain default --tag test_router --description 'Test router' demo_router
Раздел:
Сеть
7.1.4.13 Действие:
Удалить маршрутизатор
Команда API:
openstack router delete <router-name>
Синтаксис:
usage: openstack router delete [-h] <router> [<router> ...]
Delete router(s) positional arguments:
 <router>    Router(s) to delete (name or ID)
optional arguments:
 -h, --help  show this help message and exit
Пример:
openstack router delete demo_router
Раздел:
Сеть
7.1.4.14 Действие:
Присоединение публичного интерфейса на маршрутизатор
Команда API:
openstack router set
Синтаксис:
--disable]
[--distributed | --centralized]
[--route destination=<subnet>,gateway=<ip-address> | --clear-routes]
<router>
Set router properties positional arguments:
 <router> Router to modify (name or ID)
optional arguments:
 -h, --help            show this help message and exit
 --name <name>         Set router name
 --enable              Enable router
 --disable             Disable router
 --distributed         Set router to distributed mode (disabled router only)
 --centralized         Set router to centralized mode (disabled router only)
 --route destination=<subnet>,gateway=<ip-address>
                       Routes associated with the router. Repeat this option
                       to set multiple routes. destination: destination
                       subnet (in CIDR notation). gateway: nexthop IP
                       address.
 --clear-routes        Clear routes associated with the router
Пример:
openstack router set --external-gateway provider --enable-snat demo_router
Раздел:
Сеть
7.1.4.15 Действие:
Удаление публичного интерфейса из маршрутизатора
Команда API:
neutron router-gateway-clear <router-name>
Синтаксис:
usage: neutron router-gateway-clear [-h] [--request-format {json}] ROUTER
Remove an external network gateway from a router.
positional arguments:
 ROUTER                ID or name of the router.
optional arguments:
 -h, --help            show this help message and exit
 --request-format {json}
DEPRECATED! Only JSON request format is supported.
Пример:
neutron router-gateway-clear demo_router
Раздел:
Сеть
7.1.4.16 Действие:
Включение маршрутизатора
Команда API:
openstack router set –enable <router-name>
Синтаксис:
--disable]
[--distributed | --centralized]
[--route destination=<subnet>,gateway=<ip-address> | --clear-routes]
<router>
Пример:
openstack router set –enable demo_router
Раздел:
Сеть
7.1.4.17 Действие:
Присоединение интерфейса проекта на маршрутизатор
Команда API:
openstack router add subnet <router-name> <subnet>
Синтаксис:
syntax
Пример:
openstack router add subnet demo_router demo_subnet
Раздел:
Сеть
7.1.4.18 Действие:
Просмотр роутера
Команда API:
openstack router show <router-name>
Синтаксис:
usage: openstack router show [-h] [-f {json,shell,table,value,yaml}]
[c COLUMN] [--max-width <integer>] [--noindent]
[--prefix PREFIX]
<router>
Пример:
openstack router show demo_router
Раздел:
Сеть
7.1.4.19 Действие:
Просмотр списка роутеров
Команда API:
openstack router list
Синтаксис:
usage: openstack router list [-h] [-f {csv,json,table,value,yaml}] [-c COLUMN]
[--max-width <integer>] [--noindent]
[--quote {all,minimal,none,nonnumeric}] [--long]
Пример:
openstack router list
Раздел:
Сеть

7.2 Доступ к API

API: общая информация

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

7.3 Резервное копирование

7.3.1 Резервные копии и бэкапы - общая информация

Резервная копия представляет собой полную копию виртуальной машины. Резервные копии необходимо создавать регулярно - это позволяет восстановить работоспособность виртуальной машины в случае программного или аппаратного сбоя.

7.3.2 Как создать резервную копию

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

7.4 Лицензии Windows, RDS/RDP, 1C и MS SQL

Лицензии на ПО иных вендоров в состав поставки не входят и требуют отдельного лицензирования в соответствии с лицензионной политикой правообладателя.

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

Термины и определения Содержание

API:
набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) или операционной системой для использования во внешних программных продуктах.
FIP:
(Floating IP) адрес привязываемый к интерфейсу виртуальной машины для объединения закрытой части приватного облака и локальной вычислительной сети организации
HTTP:
Hyper Text Transfer Protocol
RDP:
(Remote Desktop Protocol) протокол подключения к удаленному рабочему столу Windows операционных систем
SDN:
(Software Define Networking) программно-определяемая сеть
SDS:
(Software Define Storage) программно-определяемая система хранения
SSH:
(Secure Shell) защищенный протокол подключения к консоли управления *NIX операционных систем
VNC:
Virtual Network Console система удаленного доступа к рабочему столу по протоколу RFB (Remote Frame Buffer).
VPN:
(Virtual Private Network) виртуальная частная сеть
Администратор:
сотрудник, должностные обязанности которого подразумевают обеспечение штатной работы парка компьютерной техники, сети и программного обеспечения.
Виртуализация:
предоставление набора вычислительных ресурсов или их логического объединения, абстрагированное от аппаратной реализации, и обеспечивающее при этом логическую изоляцию друг от друга вычислительных процессов, выполняемых на одном физическом ресурсе.
ВМ:
Виртуальная машина
Гипервизор:
программное обеспечение обеспечивающее одновременное, параллельное выполнение нескольких операционных систем на одном и том же хост-компьютере.
Инстанс:
Экземпляр виртуальной машины в терминологии Amazon AWS.
Каталог приложений:
набор опубликованных шаблонов приложений, предназначенных для развертывания силами пользователя, без знания специфики того, как эти приложения устанавливаются и настраиваются.
Кластер (англ. cluster — скопление, кисть, рой):
объединение нескольких однородных элементов, которое может рассматриваться как самостоятельная единица, обладающая определёнными свойствами.
Нагрузочное тестирование (англ. load testing):
подвид тестирования производительности, сбор показателей и определение производительности и времени отклика программно-технической системы или устройства в ответ на внешний запрос с целью установления соответствия требованиям, предъявляемым к данной системе.
НИОКР:
Научно-Исследовательская и Опытно-Конструкторская Работа.
Окружение:
совокупность настроек определенной информационной среды, включающих в себя: операционная система, набор установленных пакетов, настройки сети, конфигурационные файлы.
Паравиртуализация:
(англ. Paravirtualization) техника виртуализации, при которой гостевые операционные системы подготавливаются для исполнения в виртуализированной среде, для чего их ядро незначительно модифицируется. Операционная система взаимодействует с программой гипервизора, который предоставляет ей гостевой API, вместо использования напрямую таких ресурсов, как таблица страниц памяти, код, касающийся виртуализации, локализуется непосредственно в операционную систему
Пользователь:
лицо или организация, которое использует действующую систему для выполнения конкретной функции
Разработчик:
специалист, занимающийся разработкой программного обеспечения, и способный реализовать любой проект от стадии замысла до её реализации техническими средствами.
Сервис:
модуль программы отвечающий за определенный набор действий или операций.
СПО:
свободное программное обеспечение
Среда:
логический объект для группировки приложений в одно развертывание.
Утилизация ресурсов:
представляет собой процент всех доступных ресурсов, который в данный момент задействован для выполнения полезной работы, а не находится в режиме ожидания. При этом служебные задачи в данный процент не входят.
Функциональное тестирование:
тестирование ПО в целях проверки реализуемости функциональных требований, то есть способности ПО в определённых условиях решать задачи, нужные пользователям или заложенные в техническое задание разработки.

Вопросы и ответы Содержание

А) Проблемы и решения

а) Не работает создание ВМ ошибка 500 timed out

Описание проблемы: При попытке создания инстанса из ПУ horizon или командой API - процесс надолго затягивается, и через некоторое время возникает ошибка создания:

Failed to create instance, Nova api error timed out
error: Timed out waiting for a reply to message ID

Решение: Эта ошибка возникает вследствие рассинхронизации RabbitMQ кластера. В типовом варианте решения OVT ev3 кластер сервера очередей состоит из трех служебных ВМ: RBMQ-0001, RBMQ-0002, RBMQ-0003. Запрос на выполнение поступает в очередь на одном узле, а при обращении к другому члену кластера - его не видно. По этой причине очередь запросов начинает нарастать, а выполнение запросов не выполняется.

Размер очереди можно посмотреть следующей командой:

rabbitmqctl list_queues | wc -l

Система настроена таким образом, что только узел RBMQ-0001 хранит все настройки кластера на диске, а RBMQ-0002 и RBMQ-0003 являются ведомыми и содержат настройки в оперативной памяти (RAM). Это хорошо видно, если дать команду rabbitmqctl cluster_status

root@RBMQ-0002:/# rabbitmqctl cluster_status
Cluster status of node 'rabbit@RBMQ-0002' ...
[{nodes,[{disc,['rabbit@RBMQ-0001']},
{ram,['rabbit@RBMQ-0003','rabbit@RBMQ-0002']}]},
{running_nodes,['rabbit@RBMQ-0003','rabbit@RBMQ-0001','rabbit@RBMQ-0002']},
{cluster_name,<<"hci">>},
{partitions,[]},
{alarms,[{'rabbit@RBMQ-0003',[]},
         {'rabbit@RBMQ-0001',[]},
         {'rabbit@RBMQ-0002',[]}]}]

Таким образом, для того, чтобы восстановить нормальную работу кластера сервера очередей, надо сначала остановить все узлы в обратном порядке: 3,2,1 а затем запустить их, обязательно начиная с первого узла (RBMQ-0001). После этих действий создание инстансов будет происходить в штатном режиме.

б) Ошибка импорта имиджа в glance

Описание проблемы: При попытке импорта нового образа возникает следующая ошибка:

 Error finding address for http://10.20.30.2:9292/v2/images/321f4aff-2f2e-476b-97a5-ba9f13426ccc/file: Unable to establish connection to http://10.20.30.2:9292/v2/images/321f4aff-2f2e-476b-97a5 9f13426ccc/file: [Errno 32] Broken pipe

Сообщение "Broken pipe" говорит о том, что происходит попытка записи образа в файл, для которого ОС уже закрыла сокет.

Решение: Надо проверить права на директорию /var/lib/glance/images - должно быть glance:glance Обычно эта ошибка возникает, т.к. права на этот каталог: root:root

После смены прав надо перестартовать службы glance-api, glance-registry на всех контейнерах CMPT. Сервис начнет работать. "Застрявшие" в очереди образы надо удалить штатной API-командой:

 openstack image delete 

И повторно их импортировать:

 glance --os-image-api-version 2 image-create --name  --protected false --progress --visibility public --disk-format qcow2 --container-format bare --file 

После этого образ появится в списке доступных для работы.