Решение для гибридной архитектуры (MSsql и .NET) - PullRequest
0 голосов
/ 31 января 2019

Постановка проблемы

В моей организации имеется локальный сервер для приложений MSSQL 2016 и .NET на одном сервере, мы собираемся создать DR (AWS или Azure)) и может выдержать 15-20 минут потери данных.

Что ожидается от базы данных:

  • Репликация для MSsql с облачной базой данных в случае первичной(локальный) сервер выходит из строя, мы должны иметь возможность переключать пользователей на облачный сервер (это включает в себя и приложение, и базу данных)
  • Это может потребовать продолжения синхронизации или своевременной синхронизации, интервальная синхронизация все еще в порядке, учитывая 15 минутпотеря данных.
  • Как только пользователи переключаются на DR, их данные должны быть синхронизированы обратно на основной сервер, как только он встанет, и мы сможем вернуть наших пользователей в локальную сеть (может бытьручные или автоматизированные оба метода в порядке с нами).

Что ожидается от сервера приложений .NET:

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

Ребята, я знаю, что это очень маленькое решение, и я отправляю его сюда, в первую очередь яУбедив организацию использовать DR, и теперь они дали мне возможность спроектировать это и представить предложение за минимальное время, я работал с несколькими решениями по репликации Linux и Mysql, но я новичок в Microsoft, поэтому, пожалуйста, помогите мнечтобы закончить это.

1 Ответ

0 голосов
/ 31 января 2019

Я предлагаю такой подход для достижения этого сценария.

https://www.dropbox.com/s/a5g5mj2bekex6lf/20190131_135152.jpg?dl=0

  1. Сохраните код приложения (.NET) в Azure Repo или любом другом элементе управления исходным кодом и создайте конвейерную линию CI / CD для развертывания приложения в On-prem - VM и веб-приложение Azure или виртуальная машина на Azure.(Но я рекомендую сервис приложений Azure на основе PaaS - веб-приложение).Поэтому, когда вы вносите изменения в код, среда обновляется.Вы можете проводить тестирование один раз в 6 месяцев или с определенным интервалом в зависимости от BCP вашей организации.

    https://docs.microsoft.com/en-us/azure/devops-project/azure-devops-project-aspnet-core

  2. Далее, для SQL sysn вы можете использовать «Синхронизацию данных Azure»." особенность.Я снова рекомендую службу Azure SQL - PaaS.https://docs.microsoft.com/en-us/azure/sql-database/sql-database-get-started-sql-data-sync Первоначальная миграция данных может быть выполнена следующим образом (Упражнение - 01): https://azuredevopslabs.com/labs/vstsextend/aspnetmodernize/

  3. Поэтому, если произойдет сбой, вы можете вручную указать DNS на новую службу Azure App env,

Примечание. Этот подход в основном является активным / пассивным методом.Вам нужно некоторое время простоя для ручного переключения при сбое.Я предполагаю, что вы используете последнюю версию .NET, и ее можно развернуть в PaaS без изменений кода.

Если вам нужна дополнительная поддержка, пожалуйста, поднимите свой вопрос.Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...