Oracle grid infrastructure что это
Виртуальные машины Azure предоставляют полностью настраиваемую и гибкую вычислительную среду. В этом руководстве описано развертывание базовой виртуальной машины Azure, а также установка и настройка Oracle ASM. Вы узнаете, как выполнять следующие задачи:
- Создание виртуальной машины базы данных Oracle и подключение к ней.
- Установка и настройка Oracle ASM.
- Установка и настройка Oracle Grid Infrastructure.
- Инициализация установки Oracle ASM.
- Создание базы данных Oracle под управлением ASM.
Если вы решили установить и использовать интерфейс командной строки локально, для работы с этим руководством вам понадобится Azure CLI 2.0.4 или более поздней версии. Чтобы узнать версию, выполните команду az --version . Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.
Cluster Shared Volumes
В случае failover-кластера доступ к LUN, хранящему данные, может осуществлять только активный узел, который владеет этим ресурсом. При переключении на другой узел происходит размонтирование LUN и монтирование его для другого узла. В большинстве случаев эта задержка не является критичной, но при виртуализации может требоваться вообще нулевая задержка на переключение виртуальных машин с одного узла на другой.
Еще одна проблема, возникающая из-за того, что LUN является минимальной единицей обхода отказа, заключается в том, что при сбое одного приложения, находящегося на LUN, приходится переключать все приложения, которые хранятся на этом LUN, на другой сервер. Во всех приложениях (включая Hyper-V до второго релиза Server 2008) это удавалось обходить за счет многочисленных LUN, на каждом из которых хранились данные только одного приложения. В Server 2008 R2 появилось решение для этих проблем, но предназначенное для работы только с Hyper-V и CSV (Cluster Shared Volumes).
CSV позволяет размещать на общем хранилище виртуальные машины, запускаемые на разных узлах кластера — тем самым разбивается зависимость между ресурсами приложения (в данном случае виртуальными машинами) и дисковыми ресурсами. В качестве файловой системы CSV использует обычную NTFS. Для включения CSV необходимо в Failover Cluster Manage выполнить команду Enable Cluster Shared Volumes. Отключить поддержку CSV можно только через консоль:
Для использования этой команды должен быть загружен Failover Clusters, модуль PowerShell. Использование CSV совместно с live migration позволяет перемещать виртуальные машины между физическими серверами в считанные миллисекунды, без обрыва сетевых соединений и совершенно прозрачно для пользователей. Стоит отметить, что копировать любые данные (например, готовые виртуальные машины) на общие диски, использующие CSV, следует через узел-координатор.
Несмотря на то, что общий диск доступен со всех узлов кластера, перед записью данных на диск узлы запрашивают разрешение у узлакоординатора. При этом, если запись требует изменений на уровне файловой системы (например, смена атрибутов файла или увеличение его размера), то записью занимается сам узел-координатор.
Организации, использующие SGE
- Sun Grid
- Суперкомпьютер TSUBAME в Tokyo Institute of Technology, который был седьмым в списке TOP500 в июне 2006.
- Ranger в Техасском Центре Высокоскоростных вычислений. Ranger имеет 62,976 ядер на 3,936 узлах и пиковую производительность 504TFlops. В данный момент Ranger является шестым в списке TOP500.
- San Diego Supercomputer Center (SDSC)
- Geophysical Fluid Dynamics Laboratory (NOAA GFDL)
Oracle Grid Infrastructure
Для работы Oracle RAC требуется Oracle Clusterware (или стороннее ПО) для объединения серверов в кластер. Для более гибкого управления ресурсами узлы такого кластера могут быть организованы в пулы (с версии 11g R2 поддерживается два варианта управления — на основании политик для пулов или, в случае их отсутствия, администратором).
Во втором релизе 11g Oracle Clusterware был объединен с ASM под общим названием Oracle Grid Infrastructure, хотя оба компонента и продолжают устанавливаться по различным путям.
Automatic Storage Management (ASM) — менеджер томов и файловая система, которые могут работать как в кластере, так и с singleinstance базой данных. ASM разбивает файлы на ASM Allocation Unit.
Размер Allocation Unit определяется параметром AU_SIZE, который задается на уровне дисковой группы и составляет 1, 2, 4, 8, 16, 32 или 64 MB. Далее Allocation Units распределяются по ASM-дискам для балансировки нагрузки или зеркалирования. Избыточность может быть реализована, как средствами ASM, так и аппаратно.
ASM-диски могут быть объединены в Failure Group (то есть группу дисков, которые могут выйти из строя одновременно — например, диски, подсоединенные к одному контролеру), при этом зеркалирование осуществляется на диски, принадлежащие разным Failure Group. При добавлении или удалении дисков ASM автоматически осуществляет разбалансировку, скорость которой задается администратором.
На ASM могут помещаться только файлы, относящиеся к базе данных Oracle, такие как управляющие и журнальные файлы, файлы данных или резервные копии RMAN. Экземпляр базы данных не может взаимодействовать напрямую с файлами, которые размещены на ASM. Для обеспечения доступа к данным дисковая группа должна быть предварительно смонтирована локальным ASM-экземпляром.
Oracle рекомендует использовать ASM в качестве решения для управления хранением данных вместо традиционных менеджеров томов, файловых систем или RAW-устройств.
Создание группы ресурсов
Чтобы создать группу ресурсов, используйте команду az group create. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими. В этом примере создается группа ресурсов с именем myResourceGroup в регионе eastus.
Настроить архитектуру Shared-Nothing
В кластере базы данных без совместного использования каждый узел имеет собственное частное независимое хранилище, и другие узлы не могут получить к нему доступ. База данных разделена на несколько частей узлами в кластере, и возвращаемый набор структур запроса представляет собой комбинацию наборов результатов каждого узла. Потеря узла сделает соответствующие данные недоступными. Поэтому кластер с общей записью часто реализуется в виде отдельных активных / пассивных или активных / активных кластеров для повышения доступности. Кластер MySQL основан на архитектуре без совместного использования ресурсов.
Используйте межсоединение на основе Ethernet
Использование 10G Ethernet в качестве внутреннего соединения кластера может быть наиболее распространенным в настоящее время, а фоновый процесс кластера использует TCP / IP для связи. Cache Fusion (используется для поддержания согласованности кеша) использует другой метод связи: UDP (UserData, ramProtocol). UPD и TCP относятся к транспортному уровню, который ориентирован на установление соединения и использует явное квитирование связи, чтобы гарантировать поступление сетевых пакетов данных по порядку и пересылку пакетов с ошибочными данными. UDP не содержит статуса, это протокол типа «запустил и забыл». UDP просто отправляет пакет данных по назначению. Основное преимущество UDP над TCP в том, что он легче.
заметка: Следует избегать использования перекрестных кабелей для прямого соединения между двумя кластерами узлов.Внутренняя связь кластера должна быть заменена.Использование перекрестных кабелей должно быть прямо запрещено!
Использование jumbo-кадров может повысить эффективность и производительность обмена данными внутри кластера. Кадры Ethernet могут иметь разные размеры, обычно ограниченные 1500 байтами (значение MTU). Размер кадра определяет, сколько данных может передать один кадр Ethernet.Чем большую нагрузку данных несет кадр, тем меньше работы требуется серверу и коммутатору, что обеспечивает более высокую эффективность связи. Многие коммутаторы позволяют разместить в кадре большее количество байтов (1500-9000), чем стандартное значение MTU, также называемое кадром большого размера. Обратите внимание, что кадры jumbo не маршрутизируются, поэтому их нельзя использовать в общедоступных сетях. Принимая решение об использовании jumbo кадров, убедитесь, что все узлы в кластере используют одинаковый MTU.
Я просто сказал, что связанные компоненты сервера базы данных должны быть простыми, и сетевая карта также является одним из них. Несколько сетевых портов можно связать в логическую единицу с помощью технологии связывания в Linux.В отличие от многих других операционных систем, привязка сетевых карт в Linux может быть достигнута без покупки другого программного обеспечения.
Используйте внутреннее соединение на основе Infiniband
Настроить сетевые компоненты
Для правильной работы сетевой инфраструктуры требуются некоторые IP-адреса: каждый хост оснащен общедоступным сетевым адресом; каждый хост имеет частный сетевой адрес; каждый хост имеет виртуальный IP-адрес (не назначен); 1-3 неназначенных IP-адреса Используется для функции имени доступа единого клиента; если используется Grid plug and play, неиспользуемый виртуальный IP-адрес также должен быть назначен службе именования Grid.
Виртуальный IP-адрес узла - одна из самых полезных функций Oracle Cluster. Их необходимо настроить в сегменте сети с общедоступным IP-адресом и поддерживать как ресурсы кластера в сетевой инфраструктуре. В 9i, когда узел выходит из строя, общедоступный IP-адрес не может отвечать на запросы соединения. Когда сеанс клиента пытается подключиться к вышедшему из строя узлу, он должен дождаться истечения времени ожидания соединения, что может оказаться долгим процессом. С виртуальным IP-адресом это происходит намного быстрее: при отказе узла грид-инфраструктура переключает виртуальный IP-адрес узла на другой узел в кластере. Когда клиентский сеанс подключается к виртуальному IP-адресу отказавшего узла, Grid Infrastructure знает, что узел не работает должным образом, и позволит ему подключиться к следующему узлу в кластере. Другое требование - это 1-3 IP-адреса. Независимо от размера кластера, это требование добавляется к сетевой инфраструктуре. Этот тип адреса называется SCAN (имя доступа единого клиента). SCAN создается и настраивается во время обновления или установки сетевой инфраструктуры.Перед выполнением установки вам необходимо добавить эти IP-адреса SCAN в DNS для циклического разрешения. Если вы используете Grid Naming Service (GNS), вам необходимо назначить ему виртуальный IP-адрес в общедоступной сети.
Oracle Grid Engine — программное обеспечение для организации управления ресурсами и политиками в грид-вычислениях.
Sun Grid Engine (SGE), раньше известное как CODINE (COmputing in DIstributed Networked Environments) или GRD (Global Resource Director) — программное обеспечение для распределённых вычислений (грид), разработанное Sun Microsystems. Также Sun продаёт коммерческий продукт на основе SGE, известный как N1 Grid Engine (N1GE).
SGE обычно используется на компьютерных фермах или высокопроизводительных кластерах и отвечает за управление распределённой работой большого числа отдельных, параллельных или интерактивных пользовательских задач. Также SGE отвечает за выделение распределённых ресурсов таких как процессоры, память, дисковое пространство.
Узел кластера
Кластер состоит из отдельных узлов. В Oracle RAC разрешенное количество узлов связано с версией кластера. В общедоступном документе указано, что программное обеспечение кластера Oracle 10.2 поддерживает 100 узлов, а 10.1 поддерживает 63 экземпляра. Даже когда узел выходит из строя, приложения на основе RAC могут продолжать работать, вы все равно должны приложить некоторые усилия, чтобы убедиться, что отдельный компонент на сервере базы данных не имеет единой точки отказа (SPOF).
При покупке нового оборудования следует использовать компоненты с возможностью горячей замены, такие как встроенные диски и вентиляторы.Кроме того, необходимо обеспечить резервирование источника питания сервера, адаптера шины хоста, сетевой карты и жесткого диска. Если возможно, лучше всего выполнить логическую привязку, например, аппаратный RAID жесткого диска или программный RAID, привязку сетевой карты и многопутевость сети хранения. Следует также обратить внимание на центр обработки данных: использовать источники бесперебойного питания, адекватные меры по рассеиванию тепла и профессиональные серверные полки. Лучше иметь удаленную консоль управления отключением света. Когда узел зависает по неизвестным причинам, может потребоваться срочное устранение неполадок или перезапуск.
Развертывание Oracle RAC
Рассмотрим этапы установки различных компонентов, необходимых для функционирования Oracle RAC в режиме active/active кластера с двумя узлами. В качестве дистрибутива будем рассматривать последнюю на момент написания статьи версию Oracle Database 11g Release 2. В качестве операционной системы возьмем Oracle Enterprise Linux 5. Oracle Enterprise Linux — операционная система, базирующаяся на RedHat Enterprise Linux. Ее основные отличия — цена лицензии, техническая поддержка от Oracle и дополнительные пакеты, которые могут использоваться приложениями Oracle.
Подготовка ОС к установке Oracle стандартна и заключается в создании пользователей и групп, задании переменных окружения и параметров ядра. Параметры для конкретной версии ОС и БД можно найти в Installation Guide, который поставляется вместе с дистрибутивом.
На узлах должен быть настроен доступ к внешним общим дискам, на которых будут храниться файлы базы данных и файлы Oracle Clusterware. К последним относятся votingdisk (файл, определяющий участников кластера) и Oracle Cluster Registry (содержит конфигурационную информацию — например, какие экземпляры и сервисы запущены на конкретном узле). Рекомендуется создавать нечетное количество votingdisk. Для создания и настройки ASMдисков желательно использовать ASMLib, которую надо установить на всех узлах:
Кроме интерфейса для взаимодействия с хранилищем на узлах желательно настроить три сети — Interconnect, External и Backup.
Необходимо настроить IP-адресацию (вручную или с использованием Oracl e GNS) и DNS для разрешения всех имен (или только GNS).
Вначале осуществляется установка Grid Infrastructure. Для этого загружаем и распаковываем дистрибутив, затем запускаем установщик. В процессе установки необходимо указать имя кластера; указать узлы, которые будут входить в кластер; указать назначение сетевых интерфейсов; настроить хранилище.
В конце нужно выполнить с правами root скрипты orainstRoot.sh и root.sh. Первым на всех узлах выполняется скрипт orainstRoot.sh, причем запуск на следующем узле осуществляется только после завершения работы скрипта на предыдущем. После выполнения orainstRoot.sh последовательно на каждом узле выполняется root.sh. Проверить успешность установки можно с помощью команды:
/u01/grid/bin/crsctl check cluster –all
Выполнив проверку, можно приступать к установке базы данных. Для этого запускаем Oracle Universal installer, который используется и для обычной установки базы.
Кроме active/active-кластера в версии 11g R2 существуют две возможности для создания active/passive-кластера. Одна из них — Oracle RACOneNode. Другой вариант не требует лицензии для RAC и реализуется средствами Oracle Clusterware. В этом случае вначале создается общее хранилище; затем устанавливается Grid Infrastructure, с использованием ASM_CRS и SCAN; а после этого на узлы устанавливается база данных в варианте Standalone. Далее создаются ресурсы и скрипты, которые позволяют запускать экземпляр на другом узле в случае недоступности первого.
Загрузка файлов
Скачайте Oracle Grid Engine на сайте Для скачивания необходимо зарегистрироваться. Войдите под свои именем и выберите платформу; при желании используйте Sun Download Manager.
Для всех платформ доступен архив в формате tar.gz, для Solaris также предлагается версия в виде установочного пакета. Распакуйте содержимое архива во временный каталог (/tmp). В случае с пакетом в формате .pkg сделайте:
Пакет SUNWsgeec является общим для всех архитектур; архитектуро-зависимые файлы находятся в пакетах SUNWsgeex, SUNWsgeei и SUNWsgeeax, которые соответствуют архитектурам Solaris SPARC, Solaris x86 и Solaris x64. Эти пакеты устанавливаются аналогичным образом. При установке пакета следует ответить на вопрос о месте, в которое его устанавливать; причём каталог назначения должен предварительно быть создан.
Для операционных систем, отличных от Solaris/OpenSolaris, Oracle Grid Engine распространяется в архивах формата tar.gz. Эти архивы следует распаковать в нужное место.
Подготовка локального клиента и виртуальной машины для запуска x11
Для установки и настройки Oracle ASM требуется графический интерфейс. Для упрощения установки мы используем протокол x11. Если вы используете клиентскую систему (Mac или Linux) с возможностями X11, вы можете пропустить эту установку и настройку, предназначенную для компьютеров с Windows.
Скачайте PuTTY и Xming на компьютер с Windows. Прежде чем продолжить, необходимо будет установить оба приложения со значениями по умолчанию.
После установки PuTTY откройте командную строку, перейдите в папку PuTTY (например, C:\Program Files\PuTTY) и запустите файл puttygen.exe для создания ключа.
В генераторе ключей PuTTY сделайте следующее:
В виртуальной машине выполните следующие команды:
Создайте файл с именем authorized_keys . Вставьте содержимое ключа в этот файл и сохраните файл.
Ключ должен содержать строку ssh-rsa . Кроме того, содержимое ключа должно быть одной строкой текста.
В клиентской системе запустите PuTTY. В панели Категория перейдите к пункту Подключение>SSH>Аутентификация. В поле Private key file for authentication (Файл закрытого ключа для проверки подлинности) выберите созданный ранее ключ.
В области Категория выберите Подключение>SSH>X11. Установите флажок Enable X11 forwarding (Включить перенаправление X11).
В области Категория выберите Сеанс. Введите значение виртуальной машины Oracle ASM в диалоговом окне имени узла, укажите новое имя Saved Session и нажмите кнопку Save . После сохранения щелкните open для подключения к виртуальной машине Oracle ASM. При первом подключении выводится предупреждение о том, что удаленная система не кэшируется в реестре. Щелкните yes , чтобы добавить ее и продолжить.
Заключение
Oracle RAC совместно с Oracle Grid Infrastructure позволяют реализовать разнообразные сценарии построения кластеров. Гибкость настройки и широта возможностей компенсируются ценой такого решения.
Решения же Microsoft ограничены не только возможностями самой кластеризации, но и продуктами, которые могут работать в такой среде. Хотя стоит отметить, что набор таких продуктов все равно шире, чем одна база данных.
В этом режиме все узлы могут предоставлять услуги (нет запроса пользователя на бездействие в режиме ожидания). В большинстве случаев аппаратная конфигурация участников кластера одинакова, что позволяет избежать возможных проблем с производительностью и упрощает балансировку нагрузки. Активные / активные кластеры требуют более сложного программного обеспечения для управления всеми ресурсами, такими как диск и память, которые необходимо синхронизировать между всеми узлами. Чаще всего в качестве контрольного соединения используется частная сеть. Программное обеспечение для управления кластером должно уметь обнаруживать проблемы с узлами, такие как отказ узла или проблемы связи с кластером.
Сплит-мозг (split-brain) - плохая ситуация в кластере: внутренняя связь отключается, когда все кластеры в кластере работают. В этом случае кластер разделен на несколько частей, каждая часть программного обеспечения кластера будет пытаться захватить ресурсы других узлов, потому что кажется, что другие узлы вышли из строя. Может возникнуть следующая проблема: если приложение может нормально подключаться к этим частям кластера, поскольку эти части кластера в это время не синхронизированы, на диск могут быть записаны разные данные. Опасность разделения мозга на кластер очевидна, и поставщик программного обеспечения кластера должен предоставить решение для решения этой проблемы.
Создание виртуальной машины
Чтобы создать виртуальную машину на основе образа базы данных Oracle и настроить ее для использования Oracle ASM, выполните команду az vm create.
В следующем примере создается виртуальная машина с именем myVM размера Standard_DS2_v2, к которой подключено четыре диска данных по 50 ГБ каждый. Кроме того, создаются ключи SSH, если они не существуют в расположении ключей по умолчанию. Чтобы использовать определенный набор ключей, используйте параметр --ssh-key-value .
После создания виртуальной машины в Azure CLI отображается информация следующего вида. Обратите внимание на значение publicIpAddress . Этот адрес используется для доступа к виртуальной машине.
Настроить активный / пассивный кластер
Активный / пассивный кластер работает иначе, чем активный / активный кластеры. Аппаратная конфигурация элементов в активном / пассивном кластере должна быть такой же или в основном такой же, но только один из двух узлов может обрабатывать запросы пользователей одновременно. Программное обеспечение для управления кластером будет постоянно контролировать состояние ресурсов в кластере. Когда ресурс выходит из строя, программное обеспечение для управления кластером пытается перезапустить ресурс несколько раз. Если он по-прежнему недействителен, резервный узел берет на себя.
В соответствии с опциями во время установки ресурсы кластера могут быть выделены в общем хранилище или файловой системе, и последняя также выполнит аварийное переключение при отказе ресурса. Использование совместно используемой файловой системы имеет больше преимуществ, чем использование не разделяемой файловой системы, которая может потребовать обнаружения fsck (8) перед повторным подключением к резервному узлу. Набор кластеров Veritas, кластер Sun (Oracle) и IBM HACMP можно использовать в качестве инструментов управления кластером для установки активных / пассивных кластеров.
Менее известно, что использовать Oracle Grid Infrastructure для установки активного / пассивного кластера очень просто. Используя интерфейс прикладных программ Grid Infrastructure и Oracle ASM в качестве диспетчера логических томов кластера, вы можете легко контролировать базу данных Oracle с одним экземпляром без прерывания. Когда узел выходит из строя, база данных автоматически переносится на резервный узел. В зависимости от параметра инициализации fast_start_mttr_target и размера набора для восстановления этот отказоустойчивый процесс может быть очень быстрым. Однако в процессе отработки отказа соединение с базой данных пользователя будет отключено.
Активный / пассивный режим может быть Параметр active_instance_count установлен в 1 для открытия, но он действителен, только когда количество узлов равно 2.
Создание базы данных
Программное обеспечение базы данных Oracle уже установлено в образе Azure Marketplace. Чтобы создать базу данных, сделайте следующее:
Переключитесь на суперпользователя Oracle и инициализируйте прослушиватель для ведения журнала:
Откроется Database Configuration Assistant.
На странице операций с базой данных щелкните Create Database .
На странице Creation Mode (Режим создания) сделайте следующее:
- Введите имя для базы данных.
- Выберите Automatic Storage Management (ASM) в качестве типа хранилища.
- В качестве расположения файлов базы данных используйте расположение ASM по умолчанию.
- В качестве области быстрого восстановления используйте расположение ASM по умолчанию.
- Введите пароль администратора и подтвердите его.
- Убедитесь, что выбран параметр create as container database .
- Введите значение pluggable database name .
На странице Сводка просмотрите выбранные параметры и нажмите кнопку Finish , чтобы создать базу данных.
База данных создана. На странице завершения вы можете разблокировать дополнительные учетные записи для использования этой базы данных и изменить пароли. Для этого выберите параметр управления паролями. В противном случае щелкните close .
Настройка Oracle ASM
В этом руководстве пользователем по умолчанию является grid, а группой по умолчанию — asmadmin. Убедитесь, что пользователь oracle входит в группу asmadmin. Чтобы настроить установку Oracle ASM, сделайте следующее:
При настройке драйвера библиотеки Oracle ASM нужно определить пользователя (grid) и группу по умолчанию (asmadmin), настроить запуск и сканирование дисков во время запуска (выберите y). Необходимо указать сведения в ответ на запросы, используя следующую команду:
Выходные данные этой команды должны выглядеть следующим образом (указывать сведения в ответ на запросы больше не потребуется).
Просмотрите конфигурацию диска:
Результат этой команды должен выглядеть примерно как перечисление доступных дисков:
Отформатируйте диск /dev/sdc, выполнив следующую команду и указав следующие сведения в ответ на запрос:
- n — новый раздел;
- p — основной раздел;
- 1— выбор первого раздела;
- нажмите клавишу enter для выбора первого цилиндра по умолчанию;
- нажмите клавишу enter для выбора последнего цилиндра по умолчанию;
- нажмите клавишу w для записи изменений в таблицу разделов.
В соответствии с указанными выше сведениями выходные данные команды fdisk должны выглядеть следующим образом:
Повторите предыдущую команду fdisk для /dev/sdd , /dev/sde и /dev/sdf .
Проверьте конфигурацию диска:
Выходные данные команды должны выглядеть следующим образом:
Проверьте состояние службы Oracle ASM и запустите ее:
Выходные данные команды должны выглядеть следующим образом:
Создайте диски Oracle ASM:
Выходные данные команды должны выглядеть следующим образом:
Выведите список дисков Oracle ASM:
Выходные данные команды должны содержать следующие диски Oracle ASM:
Измените пароли для пользователей root, oracle и grid. Запишите эти новые пароли, так как они пригодятся во время установки позже.
Измените разрешение папки:
Настройка установки Oracle ASM
Чтобы настроить установку Oracle ASM, сделайте следующее:
Убедитесь, что в сеансе X11 по-прежнему используется пользователь grid. Может потребоваться нажать кнопку enter , чтобы восстановить работу терминала. Затем запустите помощник по настройке Oracle ASM:
Откроется Oracle ASM Configuration Assistant.
В диалоговом окне Configure ASM: Disk Groups (Настройка ASM: группы дисков) нажмите кнопку Create и Show Advanced Options .
В диалоговом окне Create Disk Group (Создание группы дисков) выполните следующие действия:
- Введите имя группы дисков DATA.
- В разделе Select Member Disks (Выбор дисков-участников) выберите ORCL_DATA и ORCL_DATA1.
- В списке Allocation Unit Size (Размер единицы распределения) выберите значение 4.
- Щелкните ok для создания группы дисков.
- Щелкните ok , чтобы закрыть окно подтверждения.
В диалоговом окне Configure ASM: Disk Groups (Настройка ASM: группы дисков) нажмите кнопку Create и Show Advanced Options .
В диалоговом окне Create Disk Group (Создание группы дисков) выполните следующие действия:
- Введите имя группы дисков FRA.
- В разделе Redundancy (Избыточность) выберите External (none) (Внешняя(нет)).
- В разделе Select Member Disks (Выбор дисков-участников) выберите ORCL_FRA.
- В списке Allocation Unit Size (Размер единицы распределения) выберите значение 4.
- Щелкните ok для создания группы дисков.
- Щелкните ok , чтобы закрыть окно подтверждения.
Виды кластеров
Кластер — это группа независимых компьютеров (так называемых узлов или нодов), к которой можно получить доступ как к единой системе. Кластеры могут быть предназначены для решения одной или нескольких задач. Традиционно выделяют три типа кластеров:
- Кластеры высокой готовности или отказоустойчивые кластеры (high-availability clusters или failover clusters) используют избыточные узлы для обеспечения работы в случае отказа одного из узлов.
- Кластеры балансировки нагрузки (load-balancing clusters) служат для распределения запросов от клиентов по нескольким серверам, образующим кластер.
- Вычислительные кластеры (compute clusters), как следует из названия, используются в вычислительных целях, когда задачу можно разделить на несколько подзадач, каждая из которых может выполняться на отдельном узле. Отдельно выделяют высокопроизводительные кластеры (HPC — high performance computing clusters), которые составляют около 82% систем в рейтинге суперкомпьютеров Top500.
Системы распределенных вычислений (gird) иногда относят к отдельному типу кластеров, который может состоять из территориально разнесенных серверов с отличающимися операционными системами и аппаратной конфигурацией. В случае грид-вычислений взаимодействия между узлами происходят значительно реже, чем в вычислительных кластерах. В грид-системах могут быть объединены HPC-кластеры, обычные рабочие станции и другие устройства.
Такую систему можно рассматривать как обобщение понятия «кластер». ластеры могут быть сконфигурированы в режиме работы active/active, в этом случае все узлы обрабатывают запросы пользователей и ни один из них не простаивает в режиме ожидания, как это происходит в варианте active/passive.
Oracle RAC и Network Load Balancing являются примерами active/ active кластера. Failover Cluster в Windows Server служит примером active/passive кластера. Для организации active/active кластера требуются более изощренные механизмы, которые позволяют нескольким узлам обращаться к одному ресурсу и синхронизовать изменения между всеми узлами. Для организации кластера требуется, чтобы узлы были объединены в сеть, для чего наиболее часто используется либо традиционный Ethernet, либо InfiniBand.
Программные решения могут быть довольно чувствительны к задержкам — так, например, для Oracle RAC задержки не должны превышать 15 мс. В качестве технологий хранения могут выступать Fibre Channel, iSCSI или NFS файловые сервера. Однако оставим аппаратные технологии за рамками статьи и перейдем к рассмотрению решений на уровне операционной системы (на примере Windows Server 2008 R2) и технологиям, которые позволяют организовать кластер для конкретной базы данных (OracleDatabase 11g), но на любой поддерживаемой ОС.
Внутреннее соединение
Межкластерное соединение - одна из характеристик Oracle RAC. Он не только позволяет кластеру преодолевать алгоритм проверки связи блоков при передаче блоков данных между разными экземплярами, но также может использоваться для контрольных сигналов и регулярного обмена данными. Сбой подключения приведет к реорганизации кластера, чтобы избежать разделения функций, и Grid Infrastructure перезапустит один или несколько узлов. Вы можете настроить отдельное соединение для RAC и Grid Infrastructure. В этом случае вам необходимо настроить RAC для использования правильного соединения. Это соединение всегда должно быть частным, и ему не должны мешать другие сети. Пользователи RAC могут использовать две технологии для достижения внутреннего взаимодействия: Ethernet и Infiniband.
Скачивание и подготовка Oracle Grid Infrastructure
Чтобы скачать и подготовить программное обеспечение Oracle Grid Infrastructure, сделайте следующее:
Скачайте Oracle Grid Infrastructure со страницы скачивания Oracle ASM.
Под заголовком Oracle Database 12c Release 1 Grid Infrastructure (12.1.0.2.0) для Linux x86–64 должно быть два ZIP-файла для скачивания.
Скачав ZIP-файлы на клиентском компьютере, вы можете скопировать файлы на виртуальную машину по протоколу SCP:
Подключитесь к виртуальной машине Oracle в Azure по протоколу SSH, чтобы переместить ZIP-файлы в папку /opt. Затем измените владельца файлов:
Распакуйте файлы. (Установите инструмент Linux для распаковки, если он еще не установлен.)
Обновите настроенную область буфера. Для установки компонентов Oracle Grid требуется по крайней мере 6,8 ГБ области буфера. Размер файла подкачки по умолчанию для образов Oracle Linux в Azure всего 2048 МБ. Вам нужно увеличить значение ResourceDisk.SwapSizeMB в файле /etc/waagent.conf и перезапустить службу WALinuxAgent, чтобы изменения вступили в силу. Так как это файл только для чтения, необходимо изменить разрешения, чтобы включить доступ для записи.
Найдите параметр ResourceDisk.SwapSizeMB и измените его значение на 8192. Необходимо будет нажать insert , чтобы перейти в режим вставки, ввести значение 8192 и нажать клавишу esc для возврата в режим команд. Чтобы записать изменения и закрыть файл, введите :wq и нажмите клавишу enter .
Для достижения оптимальной производительности и настройки области буфера мы настоятельно рекомендуем использовать WALinuxAgent , чтобы он всегда создавался на локальном временном диске. Дополнительные сведения см. в статье How to add a swap file in Linux Azure virtual machines (Как добавить файл подкачки на виртуальной машине Linux Azure).
Подключение к виртуальной машине
Чтобы создать сеанс SSH с виртуальной машиной и настроить дополнительные параметры, используйте следующую команду. Замените IP-адрес общедоступным IP-адресом виртуальной машины (значение publicIpAddress ).
Установка Oracle ASM
Чтобы установить ASM, сделайте следующее:
Дополнительные сведения об установке Oracle ASM см. в статье Oracle ASMLib Downloads for Oracle Linux 6 (Скачиваемые компоненты Oracle ASMLib для Oracle Linux 6).
Необходимо войти в систему как привилегированный пользователь, чтобы продолжить установку ASM:
Выполните эти дополнительные команды для установки компонентов Oracle ASM:
Убедитесь, что служба Oracle ASM установлена:
Выходные данные этой команды должны содержать следующие компоненты:
Для правильной работы ASM требуется конкретный пользователь и роли. Следующие команды создают необходимые учетные записи пользователей и группы:
Убедитесь, что пользователи и группы созданы правильно:
Выходные данные этой команды должны содержать следующих пользователей и группы:
Создайте папку для пользователя grid и смените владельца:
Удаление виртуальной машины
Вы успешно настроили Oracle ASM на основе образа база данных Oracle из Azure Marketplace. Вы можете удалить ставшие ненужными группу ресурсов, виртуальную машину и все связанные с ней ресурсы, использовав следующую команду:
Как известно, кластеры позволяют решать проблемы, связанные с производительностью, балансировкой нагрузки и отказоустойчивостью. Для построения кластеров используются различные решения и технологии, как на программном, так и на аппаратном уровне. В этой статье будут рассмотрены программные решения, предлагаемые компаниями Microsoft и Oracle.
Подготовка среды
Windows Clustering
У Microsoft существуют решения для реализации каждого из трех типов кластеров. В состав Windows Server 2008 R2 входят две технологии: Network Load Balancing (NLB) Cluster и Failover Cluster. Существует отдельная редакция Windows Server 2008 HPC Edition для организации высокопроизводительных вычислительных сред. Эта редакция лицензируется только для запуска HPC-приложений, то есть на таком сервере нельзя запускать базы данных, web- или почтовые сервера.
NLB-кластер используется для фильтрации и распределения TCP/IPтрафика между узлами. Такой тип кластера предназначен для работы с сетевыми приложениями — например, IIS, VPN или межсетевым экраном.
Могут возникать сложности с приложениями, которые полага ются на сессионные данные, при перенаправлении клиента на другой узел, на котором этих данных нет. В NLB-кластер можно включать до тридцати двух узлов на x64-редакциях, и до шестнадцати — на x86.
Failoverclustering — это кластеризации с переходом по отказу, хотя довольно часто термин переводят как «отказоустойчивые кластеры».
Узлы кластера объединены программно и физически с помощью LAN- или WAN-сети, для multi-site кластера в Windows Server 2008 убрано требование к общей задержке 500 мс, и добавлена возможность гибко настраивать heartbeat. В случае сбоя или планового отключения сервера кластеризованные ресурсы переносятся на другой узел. В Enterprise edition в кластер можно объединять до шестнадцати узлов, при этом пятнадцать из них будут простаивать до тех пор, пока не произойдет сбой. Приложения без поддержки кластеров (cluster-unaware) не взаимодействуют со службами кластера и могут быть переключены на другой узел только в случае аппаратного сбоя.
Приложения с поддержкой кластеров (cluster-aware), разработанные с использованием ClusterAPI, могут быть защищены от программных и аппаратных сбоев.
Установка Oracle Grid Infrastructure
Чтобы установить Oracle Grid Infrastructure, сделайте следующее:
Выполните вход в качестве пользователя grid. Вы сможете войти, не вводя пароль.
Если вы используете Windows, перед установкой запустите Xming.
Откроется установщик Oracle Grid Infrastructure 12c Release 1. (Запуск установщика может занять несколько минут.)
На странице выбора варианта установки выберите Install and Configure Oracle Grid Infrastructure for a Standalone Server (Установить и настроить Oracle Grid Infrastructure для автономного сервера).
На странице Create ASM Disk Group (Создание группы дисков ASM) сделайте следующее:
На странице указания пароля ASM установите переключатель Use same passwords for these accounts (Использовать одинаковые пароли для этих учетных записей) и введите пароль.
На странице указания параметров управления предусмотрен параметр настройки EM Cloud Control. Мы пропустим его. Щелкните next , чтобы продолжить.
На странице привилегированных групп ОС используйте параметры по умолчанию. Щелкните next , чтобы продолжить.
На странице указания расположения установки используйте параметры по умолчанию. Щелкните next , чтобы продолжить.
На странице создания инвентаризации смените каталог инвентаризации на /u01/app/grid/oraInventory . Щелкните next , чтобы продолжить.
На странице Root script execution configurationRoot script execution configuration (Конфигурация выполнения корневого сценария) установите флажок Automatically run configuration scripts (Запускать сценарии настройки автоматически). Затем установите флажок Use "root" user credential (Использовать учетные данные привилегированного пользователя) и введите пароль привилегированного пользователя.
На странице выполнения предварительных проверок установка завершится ошибкой. Это ожидаемое поведение. Выберите Fix & Check Again .
В диалоговом окне Fixup Script (Сценарий исправления) нажмите кнопку OK .
На странице Сводка просмотрите выбранные параметры и нажмите кнопку Install .
Появится диалоговое окно с предупреждением о том, что сценарии настройки может выполнять только привилегированный пользователь. Щелкните Yes , чтобы продолжить.
На странице завершения нажмите кнопку Close для завершения установки.
Настроить общую архитектуру
Кластер, в котором все узлы имеют доступ к общему хранилищу и данным одновременно, называется структурой общего доступа или общего доступа. Oracle RAC основан на архитектуре общего доступа: база данных находится в общем хранилище и доступна через экземпляры, запущенные на каждом узле кластера. В терминологии Oracle экземпляр состоит из структуры памяти и некоторых процессов. Соответственно, база данных хранится в файле данных на диске. В RAC отказ экземпляра не означает потерю данных, которыми управляет экземпляр. После выхода из строя узла другой экземпляр в кластере выполнит восстановление экземпляра, а все оставшиеся узлы продолжат работу. Использование технологий высокой доступности, таких как FCF или TAF, может минимизировать влияние сбоя экземпляра на пользователей. Отказавший узел в конечном итоге снова присоединится к кластеру и разделит рабочую нагрузку.
Содержание
Oracle RAC
Oracle Real Application Clusters (RAC) — это дополнительная опция Oracle Database, которая впервые появилась в Oracle Database 9i под названием OPS (Oracle Parallel Server). Опция предоставляет возможность нескольким экземплярам совместно обращаться к одной базе данных. Базой данных в Oracle Database называет ся совокупность файлов данных, журнальных файлов, файлов параметров и некоторых других типов файлов. Для того, чтобы пользовательские процессы могли получить доступ к этим данным, должен быть запущен экземпляр. Экземпляр (instance) в свою очередь состоит из структур памяти (SGA) и фоновых процессов. В отсутствии RAC получить доступ к базе данных может строго один экземпляр.
Опция RAC не поставляется с Enterprise Edition и приобретается отдельно. Стоит отметить, что при этом RAC идет в составе Standard Edition, но данная редакция обладает большим количеством ограничений по сравнению с Enterprise Edition, что ставит под сомнение целесообразность ее использования.
Структура процесса
После завершения установки будут созданы некоторые фоновые процессы, чтобы убедиться, что кластер работает правильно и может взаимодействовать с внешним миром. Некоторые из упорядоченных требований платформы Linux необходимо активировать с полномочиями пользователя root. Например, для изменения конфигурации сети требуются более высокие права доступа. Другие фоновые процессы будут выполняться под управлением пользователя системы, в которой находится программное обеспечение grid. В следующей таблице описаны основные фоновые процессы.
закулисный процесс | Описание |
Служба высокой доступности Oracle (OHAS) | OHAS - это первый компонент сетевой инфраструктуры, открытый после запуска сервера. Он настроен на открытие с помощью init (1) и отвечает за создание процесса агента. |
Oracle Agent | Грид-инфраструктура использует два процесса агента Oracle. Первый, вкратце, отвечает за открытие некоторых ресурсов, которым необходим доступ к файлам OCR и VOTING. Он был создан дизайнером OHAS. Второй процесс агента создается CRSD и отвечает за открытие всех ресурсов, для доступа к которым не требуются права root. Этот процесс выполняется под управлением пользователя, которому принадлежит Grid Infrastructure, и отвечает за работу, выполняемую racg в RAC 11.1. |
Oracle Root Agent | Подобно процессу агента Oracle, создаются два корневых процесса агента. Первоначальный процесс агента запускается OHAS, который обеспечивает инициализацию ресурсов, требующих более высоких привилегий в системе Linux. Основные создаваемые фоновые процессы - это CSSD и CRSD. В свою очередь, CRSD запустит другой корневой агент. Этот агент будет открывать основные и сетевые ресурсы, которым требуются права root. |
Кластерный процесс обслуживания (CRSD) | Основной фоновый процесс программного обеспечения кластера использует регистрационную информацию кластера Oracle для управления ресурсами в кластере. |
Процесс службы синхронизации кластера (CSSD) | Управление конфигурацией кластера и членством в узлах |
Мониторинг процессов Oracle (OPROCD) | oprocd отвечает за изоляцию ввода-вывода в версии 11.1. Он был введен для системы Linux в наборе исправлений 10.2.0.4. Перед установкой этого патча ядро Модуль таймера зависания используется для выполнения аналогичных задач. Интересно, что oprocd раньше часто использовался на платформах, отличных от Linux. Грид-инфраструктура заменила процесс opocd процессом cssdagent. |
Менеджер мероприятий (EVM) | EVM отвечает за публикацию событий, созданных Grid Infrastructure. |
Служба синхронизации времени кластера (CTSS) | Услуга CTSS является дополнительной. Она обеспечивает синхронизацию времени для кластера через сервер сетевого протокола времени. Эта синхронизация времени очень важна для RAC. Он может работать в двух режимах: ждать и смотреть или активен. Когда NTP активирован, он работает в режиме наблюдения.Если NTP не активирован, он синхронизирует время всех узлов в соответствии с главным узлом. |
Служба предупреждений Oracle (ONS) | Основной фоновый процесс, отвечающий за публикацию событий через среду быстрого приложения. |
В RAC11.2 последовательность запуска сетевой инфраструктуры значительно изменилась. Вместо открытия CRS, CSS и EVM напрямую через inittab (5) процесс OHAS теперь в основном отвечает за создание процессов агентов, мониторинг состояния других узлов и открытие ресурсов кластера. В процессе управления, не относящемся к Oracle, NTP играет особую роль: в каждом кластере он должен обеспечивать синхронизацию часов, и Grid Infrastructure не является исключением.
Продукты, основанные на Grid Engine
- Sun Constellation System
- Sun Visualization System
- Sun Compute Cluster
- ClusterVisionOS Distribution
- Rocks Cluster Distribution
- EGEE
- Univa UD's UniCluster Express
- BioTeam's iNquiry
Типичный кластер на основе Grid Engine состоит из управляющего узла и одного или более исполняющих узлов. Могут быть сконфигурированы несколько дополнительных управляющих узлов (shadow masters), которые могут взять на себя управление в случае сбоя основного узла.
Среди организаций, использующих инструмент — суперкомпьютер Tsubame в Токийском технологическом институте, суперкомпьютер Ranger в Техасском центре высокоскоростных вычислений, кластеры в Суперкомпьютерном центре в Сан-Диего и Геофизической лаборатории динамики жидкости. Сервис Sun Cloud также использовал инструмент для управления кластерами. [Источник 1]
Кластерная архитектура
Типичный кластер на основе Grid Engine состоит из управляющего узла и одно или более исполняющих узлов. Могут быть сконфигурированы несколько дополнительных управляющих узлов (shadow masters), которые могут взять на себя управление в случае сбоя основного узла.
Развертывание failover-кластера
Процедуру установки кластера можно разделить на четыре этапа. На первом этапе необходимо сконфигурировать аппаратную часть, которая должна соответствовать The Microsoft Support Policy for Windows Server 2008 Failover Clusters. Все узлы кластера должны состоять из одинаковых или сходных компонентов. Все узлы кластера должны иметь доступ к хранилищу, созданному с использованием FibreChannel, iSCSI или Serial Attached SCSI. От хранилищ, работающих с Windows Server 2008, требуется поддержка persistent reservations.
На втором этапе на каждый узел требуется добавить компонент Failover Clustering — например, через Server Manager. Эту задачу можно выполнять с использованием учетной записи, обладающей административными правами на каждом узле. Серверы должны принадлежать к одному домену. Желательно, чтобы все узлы кластера были с одинаковой ролью, причем лучше использовать роль member server, так как роль domain controller чревата возможными проблемами с DNS и Exchange.
Третий не обязательный, но желательный этап заключается в проверке конфигурации. Проверка запускается через оснастку Failover Cluster Management. Если для проверки конфигурации указан только один узел, то часть проверок будет пропущена.
На четвертом этапе создается кластер. Для этого из Failover Cluster Management запускается мастер Create Cluster, в котором указываются серверы, включаемые в кластер, имя кластера и дополнительные настройки IP-адреса. Если серверы подключены к сетям, которые не будут использоваться для общения в рамках кластера (например, подключение только для обмена данными с хранилищем), то в свойствах этой сети в Failover Cluster Management необходимо установить параметр «Do not allow the cluster to use this network».
После этого можно приступить к настройке приложения, которое требуется сконфигурировать для обеспечения его высокой доступности.
Для этого необходимо запустить High Availability Wizard, который можно найти в Services and Applications оснастки Failover Cluster Management.
Поддерживаемые операционные системы
Поддержка Windows возможна только для исполняющих узлов через SFU (Interix) или SUA (Microsoft Windows Services for UNIX).
История
Корни Grid Engine как коммерческого продукта уходят в 1993 год, когда был разработан продукт под названием CODINE (Computing in Distributed Networked Environments) или, в другой версии, GRD (Global Resource Director). Коммерческое распространение впервые было начато компанией Genias Software, которая с 1999 года объединилась с Gridware, Inc. В 2000 году Sun Microsystems купила Gridware, и позднее в том же году Sun переименовала CODINE/GRD в Sun Grid Engine. В 2001 году исходный код продукта был открыт. В 2002 году Sunкупила компанию Terraspring, разработки которой были интегрированы в Sun Grid Engine, что стало важным шагом в конкурентной борьбе с HP, которая предлагала продукт со схожей функциональностью — HP Utility Data Center. После поглощения Sun в 2010 году корпорацией Oracle Sun Grid Engine перешёл в активы Oracle, которая в 2013 году продала все права на продукт компании Univa.
Обычно используется на компьютерных фермах или высокопроизводительных кластерах и отвечает за управление распределённой работой большого числа отдельных, параллельных или интерактивных пользовательских задач. Также отвечает за выделение распределённых ресурсов таких как процессоры, память, дисковое пространство.
Установка SGE
Clusterware/Grid Infrastructure
Изоляция ввода / вывода:
Когда в кластерной системе есть проблема «разделения мозга», мы можем использовать «алгоритм голосования» для решения проблемы того, кто получает контроль над кластером. Но этого недостаточно.Мы также должны убедиться, что удаленный узел не может манипулировать общими данными. Это проблема, которую необходимо решить с помощью IO Fencing.
IO Fencing можно реализовать двумя способами: аппаратным и программным.
Программный метод: для устройств хранения, поддерживающих команды SCSI Reserve / Release, вы можете использовать команды SG для достижения. Нормальный узел использует команду SCSI Reserve для «блокировки» устройства хранения. После того, как отказавший узел обнаруживает, что устройство хранения заблокировано, он знает, что оно было вытеснено из кластера, что означает, что он находится в ненормальной ситуации и должен перезапустить его для восстановления. В нормальное состояние. Этот механизм также называют Sicide (самоубийство). Sun и Veritas используют этот механизм.
Аппаратный метод: STONITH (Shoot The Other Node in the Head), этот метод напрямую управляет выключателем питания, когда один узел выходит из строя, если другой узел может его обнаружить, он будет Команды подаются через последовательный порт для управления выключателем питания неисправного узла, и неисправный узел перезапускается путем временного выключения и включения. Этот метод требует аппаратной поддержки.
Установка через GUI
Для запуска графического установщика войдите в каталог, куда установлен SGE (например, /opt/sge) и запустите скрипт. Для этого на компьютере должна быть установлена Java 5 или выше.
После прочтения лицензии выберите, какие узлы будут установлены в сети. Если вы не уверены, оставьте значения по умолчанию. Допустим, что вычислительная сеть будет состоять из главной машины (Qmaster host) и нескольких подчинённых (Execution host). Укажите параметры для главной машины: администратора, имя, порты. На следующей странице добавьте подчинённые узлы (Execution hosts). В конце нажмите Install! [Источник 2]
Читайте также: