Поиск по сайту:

Как создавать, развертывать и запускать виртуальные машины в OpenStack


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

Требования

  1. Установите OpenStack в RHEL и CentOS 7.
  2. Настройка сетевой службы OpenStack

Шаг 1. Выделение плавающего IP-адреса для OpenStack

1. Прежде чем развертывать образ OpenStack, сначала необходимо убедиться, что все его части находятся на своих местах, и мы начнем с выделения плавающего IP-адреса.

Плавающий IP-адрес обеспечивает внешний доступ из внешних сетей или Интернета к виртуальной машине Openstack. Чтобы создать плавающие IP-адреса для своего проекта, войдите в систему, используя свои учетные данные пользователя, и перейдите в раздел Проект -> Вычислить -> Доступ и Безопасность -> вкладка Плавающие IP-адреса и нажмите Выделить IP для проекта.

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

Шаг 2. Создайте образ OpenStack

2. Образы OpenStack — это просто виртуальные машины, уже созданные сторонними разработчиками. Вы можете создавать свои собственные образы на своем компьютере, установив ОС Linux на виртуальную машину с помощью инструмента виртуализации, такого как KVM, VirtualBox, VMware или Hyper-V.

После установки ОС просто преобразуйте файл в необработанный формат и загрузите его в свою облачную инфраструктуру OpenStack.

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

  1. CentOS 7 – http://cloud.centos.org/centos/7/images/
  2. CentOS 6 – http://cloud.centos.org/centos/6/images/
  3. Fedora 23 – https://download.fedoraproject.org/pub/fedora/linux/releases/23/Cloud/
  4. Ubuntu – http://cloud-images.ubuntu.com/
  5. Debian – http://cdimage.debian.org/cdimage/openstack/current/
  6. Windows Server 2012 R2 – https://cloudbase.it/windows-cloud-images/#download

Официальные образы дополнительно содержат пакет cloud-init, который отвечает за пару ключей SSH и внедрение пользовательских данных.

В этом руководстве мы развернем тестовый образ для демонстрационных целей на основе облегченного образа облака Cirros, который можно получить, перейдя по следующей ссылке http://download.cirros-cloud.net/0.3.4/.

Файл изображения можно использовать непосредственно по HTTP-ссылке или загрузить локально на свой компьютер и загрузить в облако OpenStack.

Чтобы создать образ, перейдите на веб-панель OpenStack, выберите Project -> Compute -> Images и нажмите Кнопка Создать изображение. В окне изображения используйте следующие настройки и нажмите Создать изображение, когда закончите.


Name: tecmint-test
Description: Cirros test image
Image Source: Image Location  #Use Image File if you’ve downloaded the file locally on your hard disk
Image Location: http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-i386-disk.img 
Format: QCOWW2 – QEMU Emulator
Architecture: leave blank
Minimum Disk: leave blank
Minimum RAM: leave blank
Image Location: checked
Public: unchecked
Protected: unchecked

Шаг 3. Запустите экземпляр образа в OpenStack.

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

Перейдите в Проект -> Экземпляры и нажмите кнопку Запустить экземпляр, после чего появится новое окно.

4. На первом экране добавьте имя для своего экземпляра, оставьте Зону доступности на nova, используйте количество экземпляров и нажмите кнопку Далее. продолжать.

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

5. Затем выберите «Изображение» в качестве Источника загрузки, добавьте тестовое изображение Cirros, созданное ранее, нажав +. и нажмите Далее, чтобы продолжить.

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

7. Наконец, добавьте одну из доступных сетей OpenStack в свой экземпляр с помощью кнопки + и нажмите Запустить экземпляр, чтобы запустить виртуальную машину.

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

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

9. Чтобы проверить сетевое подключение вашей активной виртуальной машины, выполните команду ping по плавающему IP-адресу экземпляра с удаленного компьютера в вашей локальной сети.

10. Если с вашим экземпляром проблем нет и команда ping прошла успешно, вы можете удаленно войти в систему через SSH на своем экземпляре.

Используйте утилиту экземпляра View Log, чтобы получить учетные данные Cirros по умолчанию, как показано на снимках экрана ниже.

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

Чтобы решить эту проблему, сначала остановите экземпляр и перейдите в Проект -> Сеть -> Сети и отредактируйте нужную подсеть, нажав Сведения о подсети.

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

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


vi /etc/nova/nova.conf

Измените следующую строку, чтобы она выглядела следующим образом:


ram_allocation_ratio=3.0

Вот и все! Хотя эта серия руководств только прикоснулась к огромному числу OpenStack, теперь у вас есть базовые знания, позволяющие создавать новых клиентов и использовать реальные образы ОС Linux для развертывания виртуальных машин в собственной облачной инфраструктуре OpenStack.