Особенности кластерного хостинга

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

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

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

Как работает надежный хостинг?

У большинства хостинг-провайдеров реализована следующая система - на каждом из серверов провайдера размещаются сайты и электронная почта некоторого кол-ва клиентов (обычно 300-500 клиентов), и все запросы к конкретному сайту обрабатываются на сервере, где расположен сайт (иногда отдельные задачи, такие как обработка почты и баз данных, выносятся на отдельные сервера). Работоспособность каждого сайта ограничена вычислительными ресурсами конкретного сервера и потребностями других сайтов, расположенных на том же сервере. При такой схеме в случае выхода сервера из строя или проведения на нем ремонтных работ все расположенные там сайты будут недоступны.

Что же остается? Можно использовать один сервер для нескольких клиентов, что и делают многие хостеры. Веб-сервер на платформе Intel может обработать не один десяток обращений в секунду, а если этого недостаточно, то можно использовать более мощные и масштабируемые сервера от Sun, IBM или Hewlett-Packard. К сожалению, системы, в которых можно постепенно наращивать количество процессоров, стоят довольно дорого, а в случае установки дополнительных серверов возникает проблема усложнения системы управления хостингом.

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

Кластер хостинга – это объединенные в единую систему сервера и дополнительное оборудование, которые функционируют как единое целое.

Кластеры, которые организованы у некоторых других хостинг-провайдеров, например, у провайдера Хостинговые телесистемы, основаны на принципе балансировки нагрузки (Load balancing). При такой схеме файлы всех сайтов расположены на одном сервере (так называемом файловом хранилище), запросы ко всем сайтам выполняются группой «простых» серверов, при этом в каждый момент времени система определяет, какой из серверов в данный момент наименее загружен, и направляет очередной запрос туда. Плюс этой схемы в том, что при выходе из строя любого их «простых» серверов все сайты продолжат работать, нагрузка от всех сайтов будет распределяться между оставшимися рабочими серверами. Минусы в том, что уязвимыми частями такой системы являются файловое хранилище и сервер, распределяющий нагрузку. При выходе из строя одной из этих частей вся система хостинга перестает работать.

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

Особенности кластерного хостинга

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

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


2008 © Computer repair