Московский государственный университет имени М.В.Ломоносова
Опубликован: 16.06.2008 | Доступ: свободный | Студентов: 778 / 161 | Оценка: 4.39 / 3.96 | Длительность: 07:59:00
Специальности: Программист
Лекция 2:

Нужен кластер. С чего начать?

< Лекция 1 || Лекция 2 || Лекция 3 >
Аннотация: Данная лекция посвящена следующим вопросам: для чего строится кластер, на основе какого бюджета, для каких целей, какой класс задач будет доминировать, размещение и использование кластера, составление проекта кластерной системы. Приведены примеры.

Итак, будем предполагать, что к настоящему моменту появились две главные составляющие: есть задачи и желание использовать собственную кластерную вычислительную систему. Сформировалось четкое представление, для чего строится кластер, на основе какого бюджета, каких целей мы хотим достичь, какие стратегические задачи предприятия с его помощью нужно решить, какой класс вычислительных задач будет доминировать. Есть понимание того, планируется ли развитие кластерного проекта в будущем или же речь идет о разовой акции. Все эти вопросы важны и чем точнее удастся сформулировать ответы, тем эффективнее будет реализован проект в целом. Безусловно, поскольку Вы уже задумались о кластере, то какой-то вариант ответов наверняка есть, но важно от "какого-то" варианта перейти к четким формулировкам и попытаться отразить его на бумаге. Поверьте, нюансов здесь много, и стоит потратить день на размышления, чтобы потом иметь годы спокойной работы.

Поскольку речь пойдет о выборе системы с необходимым уровнем производительности, сразу начнем с неожиданного вопроса: "А нужен ли кластер в классическом виде вообще?". В настоящее время начинают выпускаться компактные, но исключительно производительные системы, сопровождение которых не сильно отличается от администрирования обычных систем. В конце 2006 года корпорация Tyan Computer (http://www.tyan.com/) объявила о выпуске "персонального суперкомпьютера" Tyan Typhoon T600, построенного на основе четырехядерных процессоров Intel Xeon серии 5300. Параметры системы: пиковая производительность 256 Гфлопс, энергопотребление 1400 Вт, низкий уровень шума, размеры обычной рабочей станции, и все это при вполне доступной цене - есть над чем задуматься... Будем предполагать, что такие альтернативы уже рассматривались, но по некоторым причинам были отклонены и чаша весов склонилась в пользу кластерных решений.

Определившись с общими целями, выберите для себя оптимальный способ размещения и использования будущего кластера. Казалось бы, о чем тут размышлять: купил кластер, поставил и используй. Тем не менее, уже на этом этапе можно предложить несколько различных вариантов реализации проекта.

Установка кластера на своей территории. В настоящее время это самый распространенный вариант работы с кластерными системами. Его основное преимущество состоит в том, что кластер будет находиться полностью под Вашим контролем и управлением. Это важный аргумент, который часто перевешивает все остальные доводы. По такому пути, в частности, в 2005 году пошло научно-производственное объединение "Сатурн" (г. Рыбинск), разместившее у себя мощный кластер IBM из 128 процессоров Intel Xeon EM64T 3,6 ГГц вместе со всей связанной с ним информационно- вычислительной инфраструктурой.

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

Установка кластера на чужой площадке предполагает, что принадлежащий Вам кластер будет физически располагаться на территории другой организации. Вся работа с кластером будет проходить в удаленном режиме через сеть. Если внешняя сеть быстрая, то пользователи никакой разницы между этим и предыдущим вариантом не заметят. Преимущество второго подхода заключается в том, что нет необходимости в подготовке и обслуживании помещения собственными силами. Дополнительными аргументами такого варианта размещения часто служат более низкие тарифы на электроэнергию и ставки аренды помещений. Именно в таком режиме используется 152-процессорный кластер компании Paradigm Geophysical, расположенный на площадях центра кластерных технологий компании "Т-Платформы" (http://www.t-platforms.ru/).

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

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

Свои специалисты для сопровождения кластерных систем в удаленном режиме все равно потребуются, но степень их квалификации теперь будет напрямую зависеть от объема обязательств, взятых на себя специалистами удаленной площадки.

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

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

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

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

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

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

Правильный подход к делу предполагает отдельный бюджет на обслуживание и содержание кластера. По статистике в среднем около 5-7% стоимости кластера в год будет уходить на техническое обслуживание, проведение регламентных работ и замену неисправного оборудования. Плюс регулярное обновление лицензий на программное обеспечение. Плюс содержание обслуживающего персонала.

Не забывайте про расход электроэнергии, который для кластера может быть весьма существенным. При этом энергопотребление кластера будет заведомо выше потребления электроэнергии таким же числом обычных персональных компьютеров: вычислительные нагрузки выше, мощность используемого серверного оборудования почти всегда больше мощности персональных машин, кластерные системы почти всегда работают в круглосуточном режиме. Рассмотрим простой пример. Пусть кластер состоит из 10 узлов IBM eServer хЗОбт, потребляющих 150 Вт каждый, такого же управляющего узла и коммутатора Cisco Catalyst 2960G-24ТС (мощность 75 Вт). Суммарная потребляемая мощность составит: 150*10+150+75=1725 Вт. За 30 суток работы потребление составит 24*30*1,725=1242 кВтч. Нужно учесть, что кроме собственно кластера, электроэнергия будет потребляться климатическими системами и любым другим элементом кластерной инфраструктуры. Набегает немало. Энергопотребление кластера СКИФ Cyberia составляет 90 кВт, а всего суперкомпьютерного комплекса в целом - 115 кВт. Впечатляет, но не удивляет: все параметры рекордных по производительности систем намного выше среднего, а СКИФ Cyberia в начале 2007 года занял первую строчку в списке Тор50 самых мощных компьютеров СНГ.

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

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

И последнее. При всей внешней доступности нельзя забывать, что кластер - это сложная, высокотехнологичная вычислительная система, требующая правильного сопровождения и грамотного использования. Кадры, кадры, кадры... Исключительно серьезный вопрос, и об этой проблеме нужно задуматься чуть ли не в первую очередь. Недостающее оборудование можно быстро купить, а квалифицированного специалиста нужно готовить в течение длительного времени. Дополнительная сложность заключается в том, что параллельные вычислительные технологии долго оставались в тени ставших за 50 лет привычными последовательных методов работы с компьютерами. Ситуация меняется, но пройдут годы, пока создание параллельных программ станет нормой программистского мира. А пока как администраторов, так и прикладных специалистов нужно готовить к новой технике, к новым методам программирования, к новым понятиям и технологиям. И их нужно подготовить до того, как кластер будет поставлен.

< Лекция 1 || Лекция 2 || Лекция 3 >