Ecdrosil

Рейтинг
82
Регистрация
22.04.2013
Владимир Коток #:

Это же статика, можно закешировать на том же клоудфларе и времени жизни кеша при недоступности сервера вполне хватит на замену винта. Особенно, если положить коробку с винтами на полочку рядом со стойкой ))

Не совсем статика, PHP скрипт с обработчиком контактной формы.

htexture #:

За ссылку спасибо, но как я понял бегло, тут надо 4 сервера получается, многовато

Короче есть чем заняться, чтобы разобраться.

Необязательно, в той схеме указаны дополнительные балансировщики. Можно повесить его прям на дроплеты (VPS сервера) без балансировщиков. Только что проверил, создал дроплет и подвязал Floating IP (Reserved IP).


htexture #:

Можно ссылку на статью, мануал, или как оно называется? Заинтерисовало, с чего начать не пойму :)

Я думаю имеется виду это  способ:

https://www.digitalocean.com/blog/floating-ips-start-architecting-your-applications-for-high-availability

Aisamiery #:

Я не понял про что вы, если вы про кубер то не понял при чем тут конфиги nginx, если про 2 сервера то объединяете их в локальную сеть и самое банальное рсинкаете. Если у вас в целом докер используется, то вам надо почитать про traefik он умеет дискаверить без перезагрузок и синхронизаций

Я про сервера с зеркальными данными, рсинкать да, но нужно знать когда на втором сервере делать nginx reload, так как конфиги на втором не обновляет автоматом.

Aisamiery #:

В целом, вам надо 2 виртуальных сервера в разных ДЦ у одного провайдера и один плавающий IP и чтоб у хостера было api для работы и скрипт который будет мониторить сервера и в случае падения того на ком сейчас назначен IP переназначать на живой. Если сложнее то вам нужно затолкать ваши сайты в контейнеры и есть решения типа кубернетес которые умеют разворачивать контейнеры на живых серверах автоматом. Ну либо самое простое отказаться от PHP, сделать лендинги статикой и развернуть на CDN и подобных штуках. Если есть заявки там формы и прочее можно развернуть их в облачных функциях (лямбдах). Это самые тривиальные наверное решения

Я думал о докере и кубе, но вот задача еще есть как кластеризировать nginx для передачи конфигов между серверами. При добавлении домена на первом должна происходить синхронизация. В Pro версии есть что то подобное, но стоит больших денег за одну функцию. пришел к выводу только костылями через скрипты. От PHP к сожалению отказаться не можем. 

Владимир #:

somaxconn значение стоит по умолчанию?

Вот это надо уточнить у админов севера

Владимир #:
а в чём заключалась "потеря доступности"?

Нам очень критично, что бы сайты, который находились на сервере были всегда доступны.

Столкнулись с проблемами  отключение/перезагрузка сервера, аномальное зависание PHP сокета. Также было дело, когда добавляли домены через API, и nginx повис пока не перезапустили. Все  эти проблемы привели к потере времени а это в свою очередь потеря $.

Поэтому стоит задача, что бы когда с одним сервером что то произошло и он перестал быть доступный, весь трафик переключился на другой (репликация/зеркало). С помощью CloudFlare можно организовать балансировщик, но вот по внутренней архитектуре хз, либо синхронизация файлов + nginx конфигов или объединение 2-3 серверов в один том с репликацией файлов.

Много раз уже заказывал прокси данного сервиса.

Качествами услуг очень доволен, буду пользоваться и впредь.

Спасибо, что Вы есть :)