Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Операционные системы / Operating systems (https://forum.zone-game.info/forumdisplay.php?f=32)
-   -   java.io.IOException: Too many open files (https://forum.zone-game.info/showthread.php?t=11962)

SunnyX 10.01.2011 14:24

java.io.IOException: Too many open files
 
Кто сталкивался с такой проблемой и как её решал?

Команда ulimit -n 1000000 помогает пока, но я не знаю сколько это продолжится, т.к. лимит установленный на 65000 израсходовался за неделю буквально.

Ошибка всплывает в логах, означает превышение лимита открытых файлов в операционной системе Linux. Перезагрузка сервера не помогает.

Игровой сервер Lineage 2, сборка L2Evolution 3.1.5.

DreamCast 10.01.2011 14:33

Re: java.io.IOException: Too many open files
 
например делать ночные рестарты можно ;)

SunnyX 10.01.2011 14:43

Re: java.io.IOException: Too many open files
 
Так у меня и так автоматические рестарты в 5 утра, но видимо это не помогает ...

Navvy 10.01.2011 15:39

Re: java.io.IOException: Too many open files
 
Редактируем
/etc/security/limits.conf

Добавить в конец файла строки либо откоректировать если уже есть записи:
* soft nofile 100000
* hard nofile 100000
root soft nofile 100000
root hard nofile 100000

Редактируем
/etc/sysctl.conf

Сделаем бекапчик на всякий...
cp /etc/sysctl.conf /etc/sysctl.conf.back

Добавить в конец файла строки либо откоректировать если уже есть записи:
fs.file-max = 100000

После редактирования, сохраняем файл и применяем сделанные изменения с помощью команды:
sysctl -p

Попробуй. Может поможет...

SunnyX 10.01.2011 16:01

Re: java.io.IOException: Too many open files
 
Большое спасибо Navvy, вроде бы помогло.

Только вот причины этой проблемы какие?

Что-то мне подсказывает, что HTML-диалоги на сервере открываются, и не закрываются ...

SunnyX 10.01.2011 16:56

Re: java.io.IOException: Too many open files
 
Даже не слышал о таких. Инфы не подкинешь?

n3k0nation 10.01.2011 17:57

Re: java.io.IOException: Too many open files
 
Цитата:

Сообщение от SunnyX (Сообщение 103460)
Даже не слышал о таких. Инфы не подкинешь?

Алгоритм действий обоих программ один и тот же: подключение к серверу и попытка израсходовать лимит дескрипторов на сервере (ака открыто много файлов, куча ожидающих И/О операций).
Различаются эти программы тем, что хабы используют зомби, а спрут есть обычный дос.
С этим можно очень легко бороться с помощью iptables, атака типа sync-flood.

P.S: рекомендую заглянуть в википедию, там целый мануал по iptables.

Deazer 11.01.2011 05:10

Re: java.io.IOException: Too many open files
 
Цитата:

Сообщение от SunnyX (Сообщение 103427)
Кто сталкивался с такой проблемой и как её решал?

Команда ulimit -n 1000000 помогает пока, но я не знаю сколько это продолжится, т.к. лимит установленный на 65000 израсходовался за неделю буквально.

Ошибка всплывает в логах, означает превышение лимита открытых файлов в операционной системе Linux. Перезагрузка сервера не помогает.

Игровой сервер Lineage 2, сборка L2Evolution 3.1.5.

Очень похоже на ДДОС.

ViAl 11.01.2011 09:05

Re: java.io.IOException: Too many open files
 
Похоже на syn-flood .
что говорят:
cat /proc/net/sockstat
cat /proc/sys/fs/file-nr ?
netstat -an | grep 7777 | awk '{print $5}' | cut -f 1 -d':' | sort | uniq -c | sort -n | tail
netstat -an | grep 2106 | awk '{print $5}' | cut -f 1 -d':' | sort | uniq -c | sort -n | tail
?

SunnyX 11.01.2011 11:42

Re: java.io.IOException: Too many open files
 
Код:

cat /proc/net/sockstat
sockets: used 350
TCP: inuse 36 orphan 1 tw 8 alloc 294 mem 303
UDP: inuse 1 mem 0
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0

Код:

cat /proc/sys/fs/file-nr
896    0      1000000

Код:

netstat -an
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags      Type      State        I-Node  Path
unix  2      [ ACC ]    STREAM    LISTENING    6540    /var/run/mysqld/mysqld.sock
unix  3      [ ]        DGRAM                    66399    /dev/log
unix  2      [ ]        DGRAM                    3195    @/org/kernel/udev/udevd
unix  2      [ ACC ]    STREAM    LISTENING    6363    /var/run/acpid.socket
unix  2      [ ]        DGRAM                    83154
unix  2      [ ]        STREAM    CONNECTED    64723
unix  2      [ ]        STREAM    CONNECTED    9429
unix  2      [ ]        DGRAM                    7133
unix  2      [ ]        DGRAM                    6526
unix  2      [ ]        DGRAM                    6365

Добавлено через 34 минуты
Насчет DDoS не уверен, были бы лаги или что-нибудь подобное, но их нет.
После установки железа проводил махинации с iptables, добавил что-то, вроде ограничение на 1 IP адрес.


Текущее время: 06:33. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot