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

ошибка лака: не удалось запустить дочерний элемент

tail -f /var/log/syslog

-

May  1 14:45:11 server varnishd[1662]: Child start failed: could not open sockets
May  1 14:45:17 server varnishd[1688]: Child start failed: could not open sockets

-

Лак:

root@server:~# varnishd -V
varnishd (varnish-2.1.4 SVN )
Copyright (c) 2006-2009 Linpro AS / Verdens Gang AS

-

Изменения в / etc / default / varnish

# Should we start varnishd at boot?  Set to "yes" to enable.
START=yes

- Изменен номер порта по умолчанию:

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s file,/var/lib/varnish/$INSTANCE/varnish_storage.bin,1G"

Изменения в default.vcl

backend default {
    .host = "127.0.0.1";
    .port = "8080";
    .connect_timeout = 600s;
    .first_byte_timeout = 600s;
    .between_bytes_timeout = 600s;
    .max_connections = 800;

Стартовый лак дает мне вот это:

root@server:~# service varnish restart
 * Stopping HTTP accelerator varnishd                                    [fail]
 * Starting HTTP accelerator varnishd                                    [ OK ]

Сервер, на котором запущены nginx, php5-fpm, apc, memchache, varnish, mysql, wordpress.

В чем может быть проблема? Спасибо за любую помощь.

root@server:~# sudo netstat -tlnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      2009/nginx
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      2009/nginx
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1271/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1408/sendmail: MTA:
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      1300/main.conf)
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1239/mysqld
tcp        0      0 127.0.0.1:587           0.0.0.0:*               LISTEN      1408/sendmail: MTA:
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      1204/memcached
tcp6       0      0 :::80                   :::*                    LISTEN      2009/nginx
tcp6       0      0 :::22                   :::*                    LISTEN      1271/sshd

У вас уже есть nginx, прослушивающий порт 80, и вы сказали Varnish прослушивать порт 80. Только один из них может сделать это для любого IP address:port сочетание.

Поскольку у вас есть nginx также прослушивая порт 8080, и вы настроили Varnish для использования порта 8080 в качестве бэкэнда, вы, вероятно, захотите вообще остановить nginx, прослушивающий порт 80.