Заметки по платформам
На некоторых платформах необходимо настроить операционную систему перед запуском Varnish. Известные нам системы и шаги описаны в этом разделе.
Прозрачные огромные страницы в Redhat Enterprise Linux 6
В RHEL6 поддержка прозрачных огромных страниц ядра включена по умолчанию. Известно, что это приводит к спорадическим сбоям Varnish.
Рекомендуется отключить прозрачные огромные страницы на затронутых системах. Это можно сделать с помощью echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled (во время выполнения) или добавив «transparent_hugepage=never» в строку загрузки ядра в файле «/etc/grub.conf» (постоянно).
На системах Debian/Ubuntu, работающих на ядрах 3.2, значение по умолчанию равно «madvise», и его не нужно менять.
OpenVZ
Возможно, но не рекомендуется для высокой производительности, запустить Varnish на виртуализированном оборудовании. Снижение производительности диска и сети немного уменьшит производительность, поэтому убедитесь, что ваша система имеет хорошую производительность ввода-вывода.
Если вы работаете на 64-разрядном OpenVZ (или Parallels VPS), необходимо уменьшить максимальный размер стека перед запуском Varnish.
По умолчанию выделяется слишком много памяти на поток, что приведет к сбою Varnish, как только количество потоков (трафика) увеличится.
Уменьшите максимальный размер стека, добавив ulimit -s 256 перед запуском Varnish в скрипте инициализации.
Настройка TCP keep-alive
На некоторых системах Solaris, FreeBSD и OS X Varnish не может установить значения TCP keep-alive для каждого сокета, и поэтому параметры tcp_keepalive_ Varnish во время выполнения недоступны. На этих платформах может быть полезно настроить системные значения, чтобы более надежно обнаруживать удалённое закрытие для сессий, долгое время находящихся в очереди ожидания. Это поможет быстрее освободить ресурсы.
Системы, которые не поддерживают значения TCP keep-alive для каждого сокета:
- Релизы Solaris до версии 11
- Релизы FreeBSD до версии 9.1
- Релизы OS X до Mountain Lion
На платформах с необходимыми параметрами сокетов значения по умолчанию установлены:
-
tcp_keepalive_time= 600 секунд -
tcp_keepalive_probes= 5 -
tcp_keepalive_intvl= 5 секунд
Обратите внимание, что Varnish будет применять эти параметры во время выполнения только в том случае, если они меньше значения по умолчанию системы.
Copyright © 2006 Verdens Gang AS
Copyright © 2006–2020 Varnish Software AS
Licensed under the BSD-2-Clause License.
https://varnish-cache.org/docs/7.4/installation/platformnotes.html