Назад | Перейти на главную страницу

Запуск LEMP на Ubuntu (15.10), попытка добавить лак, проблемы

Кажется, у меня проблема с varnish. Ничего особенного, но я изо всех сил пытаюсь понять, где я могу ошибиться.

В принципе, varnish настроен для работы на порту 6081 что он делает; тем не мение. Я пробовал редактировать /etc/default/varnish config и изменение daemon_opts к 80, и даже прокомментировал-все из файла, но лак все еще работает 6081.

Так что либо он не использует /etc/default/varnish config и получить его настройки в другом месте, или /etc/default/varnish не имеет значения.

Мой вопрос: кто-нибудь знает, какой файл конфигурации он может использовать для получения своих настроек, или, возможно, как я могу заставить его использовать конфигурацию? Спасибо.

Прикинул фикс, так как это баг с лаком. Остальная часть сообщения представляет собой отредактированную версию этой статьи: http://deshack.net/how-to-varnish-listen-port-80-systemd/


В принципе, /etc/default/varnish читается только /etc/init.d/varnish script, а не systemd сценарий инициализации (/lib/systemd/system/varnish.service).

Мы можем отменить systemd скрипт инициализации лака и что-то поменять.

# cp /lib/systemd/system/varnish.service /etc/systemd/system/
# nano /etc/systemd/system/varnish.service

Получаем что-то вроде этого:

[Unit]
Description=Varnish HTTP accelerator

[Service]
Type=forking
LimitNOFILE=131072
LimitMEMLOCK=82000
ExecStartPre=/usr/sbin/varnishd -C -f /etc/varnish/default.vcl
ExecStart=/usr/sbin/varnishd -a :6081 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m
ExecReload=/usr/share/varnish/reload-vcl

[Install]
WantedBy=multi-user.target


ExecStart=/usr/sbin/varnishd -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m

Затем используйте либо,

# sudo service varnish restart 

или

# systemctl reload varnish.service

Убедитесь, что вы использовали правильную строку DAEMON_OPTS. Конфигурация Varnish по умолчанию содержит 4 примера конфигурации DAEMON_OPTS (Альтернатива 1, Минимальная конфигурация; Альтернатива 2, Конфигурация с VCL и т. Д.). Если вы раскомментировали пару из них, будет применена только последняя раскомментированная строка DAEMON_OPTS.

Пример:

## Alternative 2, Configuration with VCL
#
# Listen on port 6081, administration on localhost:6082, and forward to
# one content server selected by the vcl file, based on the request.
# Use a 256MB memory based cache.
#
DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl.v4 \
             -S /etc/varnish/secret \
             -s malloc,256m"