Высокая готовность облака HP Helion OpenStack
При переносе бизнес-критичных приложений в облако необходимо обеспечить их непрерывную работу и защитить их от сбоев на уровне оборудования или программного обеспечить. При использовании классических серверных технологий для высокой доступности используются отказоустойчивые кластеры и резервирование основных компонентов серверов и систем хранения, устраняющее единичные точки отказа. Посмотрим, как высокая доступность реализована в облаке HP Helion OpenStack.
Высокая доступность в облачной среде HP Helion OpenStack реализуется по трем направлениям: высокодоступные облачные сервисы, отказоустойчивая инфраструктура облака и поддерживающие облачные технологии нагрузки «арендаторов» (tenant) облака, т.е. сервис-провайдеров, предоставляющие услуги облака конечным пользователям.
Начнём описание применяемых решений высокой доступности с нагрузок арендаторов облака. Арендаторам необходимо самим обеспечить постоянную доступность приложений, которые они развертывают в облаке для своих клиентов, используя распределенные по разным зонам доступности виртуальные машины и передавая на них сетевой трафик с помощью балансировщиков нагрузки.
Для улучшения доступности приложений можно объединять виртуальные машины в отказоустойчивые кластеры. Аналогичным образом, инфраструктура, на которой развернуто само облако (физические серверы, системы хранения и сетевое оборудование), должна быть постоянно доступной. Наконец, провайдеру облака необходимо обеспечить высокую доступность основных сервисов облака и API-интерфейсов облака (Horizon, Keystone, Nova, Neutron, Cinder, Swift). Для этого применяется репликация контроллеров основных сервисов и их данных, что обеспечивает отказоустойчивость плоскости (control plane) облака. Например, для каждой инсталляции на отдельных физических серверах развертываются три отдельных контроллера верхнего облака, между которыми происходит автоматическая репликация.
Также программная кластеризация и репликация применяются для обеспечения высокой доступности базы данных, обработки сообщений и прокси-сервера web-трафика, поэтому если один контроллер верхнего облака выйдет из строя, то все его нагрузка будет перенаправлена на другой контроллер верхнего облака. Кластер Active-Active гарантирует непрерывную работу облака и его пользователей даже в случае неисправности одного из серверов, обслуживающего сервисы облака. Резервирование применяется и для серверов хранилищ объектов Starter Swift — для высокой доступности нужно минимум два сервера. Программное обеспечение Swift выполняет репликацию данных между эти серверами для резервирования объектов Swift между двумя серверами.
Для блочных сервисов хранения Cinder на основе программно-определяемых хранилищ HPVSA высокая доступность обеспечивается с помощью трехузлового кластера, соединяющего серверы, на которых развертывается VSA. Также при развертывании Cinder на дисковом массиве HP 3PAR можно применять разработнные для него технологии отказоустойчивости.
Высокая доступность в HP Helion OpenStack может быть реализована по нескольким сценариям. Высокая доступность в сочетании с балансировкой нагрузки применяется в четырех аспектах облака. Во-первых, в пользовательском интерфейсе (UI) OpenStack Horizon применяется технология балансировки нагрузки «слипшихся сессий» (Sticky Session Load Balancing). Horizon — это сервис без сохранения состояния (stateless). С помощью функции session stickiness гарантируется, что ресурсы конкретных пользователей будут привязаны только к web-сессии соответствующего пользователя.
Следующая область, где реализуется высокая доступность — это API-интерфейсы сервисов (API сервисов Nova, Cinder и т.п). Для них в OpenStack используется балансировка нагрузки по модели Round Robin с использованием программного обеспечения HAProxy. Следующая область, где реализуется высокая доступность, — это механизм обмена сообщениями RabbitMQ с применение зеркалирования по схеме Master — Master. Наконец, для обеспечения высокой доступности базы данных MySQL используется программное обеспечение кластеризации Galera Cluster, которое реализует синхронную репликацию между узлами многоузлового кластера. Galera Cluster защищает MySQL от потери данных, обеспечивает высокую доступность и легкое масштабирование по мере увеличения объема данных.
Таким образом, для предотвращения сбоев в работе HP Helion OpenStack применяется «многоэшелонная» защита на основе многократного дублирования критичных компонентов облака, сочатающая как стандартные технологии OpenStack, так и собственные разработки HP, и гарантирующая высокую доступность развернутых в облаке бизнес-приложений.
Спасибо за внимание, готовы ответить на ваши вопросы. Другие публикации про HP Helion читайте по ссылкам в блоке «Похожие публикации» ниже.