чуть более 1К$
Т.е. все ставят на серверах Fastvps/Hetzner RAID 1?
А кто-то ставит RAID 10 на двух ssd дисках?
При возможности выбора ДЦ (Нюрнберг и в Фалькенштайн) - какой предпочтительнее (лучше, стабильнее, канал на Россию и т.д.)?
А разумен предлагаемый программный RAID 1 на ssd дисках, предлагаемый во всех тарифных планах? По логике, в зеркальном рейде ssd-диски примерно одновременно выйдут из стоя.
Тогда алгоритм такой?
1. VPS и запасной сервер циклически делают ежесекундный опрос основного сервера (таймаут 3 секунды).
2. При ошибке (в т.ч. таймаут) запасной сервер делает дополнительную проверку доступности.
3.1. Если ошибка не повторилась - возврат к п.1.
3.2. Если ошибка повторилась - запросить последний статус проверки у VPS:
3.2.1. VPS не вернул ответ: делаем еще одну попытку, и если опять неудачная - предполагаем проблемы с сетью на запасном сервере: сервер не меняем, уведомление на мобильный /если получится, т.к. проблемы с сетью :)/ и возврат к п.1.
3.2.2. VPS вернул ответ, но результат последней проверки "без ошибки" - предполагаем проблемы с каналом между основным и запасным сервером(?): сервер не меняем, уведомление на мобильный и возврат к п.1.
3.2.3. VPS вернул ответ и результат последней проверки "ошибка": ПЕРЕКЛЮЧИТЬ сервер.
Все учел?
http://wiki.hetzner.de/index.php/Failover/ru
Афтепати бомбезный
а какой порог блокировки на выделенном сервере?
Все верно. Причем я не уверен, что эти опции не вылезут где-то другим боком.
Вы имеете ввиду всем задачам, выполняемым по крону, поставить ionice -с3 или другое?
rsync --bwlimit - "ограничивает пропускную способность в КБ/c"
У меня пока не машине нет бакапов. Или где-то еще используется?
Еще, я так понимаю, может подвисать и из-за зеркального рейда.
atop - нагрузка "только запись логов":
PID RDDSK WRDSK WCANCL DSK CMD 1473 12K 78184K 0K 18% flush-9:228907 80K 66728K 0K 16% nginx28908 44K 66572K 0K 16% nginx28905 140K 65696K 0K 16% nginx28906 236K 65560K 0K 16% nginx 473 0K 51396K 0K 12% jbd2/md2-8
Победил следующим путем.
Было:
# cat /proc/sys/vm/swappiness10# cat /proc/sys/vm/dirty_ratio40# cat /proc/sys/vm/dirty_background_ratio2# cat /proc/sys/vm/vfs_cache_pressure1000# cat /sys/block/sda/queue/nr_requests128# cat /sys/block/sdb/queue/nr_requests128# sysctl vm.vfs_cache_pressurevm.vfs_cache_pressure = 1000# cat /proc/sys/vm/swappiness10
При:
# echo 4096 > /sys/block/sda/queue/nr_requests# echo 4096 > /sys/block/sdb/queue/nr_requests# echo 99 > /proc/sys/vm/dirty_ratio# sysctl vm.vfs_cache_pressure=10# sysctl vm.swappiness=100
Особо ничего не изменилось.
dd if=/dev/zero of=/gbfile bs=1M count=6000&
лог доступности сайта, ms:
[2016-03-14 19:26:27] 179: 0 0 44 44 89 [2016-03-14 19:26:40] 10192: 0 0 40 8040 89 (таймаут)[2016-03-14 19:26:49] 7192: 0 0 7057 44 89 [2016-03-14 19:26:53] 178: 0 0 44 44 89
Оставил и добавил:
sysctl vm.dirty_background_ratio=0sysctl vm.dirty_ratio=0
Это помогло. Файл стал создаваться существенно дольше:
9437184000 bytes (9.4 GB) copied, 68.1214 s, 139 MB/s
Но, система почти не подвисает.
при проверке доступности сайта каждые 2 секунды:
dd if=/dev/zero of=/gbfile bs=1M count=6000& -- вообще без тормозов
dd if=/dev/zero of=/gbfile bs=1M count=9000& -- одна проверка с задержкой 1.267s
dd if=/dev/zero of=/gbfile bs=1M count=15000& -- одна проверка с задержкой 3.366s
[2016-03-14 19:41:56] 178: 0 0 44 44 88[2016-03-14 19:42:02] 3366: 0 0 43 3233 88 [2016-03-14 19:42:04] 180: 0 0 45 44 89