Учебное пособие: перенос сервера приложений JBoss EAP на виртуальные машины Azure с высокой доступностью и аварийным восстановлением
В этом руководстве описан простой и эффективный способ реализации высокого уровня доступности и аварийного восстановления (HA/DR) для Java с помощью JBoss EAP на виртуальных машинах Azure. Решение показывает, как достичь низкой цели времени восстановления (RTO) и целевой точки восстановления (RPO) с помощью простого приложения Jakarta EE на основе базы данных, работающего на сервере приложений JBoss EAP. HA/DR — это сложная тема с множеством возможных решений. Оптимальное решение зависит от уникальных требований. Другие способы реализации постоянной доступности и аварийного восстановления можно найти в конце этой статьи.
В этом руководстве описано, как:
- Настройте кластер JBoss EAP на виртуальных машинах Azure.
- Используйте оптимизированные для Azure рекомендации по обеспечению высокой доступности и аварийного восстановления.
- Настройте группу восстановления после отказа базы данных SQL Microsoft Azure в связанных регионах.
- Настройте аварийное восстановление для кластера с помощью Azure Site Recovery.
- Настройка диспетчера трафика Azure.
- Тестирование переключения с основной системы на вторичную систему.
На следующей схеме показана архитектура, которую вы создаете:
Диспетчер трафика Azure проверяет работоспособность регионов и направляет трафик соответствующим образом на уровень приложения. Основной регион имеет полное развертывание кластера JBoss EAP. После того как основной регион защищен с помощью Azure Site Recovery , вы можете восстановить дополнительный регион во время аварийного переключения. В результате основной регион активно обслуживает сетевые запросы от пользователей, а дополнительный регион пассивный и активируется для получения трафика, только если основной регион испытывает нарушение работы службы.
Диспетчер трафика Azure обнаруживает работоспособность приложения, развернутого в кластере JBoss EAP для реализации условной маршрутизации. RTO георезервирования прикладного уровня зависит от времени завершения работы основного кластера, восстановления вторичного кластера, запуска виртуальных машин и работы вторичного кластера JBoss EAP. RPO зависит от политики репликации Azure Site Recovery и Базы данных SQL Azure, так как данные кластера хранятся и реплицируются в локальном хранилище виртуальных машин и данных приложения, сохраняются и реплицируются в группе отработки отказа базы данных SQL Azure.
На приведенной выше схеме показаны основной регион и дополнительный регион в качестве двух регионов, составляющих архитектуру высокого уровня доступности и аварийного восстановления. Эти регионы должны быть парными регионами Azure. Для получения дополнительной информации о парных регионах см. раздел кросс-региональной репликации Azure. В статье используется восточная часть США и западная часть США в качестве двух регионов, но они могут быть любыми парными регионами, которые должны иметь смысл для вашего сценария. Список пар регионов см. в разделе парных регионов Azure раздела репликации между регионами Azure.
Уровень базы данных состоит из группы переключения при отказе базы данных Azure SQL с первичным и вторичным серверами. Конечная точка прослушивателя чтения и записи всегда указывает на основной сервер и подключается к кластеру JBoss EAP в каждом регионе. Геоотказоустойчивость переключает все вторичные базы данных в группе на основную роль. Сведения о географической отработки отказа RPO и RTO базы данных SQL Azure см. в обзорнепрерывности бизнес-процессов.
Это руководство было написано с помощью Azure Site Recovery и службы базы данных SQL Azure, так как в этом руководстве используются функции высокой доступности этих служб. Другие варианты базы данных возможны, но функции высокой доступности любой выбранной базы данных должны рассматриваться.
Необходимые условия
- Если у вас нет подписки Azure, создайте бесплатную учетную запись прежде чем начать.
- Убедитесь, что у вас есть роль
Contributor
в подписке. Чтобы проверить назначение, выполните действия, описанные в разделе Перечисление назначений ролей Azure с использованием портала Azure. - Подготовьте локальный компьютер с установленным windows, GNU/Linux или macOS.
- Установите и настройте Git.
- Установите реализацию Java SE версии 17 или более поздней (например, сборку OpenJDKМайкрософт).
- Установите Mavenверсии 3.9.3 или более поздней.
Настройка группы отказоустойчивости базы данных SQL Azure в парных регионах
В этом разделе описано, как создать группу отработки отказа базы данных SQL Azure в парных регионах для использования с кластерами ИАП JBoss EAP и приложением.
Сначала создайте основную базу данных Azure SQL, следуя шагам, описанным на портале Azure в "Краткое руководство: создание одной базы данных - Azure SQL Database". Следуйте инструкциям, но не включая очистку ресурсов. Используйте следующие инструкции, как описано в статье, а затем вернитесь к этой статье после создания и настройки базы данных SQL Azure.
Когда вы перейдете к разделу Создание одной базы данных, выполните следующие действия.
На шаге 4, для создания новой группы ресурсов, запишите значение имени группы ресурсов — например,
sqlserver-rg-gzh032124
.На шаге 5 для названия базы данных запишите значение имени базы данных, например,
mySampleDatabase
.На шаге 6 для создания сервера выполните следующие действия.
- Введите уникальное имя сервера, например
sqlserverprimary-gzh032124
. - Для расположениявыберите (США) восточная часть США.
- Для метода аутентификации выберите параметр "Использовать аутентификацию SQL".
- Запишите значение входа администратора сервера
, например . - Запишите значение пароля .
- Введите уникальное имя сервера, например
На шаге 8 для среды рабочей нагрузки выберите development. Просмотрите описание и рассмотрите другие варианты рабочей нагрузки.
На шаге 10 для уровня вычисленийвыберите выделенный.
На шаге 11 в отношении хранилища резервных копийвыберите локально избыточное хранилище резервных копий. Рассмотрим другие варианты резервного копирования. Дополнительные сведения см. в разделе Избыточность системы хранения резервных копийАвтоматизированные резервные копии в базе данных Azure SQL.
На шаге 14 в конфигурации правил брандмауэра
для разрешить службам и ресурсам Azure доступ к этому серверу , выберитеДа .Когда вы перейдете к разделу Запрос к базе данных, выполните следующие действия, а не действия, описанные в другой статье:
На шаге 3 введите проверку подлинности SQL сведения о входе администратора сервера для входа.
Заметка
Если при входе выдается сообщение об ошибке, аналогичное Client с IP-адресом 'xx.xx.xx.xx' не разрешен доступ к серверу, выберите Разрешить IP-адрес xx.xx.xx.xx на сервере <your-sqlserver-name> в конце сообщения об ошибке. Дождитесь завершения обновления правил брандмауэра сервера, а затем нажмите кнопку ОК еще раз.
После запуска пробного запроса на шаге 5 очистите редактор и введите следующий запрос, а затем снова выберите Выполнить:
CREATE TABLE ispn_entry_sessions_javaee_cafe_war ( id VARCHAR(255) PRIMARY KEY, -- ID Column to hold cache entry ids data VARBINARY(MAX), -- Data Column to hold cache entry data timestamp BIGINT, -- Timestamp Column to hold cache entry timestamps segment INT );
После успешного выполнения появится сообщение, запрос выполнен успешно: затронутые строки: 0.
Таблица базы данных
ispn_entry_sessions_javaee_cafe_war
используется для хранения данных сеанса для кластера JBoss EAP.
Затем создайте группу отработки отказа базы данных SQL Azure, выполнив действия портала Azure, описанные в настройке группы отработки отказа для базы данных SQL Azure. Вам потребуются только следующие разделы: Создание группы для отработки отказа и Планируемое тестирование отработки отказа. Выполните следующие действия, как описано в этой статье, а затем вернитесь к этой статье после создания и настройки группы отработки отказа базы данных SQL Azure:
Когда вы перейдете к разделу создание группы отработки отказа, выполните следующие действия.
На шаге 5 для создания группы отработки отказа введите и запишите уникальное имя группы отработки отказа, например
failovergroup-gzh032124
.На шаге 5 для настройки сервера выберите параметр для создания нового сервера-получателя, а затем выполните следующие действия.
- Введите уникальное имя сервера, например
sqlserversecondary-gzh032124
. - Введите тот же администратор сервера и тот же пароль, что и на основном сервере.
- Для расположениявыберите (США) Запад США 2.
- Убедитесь, что выбран параметр Разрешить службам Azure доступ к серверу.
- Введите уникальное имя сервера, например
На шаге 5 для настройки баз данных в группевыберите базу данных, созданную на сервере-источнике, например
mySampleDatabase
.
После выполнения всех шагов в разделе Тест плановой отработки отказаоставьте страницу открытой и используйте её впоследствии для тестирования отказоустойчивости кластеров JBoss EAP.
Заметка
В этой статье рассказывается, как создать одиночную базу данных Azure SQL с аутентификацией SQL для упрощения, поскольку настройка HA/DR, описанная в этой статье, уже весьма сложна. Более безопасная практика заключается в использовании проверки подлинности Microsoft Entra для SQL Azure для проверки подлинности подключения к серверу базы данных.
Настройка основного кластера JBoss EAP на виртуальных машинах Azure
В этом разделе описано, как создать основные кластеры JBoss EAP на виртуальных машинах Azure с помощью кластера JBoss EAP на виртуальных машинах. Вторичный кластер восстанавливается из основного кластера позже, во время переключения на резервный кластер с помощью Azure Site Recovery.
Развертывание основного кластера JBoss EAP
Сначала откройте кластер JBoss EAP на виртуальных машинах в браузере и выберите Создать. Вы увидите область базовых предложения.
Чтобы заполнить панель Базовые, выполните следующие действия.
- Убедитесь, что значение, отображаемое для подписки , соответствует тому, которое указано с ролями в разделе предварительных требований.
- Необходимо развернуть оферту в пустой группе ресурсов. В поле группы ресурсов
выберите Создать новую и введите уникальное значение для группы ресурсов, например. - В разделе Сведения об экземплярев поле Регионвыберите Восток США.
- Укажите пароль для Пароль и используйте то же самое значение для Подтверждение пароля.
- Для количество виртуальных машин для созданиявведите 3.
- Оставьте другие поля по умолчанию.
- Выберите Далее, чтобы перейти на панель настроек JBoss EAP.
Чтобы заполнить панель настроек JBoss EAP, выполните следующие действия.
- Укажите пароль JBoss EAP для JBoss EAP , пароль. Используйте то же значение для подтвердите пароль. Запишите значение для последующего использования.
- Оставьте другие поля по умолчанию.
- Выберите
Далее , чтобы перейти на панельшлюза приложений Azure.
Чтобы заполнить область шлюза приложений Azure, выполните следующие действия.
- Для Подключения к шлюзу приложений Azure?выберите Да.
- Оставьте другие поля по умолчанию.
- Выберите Далее, чтобы перейти на вкладку Сети.
Все поля должны быть предварительно заполнены значениями по умолчанию в области Сеть. Выберите Далее, чтобы перейти на панель базы данных.
Чтобы заполнить область базы данных
- Для Подключиться к базе данныхвыберите Да.
- Для выбор типа базы данныхвыберите Microsoft SQL Server.
- Для JNDI-именивведите java:jboss/datasources/JavaEECafeDB.
- Для строки подключения к источнику данных (jdbc:sqlserver://<>:<порта>; database=<базы данных>), замените заполнители значениями, записанными из предыдущего раздела для группы отработки отказа базы данных SQL Azure, например
jdbc:sqlserver://failovergroup-gzh032124.database.windows.net:1433;database=mySampleDatabase
. - Для имени пользователя базы данныхвведите имя входа администратора сервера и имя группы отработки отказа, записанное из предыдущего раздела, например
azureuser@failovergroup-gzh032124
. - Введите пароль администратора сервера для входа, который вы записали ранее, для пароля базы данных. Введите то же значение для Confirm password.
- Выберите Проверите и создайте.
- Подождите, пока Выполнение окончательной проверки... успешно завершится, а затем выберите Создать.
Через некоторое время вы увидите страницу развертывания, на которой отображается, что развертывание в процессе.
Заметка
Если вы видите какие-либо проблемы во время выполнения окончательной проверки..., исправьте эти проблемы и попробуйте снова.
В зависимости от сетевых условий и других действий в выбранном регионе развертывание может занять до 35 минут. После этого вы должны увидеть текст Развертывание завершено, отображаемый на странице развертывания.
Проверка функциональности развертывания
Выполните следующие действия, чтобы проверить функциональные возможности развертывания кластера JBoss EAP на виртуальных машинах Azure из консоли управления Red Hat JBoss Enterprise Application Platform:
На странице ваше развертывание завершеновыберите Результаты.
Щелкните значок копирования рядом с adminConsole.
Вставьте URL-адрес в веб-браузер, подключенный к Интернету, и нажмите клавишу Enter. Вы должны увидеть знакомый экран входа в систему консоли управления Red Hat JBoss Enterprise Application Platform, как показано на следующем снимке экрана.
Введите
jbossadmin дляимени пользователя администратора JBoss EAP Укажите значениепароля JBoss EAP, указанного ранее для пароля , а затем выберитевойти .Вы увидите знакомую страницу приветствия Red Hat JBoss Enterprise Application Platform консоли управления, как показано на следующем снимке экрана.
Перейдите на вкладку Выполнение. В навигации выберите Топология. Вы должны увидеть, что кластер содержит один контроллер домена мастер и два рабочих узла, как показано на следующем снимке экрана.
Оставьте консоль управления открытой. Он используется для развертывания примера приложения в кластере JBoss EAP в следующем разделе.
Настройка кластера
Чтобы настроить распределенные сеансы базы данных для всех серверов приложений, выполните следующие действия.
Выберите Конфигурация в панели навигации. Затем выберите Профили >ha>Infinspan>Web.
В столбце кэша выберите Добавить распределённый кэш.
Для именивведите сеанса Azure, а затем выберите Добавить.
Вы должны увидеть сообщение распределенного кэша azure-session успешно добавлено. Если вы не видите это сообщение, проверьте центр уведомлений. Перед продолжением необходимо увидеть это сообщение.
После добавления кэша выберите azure-session>View.
Выберите Магазин.
Измените раскрывающееся меню, чтобы отобразить JDBC, а затем выберите Добавить.
Для источника данныхвыберите dataSource-mssqlserver, а затем выберите Добавить.
Вы должны увидеть сообщение JDBC успешно добавлено. Если вы не видите это сообщение, проверьте центр уведомлений. Перед продолжением необходимо увидеть это сообщение.
На странице Store: JDBC выберите Редактировать. Задайте следующие значения свойств:
- Задайте значение для диалекта на SQL_SERVER.
- Задайте пассивацию в положение OFF.
- Установите значение для очистки на OFF .
- Задайте для общих значение ON ON.
Выберите Сохранить.
Должно появиться сообщение, JDBC успешно изменено. Если вы не видите это сообщение, проверьте центр уведомлений. Перед продолжением необходимо увидеть это сообщение.
Измените таблицу строк, выбрав Таблица строк>Изменить. Введите следующие значения, а затем выберите Сохранить:
- Задайте для префикса значениеispn_entry_sessions.
- Задайте столбец идентификатора или имя столбца ID для ID идентификатора.
- Задайте типа столбца
идентификатора и идентификатора VARCHAR(255). - Установите в столбец данных или имя столбца данных значение данных.
- Задайте столбец данных / тип столбца данных на VARBINARY(MAX).
- Установите столбец метки времени / имя столбца метки времени на таймстамп .
- Установите для столбца метки времени или типа столбца метки времени значение BIGINT.
Все опечатки здесь вызывают сбой всей системы. Перед продолжением внимательно проверьте заполненные значения.
Выберите Сохранить.
Вы увидите сообщение таблица строк успешно изменена. Если вы не видите это сообщение, проверьте центр уведомлений. Перед продолжением необходимо увидеть это сообщение.
Выберите «Конфигурация» на верхней панели навигации. Затем выберите профили>ha>распространяемый веб>вид.
Выберите Infinspan SSO>по умолчанию>Изменить.
Задайте значение кэша на azure-session , а затем выберите Сохранить .
Появится сообщение Infinispan Single Sign On Management по умолчанию успешно изменено. Если вы не видите это сообщение, проверьте центр уведомлений. Перед продолжением необходимо увидеть это сообщение.
Используйте топологию для перезагрузки или перезапуска затронутых серверов.
Выберите среду выполнения на панели навигации и выберите топологию.
Для каждой строки в столбце основной группы серверов выберите сервер, а затем выберите Перезагрузить.
Перезагружаемые ячейки теперь должны отображать цвет зеленый.
Развертывание приложения в кластере JBoss EAP
Выполните следующие действия, чтобы развернуть пример приложения JavaEE Cafe в кластере Red Hat JBoss EAP:
Выполните следующие действия, чтобы создать пример Кафе Java EE. В этих шагах предполагается, что у вас есть локальная среда с установленными Git и Maven.
Используйте следующую команду, чтобы клонировать исходный код из GitHub и извлечь тег, соответствующий этой версии статьи:
git clone https://github.com/Azure/rhel-jboss-templates.git --branch 20240904 --single-branch
Если появится сообщение об ошибке с текстом
You are in 'detached HEAD' state
, вы можете безопасно игнорировать его.Чтобы создать исходный код, используйте следующую команду:
mvn clean install --file rhel-jboss-templates/eap-coffee-app/pom.xml
Эта команда создает файл rhel-jboss-templates/eap-coffee-app/target/javaee-café.war. Вы отправляете этот файл на следующем шаге.
Выполните следующие действия в консоли управления Red Hat JBoss Enterprise Application Platform для загрузки javaee-cafe.war в репозиторий содержимого:
На вкладке Deployments консоли управления Red Hat JBoss EAP выберите Content Repository на панели навигации.
Выберите Добавить и затем выберите Загрузить контент.
Используйте средство выбора файла браузера, чтобы выбрать файл javaee-café.war.
Выберите Далее.
Примите значения по умолчанию на следующем экране и нажмите кнопку Готово.
Выберите Просмотреть содержимое.
Чтобы развернуть приложение в
main-server-group
, выполните следующие действия.Врепозитория содержимого
выберите javaee-café.war .Откройте раскрывающееся меню и выберите Развернуть.
Выберите main-server-group в качестве группы серверов для развертывания javaee-café.war.
Выберите Развернуть, чтобы начать развертывание. Вы увидите уведомление, аналогичное следующему снимку экрана:
Теперь вы завершите развертывание приложения JavaEE. Выполните следующие действия, чтобы получить доступ к приложению и проверить все параметры:
В поле поиска в верхней части портала Azure введите группы ресурсов и выберите группы ресурсов в результатах поиска.
Выберите имя группы ресурсов, например
jboss-eap-cluster-eastus-gzh032124
.Выберите ресурс Шлюза приложений в группе ресурсов.
Скопируйте общедоступный IP-адрес Frontend из области обзора .
Создайте URL-адрес с IP-адресом и путем, например,
http://40.88.26.22/javaee-cafe
.Вставьте URL-адрес в панель навигации веб-браузера, а затем нажмите клавишу ВВОД. Вы увидите домашнюю страницу приложения JavaEE Cafe.
Создайте два кофе с разными именами и ценами. На следующем снимке экрана вы увидите страницу, аналогичную следующей:
Настройка вторичного кластера JBoss EAP на виртуальных машинах Azure
Развертывание вторичного кластера JBoss EAP
Выполните действия, описанные в разделе Развертывание основного кластера JBoss EAP, для развертывания вторичного кластера JBoss EAP в соответствующем парном регионе. В этом примере используется западная часть США 2. При использовании предложения вторичный кластер JBoss EAP настраивается таким образом, чтобы можно было использовать Azure Site Recovery для восстановления топологии.
Откройте кластер JBoss EAP на виртуальных машинах в браузере и выберите Создать. Вы должны увидеть панель Основы предложения.
Чтобы заполнить панель Базовые, следуйте этим шагам.
В поле Группа ресурсов выберите Создать новую и введите уникальное значение для группы ресурсов, например
jboss-eap-cluster-westus-gzh032124
.В разделе Сведения об экземпляредля регионавыберите West US 2.
Оставьте остальные те же, что и основной кластер.
Для панели параметров JBoss EAP оставьте такие же настройки, как в основном кластере.
В области Azure Application Gateway оставьте его таким же, как основной кластер.
В панели Сетевые откройте параметр Виртуальной сети и введите адресное пространство, которое совпадает со значением для основного кластера.
Выполните следующие действия в области базы данных.
- Оставьте его таким же, как основной кластер.
- Выберите Проверить и создать.
- Подождите, пока Выполнение окончательной проверки... успешно завершится, затем выберите Создать.
Через некоторое время вы увидите страницу Развертывание, где отображается развертывание в процессе.
Очистка неиспользуемых ресурсов в дополнительном регионе
Выполните следующие действия, чтобы очистить ресурсы в группе ресурсов с именем jboss-eap-cluster-westus-gzh032124
, которые не используются и будут реплицироваться службой Azure Site Recovery в основном регионе позже. Этот подход может показаться расточительным, но гарантирует, что вторичная группа ресурсов имеет идентичную конфигурацию первичной. Решение промышленного уровня будет использовать больше технологий инфраструктуры как кода, чтобы обеспечить идентичную конфигурацию системы, но это выходит за рамки этой статьи.
В поле поиска в верхней части портала Azure введите группы ресурсов, а затем выберите группы ресурсов в результатах поиска.
Выберите имя группы ресурсов для созданного дополнительного региона.
Рядом с текстовой областью с надписью Фильтр для любого поля...выберите значок X, чтобы удалить все фильтры.
Выберите Добавить фильтр. Установите фильтр в режим. Установите для оператора значение , чтобы оно равнялось, как указано в.
Выберите раскрывающееся меню рядом с полем «Значение ».
Установите флажок Выбрать все, пока не выбраны значения.
Убедитесь, что выбраны все следующие типы:
- Виртуальная машина
- диска
- частная конечная точка
- Сетевой интерфейс
- учетной записи хранения
Выберите раскрывающееся меню рядом с полем Value, чтобы закрыть его. Необходимо увидеть 5 типов ресурсов в качестве значения Значение.
Выберите Применить.
Установите флажок рядом с меткой Имя в верхней части отфильтрованного списка.
Выберите Удалить.
Введите удалить, чтобы подтвердить удаление, а затем выберите Удалить. Отслеживайте процесс в уведомлениях до тех пор, пока он не завершится.
Настройка аварийного восстановления для кластера с помощью Azure Site Recovery
В этом разделе описано, как настроить аварийное восстановление для виртуальных машин Azure в основном кластере с помощью Azure Site Recovery, выполнив действия, описанные в руководстве по настройке аварийного восстановления для виртуальных машин Azure. Вам потребуется только следующие разделы: создать хранилище служб восстановления и Включить репликацию. Обратите внимание на следующие действия, как описано в статье, а затем вернитесь к этой статье после защиты основного кластера:
Когда вы перейдете к разделу создание хранилища служб восстановления, выполните следующие действия.
На шаге 5 для группы ресурсовсоздайте новую группу ресурсов с уникальным именем в подписке, например
recovery-service-westus-gzh032124
.На шаге 6 для имени Vaultукажите имя хранилища, например
recovery-service-vault-westus-gzh032124
.На шаг 7 для Регионвыберите Запад США 2.
Перед выбором Проверка и создание на шаге 8 выберите Далее: Избыточность. В области избыточности выберите геоуровневое резервирование для избыточности хранилища резервных копий и Включить для восстановления между регионами.
Заметка
Убедитесь, что вы выбрали геоизбыточность для избыточности хранилища резервных копий и включение для межрегионального восстановления на панели избыточности. В противном случае хранилище основного кластера невозможно реплицировать в дополнительный регион.
Включите Site Recovery, выполнив действия, описанные в разделе Enable Site Recovery.
Когда вы перейдете к разделу Включить репликацию, выполните следующие действия.
Чтобы выбрать исходные параметры, выполните следующие действия.
Для регионавыберите восточная часть США.
Для группы ресурсоввыберите ресурс, в котором развертывается основной кластер, например
jboss-eap-cluster-eastus-gzh032124
.Заметка
Если требуемая группа ресурсов не указана, сначала можно выбрать западная часть США 2 для региона, а затем вернуться к восточной части США.
Оставьте другие поля в значениях по умолчанию
Выберите виртуальные машины. В разделе Виртуальные машинывыберите все перечисленные ВМ - например, в основном кластере для этого руководства развернуто 3 ВМ.
При проверке параметров репликации выполните следующие действия.
Для целевого расположениявыберите Запад США 2.
Для целевой группы ресурсов выберите группу ресурсов, в которой развернуто хранилище восстановления службы, например,
jboss-eap-cluster-westus-gzh032124
.Если ожидаемая группа ресурсов не отображается, выберите другой регион, а затем вернитесь к западной части США 2.
Запишите новую виртуальную сеть резервирования и подсеть резервирования, которые сопоставлены с теми, что в основном регионе.
Оставьте значения по умолчанию для других полей.
Выполните следующие действия для управления:
Для политики репликации используйте политику по умолчанию 24-часовая политика хранения. Вы также можете создать новую политику для вашего бизнеса.
Оставьте значения по умолчанию для других полей.
Воспользуйтесь следующими шагами для проверки :
После выбора Включить репликацию, обратите внимание на сообщение Создание ресурсов Azure. Не закрывайте эту страницу. отображается в нижней части страницы. Ничего не делать и ждать, пока панель не закрывается автоматически. Вы перейдете на страницу Site Recovery.
В разделе Защищенные элементывыберите Реплицированные элементы. Изначально элементы отсутствуют, так как репликация по-прежнему выполняется. Для завершения репликации требуется время — около 1 часа для работы с этим руководством. Периодически обновляйте страницу, пока все виртуальные машины не будут защищенными, как показано на следующем снимке экрана:
Затем создайте план восстановления, чтобы включить все реплицированные элементы для их совместного переключения на резервный. Используйте инструкции, описанные в разделе Создание плана восстановления, с помощью следующей настройки:
- На шаге 2 введите имя плана, например
recovery-plan-gzh032124
. - На шаге 3 выберите восточная часть США для источника и западной части США 2 для Целевой.
- На шаге 4 Выберите элементы, выберите все защищенные элементы, например, 3 защищенные виртуальные машины, используемые в этом руководстве.
Оставьте страницу открытой для последующего тестирования отказоустойчивости.
Настройка диспетчера трафика Azure
В этом разделе описано, как создать диспетчер трафика Azure для распространения трафика в общедоступные приложения в регионах Azure. Основная конечная точка указывает на общедоступный IP-адрес шлюза приложений в основном регионе, а вторичная конечная точка указывает на общедоступный IP-адрес шлюза приложений в дополнительном регионе.
Создайте профиль диспетчера трафика Azure, следуя инструкциям в кратком руководстве по . Создание профиля диспетчера трафика с помощью портала Azure. Вам потребуется только следующие разделы: создать профиль диспетчера трафика и добавить конечные точки диспетчера трафика. Выполните следующие действия, как описано в этих разделах, а затем вернитесь к этой статье после создания и настройки диспетчера трафика Azure.
Когда вы перейдете к разделу создание профиля диспетчера трафика, на шаге 2 создание профиля диспетчера трафикавыполните следующие действия.
- Запишите уникальное имя профиля диспетчера трафика для Name, например,
tm-profile-gzh032124
. - Запишите новое имя группы ресурсов для группы ресурсов — например,
myResourceGroupTM1
.
- Запишите уникальное имя профиля диспетчера трафика для Name, например,
Когда вы перейдете к разделу Добавление конечных точек Диспетчера трафика, выполните следующие шаги.
После открытия профиля диспетчера трафика на шаге 2 на странице конфигурации выполните следующие действия.
Чтобы время жизни (TTL), введите 10.
В разделе Настройки быстрого переключения конечной точкииспользуйте следующие значения:
- Для проверки внутреннихвыберите 10.
- Для допустимого количества сбоеввведите 3.
- Для времени ожидания пробы5.
Выберите Сохранить. Дождитесь завершения.
На шаге 4 для добавления основной конечной точки
myPrimaryEndpoint
выполните следующие действия:Длятипа целевого ресурса
выберите общедоступный IP-адрес .В раскрывающемся списке «Выберите общедоступный IP-адрес» введите имя общедоступного IP-адреса шлюза приложений в регионе Восток США. Вы должны увидеть одну совпадающую запись. Выберите его для публичный IP-адрес.
На шестом шаге для добавления резервной конечной точки отказоустойчивости
myFailoverEndpoint
выполните следующие действия.Длятипа целевого ресурса
выберите общедоступный IP-адрес .Выберите Выберите общедоступный IP-адрес раскрывающемся списке и введите имя общедоступного IP-адреса шлюза приложений в регионе западная часть США 2. Должно появиться одно совпадение записи. Выберите его для общедоступного IP-адреса .
Подождите некоторое время. Выберите
Обновить ,пока состояния монитора для конечной точкиonline и монитора для конечной точкис пониженным .
Затем выполните следующие действия, чтобы убедиться, что пример приложения, развернутого в основном кластере JBoss EAP, можно получить из профиля диспетчера трафика:
Выберите Обзор созданного профиля диспетчера трафика.
Проверьте и скопируйте DNS-имя профиля диспетчера трафика. Добавьте к нему /javaee-café/. Например,
http://tm-profile-gzh032124.trafficmanager.net/javaee-cafe/
.Откройте URL-адрес на новой вкладке браузера. Вы должны увидеть, что кофе, который вы создали ранее, указан на странице.
Если ваш пользовательский интерфейс не соответствует ожидаемому виду, устраните неполадку перед продолжением. Держите консоль открытой и используйте её для тестирования отработки отказа позже.
Теперь можно настроить профиль диспетчера трафика. Держите страницу открытой, чтобы можно было использовать её для мониторинга изменения состояния конечной точки в случае отказа.
Тестирование переключения с первичного на резервный
Действия, описанные в этом разделе, тестируют отказоустойчивость вручным переключением вашего сервера базы данных Azure SQL и кластера из основного в резервный и обратно, используя портал Azure.
Переключение на вторичный сайт
Сначала выполните следующие действия, чтобы переключить базу данных SQL Azure с основного сервера на дополнительный сервер:
- Перейдите на вкладку браузера группы отработки отказа базы данных SQL Azure, например
failovergroup-gzh032124
. - Выберите отработки отказа>Да.
- Дождитесь завершения.
Затем выполните следующие шаги, чтобы инициировать переключение кластеров JBoss EAP с использованием плана восстановления:
В строке поиска вверху портала Azure введите хранилища служб восстановления и выберите хранилища служб восстановления в результатах поиска.
Выберите имя хранилища служб восстановления, например
recovery-service-vault-westus-gzh032124
.В разделе Управлениевыберите Планы восстановления (Site Recovery). Выберите созданный план восстановления, например
recovery-plan-gzh032124
.Выберите Failover. Выберите Я понимаю риск. Пропустить тестовый отказ.. Оставьте значения по умолчанию для других значений. Выберите ОК.
Заметка
При необходимости можно запустить тестовой отработки отказа и тестовой отработки отказа очистки, чтобы убедиться, что все работает должным образом перед отработки отказа. Дополнительные сведения см. в руководстве Учебное пособие: запуск учебной тренировки по аварийному восстановлению для виртуальных машин Azure. В этом руководстве используется переключение при отказе непосредственно, чтобы упростить упражнение.
Отслеживайте переход на резервный ресурс в уведомлениях до его завершения. Выполнение этого руководства занимает около 10 минут.
Подтвердить переключение на резервную систему
Убедитесь, что шаги, описанные в предыдущем разделе, успешно завершены. Затем выполните следующие действия, чтобы выполнить переключение на резервный сервер:
В поле поиска в верхней части портала Azure введите хранилища служб восстановления и выберите его из результатов поиска.
Выберите хранилище служб восстановления, например
recovery-service-vault-westus-gzh032124
.В разделе Управление выберите Планы восстановления (Site Recovery).
Выберите план восстановления, например
recovery-plan-gzh032124
.Выберите Подтвердить, затем ОК.
Отслеживайте уведомления до завершения.
Выберите элементы вплана восстановления. Вы должны увидеть 3 элемента, обозначенные как Выполнено переключение на резервирование.
Отключение репликации
Выполните следующие действия, чтобы отключить репликацию для элементов в плане восстановления и удалить план восстановления:
- Для каждого элемента в плане восстановлениящелкните элемент правой кнопкой мыши, а затем выберите Отключить репликацию.
- Если вам будет предложено указать причину или причины отключения защиты для этой виртуальной машины, выберите нужный вариант, например, я выполнил перенос приложения. Выберите ОК.
- Повторите шаг 1, пока не отключите репликацию для всех элементов.
- Отслеживайте процесс в уведомлениях до тех пор, пока он не завершится.
- Выберите >Обзор Удалить. Выберите Да, чтобы подтвердить удаление.
Повторная защита узла отказоустойчивости
Теперь вторичный регион является активной площадкой аварийного восстановления, следует провести его повторную защиту в основном регионе.
Во-первых, очистите ресурсы в группе ресурсов с именем jboss-eap-cluster-eastus-gzh032124
, которые больше не используются.
В поле поиска в верхней части портала Azure введите группы ресурсов, а затем выберите группы ресурсов в результатах поиска.
Выберите имя группы ресурсов для созданного дополнительного региона.
Рядом с текстовой областью с меткой Фильтр для любого поля..., выберите X, чтобы удалить все фильтры.
Выберите Добавить фильтр. Задайте фильтра
для типа . Задайте для оператора значениеРавно.Выберите раскрывающееся меню рядом с полем Значение.
Установите флажок Выбрать все, пока не выбраны значения.
Убедитесь, что выбраны все следующие типы:
- Виртуальная машина
- диск
- частная конечная точка
- Сетевой интерфейс
- Хранилище учётной записи
Выберите раскрывающееся меню рядом с полем значение, чтобы закрыть раскрывающийся список. Необходимо увидеть 5 типов ресурсов как значение Значение.
Выберите Применить.
Установите флажок рядом с меткой Имя в верхней части отфильтрованного списка.
Выберите Удалить.
Введите удалить, чтобы подтвердить удаление, а затем выберите Удалить. Отслеживайте процесс в уведомлениях до тех пор, пока он не завершится.
Затем повторите те же шаги в разделе Настройка аварийного восстановления для кластера с помощью Azure Site Recovery в основном регионе, за исключением следующих отличий:
Чтобы создать хранилище служб восстановления, выполните следующие действия.
- Выберите группу ресурсов, развернутую в основном регионе, например
jboss-eap-cluster-eastus-gzh032124
. - Введите другое имя для хранилища служб, например
recovery-service-vault-eastus-gzh032124
. - Выберите Восток США для региона .
- Выберите группу ресурсов, развернутую в основном регионе, например
Чтобы включить репликацию, выполните следующие действия.
Для региона в источниквыберите западная часть США 2.
В настройках репликациивыполните следующие действия.
Для целевой группы ресурсоввыберите существующую группу ресурсов, развернутую в основном регионе, например
jboss-eap-cluster-eastus-gzh032124
.В виртуальной сети отработки отказавыберите существующую виртуальную сеть в основном регионе.
Чтобы создать план восстановления, для источникавыберите Запад США 2 и для целевой объектвыберите Восток США.
Заметка
Вы можете заметить, что Azure Site Recovery поддерживает повторное защита виртуальных машин при наличии целевой виртуальной машины. Дополнительные сведения см. в разделе Повторная защита виртуальной машины из руководства Учебник: Переключение на резервный регион для виртуальных машин Azure. Однако он не работает, если единственные изменения между исходным диском и целевым диском синхронизированы для кластера JBoss EAP в зависимости от результата проверки. В этом руководстве устанавливается новая репликация с вторичного сайта на первичный сайт после переключения на резервный узел, при этом все диски копируются из резервного региона в основной регион. Дополнительную информацию см. в разделе "Что происходит во время повторной защиты?" в "Повторная защита виртуальных машин Azure на первичный регион".
Возврат на основной сайт после отказа
Используйте те же действия в отработки отказа на дополнительный сайт, чтобы вернуться к основному сайту, включая сервер базы данных и кластер, за исключением следующих различий:
Выберите хранилище служб восстановления, развернутое в основном регионе, например
recovery-service-vault-eastus-gzh032124
.Выберите группу ресурсов, развернутую в основном регионе, например
jboss-eap-cluster-eastus-gzh032124
.В разделе Выполнить отработку отказавыберите хранилище служб восстановления, развернутое в основной области — например,
recovery-service-vault-eastus-gzh032124
.В профиле диспетчера трафика вы увидите, что конечная точка
myPrimaryEndpoint
становится Online, а конечная точкаmyFailoverEndpoint
становится ухудшенной.В разделе Повторная защита сайта восстановлениявыполните следующие действия.
Основной регион является активным сайтом аварийного восстановления, поэтому его следует повторно синхронизировать в дополнительном регионе.
Очистите ресурсы, развернутые в вашем дополнительном регионе, например, ресурсы, развернутые в
jboss-eap-cluster-westus-gzh032124
.Используйте те же шаги, что и в настройке аварийного восстановления кластера с помощью Azure Site Recovery, для защиты основного региона во вторичном регионе, за исключением следующих шагов:
Пропустите шаги, описанные в создание хранилища служб восстановления, так как вы уже создали хранилище служб восстановления, например
recovery-service-vault-westus-gzh032124
.Чтобы Включить репликацию>Параметры репликации>виртуальной сети отработки отказа, выберите существующую виртуальную сеть в вторичном регионе.
Очистка ресурсов
Если вы не собираетесь продолжать использовать кластеры JBoss EAP и другие компоненты, выполните следующие действия, чтобы удалить группы ресурсов, чтобы очистить ресурсы, используемые в этом руководстве:
Введите имя группы ресурсов серверов Базы данных SQL Azure, например
sqlserver-rg-gzh032124
, в поле поиска в верхней части портала Azure. Затем выберите соответствующую группу ресурсов из результатов поиска.Выберите Удалить группу ресурсов.
Чтобы подтвердить удаление, введите имя группы ресурсов
. Выберите Удалить.
Повторите шаги 1-4 для группы ресурсов диспетчера трафика, например
myResourceGroupTM1
.В поле поиска в верхней части портала Azure введите хранилища служб восстановления и выберите хранилища служб восстановления в результатах поиска.
Выберите имя хранилища служб восстановления, например
recovery-service-vault-westus-gzh032124
.В разделе Управлениевыберите Планы восстановления (Site Recovery). Выберите созданный план восстановления, например
recovery-plan-gzh032124
.Используйте те же действия в разделе Отключить репликацию, чтобы снять блокировки с реплицированных элементов.
Повторите шаги 1-4 для группы ресурсов основного кластера JBoss EAP, например
jboss-eap-cluster-westus-gzh032124
.Повторите шаги 1-4 для группы ресурсов вторичного кластера JBoss EAP, например
jboss-eap-cluster-eastus-gzh032124
.
Дальнейшие действия
В этом руководстве описано, как настроить решение для высокой доступности и аварийного восстановления, состоящее из уровня инфраструктуры приложений "активный-пассивный" с уровнем базы данных "активный-пассивный", и в котором оба уровня охватывают два географически разных объекта. На первом сайте активны как уровень инфраструктуры приложений, так и уровень базы данных. На втором сайте вторичный домен восстанавливается с помощью службы Azure Site Recovery, а вторичная база данных находится в режиме ожидания.
Перейдите к следующим ссылкам для получения дополнительных возможностей для создания решений высокого уровня доступности и аварийного восстановления и запуска JBoss EAP в Azure: