URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 6548
[ Назад ]

Исходное сообщение
"Squid съедает всю память и вываливается"

Отправлено jonnyquest , 12-Ноя-10 18:14 
Здравствуйте!

Имею уже полгода проблему со Squid 3.1.* (до определённого момента всё было очень даже стабильно).

Squid после запуска растёт и растёт и растёт, пока не съест оперативную память и swap...

Наблюдать данное начал на старом сервере:
Linux gserver 2.6.27-gentoo-r8 #10 i686 Intel(R) Core(TM)2 Duo CPU E4500 @ 2.20GHz GenuineIntel GNU/Linux
На борту 2 Gb оперативной памяти.

Грешил сначала что может неправильно сконфигурировал сквид, но даже поставив "минимальный" конфиг, без всяких в нагрузку acl, delay_pools, авторизацией и т.д. squid всё равно съедает постепенно ВСЮ память!

Ладно, стал грешить на кривые руки и неправильно собранную ОС.

Собрал новый системник, накатил туда свежую ОС Gentoo, получил следующий uname -a:

Linux proxy.ircoc.vrn.ru 2.6.34-gentoo-r6 #3 x86_64 Intel(R) Core(TM) i5 CPU 760 @ 2.80GHz GenuineIntel GNU/Linux
На борту 4 Gb оперативной памяти.

Поставил свежий Squid 3.1.8. Какое то время работало всё отлично, с авторизацией ntlm, бассейнами, списками доступа и т.д.

Часть юзеров весело на старом сервере, часть на новом (в общей сложности на двух серверах 122 юзера)

Но вот пришло время и в !ОДИН ДЕНЬ! и на старом сервере и на новом !ОДНОВРЕМЕННО! squid начал пожирать память как ему вздумается, и никогда её не высвобождать.

Ладно, начал пересобирать squid, использовал только (поминимуму) флаги (epoll ldap pam ssl). Поставил опять минимальный конфиг (не ругайте за такой адрес локальной сети, это до меня, пока не переделал):
proxy ~ # grep -v "^#" /etc/squid/squid.conf | sed -e '/^$/d'
acl manager proto cache_object
acl localhost src 127.0.0.1/32 192.92.92.100
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 192.92.92.0/24
acl SSL_ports port 443 5222 5223 15100
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl Safe_ports port 901         # SWAT
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access allow localhost
http_access allow localhost
http_access deny all
http_port 192.92.92.100:3128
hierarchy_stoplist cgi-bin ?
coredump_dir /var/cache/squid
refresh_pattern ^ftp:         &n... 1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

Всё равно ест и ест память... И с cache_mem уже экспериментировал, и memory_pools выключал включал, и cache_dir в NULL ставил... Вобще не пойму в чём дело! Остальные программы на данном сервере крутятся круглосуточно без проблем...

Встречал похожую проблему здесь, решения там не оказалось:
http://opennet.ru/openforum/vsluhforumID12/3850.html?n=Андрей Слободяник

Приведу наблюдения за памятью, очень странные, посмотрите, пожалуйста:
Старт сквида с нужным конфигом (acl, delay_pools, ntlm, cache_dir 10000, cache_mem 128 (аналогичные результаты и на 64, 256, 512)
2010-11-11    15:01:01    306760    KB
2010-11-11    16:01:01    1353816    KB
2010-11-11    17:01:01    1408724    KB
2010-11-11    18:01:01    2448968    KB
2010-11-11    19:01:01    2448968    KB
2010-11-11    20:01:01    2448968    KB
Здесь видно что процесс перестал расти в промежутке с 17 до 18 часов, хотя пользователей стало меньше ненамного с 50 до 30 штук.
Далее всю ночь процесс занимает 2448968    KB ни туда ни сюда (около 10 пользователей онлайн).
Настало утро, понеслось...
2010-11-12    9:45:01 2448968    KB
2010-11-12    9:46:01    2448968    KB
2010-11-12    9:47:01    2448968    KB
2010-11-12    9:48:01    2742476    KB
2010-11-12    9:49:01    3194164    KB
2010-11-12    9:50:01    3216340    KB
2010-11-12    9:51:01    3216340    KB
2010-11-12    9:52:01    3217192    KB
2010-11-12    9:53:01    3217532    KB
2010-11-12    9:54:01    3219148    KB
2010-11-12    9:55:01    3219856    KB
2010-11-12    9:56:01    3220300    KB
2010-11-12    9:57:01    3220700    KB
2010-11-12    9:58:01    3220880    KB
2010-11-12    9:59:01    3221456    KB

Всю ночь держался, а тут за 12 минут съел 700 мегабайт!!!! Пользователей на тот момент онлайн 30...

В конце концов:
2010-11-12 12:50:01 3495664 KB
Он залезает в swap и начинаются тормоза.

Хорошо, это был конфиг мной сооружённый.
Сделаем сквиду минимальный конфиг, его я приводил выше, наблюдаем за памятью:
Старт сквида
2010-11-12 15:53:01 46576 KB
Через час уже:
2010-11-12 17:02:01 1799352 KB

И растёт растёт растёт...

Пожалуйста, помогите решить проблему, замучился...
Может дело в какой то атаке на прокси из локальной сети? Внешка блокируется iptables наглухо.


Содержание

Сообщения в этом обсуждении
"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 12-Ноя-10 18:25 
вы не показали из конфига сквида ни cache_dir  ни сache_mem
и где оне?  по дефолту что ли? если по дефолту, то все равно покажите их сюда, я не знаю какие они в тройке,  но дефолтовые настройки  сразу скажу - не катят.


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 12-Ноя-10 18:33 
> вы не показали из конфига сквида ни cache_dir  ни сache_mem

В том то и дело, что насильно я их не указывал, соответственно по умолчанию в конфиге сквида:
#Default:
# cache_mem 256 MB
#cache_dir ufs /var/cache/squid 100 16 256

Но экспериментировал и с ними... Результатов не дало.

В cache.log ничего особенного:
2010/11/12 17:02:56| Squid Cache (Version 3.1.8): Exiting normally.
2010/11/12 17:03:08| Creating Swap Directories
2010/11/12 17:03:08| Starting Squid Cache version 3.1.8 for x86_64-pc-linux-gnu...
2010/11/12 17:03:08| Process ID 668
2010/11/12 17:03:08| With 1024 file descriptors available
2010/11/12 17:03:08| Initializing IP Cache...
2010/11/12 17:03:08| DNS Socket created at 0.0.0.0, FD 7
2010/11/12 17:03:08| Adding nameserver 195.98.64.65 from /etc/resolv.conf
2010/11/12 17:03:08| Adding nameserver 195.98.64.66 from /etc/resolv.conf
2010/11/12 17:03:08| Adding nameserver 192.92.92.165 from /etc/resolv.conf
2010/11/12 17:03:08| User-Agent logging is disabled.
2010/11/12 17:03:08| Referer logging is disabled.
2010/11/12 17:03:08| Unlinkd pipe opened on FD 12
2010/11/12 17:03:08| Local cache digest enabled; rebuild/rewrite every 3600/3600 sec
2010/11/12 17:03:08| Store logging disabled
2010/11/12 17:03:08| Swap maxSize 0 + 262144 KB, estimated 20164 objects
2010/11/12 17:03:08| Target number of buckets: 1008
2010/11/12 17:03:08| Using 8192 Store buckets
2010/11/12 17:03:08| Max Mem  size: 262144 KB
2010/11/12 17:03:08| Max Swap size: 0 KB
2010/11/12 17:03:08| Using Least Load store dir selection
2010/11/12 17:03:08| Set Current Directory to /var/cache/squid
2010/11/12 17:03:08| Loaded Icons.
2010/11/12 17:03:08| Accepting  HTTP connections at 192.92.92.100:3128, FD 13.
2010/11/12 17:03:08| HTCP Disabled.
2010/11/12 17:03:08| Squid modules loaded: 0
2010/11/12 17:03:08| Ready to serve requests.
2010/11/12 17:03:09| storeLateRelease: released 0 objects
2010/11/12 18:27:59| Reconfiguring Squid Cache (version 3.1.8)...
2010/11/12 18:27:59| FD 13 Closing HTTP connection
2010/11/12 18:27:59| Processing Configuration File: /etc/squid/squid.conf (depth 0)
2010/11/12 18:27:59| Initializing https proxy context
2010/11/12 18:27:59| Squid modules loaded: 0
2010/11/12 18:27:59| Store logging disabled
2010/11/12 18:27:59| User-Agent logging is disabled.
2010/11/12 18:27:59| Referer logging is disabled.
2010/11/12 18:27:59| DNS Socket created at 0.0.0.0, FD 8
2010/11/12 18:27:59| Adding nameserver 195.98.64.65 from /etc/resolv.conf
2010/11/12 18:27:59| Adding nameserver 195.98.64.66 from /etc/resolv.conf
2010/11/12 18:27:59| Adding nameserver 192.92.92.165 from /etc/resolv.conf
2010/11/12 18:27:59| Accepting  HTTP connections at 192.92.92.100:3128, FD 13.
2010/11/12 18:27:59| HTCP Disabled.
2010/11/12 18:27:59| Loaded Icons.
2010/11/12 18:27:59| Ready to serve requests.


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 12-Ноя-10 18:38 
ещё одно наблюдение вот только что
2010-11-12 18:31:01 355200 KB
2010-11-12 18:32:01 1222068 KB

"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 12-Ноя-10 18:55 
>> вы не показали из конфига сквида ни cache_dir  ни сache_mem
> В том то и дело, что насильно я их не указывал, соответственно
> по умолчанию в конфиге сквида:
> #Default:
> # cache_mem 256 MB
> #cache_dir ufs /var/cache/squid 100 16 256

100 мег кэш на диске - вот это и трабла,  сделайте больше.
Мой совет cache_mem на ваше усмотрение - пусть будет 256 мег, но на диске нужно больше, сделайте полгига или гиг или два, больше 2 гигов смысла нету делать, эффектвиность небольшая. если юзеры ходят на разные сайты и  будут накладные  расходы на поиски в индексах и на память в ОЗУ.

Сколько памяти нужно сквиду в ОЗУ
10 мег на каждый гиг КЭШа + cache_mem + 10-20MB

мои настройки для хилой тачки на проце 667 Мгц и винт на 10 гиг и ОЗУ 128 мег
сквид версии 2.4

cache_mem 24 MB
cache_dir ufs /usr/local/squid/cache 640 16 256

p.s.
коллега жаловался, что у него сквид ваще падал на фребсд, спросил эти же настройки - кэш на диск по дефолту, а кэш памяти типа как у тебя,  кады кэш на диске увеличили, усе устаканилось! так что увеличивай кэш на винте или ваще его отруби, ну и грохнуть каталог сквида  и затем squid -z



"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 12-Ноя-10 18:59 
Спасибо за информацию :)
Но, если честно, то пробовал cache_mem разные с разным cache_dir
Например было cache_mem 256 и cache_dir 12000 и всё равно память летела и летела.

Больше склоняюсь к DoS атаке из локалки, так как сжирание памяти связано с рабочим графиком фирмы.


"Squid съедает всю память и вываливается"
Отправлено pavel_simple , 12-Ноя-10 18:36 
> Пожалуйста, помогите решить проблему, замучился...
> Может дело в какой то атаке на прокси из локальной сети? Внешка
> блокируется iptables наглухо.

iptables? наглухо -- этj когда -P DROP и не одного правила, а учитывая то, что машина робит с тырнетом -- это не наглухо.

1. проверить правила netfilter/iptables
2. поставить любой подходящий под нагрузку netflow-коллектор, настроить, протестировать и в дальнейшем видеть графики

учитывая то, что назрузка одинаково растёт на обоих серверах это может быть и нехорошие движения внутри сети (вирус, очередной скрипткидди, или просто неверно настроенное ПО), поэтому нетфло должен видеть и эту часть сети.

P.S. скорее всего DOS из локалки, может стоит обновить squid (учитывая что у вас gentoo) и вот это
http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.9.patch


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 12-Ноя-10 19:01 
Ваше предположение про DoS скорее всего верно. Wireshark'ом увидел два компа гадящих в сеть. После их очистки от:
Backdoor.tdss.4631
Trojan.hosts.2087
Сквид перестал кушать. Может совпадение, но не уверен.

"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 12-Ноя-10 19:03 
вроде  дал ответ, но не вижу своего ответа. в кратце
кэш на винте увеличь, сделай полгига или гиг, более 2 гиг делать ваще смысла нет. но отдельный разговор
cache_mem или уменьши до 128 мег, но мона оставить и 256 мег. а вот
memory_pools   сделай  off
тогда сквид память запрошенную свыше твоих 256 будет освобождать, в противном случае она остается распределенной для сквида.
memory_pools off

"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 12-Ноя-10 19:07 
да нету никакой дос атаки из локали имхо. кэш на винте нужно увеличить  и сделать memory pool  off



"Squid съедает всю память и вываливается"
Отправлено pavel_simple , 12-Ноя-10 19:25 
> да нету никакой дос атаки из локали имхо. кэш на винте нужно
> увеличить  и сделать memory pool  off

наши имхи не совпадают -- но а как оно на самом деле -- ктож его знает.


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 12-Ноя-10 19:38 
Я писал в первом посте, что и так и эдак подгонял параметры. Мемори пулс в офф вгонял. Опять же съедание памяти рандомное, может жрать может нет, от нагрузки не особо зависит.

Мужики, честное слово, уже давно с этим гемороем непонятным вожусь, конфиг вдоль поперёк перепробовал, на разные сочетания, прорыл много форумов и мануалов...


"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 13-Ноя-10 07:52 
> Я писал в первом посте, что и так и эдак подгонял параметры.
> Мемори пулс в офф вгонял. Опять же съедание памяти рандомное, может
> жрать может нет, от нагрузки не особо зависит.
> Мужики, честное слово, уже давно с этим гемороем непонятным вожусь, конфиг вдоль
> поперёк перепробовал, на разные сочетания, прорыл много форумов и мануалов...

Почитай тут http://wiki.squid-cache.org/SquidFaq/SquidMemory  и тут
http://www.comfsm.fm/computing/squid/FAQ-8.html
особенно главу - What can I do to reduce Squid's memory usage?
Рекомендации
- уменьшить cache_mem, напримр до 32 мег
- уменьшить cache_swap
- использовать alternate malloc library.
- Обновить squid до 3.1.9
- ядро системы поставить посвежее.
access.log смотрел/анализировал?  ничего экзотического не замечал?

>Но вот пришло время и в !ОДИН ДЕНЬ! и на старом сервере и на новом !ОДНОВРЕМЕННО! squid начал пожирать память

эту фразу я ранее как-то пропустил, а она да, наводит на мысли, что в локалке какая-нить гадость гуляет.


"Squid съедает всю память и вываливается"
Отправлено adre , 16-Ноя-10 20:30 
> Здравствуйте!
> Имею уже полгода проблему со Squid 3.1.* (до определённого момента всё было
> очень даже стабильно).
> Squid после запуска растёт и растёт и растёт, пока не съест оперативную
> память и swap...

1 - каков при этом размер файла swap.state?
2 - скорее всего у вас большой кэш и была не корректно завершена работа squid, (свет внезапно с безперебойника пропал, была команда немедленного прерывания работы). Короче сквид переиндексирует  свой кеш - а это очень ресурсоёмкий процесс.

Вывод: очистите кеш: остановите сквид, удалите папки с файлами кэша, swap.state, далее squid -z и сквид опять будет воркать нормальна не пожирая память.

-пусть у него ведутся логи на такой случай, чтоб смотреть потом в чём глюк. (store.log,cache.log), применяйте squid -k rotate хотя бы раз в неделю
-перестройка кеша в 10гб заняла внезапно 6 суток.
cache_dir /path 10240 16 256


"Squid съедает всю память и вываливается"
Отправлено adre , 16-Ноя-10 20:33 
>[оверквотинг удален]
> завершена работа squid, (свет внезапно с безперебойника пропал, была команда немедленного
> прерывания работы). Короче сквид переиндексирует  свой кеш - а это
> очень ресурсоёмкий процесс.
> Вывод: очистите кеш: остановите сквид, удалите папки с файлами кэша, swap.state, далее
> squid -z и сквид опять будет воркать нормальна не пожирая память.
> -пусть у него ведутся логи на такой случай, чтоб смотреть потом в
> чём глюк. (store.log,cache.log), применяйте squid -k rotate хотя бы раз в
> неделю
> -перестройка кеша в 10гб заняла внезапно 6 суток.
> cache_dir /path 10240 16 256

да кэш надо больше вам сделать т.к. 100мб - слишком мало для хранилища, и почистите логи.


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 17-Ноя-10 16:06 
>[оверквотинг удален]
>> очень ресурсоёмкий процесс.
>> Вывод: очистите кеш: остановите сквид, удалите папки с файлами кэша, swap.state, далее
>> squid -z и сквид опять будет воркать нормальна не пожирая память.
>> -пусть у него ведутся логи на такой случай, чтоб смотреть потом в
>> чём глюк. (store.log,cache.log), применяйте squid -k rotate хотя бы раз в
>> неделю
>> -перестройка кеша в 10гб заняла внезапно 6 суток.
>> cache_dir /path 10240 16 256
> да кэш надо больше вам сделать т.к. 100мб - слишком мало для
> хранилища, и почистите логи.

squid -k rotate делается каждые сутки
swap.state 5Мегабайт.
Даже если не использовать кэш, cache_dir null /dev/null то всё равно поедает адски оперативку.
Причём, вчера хорошо работал - съел 3Гб, не вываливался ни разу. Сегодня за 10 минут съедал 4Гб!!!!

Конфиг следующий:

acl manager proto cache_object
acl localhost src 127.0.0.1/32 192.92.92.100
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 192.92.92.0/24

acl SSL_ports port 443
acl Jabber_ports port 5222 5223
acl Bussiness port 15100
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl Safe_ports port 901         # SWAT
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports !Jabber_ports !Bussiness
http_access allow manager localhost

http_access allow localnet
http_access deny all

http_port 192.92.92.100:3128

hierarchy_stoplist cgi-bin ?

cache_mem 64 MB

cache_dir ufs /mnt/cache/squid1g 1024 16 256

maximum_object_size 10240 KB

coredump_dir /var/cache/squid

refresh_pattern ^ftp:         &n... 1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

ignore_expect_100 on

memory_pools off

В cache.log повышу детализацию и посмотрю.

У Вас cache_mem сколько выставлено? И, если можно, то какие фишечки ещё в конфиге настраивались? Клиентов много?


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 26-Ноя-10 12:13 
Здравствуйте всем ещё раз :)
Грешил на кривые руки мои в настройке Gentoo.
Установил Ubuntu Server на Atom 330 с 1Gb оперативной памяти, и на "чистую" ОС Squid 3.1.9
Расти процесс стал не скачкообразно, а плавно, но всё равно съедает всю оперативную память и кэш. Пожалуйста, посмотрите мой cachemgr и конфиг. Где что я не правильно делаю?
Зараза в сети нашлась, не один десяток, но чистка не помогла, да и в сеть особо не гадила. Пакеты tcpdump`ом анализировал, ничего криминального...

Конфиг (memory_pools off выставлено):
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 90
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 50
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32

external_acl_type nt_group ttl=0 children=30 %LOGIN /lib/squid3/wbinfo_group.pl
acl inet_full external nt_group inetfull
acl inet_none external nt_group inetnone
acl IRCOC proxy_auth REQUIRED

acl localnet src 192.92.92.0/24

acl SSL_ports port 443 15100 5222 5223 3900
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT


cache_mem 256 MB

http_access allow manager localhost
http_access deny manager

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

http_access allow localhost
http_access deny inet_none
http_access allow IRCOC
http_access deny all

delay_pools 1
delay_class 1 1
delay_parameters 1 300000/300000
delay_access 1 allow !inet_full !localhost
delay_access 1 deny all

http_access deny all

http_port 3128

hierarchy_stoplist cgi-bin ?

cache_dir ufs /var/cache/squid 1024 16 256

coredump_dir /var/cache

refresh_pattern ^ftp:         &n... 1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

dns_nameservers 195.98.64.65 195.98.64.66

memory_pools off

Кэшменеджер:

Squid Object Cache: Version 3.1.9

Start Time:    Thu, 25 Nov 2010 08:25:55 GMT
Current Time:    Fri, 26 Nov 2010 09:07:21 GMT

Connection information for squid:
    Number of clients accessing cache:    88
    Number of HTTP requests received:    810059
    Number of ICP messages received:    0
    Number of ICP messages sent:    0
    Number of queued ICP replies:    0
    Number of HTCP messages received:    0
    Number of HTCP messages sent:    0
    Request failure ratio:     0.00
    Average HTTP requests per minute since start:    546.8
    Average ICP messages per minute since start:    0.0
    Select loop called: 19706281 times, 4.511 ms avg
Cache information for squid:
    Hits as % of all requests:    5min: 18.6%, 60min: 10.6%
    Hits as % of bytes sent:    5min: 35.7%, 60min: 23.6%
    Memory hits as % of hit requests:    5min: 13.2%, 60min: 16.0%
    Disk hits as % of hit requests:    5min: 44.6%, 60min: 46.1%
    Storage Swap size:    943716 KB
    Storage Swap capacity:    90.0% used, 10.0% free
    Storage Mem size:    259652 KB
    Storage Mem capacity:    100.0% used,  0.0% free
    Mean Object Size:    16.16 KB
    Requests given to unlinkd:    142547
Median Service Times (seconds)  5 min    60 min:
    HTTP Requests (All):   0.02451  0.03241
    Cache Misses:          0.11465  0.13498
    Cache Hits:            0.01164  0.02317
    Near Hits:             0.13498  0.14252
    Not-Modified Replies:  0.01648  0.01648
    DNS Lookups:           0.00295  0.01046
    ICP Queries:           0.00000  0.00000
Resource usage for squid:
    UP Time:    88886.322 seconds
    CPU Time:    2613.920 seconds
    CPU Usage:    2.94%
    CPU Usage, 5 minute avg:    5.24%
    CPU Usage, 60 minute avg:    5.95%
    Process Data Segment Size via sbrk(): 802164 KB
    Maximum Resident Size: 2796864 KB
    Page faults with physical i/o: 2
Memory usage for squid via mallinfo():
    Total space in arena:  802296 KB
    Ordinary blocks:       740639 KB  95517 blks
    Small blocks:               0 KB      0 blks
    Holding blocks:         34840 KB      8 blks
    Free Small blocks:          0 KB
    Free Ordinary blocks:   61656 KB
    Total in use:          775479 KB 93%
    Total free:             61656 KB 7%
    Total size:            837136 KB
Memory accounted for:
    Total accounted:       306875 KB  37%
    memPool accounted:     306875 KB  37%
    memPool unaccounted:   530260 KB  63%
    memPoolAlloc calls:         0
    memPoolFree calls:  174041467
File descriptor usage for squid:
    Maximum number of file descriptors:   65535
    Largest file desc currently in use:    832
    Number of file desc currently in use:  455
    Files queued for open:                   0
    Available number of file descriptors: 65080
    Reserved number of file descriptors:   100
    Store Disk files open:                   0
Internal Data Structures:
     58431 StoreEntries
     17293 StoreEntries with MemObjects
     17287 Hot Object Cache Items
     58399 on-disk objects

Если внимательно присмотреться, то Storage Mem size: 259652 KB - всё верно, ведь cache_mem 256 MB выставлено.
А вот следующие данные имхо странные:
Memory accounted for:
    Total accounted:       306875 KB  37%
    memPool accounted:     306875 KB  37%
    memPool unaccounted:   530260 KB  63%

Что за     memPool unaccounted: 530260 KB ??? И вобще memory_pools off
Что за неучтённая memPool... Не этот ли параметр съедает всё подряд...


"Squid съедает всю память и вываливается"
Отправлено Имя , 14-Дек-10 01:02 
memory_pools on
memory_pools_limit 1970 MB
(в вашем случае)

"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 24-Дек-10 18:50 
> memory_pools on
> memory_pools_limit 1970 MB
> (в вашем случае)

Не помогло, так же ест память, приходится рестартовать сквид раз в сутки, иногда чаще...


"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 25-Дек-10 12:00 
>> memory_pools on
>> memory_pools_limit 1970 MB
>> (в вашем случае)
> Не помогло, так же ест память, приходится рестартовать сквид раз в сутки,
> иногда чаще...

использовать alternate malloc library. Это пробовал?


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 26-Дек-10 18:02 
>>> memory_pools on
>>> memory_pools_limit 1970 MB
>>> (в вашем случае)
>> Не помогло, так же ест память, приходится рестартовать сквид раз в сутки,
>> иногда чаще...
> использовать alternate malloc library. Это пробовал?

Не нашёл откуда скачать, буду очень признателен, если дашь ссылку


"Squid съедает всю память и вываливается"
Отправлено ipmanyak , 27-Дек-10 09:18 
>>>> memory_pools on
>>>> memory_pools_limit 1970 MB
>>>> (в вашем случае)
>>> Не помогло, так же ест память, приходится рестартовать сквид раз в сутки,
>>> иногда чаще...
>> использовать alternate malloc library. Это пробовал?
> Не нашёл откуда скачать, буду очень признателен, если дашь ссылку

гуглишь на имя malloc.tar.gz
ftp://ftp.lip6.fr/pub/unix/threads/part/malloc.tar.gz
или ищешь это в паккаджах твой ОС  или на дисках с доп пакетами.


"Squid съедает всю память и вываливается"
Отправлено Corwin , 30-Дек-10 14:14 
> memory_pools on
> memory_pools_limit 1970 MB
> (в вашем случае)

У меня на аналогичной версии и настройках тоже съедает память в течение дня.
Но если начинаешь качать большие файлы >500 Мб, выедает всю память моментально... :(


"Squid съедает всю память и вываливается"
Отправлено jonnyquest , 13-Янв-11 21:03 
Что будем делать? :) GNU malloc не помог


Судя отсюда, я стопроцентно страдаю кривостью рук
http://meta.wikimedia.org/wiki/Wikimedia_servers

Цитата оттуда же:
For HTML we use Squid caching proxy servers in front of Apache. For image files, we use Squid in front of Sun Java System Web Server

А там у них 411 миллионов уникальных пользователей в месяц, 14 биллионов запросов страниц  в месяц.

Но я не знаю что делать уже и куда копать.
Я уже и убунту (изначально всё на "собственно собранных" Gentoo держу, всё великолепно от домена, шлюза ... до БД) ставил, с её автоматическим установщиком и установкой самого сквида из репозиториев, с настройкой его по минимуму и всё равно сжирает память! И железо полностью менял. Причём ему пофиг 2 или 1 гигабайт ОЗУ, он их съедает как то почему то за одно и тоже время... Что делаю не так - без понятия. Тонны мануалов прочёл, по всем параметрам конфига ориентируюсь вполне уверенно.

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


P.S. (лог использования памяти одного из двух серверов со сквидом)
Мне реально плакать хочется, фирма ушла в отпуск 30 декабря, правда потом 5-6 клиентов постоянно онлайн до 9 числа, и 10-го фирма вышла на работу, но не все сотрудники (процентов 50 из 170 человек), и как видно:
2010-12-30 17:27:01 Process Data Segment Size via sbrk(): 979664 KB
2011-01-13 21:37:01 Process Data Segment Size via sbrk(): 979664 KB

Толи этот кто то ещё не вышел на работу, толи кто его знает.

А ещё интересует факт о том что сквид (с одинаковыми конфигами) под убунту кушает память неспеша и продолжительно, а на gentoo скачкообразно немереными порциями...


"Squid съедает всю память и вываливается"
Отправлено Jonny Quest , 04-Фев-11 00:01 
http://www.gentoo.ru/node/21866