Развертывание сайта в VMware Cloud Director
Один из сценариев работы в виртуальной инфраструктуре — развертывание сайта. В этом разделе рассмотрим, как сделать это с помощью VMware Cloud Director, и на конкретном примере разберем все шаги развертывания и особенности настройки.
- Кому будет полезно
-
Вы не работали с VMware Cloud Director и хотите узнать о его основных возможностях.
-
Вы хотите рассмотреть настройку сервисов Edge Gateway на примере конкретной задачи.
-
Вы еще не работали с готовыми приложениями для бизнеса, но хотите начать использовать их.
- Что есть в инструкции
-
Развертывание сайта, состоящего из следующих VM:
-
веб-сервер — передает статические и динамические страницы клиентам;
-
база данных — хранит и обрабатывает поступающую в нее информацию.
Для создания VM используются шаблоны приложений для бизнеса: веб-сервер Nginx и база данных MySQL.
-
-
Создание сетей для обмена трафиком внутри виртуального ЦОД.
-
Настройка доступа к веб-серверу по протоколу HTTP из браузера, а также возможности подключиться по протоколу SSH.
-
Подключение базы данных к веб-серверу и размещение данной VM в изолированной сети в целях безопасности.
- Чего нет в инструкции
- Что необходимо для настройки
Инструкция будет полезна, если:
IP-ареса и топология в примере использованы для демонстрации. В работе вы можете использовать собственные структуры, которые подходят под ваши задачи.
Настройка серверов внутри гостевой ОС не рассматривается.
В инструкции описана настройка с нуля, без предварительно настроенных сетей и сервисов Edge Gateway. Чтобы повторить рекомендации на этой странице достаточно наличие виртуального ЦОД, внешнего IP-адреса и доступа к готовым приложениям для бизнеса, если вы планируете их использовать.
Для развертывания сайта выполните следующие шаги:
Шаг 1. Проверка наличия шаблонов серверов
Вы можете использовать:
-
Собственные шаблоны приложений в формате ova/ovf — перед началом работы загрузите их в каталог.
-
Готовые приложения для бизнеса — перед началом работы убедитесь, что необходимые шаблоны есть в списке шаблонов.
Шаг 2. Создание веб-сервера
Виртуальную машину (VM), которая будет выполнять роль веб-сервера, разместим в vApp (термин платформы Облако VMWare). В будущем это позволит масштабировать сервис за счет добавления в vApp новых VM с той же функцией веб-сервера и настройки балансировки нагрузки между ними.
С этой же целью сделаем выделение IP-адреса по DHCP. При добавлении новых веб-серверов не нужно будет каждый раз вручную назначать IP-адреса.
Создайте vApp «Web-Servers» c VM «WS-1» из заранее настроенного шаблона веб-сервера. В примере использован шаблон Nginx с предустановленным LEMP-стеком: Linux, Nginx, MySQL и PHP — все предварительно настроено и готово к работе.
Шаг 3. Создание Routed-сети
Пока веб-сервер создается, создайте маршрутизируемую (Routed) сеть и настройте в ней DHCP Pool.
-
Создайте Routed-сеть для подключения веб-сервера к Edge Gateway.
Параметры Routed-сети -
Определите DHCP Pool в настройках Routed-сети, чтобы веб-сервер мог получать IP-адрес по протоколу DHCP.
Параметры DHCP Pool
Шаг 4. Назначение Routed-сети веб-серверу
Чтобы назначить веб-серверу созданную Routed-сеть, подключите ее к vApp, а затем к VM. Проверьте получение IP-адреса через консоль веб-сервера.
-
Убедитесь, что vApp «Web-Servers» и VM «WS-1» выключены, т. е. в статусе «Powered Off».
(Если нет) В карточке vApp нажмите ACTIONS → Power → Power Off.
-
Назначьте Routed-сеть vApp «Web-Servers».
-
Назначьте Routed-сеть VM «WS-1»:
Параметры назначения -
В карточке vApp нажмите ACTIONS → Power → Start.
-
Откройте консоль VM и авторизуйтесь в системе. Логин и пароль по умолчанию отображаются в консоли виртуальной машины.
-
Убедитесь, что VM получила IP-адрес 192.168.0.2 по DHCP. Чтобы это проверить, выполните в консоли:
ip addrЕсли VM не получила IP-адрес, перезапустите ее. В карточке vApp нажмите ACTIONS → Power → Power Off, затем ACTIONS → Power → Power On.
Шаг 5. Настройка сервисов Edge Gateway (Firewall и NAT)
Настройте правила Firewall и NAT, обеспечивающие прохождение трафика North-South между веб-сервером и интернетом.
Перед настройкой скопируйте внешний IP-адрес, он понадобится далее. См. Где указан внешний IP-адрес виртуального ЦОД?
-
Создайте IP Set, которые понадобятся при создании правил Firewall.
-
IP Set для внешнего IP-адреса.
Параметры IP Set -
Создайте IP Set для Routed-cети.
Параметры IP Set
с. Создайте IP Set для веб-сервера.
Параметры IP Set -
-
Создайте правила Firewall для управления входящим и исходящим трафиком Edge Gateway.
Рекомендуем выбирать короткие и понятные названия правил, чтобы в будущем быстро понимать их суть. Это особенно важно, если правил Firewall много, или если настройкой сервисов Edge Gateway занимаются несколько сотрудников.
-
Создайте правило, пропускающее трафик из Routed-сети в интернет:
Параметры правила Firewall -
Правило для работы с веб-сервером по SSH:
Параметры правила Firewall -
Правило для доступа к веб-серверу из браузера по протоколу HTTP:
Параметры правила Firewall
-
-
Создайте правила SNAT и DNAT для сетевой связности с внешней сетью.
-
Создайте SNAT-правило для трансляции трафика из Routed-сети на внешний IP.
Параметры правила SNAT -
Создайте DNAT-правило для доступа к веб-серверу по SSH.
Параметры правила DNAT -
Создайте DNAT-правило для трансляции HTTP-трафика со внешнего IP-адреса на веб-сервер.
Параметры правила DNAT
-
Шаг 6. Настройка SSH-сервера
Выполните этот шаг, если используете готовые приложения для бизнеса. Если вы используете собственные шаблоны ova/ovf, рекомендуем убедиться в корректности настроек SSH-сервера на веб-сервере. При попытке SSH-подключения может возникать ошибка «Connection refused».
В готовых приложениях для бизнеса по умолчанию отключен SSH-сервер и аутентификация по паролю. Отредактируйте конфигурационный файл и перезапустите службу SSH:
-
Откройте консоль VM и авторизуйтесь в системе. Логин и пароль по умолчанию отображаются в консоли виртуальной машины.
-
Откройте файл конфигурации SSH в текстовом редакторе:
sudo vi /etc/ssh/sshd_config -
Нажмите клавишу Insert, чтобы перейти в режим редактирования.
-
Раскомментируйте или добавьте строку:
PasswordAuthentication yes -
Измените параметр «PermitRootLogin» с «no» на «yes»:
PermitRootLogin yes -
Нажмите клавишу Esc, чтобы выйти из режима редактирования.
-
Нажмите ZZ, чтобы сохранить файл.
-
Перезапустите службу SSH, чтобы изменения вступили в силу:
systemctl restart sshd
Шаг 7. Проверка доступа к веб-серверу
-
Параметры для проверки
-
Введите внешний IP-адрес виртуально ЦОД в браузере. Если все настроено правильно, отобразится стартовая страница веб-сервера. Для готовых приложений для бизнеса появится страница с надписью «Congratulations!».
Если доступ не появляется:
-
Убедитесь, что VM подключена к Routed-сети и получила адрес по DHCP.
-
Проверьте корректность правил Firewall и NAT.
-
Убедитесь что SSH-сервер на VM включен и корректно настроен.
Шаг 8. Создание базы данных
Создайте базу данных, которая будет подключаться к веб-серверу по внутренней Isolated-сети. Если для создания веб-сервера вы использовали шаблон Nginx, в нем уже есть MySQL в составе LEMP-стека — можно использовать его.
Новая виртуальная машина создается с целью продемонстрировать безопасную конфигурацию, в которой доступ к базе данных из внешней сети можно получить только через SSH-подключение к веб-серверу.
Создайте vApp «Database Servers» c виртуальной машиной «DB-1» из заранее настроенного шаблона базы данных. В примере использован шаблон MYSQL.
Шаг 9. Создание Isolated-сети
Создайте Isolated-сеть для подключения базы данных к веб-серверу.
Шаг 10. Назначение Isolated-сети базе данных
-
Убедитесь, что vApp «Database Servers» с VM «DB-1» выключены. (Если нет) В карточке vApp нажмите ACTIONS → Power → Power Off.
-
Назначьте Isolated-сеть vApp «Database Servers».
-
Назначьте Isolated-сеть VM «DB-1»:
Параметры назначения -
В карточке vApp нажмите ACTIONS → Power → Start.
-
Откройте консоль VM и авторизуйтесь в системе. Логин и пароль по умолчанию отображаются в консоли виртуальной машины.
-
Убедитесь, что VM получила IP-адрес 172.16.0.3. Чтобы это проверить, выполните в консоли:
ip addrЕсли VM не получила IP-адрес, перезапустите ее.
Шаг 11. Назначение Isolated-сети веб-серверу
Повторите описанную выше процедуру назначения Isolated-сети для vApp «Web-Servers» и VM «WS-1». В случае с веб-сервером машине добавляется второй сетевой адаптер (NIC). Настройка отличается в IP-адресе: веб-серверу необходимо присвоить 172.16.0.2.
У веб-сервера появляется два виртуальных адаптера, он подключен к сетям:
-
Routed — для передачи страниц и другого контента;
-
Isolated — для обмена трафиком исключительно с базой данных.
После сохранения настроек запустите веб-сервер. В карточке vApp нажмите ACTIONS → Power → Start.
Шаг 12. Проверка доступа к базе данных
Подключитесь по SSH к веб-серверу или откройте сессию, созданную на предыдущих шагах. Проверьте доступ к базе данных:
ping 172.16.0.3
В такой конфигурации Isolated-сеть может обмениваться данными только с Routed-сетью через веб-сервер, а база данных не имеет прямого доступа к внешним сетям.
- Шаг 1. Проверка наличия шаблонов серверов
- Шаг 2. Создание веб-сервера
- Шаг 3. Создание Routed-сети
- Шаг 4. Назначение Routed-сети веб-серверу
- Шаг 5. Настройка сервисов Edge Gateway (Firewall и NAT)
- Шаг 6. Настройка SSH-сервера
- Шаг 7. Проверка доступа к веб-серверу
- Шаг 8. Создание базы данных
- Шаг 9. Создание Isolated-сети
- Шаг 10. Назначение Isolated-сети базе данных
- Шаг 11. Назначение Isolated-сети веб-серверу
- Шаг 12. Проверка доступа к базе данных