ASP Linux 11.2
pptpd 1.3.4
Проблема такая:
При соединении более 200 пользователей на VPN сервер, последующих перестало пускать с Ошибкой: 800
В логах нашел следующее:
Dec 18 20:04:34 vpn pptpd[14109]: CTRL: Starting call (launching pppd, opening GRE)
Dec 18 20:04:34 vpn pptpd[14109]: CTRL: openpty() error
Dec 18 20:04:34 vpn pptpd[14109]: openpty: No such file or directorypptpd собран с #define CONNECTIONS_DEFAULT 1024
в defaults.h
>[оверквотинг удален]
>При соединении более 200 пользователей на VPN сервер, последующих перестало пускать с
>Ошибкой: 800
>В логах нашел следующее:
>Dec 18 20:04:34 vpn pptpd[14109]: CTRL: Starting call (launching pppd, opening GRE)
>
>Dec 18 20:04:34 vpn pptpd[14109]: CTRL: openpty() error
>Dec 18 20:04:34 vpn pptpd[14109]: openpty: No such file or directory
>
>pptpd собран с #define CONNECTIONS_DEFAULT 1024
>в defaults.hвиртуальные терминалы закончились.
они у тебя как сконфигурированы ?
>[оверквотинг удален]
>>Dec 18 20:04:34 vpn pptpd[14109]: CTRL: Starting call (launching pppd, opening GRE)
>>
>>Dec 18 20:04:34 vpn pptpd[14109]: CTRL: openpty() error
>>Dec 18 20:04:34 vpn pptpd[14109]: openpty: No such file or directory
>>
>>pptpd собран с #define CONNECTIONS_DEFAULT 1024
>>в defaults.h
>
>виртуальные терминалы закончились.
>они у тебя как сконфигурированы ?Я понимаю что они закончились, вопрос именно в том почему они закончились.
И где посмотреть их конфигурацию(кол-во и т.д и т.п)P.S в системе стоит udev
>[оверквотинг удален]
>>>в defaults.h
>>
>>виртуальные терминалы закончились.
>>они у тебя как сконфигурированы ?
>
>Я понимаю что они закончились, вопрос именно в том почему они закончились.
>
>И где посмотреть их конфигурацию(кол-во и т.д и т.п)
>
>P.S в системе стоит udevUNIX98PTY включен
>[оверквотинг удален]
>>>в defaults.h
>>
>>виртуальные терминалы закончились.
>>они у тебя как сконфигурированы ?
>
>Я понимаю что они закончились, вопрос именно в том почему они закончились.
>
>И где посмотреть их конфигурацию(кол-во и т.д и т.п)
>
>P.S в системе стоит udevдля начала посмотрим за какие пседвотерминалы у тебя pptpd цепляется:
# lsof -p pptp_pid | egrep 'tty|pty|pts'
>[оверквотинг удален]
>>>они у тебя как сконфигурированы ?
>>
>>Я понимаю что они закончились, вопрос именно в том почему они закончились.
>>
>>И где посмотреть их конфигурацию(кол-во и т.д и т.п)
>>
>>P.S в системе стоит udev
>
>для начала посмотрим за какие пседвотерминалы у тебя pptpd цепляется:
># lsof -p pptp_pid | egrep 'tty|pty|pts'pid нужен pptpd процесса или pptpctrl
или вообще pppd?[root@vna etc]# lsof -p 4763 | egrep 'tty|pty|pts'
pptpd 4763 root 3u CHR 5,0 1060 /dev/tty
pptpd 4763 root 7u CHR 136,0 2 /dev/pts/019490 ? 00:00:00 pppd
[root@vna etc]# lsof -p 19490 | egrep 'tty|pty|pts'
pppd 19490 root 0u CHR 136,17 19 /dev/pts/17
pppd 19490 root 1u CHR 136,17 19 /dev/pts/17
pppd 19490 root 3u CHR 5,0 1060 /dev/tty
pppd 19490 root 7u CHR 136,0 2 /dev/pts/0
pppd 19490 root 13u CHR 136,17 19 /dev/pts/17
[root@vna etc]#19636 ? 00:00:00 pptpctrl
[root@vna etc]# lsof -p 19636 | egrep 'tty|pty|pts'
pptpctrl 19636 root 3u CHR 5,0 1060 /dev/tty
pptpctrl 19636 root 7u CHR 136,0 2 /dev/pts/0
>[оверквотинг удален]
>[root@vna etc]#
>
>19636 ? 00:00:00 pptpctrl
>[root@vna etc]# lsof -p 19636 | egrep 'tty|pty|pts'
>pptpctrl 19636 root 3u CHR
> 5,0
> 1060 /dev/tty
>pptpctrl 19636 root 7u CHR
> 136,0
> 2 /dev/pts/0т.к. используется /dev/pts, то маловероятен факт того, что закончились
виртуальные терминалы, т.к. их может быть 2**20.
поэтому последний вопрос - можно пример того, что пишется в строке (устройства какие):
CTRL: Allocated pty/tty pair (....)
>[оверквотинг удален]
>> 1060 /dev/tty
>>pptpctrl 19636 root 7u CHR
>> 136,0
>> 2 /dev/pts/0
>
>т.к. используется /dev/pts, то маловероятен факт того, что закончились
>виртуальные терминалы, т.к. их может быть 2**20.
>поэтому последний вопрос - можно пример того, что пишется в строке (устройства
>какие):
>CTRL: Allocated pty/tty pair (....)что то я в системном логе /var/log/messages такого не вижу. :(
в pptpd ничего включить не надо, чтобы он это показывал?
>[оверквотинг удален]
>>> 2 /dev/pts/0
>>
>>т.к. используется /dev/pts, то маловероятен факт того, что закончились
>>виртуальные терминалы, т.к. их может быть 2**20.
>>поэтому последний вопрос - можно пример того, что пишется в строке (устройства
>>какие):
>>CTRL: Allocated pty/tty pair (....)
>
>что то я в системном логе /var/log/messages такого не вижу. :(
>в pptpd ничего включить не надо, чтобы он это показывал?в вызове pptpctrl debug установить
>[оверквотинг удален]
>>>т.к. используется /dev/pts, то маловероятен факт того, что закончились
>>>виртуальные терминалы, т.к. их может быть 2**20.
>>>поэтому последний вопрос - можно пример того, что пишется в строке (устройства
>>>какие):
>>>CTRL: Allocated pty/tty pair (....)
>>
>>что то я в системном логе /var/log/messages такого не вижу. :(
>>в pptpd ничего включить не надо, чтобы он это показывал?
>
>в вызове pptpctrl debug установитьОбнаружил интересные факты.
Вчера сделал ещё следующие вещи:
Для проверки откатился на не SMP ядро(на сервере проц с гипертрейдингом)
При соединении 200 пользователей проц загрузился на 100%
При просмотре ifconfig обнаружил что значение txqueuelen на сетевых картах стоит всего 100.
Прибавил его до 2048+провел оптимизацию сети по статьям найденым здесь же:
/sbin/ifconfig eth0 txqueuelen 2048
/sbin/ifconfig eth1 txqueuelen 2048
echo 2048 > /proc/sys/net/ipv4/neigh/default/gc_thresh1
echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh2
echo 16384 > /proc/sys/net/ipv4/neigh/default/gc_thresh3
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.ipv4.tcp_rmem="4096 87380 32777216"
sysctl -w net.ipv4.tcp_wmem="4096 65536 32777216"
sysctl -w net.core.netdev_max_backlog=2500
sysctl -w net.ipv4.tcp_congestion_control=htcpНагрузка упала до 60-70%
При соединении 340 пользователей, нагрузка опять стала 100%
каждый процесс pptpctrl использует 1.1%
Ошибки pptpd CTRL: openpty() error не вылезало.Могла ли быть проблема в том что надо было оптимизировать сеть в частности что стоял низкий txqueuelen и из за этого в системе шла перегрузка и соответстсвенно она просто не успевала выделать pty/tty ?
Сейчас переключился опять на smp ядро.
>[оверквотинг удален]
>При соединении 340 пользователей, нагрузка опять стала 100%
>каждый процесс pptpctrl использует 1.1%
>Ошибки pptpd CTRL: openpty() error не вылезало.
>
>Могла ли быть проблема в том что надо было оптимизировать сеть в
>частности что стоял низкий txqueuelen и из за этого в системе
>шла перегрузка и соответстсвенно она просто не успевала выделать pty/tty ?
>
>
>Сейчас переключился опять на smp ядро.Короче установился я на старую версию ASP 10 и всё пошло нормально , а 11 дерьмо!!!! и все последующие сборки болтовые.
ВОТ ТАК
чего они там натворили непонятно и остаётся тайной, жаль только убитого времени. ASP Linux техподдержка на поверку оказалась тоже дерьмо!!! я брал коробочную версию и в буклетике было написано что тех поддержку можно активировать в любое время независимо от времени покупки, а на поверку меня тупо послали и начали байдой кормить.
низачто больше никогда не куплю их дистриб и другим не советую!!!!! и везде этих гадов в чёрный список добавлю - имхо козлы они.