Кластер баз данных

Автор работы: Пользователь скрыл имя, 18 Декабря 2010 в 16:15, реферат

Описание

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

Работа состоит из  1 файл

Кластер баз данных.doc

— 46.00 Кб (Скачать документ)

Кластер баз данных

Решение для  повышения  доступности корпоративных  информационных систем. Основой решения  является программный продукт Microsoft Cluster Service (CS). Основная цель использования кластера – обеспечение высокой доступности базы данных. Использование кластера серверов баз данных может помочь предотвратить недоступность данных из-за выхода из строя сервера, вызванного сбоем в программном обеспечении, необходимостью выполнения операций по обслуживанию сервера или из-за потери сетевого соединения с сервером. Использование кластеризации позволяет повысить на порядок уровень доступности баз данных MS SQL Server и СУБД Oracle.

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

 
               
Типичный кластер.

 

Как устроен кластер

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

Для мониторинга  состояния узлов кластер использует как открытую локальную, так и  кластерную сеть. Каждые 5 секунд выполняется  проверка LooksAlive (как живой), а каждые 60 секунд – более глубокая проверка IsAlive (действительно живой). В случае неуспешности проверка выполняется еще 5 раз, после чего кластер переведет группу на другой узел, передав другому серверу в монопольное владение все ресурсы данной группы. После того, как группа ресурсов будет передана, экземпляр SQL Server инициирует процедуру стартовой регенерации (recovery), после исполнения recovery для баз данных SQL Server переходит в состояние готовности к работе и обслуживанию запросов пользователей.

Пользовательские приложения должны будут выполнить повторное подключение к серверу баз данных. Приложение, которое соединяется с экземпляром SQL Server, использует виртуальный, а не физический IP - адрес. Фактическая принадлежность виртуального IP - адреса управляется кластером, поэтому приложение никогда не будет знать, на каком узле фактически находится адресуемый экземпляр.

Область применения

Решение идеально подходит для построения на его основе высокодоступных корпоративных  систем управления, таких как различные конфигурации 1С, MS Dynamics NAV (Navision) и AХ (Axapta), Oracle и прочих, включая системы собственной разработки, использующие MS SQL Server и СУБД Oracle.

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

Зачем нужна кластеризация?

Microsoft Cluster Server (MSCS) добавляет в информационные системы, построенные на Windows NT Server, Enterprise Edition следующие возможности.

Высокий уровень готовности. Кластеры «скрывают» большую часть аппаратных и программных ошибок, перенося задания на работоспособный узел кластера. Часто клиент замечает лишь, что работа была приостановлена на несколько секунд.

Масштабируемость. На первом этапе реализации Microsoft Cluster Server (MSCS) поддерживаются кластеры из двух узлов. Второй этап завершился в 1999 году, в результате чего число узлов в кластере может быть увеличено до 16. С помощью реализованных на втором этапе кластеров Microsoft Cluster Server (MSCS) и будущих версий SQL Server пользователи смогут наращивать число серверов приложений без ограничений, постепенно добавляя недорогое аппаратное обеспечение высокой готовности.

Управляемость. Microsoft Cluster Server (MSCS) и SQL Server предлагают интуитивный графический интерфейс для настройки и управления кластером, в том числе возможность выполнять административную работу на одном из серверов, перенеся его рабочую нагрузку на другие серверы в кластере и обеспечив тем самым непрерывную работу.

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

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

SQL Server и Microsoft Cluster Server

Microsoft SQL Server - пример приложения, созданного на базе Microsoft Cluster Server, которое позволяет воспользоваться его преимуществами (MSCS) для обеспечения более высокой масштабируемости и готовности.

Реализация кластерных продуктов SQL Server распадается на два  этапа.

Первый этап посвящен реализации Symmetric Virtual Server, который поддерживает кластер, состоящий из двух узлов и ориентированный на работу с несколькими экземплярами SQL Server. В случае возникновения сбоя на одном узле или его отключения, все приложения SQL Server переносятся на узел, находящийся в рабочем состоянии. На втором этапе Microsoft планирует предложить механизм, позволяющий объединить в кластер больше двух узлов.

Этап 1. Symmetric Virtual Server

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

Этап 2. Массовый параллелизм

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

Итог  Преимущества использования кластеров:

  • Предотвращение сбоев. Главным преимуществом от установки серверов баз данных в кластер является исключение длительного простоя в работе приложений, вызванного всевозможными отказами аппаратных средств, которые весьма вероятны для современных серверов, сложность которых постоянно растёт. Часто совсем маленькая проблема в состоянии вывести операционную систему из строя на длительный срок, причём подобные отказы не нуждаются в тщательном расследовании или переустановке компонентов или даже всего сервера, но они бывают достаточно серьезны, чтобы приложение оказалось неработоспособным на недопустимое время. Кластер может помочь в предотвращении многих подобных проблем в работе приложений, поскольку ресурсы приложения могут быть быстро переброшены на другой узел кластера, и часто сделать это можно даже без потери клиентских подключений.
  • Сервисные пакеты. Cервисные пакеты как операционной системы Windows, так SQL Server являются причиной простоя приложений, который может возникнуть во время установки и перезагрузки сервера после инсталляции такого пакета. При использовании кластера администраторы могут установить сервисный пакет практически без простоя приложений, инициируя отказ узла, вследствие которого база данных будет обслуживаться другим узлом, что позволит заняться установкой сервисного пакета на первом узле. В это время база данных будет доступна на втором узле, а экземпляр на первом узле может быть недоступен на время перезагрузок или иных действий.
  • Модернизация. Не редко возникает необходимость увеличения производительности серверов. Это означает необходимость миграции и продолжительного простоя. При использовании кластера миграцию выполнить намного легче и с минимальным временем простоя. В кластер добавляется новый узел, выполняется установка всех необходимых обновлений. Затем с помощью процедуры перехода на резервный ресурс выполняется перенос сервера на новый узел, а старый исключается из кластера. Время простоя ограничивается временем перехода на резервный ресурс, т.е. лишь несколько минут, вместо нескольких часов или даже нескольких суток без использования кластера.

Информация о работе Кластер баз данных