Главная Контакты В избранное
  • Билеты на экзамен по информатике

    АвторАвтор: student  Опубликовано: 9-12-2020, 21:28  Комментариев: (0)

    41. Примеры систем управления кластерами (Condor, Microsoft Compute Cluster Server)

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

    1.Возможно сохранение только одиночных процессов. Все процессы, порожденные посредством вызовов FORK и EXEC, не сохраняются.

    2.Сохраняемый процесс не может использовать сигналы.

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

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

    Ключевые особенности системы:

    – Создание контрольных точек с возможностью миграции заданий между процессами

    – Возможность интеграции в Grid

    – Поддержка широкого круга архитектур и операционных систем

    – Использование для вычислений не только выделенных машин, но и рабочих станций

     

    MicrosoftCCS: Сравнительно новая система управления кластером. Первая система управления, предназначенная исключительно для Windows

    Ключевые особенности системы:

    – Наличие параллельного отладчика MPI – программ

    – Автоматическое освобождение ресурсов при аварийной остановке задания

    – Интеграция с средствами администрирования Windows Server.

    Управление может осуществляться через графический командный, программный интерфейсы. Выполняют планирование задач, руководствуясь следующей схемой. Каждой задаче в приложении ставится в соответствие некоторый приоритет. Чем больше приоритет, тем выше должна быть реактивность задачи. Высокая реактивность достигается путём реализации подхода приоритетного вытесняющего планирования, суть которого заключается в том, что планировщику разрешается останавливать выполнение любой задачи в произвольный момент времени, если установлено, что другая задача должна быть запущена незамедлительно. Если две задачи одновременно готовы к запуску, но первая обладает высоким приоритетом, а вторая низким, то планировщик отдаст предпочтение первой. Большую часть времени основная масса задач заблокирована. Только одна задача может выполняться на центральном процессоре в текущий момент времени

     

     

     

     

    42. Планировщики заданий, функции и принципы их работы

    Планировщик задач—программа, часто называемая сервисомоперационной системы, которая запускает другие программы в зависимости от различных критериев, как, например:

    ·наступление определённого времени;

    ·переход операционной системы в определённое состояние (бездействие, спящий режим ит.д.);

    ·поступление запроса от администратора через пользовательский интерфейс или черезинструменты удалённого администрирования.

    Самые простые алгоритмы принимают решение о выделении ресурсов основываясь на текущем состоянии очереди: когда на кластере освобождается достаточное число ресурсов, их занимает следующая задача. Наиболее часто применяется алгоритм обратного заполнения. Данный алгоритм использует данные не только о текущем состоянии очереди, но и проводит процесс планирования, определяя требования к ресурсам на протяжении определенного времени. Стратегия Best Fit производит поиск задачи максимально покрывающей доступные ресурсы, стратегия First Fit ищет ближайшую задачу способную поместиться в доступные ресурсы.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    43. Алгоритм Backfilling

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

    ·Первая стадия алгоритма обратного заполнения – составление расписания для наиболее приоритетных N задач с учетом пользовательской оценки требуемого времени

    ·В расписании образуются окна. В эти периоды процессоры ожидают начала выполнения запланированных заданий

    ·Вторая стадия алгоритма – заполнение образовавшихся окон менее приоритетными и менее требовательными к ресурсам задачами

    ·Таким образом, алгоритм Backfilling старается обеспечить максимальную загрузку кластера в каждый момент времени

    При подсчете приоритетов может использоваться следующая информация:

    – Приоритет пользователя (например, преподаватель и студент)

    – Приоритет, который пользователь поставил своей задаче

    – Время ожидания запуска

    – Число задач, запущенных пользователем за последний день/неделю/месяц

    – Предположительное время выполнения задачи

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    44.Многосерверные Web-сайты

    Конфигурация web-сайта из нескольких машин.

    Запросы от клиентов поступают на один из нескольких серверов. Этот сервер обрабатывает пришедший запрос и, если требуется, считывает данные из базы данных, или пишет в нее. Если какой-либо из web-серверов зависает, другие сервера просто принимают на себя дополнительные запросы. Эта конфигурация:

    1)обеспечивает распределение нагрузки (load balancing) в том смысле, что нагрузка по обработке запросов распределяется между несколькими серверами;

    2)обеспечивает отказоустойчивость системы (fault tolerance) в том смысле, что при выходе из строя одной машины сам web-сайт не выходит из строя.

     

    45. Проблемы распределения нагрузки и отказоустойчивости

    В Интернете каждому IP-адресу соответствует одна машина. Как можно распределять нагрузку между несколькими машинами так, чтобы они извне выглядели как один единственный web-сайт?" При конфигурации с одной машиной, на все HTTP-запросы всегда отвечает одна и та же машина. В конфигурации с несколькими машинами все схемы распределения нагрузки между ними используют маршрутизацию (routing), при которой каждый последующий HTTP-запрос передается на (потенциально) другую машину.

    46. Схемы распределения нагрузки

    Самыми распространенными подходами для организации динамического распределения нагрузки являются:

    - круговой DNS, когда для распределения нагрузки используется DNS-сервер;

    - аппаратное распределение нагрузки, когда используется прибор, схожий по своим функциям с маршрутизатором;

    - программное распределение нагрузки, например, продукт "TCP/IP Network Load Balancing" от Microsoft;

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

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    47. Круговой DNS

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

    Round robin DNS — один из методов распределения нагрузки, или отказоустойчивости за счёт избыточности количества серверов, с помощью управления ответами DNS-сервера в соответствии с некой статистической моделью. В простейшем случае Round robin DNS работает, отвечая на запросы не только одним IP-адресом, а списком из нескольких адресов серверов, предоставляющих идентичный сервис. Порядок, в котором возвращаются IP-адреса из списка, основан на алгоритме round-robin. С каждым ответом последовательность ip-адресов меняется. Как правило, простые клиенты пытаются устанавливать соединения с первым адресом из списка, таким образом разным клиентам будут выданы адреса разных серверов, что распределит общую нагрузку между серверами.

    Круговая система DNS часто используется для распределения нагрузки территориально распределённых веб-серверов. Когда один пользователь получает доступ к главной странице, он будет направлен на первый адрес IP. Второй пользователь, обращающийся к главной странице, будет отправлен на следующий адрес IP, а третий пользователь будет отправлен на третий адрес IP. В каждом случае, когда IP-адрес выдается, он отправляется в конец списка. Четвертый пользователь, следовательно, будет отправлен вновь на первый адрес IP, и так далее.

    Недостатки

    Хотя Round robin DNS (RR DNS) легко реализовать, всё же этот алгоритм имеет несколько проблематичных недостатков, связанных с кэшированием записи в иерархии RR DNS самого себя, а также с кэшированием на стороне клиента, выданного адреса и его повторного использования, сочетание которых трудно управляемо. RR DNS не опирается на доступность услуг. К примеру, если сервис на одном из адресов недоступен, RR DNS будет продолжать раздавать этот адрес и клиенты будут по-прежнему пытаться соединиться с неработающим сервером.

    Не существует учёта соответствия IP-адреса пользователя и его географического расположения, времени выполнения, нагрузки на сервер, перегрузки сети и т.д. Круговая система DNS нагрузки лучше всего подходит для услуг с большим количеством равномерно распределенных соединений с серверами эквивалентной мощности. В противном случае он просто делает распределение нагрузки.

    Кроме того, при такой схеме у вас возникнут проблемы:

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

    - с SSL-соединениями

    - с поддержкой сессий

     

     

     

     

     

     

     

     

     

    48. Аппаратное распределение нагрузки

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

    Все запросы пользователей, адресованные на определенный URL проходят через распределитель. К нему подключается группа web-серверов, которые ведут себя, как один сервер. Эта конфигурация называется кластером. Для всего внешнего мира весь кластер серверов имеет один IP-адрес.

    С некоторым упрощением можно считать, что при получении TCP/IP пакетов предназначенных для кластера, распределитель делает следующее:

    - принимает решение, какому из серверов кластера следует направить следующий запрос;

    - опрашивает (или оценивает, наблюдая за трафиком) все сервера и приложения (т.е. определенный TCP/IP порт) - доступны ли они;

    - в некоторых случаях проверяет, возвращает ли сервер корректные данные. Это особенно критично в тех случаях, когда сервер отвечает, но вот в ответ он все время выдает "HTTP Error 404";

    - переделывает IP-заголовок пакета так, что он уходит определенному серверу. Эта переделка называется "преобразованием сетевого адреса";

    - отправляет клиентский пакет на сервер;

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

    Таким образом, web-сервер будет способен функционировать до тех пор, пока будет работать хотя бы одна серверная машина в кластере.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    49. Программное распределение нагрузки

    При программном распределении нагрузки на каждый сервер ставится особое программное обеспечение, которое завязывает сервера в единый кластер с единым IP-адресом. Этот IP-адрес и присваивается доменному имени сайта. Каждой машине присваивается свой идентификатор в кластере от 1 до 32 (максимальное число машин в кластере 32). Кроме того, назначается весовой коэффициент, так как машины могут иметь разный объем ресурсов, и устанавливается набор правил.

    При установке распределителя, между TCP/IP стеком и драйвером сетевой карты внедряется программный фильтр, который определяет, какой из серверов должен обработать запрос и только определенный сервер отвечает на запрос. Поскольку этот распределитель является программой, у него больше средств объективно оценивать способности машины обработать запрос. Ему доступным процент загрузки процессора, объем свободной памяти, и объем свободного места на диске и т.п. Так как принцип работы построен на фильтрации пакетов, а не на преобразовании их заголовков, программный распределитель работает быстрее, чем аппаратный.

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

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

    50. Смешанные схемы

    На практике встречаются также смешанные схемы, когда работают вместе аппаратные и программные распределители нагрузки. Например, всистеме может использоваться один аппаратный распределитель нагрузки (и еще один запасной) и два кластера серверов, в которых используются программные распределители нагрузки. Аппаратный распределитель «не знает» о том, что за двумя IP-адресами скрывается целая группа машин. Точно также, каждый из кластеров «не догадывается» о существовании своего соседа. Используя смешанную схему можно легко превысить предел в 32 машины, устанавливаемый программным распределителем.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    51. Проблема привязки и варианты ее решения, в частности на основе механизма cookies

    "Привязка" означает, что по началу сессии клиент направляется на любую машину, и на протяжении всей сессии поддерживает соединение только с ней.

    pic4-9

    Рисунок 5. Привязка пользователя к определенному серверу

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

    Другая проблема, возникающая при привязке - это отказоустойчивость. Если привязать пользователя к определенной машине, то теряет смысл наличие дополнительных машин. Например, если сервер А зависнет или "упадет", все операции и данные пользователей A и B будут потеряны.

    Решение проблемы привязки

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

    Инициатором записи cookieвыступает сервер. Если в ответе сервера присутствует поле заголовка Set-cookie, клиент воспринимает это как команду на запись cookie. В дальнейшем, если клиент обращается к серверу, от которого он ранее принял поле заголовка Set-cookie, помимо прочей информации он передает серверу данные cookie. Для передачи указанной информации серверу используется поле заголовка cookie.

     

     

     

     

     

     

     

     

     

     

     

     

     

    52. Обеспечение отказоустойчивости кластеров многопоточной обработки

    "Кластеры высокой готовности" (HA, High Availability), "кластеры 24 х 7" (24 часа 7 дней в неделю) или "кластеры 365 х 24".

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

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

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

    Таким образом, все подсистемы кластера имеют резервирование, поэтому при отказе любого элемента кластер в целом останется в работоспособном состоянии. Более того, замена отказавшего элемента возможна без остановки кластера.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    53. Системы DAS,SAN,NAS.

    DAS(direct-attached storage) — устройство внешней памяти, напрямую подсоединенное к основному компьютеру и используемое только им. Простейший пример DAS — встроенный жесткий диск. Для связи хоста с внешней памятью в типовой конфигурации DAS используется SCSI, команды которого позволяют выделить определенный блок данных на специфицированном диске или смонтировать определенный картридж в ленточной библиотеке.

    Системы типа DASсостоят из накопителя (например жёсткого диска), соединенного с компьютером адаптером контроллера шины. Между ними нет сетевого устройства (концентратора, коммутатора или маршрутизатора), и это основной признак DAS.

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

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

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

    Преимущества

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

    Другим преимуществом является возможность загружать сервера прямо из сети хранения.

    NAS

    В отличие от SAN, NAS (network attached storage) — не сеть, а сетевое устройство хранения, точнее, выделенный файловый сервер с подсоединенной к нему дисковой подсистемой.

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

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

    54. Области применения SANи NAS

    Основные области применения SAN — организация высокоскоростного резервного копирования без участия сервера/ЛВС, консолидация разделяемых ресурсов массовой памяти с высокой степенью масштабирования, создание отказоустойчивых систем массовой памяти с высокой степенью доступности.

    Поскольку NAS-серверы оптимизированы для работы с файлами, основными приложениями для таких устройств являются Web, CAD/CAM, системы управления документами, поддержание файловых архивов. Также NAS-устройства оптимально решают проблему разделяемого доступа к файлам клиентов, использующих различные ОС.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    55. Интерфейсы подсистем хранения (SCSI,iSCSI,FibreChannel)

    SCSI (Small Computer Systems Interface) (системный интерфейс для малых компьютеров) – интерфейс, разработанный для объединения на одной шине различных по своему назначению устройств, таких как жёсткие диски, накопители на магнитооптических дисках, стримеры, сканеры и т.д. Интерфейс предназначен для соединения устройств различных классов: памяти прямого и последовательного доступа, CD-ROM, оптических дисков однократной и многократной записи, устройств автоматической смены носителей информации, принтеров, сканеров, коммуникационных устройств и процессоров. Применяется в различных архитектурах компьютерных систем, а не только в PC. Стандарт определяет не только физический интерфейс, но и систему команд, управляющих устройствами SCSI. За время своего существования стандарт активно развивался.

    iSCSI (англ. Internet Small Computer System Interface) — протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами.

    iSCSI описывает:

    ·Транспортный протокол для SCSI, который работает поверх TCP.

    ·Механизм инкапсуляции SCSI команд в IP сети.

    ·Протокол для нового поколения систем хранения данных, которые будут использовать «родной» TCP/IP.

    Системы на основе iSCSI могут быть построены на любой достаточно быстрой физической основе, поддерживающей протокол IP, например Gigabit Ethernet или 10G Ethernet. iSCSI появился как замена FibreChannel и в современных СХД имеет перед ним несколько преимуществ – способность объединять устройства на огромных расстояниях (используя существующие сети IP), возможность обеспечивать заданный уровень QoS (качество обслуживания), более низкую стоимость. Однако основная проблема использования iSCSI как замены FibreChannel – большое время задержек, возникающих в сети из-за особенностей реализации стека TCP/IP – это время может приближаться к 80 микросекундам, что сводит на нет одно из важных преимуществ использования СХД – скорость доступа к информации и низкую латентность. Это серьёзный минус

    FibreChannel (FC) (англ. fibrechannel — волоконный канал) — семейство протоколов для высокоскоростной передачи данных. FibreChannelProtocol (FCP) — транспортный протокол (как TCP в IP-сетях), инкапсулирующий протокол SCSI по сетям FibreChannel. Является основой построения сетей хранения данных.

    FibreChannelсостоит из пяти уровней:

    ·FC-0 Физический. Описывает среду передачи, трансиверы, коннекторы и типы используемых кабелей.

    ·FC-1 Кодирование. Описывает процесс 8b/10b Кодирования (каждые 8 бит данных кодируются в 10-битовый символ, специальные символы и контроль ошибок.

    ·FC-2 Кадрирование и сигнализация Описывает сигнальные протоколы. На этом уровне происходит определение слов, разбиение потока данных на кадры. Определяет правила передачи данных между двумя портами, классы служб).

    ·FC-3 Общих для узла служб. Определяет базовые и расширенные службы для транспортного уровня

    ·FC-4 Отображения протоколов Предоставляет возможность инкапсуляции других протоколов (SCSI, ATM, IP и многих других.)

     

     

     

     

    56. Архитектура и адресация в iSCSI

    iSCSI- клиент-серверная архитектура. Сервер (принимающий запросы) называется iSCSItarget, клиент - iSCSIinitiator.

    Сервер (target) может быть реализован как программно, так и аппаратно. Программная реализация принимает запросы по сети, обрабатывает их, читает (записывает) нужные данные на носитель, отдаёт информацию (результат) обратно по сети. Так как эти операции при высокой интенсивности запросов занимают существенное время процессора, были созданы аппаратные iSCSIHBA (адаптеры), которые совмещают в себе сетевую карту Ethernetи SCSI-контроллер.

    iSCSIработает на блочном уровне. Объектом, к которому предоставляется доступ, является область данных, интерпретируемая инициатором как блочное устройство (диск). Обязанность создавать и обслуживать файловую систему возлагается на инициатора; сервер лишь обслуживает низкоуровневые запросы, аналогичные запросам, которые обслуживает драйвер диска при работе с локальными дисками.

    Для адресации по сети и клиент и сервер имеют свои адреса, которые должны быть уникальными.

    Программный метод дешевле, однако больше загружает центральный процессор сервера и в теории может приводить к бОльшим задержкам, чем аппаратный обработчик. При современной скорости сетей Ethernet в 1 Гбит/с можно предположить, что iSCSI будет работать ровно в два раза медленнее FibreChannel со скоростью 2 Гбит.

    Для обнаружения списка доступных устройств на iSCSI цели (сервере) используется технология обнаружения. Это сервис, слушающий на порте tcp запросы клиентов и отдающий им список доступных целей. Такой сервис называют порталом.

    Помимо порталов, для поиска доступных целей может так же использоваться iSNS (Internetstoragenameservice).

    Дополнительно, iSCSIподдерживает Multipathing (Технология резервирования каналов данных обеспечивает наличие более одного канала между хостом и дисковой системой. Компоненты избыточных каналов включают: шины, контроллеры, коммутаторы и мосты).

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    57. Принципы построения дисковой подсистемы высокоскоростных отказоустойчивых кластеров, массивы-RAID

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

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

    Массивы RAID

    RAID (англ. redundant array of independent disks — избыточный массив независимых жёстких дисков) — массив из нескольких дисков, управляемых контроллером, взаимосвязанных скоростными каналами и воспринимаемых внешней системой как единое целое. В зависимости от типа используемого массива может обеспечивать различные степени отказоустойчивости и быстродействия. Служит для повышения надёжности хранения данных и/или для повышения скорости чтения/записи информации.

    RAID 0 (striping — «чередование») — дисковый массив из двух или более жёстких дисков без резервирования (т.е., по сути RAID-массивом не является). Информация разбивается на блоки данных (A_i) фиксированной длины и записывается на оба/несколько дисков одновременно.

    (+): За счёт этого существенно повышается производительность (от количества дисков зависит кратность увеличения производительности).

    (-): Надёжность RAID 0 заведомо ниже надёжности любого из дисков в отдельности и падает с увеличением количества входящих в RAID 0 дисков, т. к. отказ любого из дисков приводит к неработоспособности всего массива.

    Два диска — минимальное количество для построения «зеркального» массива

    RAID 1 (mirroring — «зеркалирование») — массив из двух дисков, являющихся полными копиями друг друга.

    (+): Обеспечивает приемлемую скорость записи и выигрыш по скорости чтения при распараллеливании запросов.

    (+): Имеет высокую надёжность — работает до тех пор, пока функционирует хотя бы один диск в массиве.

    (-): Недостаток RAID 1 в том, что по цене двух жестких дисков пользователь фактически получает лишь один.

    RAID 2

    Массивы такого типа основаны на использовании кода Хемминга. Диски делятся на две группы. Данные распределяются по дискам, предназначенным для хранения информации, так же, как и в RAID 0, т.е. они разбиваются на небольшие блоки по числу дисков. Оставшиеся диски хранят коды коррекции ошибок, по которым в случае выхода какого-либо жёсткого диска из строя возможно восстановление информации.

    +повышение скорости дисковых операций по сравнению с производительностью одного диска.

    -минимальное количество дисков, при котором имеет смысл его использовать - 7. При этом нужна структура из почти двойного количества дисков

    В RAID 3 из nдисков данные разбиваются на куски размером меньше сектора (разбиваются на байты) или блоки и распределяются по n-1дискам. Ещё один диск используется для хранения блоков чётности. В RAID 2 для этой цели применялся n-1диск, но большая часть информации на контрольных дисках использовалась для коррекции ошибок на лету, в то время как большинство пользователей удовлетворяет простое восстановление информации в случае поломки диска, для чего хватает информации, умещающейся на одном выделенном жёстком диске.

    Отличия RAID 3 от RAID 2: невозможность коррекции ошибок на лету и меньшая избыточность.

    Достоинства:

    ·высокая скорость чтения и записи данных;

    ·минимальное количество дисков для создания массива равно трём.

    Недостатки:

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

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

    RAID 4 похож на RAID 3, но отличается от него тем, что данные разбиваются на блоки, а не на байты. Таким образом, удалось отчасти «победить» проблему низкой скорости передачи данных небольшого объёма. Запись же производится медленно из-за того, что чётность для блока генерируется при записи и записывается на единственный диск.

    RAID 5 Основным недостатком уровней RAID от 2-го до 4-го является невозможность производить параллельные операции записи, так как для хранения информации о чётности используется отдельный контрольный диск. RAID 5 не имеет этого недостатка. Блоки данных и контрольные суммы циклически записываются на все диски массива, нет асимметричности конфигурации дисков.

    RAID 6 — похож на RAID 5, но имеет более высокую степень надёжности — под контрольные суммы выделяется ёмкость 2-х дисков, рассчитываются 2 суммы по разным алгоритмам. Требует более мощный RAID-контроллер. Обеспечивает работоспособность после одновременного выхода из строя двух дисков — защита от кратного отказа. Для организации массива требуется минимум 4 диска.

    58. Особенности физической реализации серверов кластерных систем, blade-серверы

    К общим требованиям, предъявляемым к кластерным системам, относятся:

    1.Высокая готовность

    2.Высокое быстродействие

    3.Масштабирование

    4.Общий доступ к ресурсам

    5.Удобство обслуживания

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

    Проблематика High Performance кластеров. Почти в любой ориентированной на параллельное вычисление задаче невозможно избегнуть необходимости передавать данные от одной подзадачи другой.

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

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

    Блейд-серверы, лезвия (англ. blade) — компьютерные серверы с компонентами, вынесенными и обобщёнными в корзине для уменьшения занимаемого пространства. Корзина (англ. enclosure) — шасси для блейд-серверов, предоставляющая им доступ к общим компонентам, например, блокам питания и сетевым контроллерам. Блейд-серверы называют также ультракомпактными серверами.

    Внутренняя структура

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

    Для вычислений компьютеру требуются как минимум следующие части (машина Тьюринга):

    ·память, содержащая исходные данные,

    ·процессор, выполняющий команды,

    ·память для записи результатов.

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

     

     

     

    59. Принципы, поколения, примеры Grid.

    Грид-вычисления(англ.grid— решётка, сеть)— это формараспределённых вычислений, в которой «виртуальныйсуперкомпьютер» представлен в виде кластеров, соединённых с помощью сети, слабосвязанных гетерогенных компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ).

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

    Идея грид-компьютинга возникла вместе с распространением персональных компьютеров, развитиеминтернетаи технологий пакетной передачи данных на основе оптического волокна (SONET,SDHиATM), а также технологийлокальных сетей(Gigabit Ethernet). Полоса пропускания коммуникационных средств стала достаточной, чтобы при необходимости привлечь ресурсы другого компьютера. Учитывая, что множество подключенных к глобальной сети компьютеров большую часть рабочего времени простаивает и располагает большими ресурсами, чем необходимо для решения их повседневных задач, возникает возможность применить их неиспользуемые ресурсы в другом месте.

    В настоящее время распределенную информационно-вычислительную среду среду (РИВС) принято называть GRID (вычислительная решетка).

    Наиболее характерными свойствами этой информационно-вычислительной среды являются [2-5]:

    -масштабы вычислительного ресурса (объем памяти, количество процессоров), которые многократно превосходят ресурсы отдельного компьютера или одного вычислительного комплекса;

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

    -пространственное (географическое) распределение информационно-вычислительного ресурса;

    -объединение ресурсов, которые не могут управляться централизованно (в случае, если они не принадлежат одной организации);

    -использование стандартных, открытых, общедоступных протоколов и интерфейсов.

    -обеспечение информационной безопасности.

    Примеры:

    SETI@home (Search for Extra-Terrestrial Intelligence At Home - поиск внеземного разума на дому) — научный некоммерческий проект распределённых вычислений, использующий свободные ресурсы на компьютерах добровольцев для поиска радиосигналов внеземного разума.

    60. Примеры протоколов для реализации Grid.

    Структура (стек) протоколов глобального грида

    Общая структура глобального грида описывается в виде стека (набора уровней или слоев) протоколов. В такой модели каждый уровень предназначен для решения узкого круга задач и используется для предоставления услуг для более высоких уровней. Верхние уровни ближе к пользователю и работают с наиболее абстрактными объектами, тогда как нижние уровни сильно зависят от физической реализации грид-ресурсов. Полезно иметь в виду, что эта структура аналогична сетевой модели OSI (Open Systems Interconnection Reference Model; модель взаимодействия открытых систем), - абстрактной модели для сетевых коммуникаций и разработки сетевых протоколов.

    Стек грид-протоколов включает:

    1. аппаратный уровень (Fabric Layer) составляют протоколы, по которым соответствующие службы непосредственно работают с ресурсами;

    2. связывающий уровень (Connectivity Layer) составляют протоколы, которые обеспечивают обмен данными между компонентами базового уровня и протоколы аутентификации;

    3. ресурсный уровень (Resource Layer) – это ядро многоуровневой системы, протоколы которого взаимодействуют с ресурсами, используя унифицированный интерфейс и не различая архитектурные особенности конкретного ресурса;

    4. коллективный (Collective Layer) уровень отвечает за координацию использования имеющихся ресурсов;

    5. прикладной уровень (Application Layer) описывает пользовательские приложения, работающие в среде виртуальной организации; приложения функционируют, используя протоколы, определенные на нижележащих уровнях.

    61. Сравнение Grid и облачных систем.

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

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

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

    62. Преимущества и недостатки облачного подхода.

    Достоинства.

    • Недорогие компьютеры для пользователей. Пользователям нет необходимости покупать дорогие компьютеры, с большим объемом памяти и дисков, чтобы использовать программы через веб-интерфейс. Также нет необходимости в СD и DVD приводах, так как вся информация и программы остаются в "облаке".

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

    • Уменьшение затрат и увеличение эффективности IT инфраструктуры. Обычные сервера средней компании загружены на 10-15%. В одни периоды времени есть потребность в дополнительных вычислительных ресурсах, в других эти дорогостоящие ресурсы простаивают. Используя необходимое количество вычислительных ресурсов в "облаке" в любой момент времени, компании сокращают затраты на оборудование и его обслуживание до 50%.

    • Меньше проблем с обслуживанием.

    • Меньше затрат на приобретаемое программное обеспечение.

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

    •Увеличение доступных вычислительных мощностей. Иными словами, пользователи могут при желании легко и дешево поработать с суперкомпьютером без каких-либо фактических приобретений.

    • Неограниченный объем хранимых данных. При хранении информации в "облаке" пользователи могут забыть об ограничениях, накладываемых обычными дисками, - "облачные" размеры исчисляются миллиардами гигабайт доступного места.

    • Совместимость с большинством операционных систем.

    • Улучшенная совместимость форматов документов. Например, получит документ Word 2007 и не сможет прочитать его на локальном компьютере с Word 2003 или OpenOffice, а в облаке сможет (гугл документы).

    • Простота совместной работы группы пользователей. Только представьте себе, как 100 человек одновременно редактируют макет книги - совместная работа в реальном времени!

    • Повсеместный доступ к документам. Если документы хранятся в "облаке", они могут быть доступны пользователям в любое время и в любом месте.

    • Доступность с различных устройств.

    • Устойчивость данных к потере или краже оборудования.

    Недостатки.

    • Постоянное соединение с сетью Интернет.

    • Плохо работает с медленным Интернет-доступом.

    • Программы могут работать медленнее чем на локальном компьютере

    •Не все программы или их свойства доступны удаленно. Например, таблицы Google Docs имеют гораздо меньше функций и возможностей, чем Microsoft Excel.

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

    Если Ваши данные в "облаке" потеряны, они потеряны навсегда. Это факт. Но потерять данные в "облаке" гораздо сложнее, чем на локальном компьютере.

    63. Клиентское оборудование и ПО для облачных систем

    Облачные программные сервисы

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

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

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

    Облачные сервисы для хранения файлов

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

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

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

    К наиболее популярным облачным файловым хранилищам относятся: Google Диск, Яндекс.Диск, Microsoft SkyDrive, Dropbox, iCloud и другие. Практически все они после регистрации предоставляют пользователям некоторое количество бесплатного места для хранения файлов (как правило от 5 Гб до 10 Гб). Если же этого покажется мало, то за дополнительную плату можно организовать хранилище емкостью от 20 Гб до нескольких десятков терабайт.

     

     

    64. Виртуальные машины при реализации облачных систем

    Виртуальная машина(ВМ, отангл.virtual machine)—

    ·программная и/или аппаратная система,эмулирующаяаппаратное обеспечениенекоторойплатформы и исполняющая программы для target-платформы на host-платформе (host— хост-платформа, платформа-хозяин)

    Быстрое разворачивание и эффективное планирование

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

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

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    65. Базовые типы облачных систем

    Частное облако(англ.private cloud)— инфраструктура, предназначенная для использования одной организацией, включающей несколько потребителей (например, подразделений одной организации), возможно также клиентами и подрядчиками данной организации. Частное облако может находиться в собственности, управлении и эксплуатации как самой организации, так и третьей стороны (или какой-либо их комбинации), и оно может физически существовать как внутри, так и вне юрисдикции владельца.

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

    Общественное облако(англ.community cloud)— вид инфраструктуры, предназначенный для использования конкретным сообществом потребителей из организаций, имеющих общие задачи (например, миссии, требований безопасности, политики, и соответствия различным требованиям). Общественное облако может находиться в кооперативной (совместной) собственности, управлении и эксплуатации одной или более из организаций сообщества или третьей стороны (или какой-либо их комбинации), и оно может физически существовать как внутри, так и вне юрисдикции владельца.

    Гибридное облако(англ.hybrid cloud)— это комбинация из двух или более различных облачных инфраструктур (частных, публичных или общественных), остающихся уникальными объектами, но связанных между собой стандартизованными или частными технологиями передачи данных и приложений (например, кратковременное использование ресурсов публичных облаков длябалансировки нагрузкимежду облаками).

    66. Примеры реальных систем облачного типа

    Программное обеспечение как услуга

    Программное обеспечение как услуга(SaaS,англ.Software-as-a-Service)— модель, в которой потребителю предоставляется возможность использования прикладного программного обеспеченияпровайдера, работающего в облачной инфраструктуре и доступного из различных клиентских устройств или посредствомтонкого клиента, например, избраузера(например, веб-почта) или посредством интерфейса программы. Контроль и управление основной физической и виртуальной инфраструктурой облака, в том числе сети, серверов, операционных систем, хранения, или даже индивидуальных возможностей приложения (за исключением ограниченного набора пользовательских настроек конфигурации приложения) осуществляется облачным провайдером.

    Платформа как услуга

    Платформа как услуга(PaaS,англ.Platform-as-a-Service)— модель, когда потребителю предоставляется возможность использования облачной инфраструктуры для размещения базового программного обеспечения для последующего размещения на нём новых или существующих приложений (собственных, разработанных на заказ или приобретённых тиражируемых приложений). В состав таких платформ входят инструментальные средства создания, тестирования и выполнения прикладного программного обеспечения— системы управления базами данных, связующее программное обеспечение, среды исполнения языков программирования— предоставляемые облачным провайдером.

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

    Инфраструктура как услуга

    Инфраструктура как услуга(IaaS,англ.IaaS or Infrastructure-as-a-Service) предоставляется как возможность использования облачной инфраструктуры для самостоятельного управления ресурсами обработки, хранения, сетями и другими фундаментальными вычислительными ресурсами, например, потребитель может устанавливать и запускать произвольное программное обеспечение, которое может включать в себяоперационные системы, платформенное и прикладное программное обеспечение. Потребитель может контролировать операционные системы, виртуальные системы хранения данных и установленные приложения, а также ограниченный контроль набора доступных сервисов (например,межсетевой экран,DNS). Контроль и управление основной физической и виртуальной инфраструктурой облака, в том числе сети, серверов, типов используемых операционных системскачать dle 10.6фильмы бесплатно