Кластерный хостинг
Если сравнивать массовый хостинг с кластерным, то можно выделить следующие преимущества: маcштабируемость и отказоустойчивость. Маcштабируемость означает, что при максимальной посещаемости вашего веб-проекта, нагрузка распределяется равномерно на все узлы кластера, за счет чего достигается быстрая загрузка страниц вашего сайта. Отказоустойчивость обеспечивает работоспособность всего кластера, даже при выходе одного или нескольких узлов из строя. Таким образом, ваши клиенты смогут в любое время получить доступ к ресурсу.
Технологически кластер представляет собой объединение нескольких серверов со схожими свойствами. Каждый сервер, входящий в кластер, называется узлом или нодой (от англ. node). При этом для клиентов все узлы кластера выглядят как единый сервер.
Существует два вида кластеров:
- Кластер высокой доступности (High-availability cluster)
- Кластер с балансировкой нагрузки (Load balancing cluster)
Кластер высокой доступности обычно используется для кластеризации баз данных и других служб. Главной задачей кластеров высокой доступности является обеспечение бесперебойной работы этих служб. В случае выхода из строя одного из узлов, другой принимает на себя все его функции. Этим достигается отказоустойчивость, но не обеспечивается масштабируемость.
Кластер с балансировкой нагрузки в первую очередь предназначен для распределения нагрузки между узлами кластера. Он состоит из узлов, обрабатывающих запросы пользователей, и узла-балансировщика. Узел-балансировщик распределяет запросы пользователей между обрабатывающими их узлами, что позволяет избежать повышенной нагрузки на одном из них.
Для построения масштабируемых решений используются кластера с балансировкой нагрузки.
Для создания надежного кластерного хостинга необходимо совместить обе эти технологии.
Элементы кластера:
- Общее файловое хранилище
- Балансировщик (несколько машин, построенных по технологии кластера высокой доступности)
- Серверы HTTP/FTP/баз данных
Общее файловое хранилище используется для хранения данных пользователей и предоставляет всем узлам кластера доступ к этим данным. Файловое хранилище является самым важным элементом кластера, поэтому мы выбрали решение от компании NetApp, лидера на рынке систем хранения данных.
Различия между массовым хостингом и кластерным наиболее очевидны в нестандартной ситуации, например, в случае когда выходит из строя какая-то служба или сервер.
Схема работы массового хостинга
Рассмотрим работу сайта, размещенного на сервере массового хостинга:
- Стандартная ситуация, когда все работает, действия происходят в следующем порядке:
- Клиент запрашивает страницу сайта
- Cервер получает запрос и выполняет PHP-скрипты
- PHP-скрипты обращаются к базе данных и, после получения ответа, формируют html-страницу
- Сервер отсылает страницу клиенту
- Нестандартная ситуация - не работает служба http, база данных или сервер:
- Клиент запрашивает страницу сайта
- Сервер не отвечает на запрос клиента, и клиент получает сообщение о невозможности отобразить страницу
Схема работы кластерного хостинга
Пусть кластер состоит из узлов А, B, C и D.
- Схема стандартной ситуации — все работает.
- Клиент запрашивает страницу сайта
- Балансировщик получает запрос и определяет, что в данный момент менее всего загружен сервер A
- Сервер A получает запрос и выполняет PHP-скрипты
- PHP-скрипты обращаются к базе данных, которая находится на сервере D и, после получения ответа формируют html-страницу
- Сервер A отсылает страницу клиенту
- Схема нестандартной ситуации — вышли из строя сервера A и D
- Клиент запрашивает страницу сайта
- Балансировщик получает запрос и определяет, что сервера A и D вышли из строя, а менее загружен в данный момент из двух оставшихся серверов — сервер С
- Сервер С получает запрос и выполняет PHP-скрипты
- PHP-скрипты обращаются к базе данных. Так как сервер D недоступен, его функции выполняет сервер С. Получив ответ от базы данных на сервере C, PHP-скрипты формируют html-страницу
- Сервер С отсылает страницу клиенту
В ближайшее время Хостинг-Центр планирует ввести новые тарифы хостинга на кластерной технологии.














