Какое выбрать решение от «падений» на основе двух VPS?
Есть один VPS: 4 vCPU Cores, 30GB RAID10, 1GB RAM + 1.2GB vSwap
и один облачный: 1 CPU, 20GB SSD Disk, 512MB RAM
на обоих крутится бежит Ubuntu
Я абсолютно далек от практики, и хотел бы узнать несколько вопросов за раз: 1. На каком из них лучше держать динамику, а на каком статику? 2. Реально ли один из них (А) сделать основным, который бы в свою очередь: a) Обрабатывал запросы. б) Отправлял пользователя на второй (Б), в) И если к примеру исполняемый (Б) сервер ушел в оффлайн, то сервер (А), выдавал бы заглушку, и все это происходило под одним доменом.
По логике вещей я так понимаю, что статику лучше держать в облаке с SSD и его же делать основным? хватит ли 512 мегабайт памяти на обработку запросов и мониторинг состояния второго сервера?
можно сделать оба сервера одинаковыми, на одном разместить БД на запись с репликацией на второй, на втором сделать только чтение. балансировку выполнять или третьим сервером или на уровне DNS. Если первый падает - второй работает только на read-only
Я согласен с этим решением, я бы сделал именно так, A для настоящей redundancy Вам нужно 2 пары серверов, каждый из которых будет работать в связке со своей парой. Одна пара - это Active-passive балансировщик нагрузки, что-то вроде HA Proxy или http://www.zenloadbalancer.org, а на двух других, на идентичных конфигурациях - MySQL реплицируется с мастера на слейв. В случае внештатной ситуации все запросы переходят на слейв. Вообще, избыточность (redundancy) можно наращивать бесконечно, я бы, в идеале, сделал бы 3 MySQL сервера с Galera Cluster, в котором все 3 доступны для записи...
Мхм. Балансировка на основе DNS очень "медлительная" - у некоторых провайдеров такой адовый кеш на резолверах, что вы сервер успеет с нуля 10 раз настроить, прежде чем люди получат новую запись.
Из реального - 2 DNS сервера на ваших виртуалках, которые отдают А-записи, указывающие на себя с мизерным TTL (вроде одной минуты). На слабеньком сервере настраиваете proxy_pass в nginx, на ошибку 502 вешаете нужную красивую заглушку. Не то, чтобы золотая пуля, но большая часть людей будет ходить всегда на живой сервер.
А статику лучше разместить и там, и там, с аналогичной конфигурацией, если влазит (на отдельном домене, само собой).