Моя текущая настройка:
1 сервер синтаксического анализа - 2.6.3
1 Сервер MongoDB - 3.4.9
Оба работают на виртуальных машинах Ubuntu.
Мы ожидаем, что через несколько недель наша пользовательская база значительно вырастет! В настоящее время мы используем 2 виртуальные машины в Azure ... 1 как сервер анализа, а другой как сервер MongoDB.
Может ли кто-нибудь рассказать мне, как добавить 1 виртуальную машину для каждого из перечисленных выше типов? (+1 сервер синтаксического анализа и +1 сервер MongoDB (этого я никогда раньше не делал!))
Я считаю, что мне понадобится балансировщик нагрузки ... я прав? Как он будет играть вместе с сервером синтаксического анализа?
Набор доступности
Во-первых, вам нужно понять концепцию наборов доступности, это предварительное условие для высокой доступности:
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/manage-availability
В идеале у вас должен быть один для ваших веб-серверов, а другой для базы данных (не один и тот же для обоих!).
Виртуальная машина может быть помещена в группу доступности только во время ее создания, при этом если у вас ее нет, настроенная на ваших виртуальных машинах в данный момент, вам необходимо будет выполнить повторное развертывание. Не беспокойтесь, это просто! Вот как выглядит процесс:
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/change-availability-set
Балансировщик нагрузки
Теперь, когда у вас настроена AS, вы можете развернуть и настроить балансировщик нагрузки.
https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-get-started-ilb-arm-portal
Для веб-серверов вы можете вместо этого настроить внешние балансировщики нагрузки. Не забудьте также изучить возможности шлюза приложений.
MongoDB
Имейте в виду, что для достижения высокой доступности с помощью MongoDB вам необходимо как минимум 3 узла, и вам нужно выполнить некоторую дополнительную конфигурацию, чтобы иметь возможность переключать серверы при отказе.
https://docs.mongodb.com/manual/administration/replica-set-deployment/
Сервер синтаксического анализа
Насколько я знаю, нет никаких особых требований для возможности масштабирования Parse Server, но вы также можете использовать процесс, описанный в этой статье:
http://blog.kontena.io/how-to-install-and-run-private-parse-server-in-production/