Назад | Перейти на главную страницу

настройка кластера

У меня есть 5 компьютеров, подключенных к локальной сети через коммутатор.
Я хочу соединить их в кластер HPC. ОС может быть любой версией Linux (в настоящее время я установил Ubuntu 8.10, 9.10 и Fedora 10).
Назначение кластера
1. Выполнить мой код C, разработанный с использованием OpenMP, и обеспечить высокую производительность.
2. Чтобы действовать как кластер балансировки нагрузки для моего динамического веб-документа JSP, который я разработал.

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

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

Мы будем благодарны за любую помощь.

Спасибо и привет

Я не думаю, что вы можете делать то, что хотите, с OpenMP. OpenMP разработан для программирования с общей памятью. Одним из примеров этого является использование нескольких ядер и / или процессоров на одной машине. Кластер (по крайней мере, типичные кластеры, сделанные из стандартного оборудования) представляют собой распределенную память. Обычно для программирования этих типов машин используется MPI.

Существует несколько решений для управления кластерами распределенной памяти. Я знаком с xcat и Вервульф. Обычно в этих типах систем есть очередь заданий, которая запускает задания на свободных узлах. Если узел выходит из строя, любое задание, использующее этот узел, вероятно, завершится ошибкой, но задания будут по-прежнему планироваться на оставшихся узлах.

Если вы просто хотите запускать простые приложения и не хотите, чтобы ваш кластер работал круглосуточно, 7 дней в неделю, вам следует использовать PelicanHPC для мгновенного создания HPC. pareto.uab.es/mcreel/PelicanHPC Просто загрузите PelicanHPC с главного узла и загрузите другие компьютеры по сети. Руководство: http://pareto.uab.es/mcreel/PelicanHPC/Tutorial/PelicanTutorial.html

Я бы посмотрел на GridEngine (любой из вариантов). Его легко установить в Ubuntu, и он отлично поддерживает запуск множества приложений с использованием одних и тех же ресурсов. Вы можете назначить разные очереди для разных типов приложений и даже подчиненные очереди, чтобы задачи с более высоким приоритетом могли вытеснять с узлов задачи с более низким приоритетом.

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

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

Установите "Беовульф" с довольно хорошей системой очередей

Может ты мог бы пойти с Группы горных пород, дизайн распределения, соответствующий потребностям вашей первой точки. Он в основном используется в научной среде и относительно легко настраивается на нескольких узлах (PXE). Он также содержит готовое программное обеспечение, такое как несколько реализаций MPI (OpenMPI, mpich, ...) и Sun Grid Engine. Весь дистрибутив основан на CentOS / RHEL, поэтому, если вы уже знакомы с Fedora, у вас не должно возникнуть проблем при установке.