2013-11-09 3 views
3

У меня есть 2 сервера приложений и 1 сервер Db, работающий в Azure. Я создал CloudService и разместил в нем серверы приложений. Я создал набор доступности для сервера приложений и добавил в него сервер приложений.Доступность Windows Azure

Теперь проблема: я не могу добавить сервер Db в тот же набор доступности, потому что они не находятся в том же облачном сервисе, что и appservers. Таким образом, Azure может перезагружать dbserver в любое время и вызывать сбои. Как это решить.

  1. Нужно ли мне добавить еще один сервер БД и реплицировать БД и добавить их в новый набор доступности?
  2. Если 1 да, то я должен сделать свое приложение умнее, когда основной сервер Db опустится?

Любые улучшения?

+0

Под «сервером БД» вы подразумеваете виртуальную машину с SQL Server, или вы имеете в виду экземпляр Azure SQL? –

+0

DBServer - это виртуальная машина, работающая под управлением mysql – user88975

+1

Это, кажется, слишком широкий вопрос. Вам нужно будет запустить как минимум два узла сервера MySQL. Независимо от того, будут ли они кластеризоваться или реплицироваться, в значительной степени зависит от вашего сценария приложения. –

ответ

8

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

Единственный способ иметь HA - запустить несколько серверов БД. Если вы запустите SQL Server, вы можете настроить конфигурацию Always On (см. here для документации). EDIT Я пропустил комментарий о вас, используя MySQL. MySQL имеет HA-конфигурации, но я не задал их раньше; вам нужно будет установить это на нескольких виртуальных машинах, и вам следует рассмотреть возможность размещения всех узлов в наборе доступности, чтобы любые обновления хост-системы были расположены в шахматном порядке по виртуальным машинам, а не сразу применены (а также разделяли виртуальные машины через разные области ошибок).

+0

Спасибо за разъяснение. Это помогло подтвердить мои мысли. К сожалению, я не могу голосовать, так как у меня нет репутации. – user88975

Смежные вопросы