Nubeera Posted May 21, 2010 · Report post Сервер: E2100, 2Gb, 250Gb, re0, re1, re2, re3 FreeBSD 7.2-RELEASE-p6 ipfw, mpd4 (pptp, shape), freeradius2+mysql успешно отработал более года последних 3 дня творятся чудеса: соответственно наступает довольно быстро момент когда сквид говорит слишком много открытых файлов восттанавливал бекап 3х месячной давности еффект тот же нид хелп, куда копать? выведу сюда любую инфу - говорите какую CPU: 3.4% user, 0.0% nice, 4.5% system, 3.8% interrupt, 88.3% idle Mem: 1363M Active, 695M Inact, 267M Wired, 364K Cache, 112M Buf, 1057M Free Swap: 2014M Total, 2014M Free PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 12 root 171 ki31 0K 8K CPU0 0 83:29 89.75% idle: cpu0 11 root 171 ki31 0K 8K RUN 1 79:31 82.81% idle: cpu1 4177 squid 4 0 1460M 1457M kqread 0 27:42 10.99% squid 13 root -44 - 0K 8K WAIT 1 29:03 5.42% swi1: net 14 root -32 - 0K 8K WAIT 0 5:39 0.98% swi4: clock 3 root -68 - 0K 8K sleep 1 5:37 0.24% ng_queue1 16053 root 8 0 3096K 1004K nanslp 1 0:02 0.20% monitord 2 root -68 - 0K 8K sleep 1 5:36 0.00% ng_queue0 1057 root 96 0 13040K 8084K select 1 0:49 0.00% mpd4 1005 bind 96 0 93100K 81772K ucond 1 0:37 0.00% named 1005 bind 96 0 93100K 81772K ucond 1 0:37 0.00% named 563 root 96 0 4944K 3044K select 1 0:29 0.00% ppp 27 root -68 - 0K 8K - 0 0:22 0.00% dummynet 16 root -16 - 0K 8K - 1 0:18 0.00% yarrow 1005 bind 4 0 93100K 81772K kqread 1 0:15 0.00% named vmstat -z ITEM SIZE LIMIT USED FREE REQUESTS FAILURES UMA Kegs: 128, 0, 78, 12, 78, 0 UMA Zones: 480, 0, 78, 2, 78, 0 UMA Slabs: 64, 0, 1321, 36, 1094224, 0 UMA RCntSlabs: 104, 0, 15292, 26, 15292, 0 UMA Hash: 128, 0, 4, 26, 7, 0 16 Bucket: 76, 0, 60, 40, 82, 0 32 Bucket: 140, 0, 77, 7, 101, 0 64 Bucket: 268, 0, 104, 8, 158, 7 128 Bucket: 524, 0, 1839, 2, 2549, 224 VM OBJECT: 128, 0, 8888, 1642, 711904, 0 MAP: 140, 0, 7, 21, 7, 0 KMAP ENTRY: 68, 98448, 33, 303, 2353496, 0 MAP ENTRY: 68, 0, 5968, 2824, 1781498, 0 PDPT: 32, 0, 242, 210, 242, 0 DP fakepg: 76, 0, 0, 200, 3687, 0 mt_zone: 1032, 0, 198, 255, 198, 0 16: 16, 0, 8996, 11507, 8781907, 0 32: 32, 0, 3909, 2080, 90849071, 0 64: 64, 0, 8095, 4472, 223301, 0 128: 128, 0, 12209, 10171, 508020, 0 256: 256, 0, 1777, 2978, 657961, 0 512: 512, 0, 593, 119, 10468, 0 1024: 1024, 0, 476, 68, 23549, 0 2048: 2048, 0, 237, 285, 1958, 0 4096: 4096, 0, 165, 125, 74564, 0 Files: 76, 0, 8831, 22419, 6522921, 0 TURNSTILE: 76, 0, 323, 61, 323, 0 umtx pi: 52, 0, 0, 0, 0, 0 PROC: 696, 0, 115, 135, 46512, 0 THREAD: 544, 0, 288, 34, 2092, 0 UPCALL: 44, 0, 0, 0, 0, 0 SLEEPQUEUE: 32, 0, 323, 242, 323, 0 VMSPACE: 240, 0, 79, 177, 46475, 0 cpuset: 40, 0, 2, 182, 2, 0 audit_record: 856, 0, 0, 0, 0, 0 mbuf_packet: 256, 0, 3439, 24593, 77590474, 0 mbuf: 256, 0, 395, 3193, 261568401, 0 mbuf_cluster: 2048, 66560, 28032, 10, 28032, 0 mbuf_jumbo_pagesize: 4096, 33280, 318, 953, 4287451, 0 mbuf_jumbo_9k: 9216, 16640, 0, 0, 0, 0 mbuf_jumbo_16k: 16384, 8320, 0, 0, 0, 0 mbuf_ext_refcnt: 4, 0, 0, 406, 2804, 0 ACL UMA zone: 388, 0, 0, 0, 0, 0 NetGraph items: 36, 8268, 2, 388, 37886935, 0 NetGraph data items: 36, 546, 0, 390, 112999512, 0 g_bio: 132, 0, 0, 2262, 187737, 0 ata_request: 192, 0, 0, 580, 49843, 0 ata_composite: 184, 0, 0, 0, 0, 0 VNODE: 276, 0, 7239, 349, 16323, 0 VNODEPOLL: 64, 0, 0, 0, 0, 0 S VFS Cache: 68, 0, 6794, 206, 2025480, 0 L VFS Cache: 291, 0, 494, 39, 580, 0 NAMEI: 1024, 0, 0, 56, 2188021, 0 DIRHASH: 1024, 0, 267, 21, 267, 0 NFSMOUNT: 560, 0, 0, 0, 0, 0 NFSNODE: 452, 0, 0, 0, 0, 0 pipe: 396, 0, 27, 123, 33922, 0 ksiginfo: 80, 0, 223, 833, 223, 0 itimer: 220, 0, 1, 35, 1, 0 KNOTE: 68, 0, 4139, 27949, 128037225, 0 socket: 416, 66564, 9280, 29501, 2233674, 0 unpcb: 168, 66562, 78, 83, 3893, 0 ipq: 32, 2147, 0, 339, 5, 0 udpcb: 180, 66572, 36, 470, 213674, 0 inpcb: 180, 66572, 8791, 31029, 2011773, 0 tcpcb: 464, 66560, 8241, 29383, 2011773, 0 tcptw: 52, 8208, 550, 3050, 182702, 0 syncache: 104, 15392, 0, 222, 991772, 0 hostcache: 76, 15400, 978, 322, 1567, 0 tcpreass: 20, 4225, 4, 841, 1443597, 0 sackhole: 20, 0, 4, 503, 375954, 0 ripcb: 180, 66572, 118, 146, 2050, 0 rtentry: 124, 0, 343, 246, 1413, 0 IPFW dynamic rule: 108, 0, 0, 612, 83929, 0 divcb: 180, 66572, 0, 0, 0, 0 SWAPMETA: 276, 121576, 0, 0, 0, 0 Mountpoints: 720, 0, 7, 8, 7, 0 FFS inode: 124, 0, 6921, 54, 7792, 0 FFS1 dinode: 128, 0, 0, 0, 0, 0 FFS2 dinode: 256, 0, 6921, 84, 7792, 0 netstat -s tcp: 52435492 packets sent 28234669 data packets (2627207172 bytes) 1388006 data packets (1293381889 bytes) retransmitted 12246 data packets unnecessarily retransmitted 0 resends initiated by MTU discovery 18303864 ack-only packets (630659 delayed) 0 URG only packets 581 window probe packets 2871780 window update packets 2073924 control packets 43223235 packets received 15684504 acks (for 2087261229 bytes) 3046947 duplicate acks 6 acks for unsent data 21551910 packets (4223788707 bytes) received in-sequence 57511 completely duplicate packets (13837271 bytes) 14 old duplicate packets 1231 packets with some dup. data (282586 bytes duped) 1449883 out-of-order packets (1923903688 bytes) 8933 packets (231 bytes) of data after window 231 window probes 90427 window update packets 3134 packets received after close 314 discarded for bad checksums 0 discarded for bad header offset fields 0 discarded because packet too short 55952 discarded due to memory problems 1040557 connection requests 975336 connection accepts 0 bad connection attempts 0 listen queue overflows 610337 ignored RSTs in the windows 1382034 connections established (including accepts) 2008361 connections closed (including 246680 drops) 97353 connections updated cached RTT on close 97733 connections updated cached RTT variance on close 79971 connections updated cached ssthresh on close 1753 embryonic connections dropped 6335189 segments updated rtt (of 8093926 attempts) 6053662 retransmit timeouts 40297 connections dropped by rexmit timeout 626 persist timeouts 5 connections dropped by persist timeout 2217 Connections (fin_wait_2) dropped because of timeout 12 keepalive timeouts 8 keepalive probes sent 4 connections dropped by keepalive 2742440 correct ACK header predictions 20129730 correct data packet header predictions 993262 syncache entries added 5241 retransmitted 9350 dupsyn 29 dropped 975336 completed 9 bucket overflow 0 cache overflow 17257 reset 678 stale 0 aborted 0 badack 0 unreach 0 zone failures 993291 cookies sent 20 cookies received 291529 SACK recovery episodes 390236 segment rexmits in SACK recovery episodes 499295156 byte rexmits in SACK recovery episodes 2044412 SACK options (SACK blocks) received 1403674 SACK options (SACK blocks) sent 0 SACK scoreboard overflow udp: 716166 datagrams received 0 with incomplete header 1 with bad data length field 2 with bad checksum 12811 with no checksum 280607 dropped due to no socket 47 broadcast/multicast datagrams undelivered 0 dropped due to full socket buffers 0 not for hashed pcb 435509 delivered 489192 datagrams output 0 times multicast source filter matched net.inet.ip.portrange.first=1024 net.inet.ip.portrange.last=65535 net.inet.ip.portrange.randomized=0 net.inet.tcp.nolocaltimewait=1 #kernel nat net.inet.ip.fw.one_pass=0 ############### kern.ipc.somaxconn=10240 net.inet.tcp.fast_finwait2_recycle=1 net.isr.direct=0 net.inet.ip.intr_queue_maxlen=4096 net.inet.icmp.drop_redirect=1 net.graph.recvspace=393216 net.graph.maxdgram=393216 net.bpf.bufsize=65536 net.bpf.maxinsns=1024 net.inet.ip.dummynet.hash_size=1024 net.inet.ip.dummynet.max_chain_len=1024 kern.ipc.maxsockbuf=2097152 net.inet.tcp.sendspace=65536 net.inet.tcp.recvspace=131072 net.inet.udp.maxdgram=131072 net.inet.udp.recvspace=131072 net.inet.ip.fw.dyn_keepalive=0 net.inet.icmp.icmplim=50 net.inet.tcp.blackhole=1 net.inet.udp.blackhole=1 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
photon Posted May 21, 2010 (edited) · Report post Параметры sysctl, что вы привели -- не те, что нужны. Видно, что машина упирается в максимальное число открытых файлов. Для начала, надо увеличить юзерам, от которых запускаются squid и прочие службы, число одновременно открытых файлов (параметр openfiles в /etc/login.conf), увеличить kern.maxfiles и kern.ipc.maxsockets через sysctl. Желательно потом перенести squid и шейпер на отдельные машины. re0, re1, re2, re3Cервер с сетевухами Realtek. Make me unsee it. Edited May 22, 2010 by photon Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Lynx10 Posted May 22, 2010 (edited) · Report post Параметры sysctl, что вы привели -- не те, что нужны. Видно, что машина упирается в максимальное число открытых файлов. Для начала, надо увеличить юзерам, от которых запускаются squid и прочие службы, число одновременно открытых файлов (параметр openfiles в /etc/login.conf), увеличить kern.maxfiles и kern.ipc.maxsockets через sysctl. Желательно потом перенести squid и шейпер на отдельные машины. там для начала надо найти причину почему столько открыто стало за последние дни а то получится что увеличил - а через пару дней снова та же репа только больше открыто! Edited May 22, 2010 by Lynx10 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
jab Posted May 22, 2010 · Report post Cервер с сетевухами Realtek. Make me unsee it. Комбайнёры прут пачками... :-) В топике - ipfw + mpd4, а в top'е - squid, mysql, bind, freeradius :-) PS2Okolita75: fstat смотрите Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Nubeera Posted May 22, 2010 · Report post >там для начала надо найти причину почему столько открыто стало за последние дни >а то получится что увеличил - а через пару дней снова та же репа только больше открыто! так и было при увеличении серв потух тут же при старте если не увеличивать работает некоторое время комбанеры не комбанеры а серв работал долгое время я теперь планирую стать мастером диагностики fstat -- identify active files выдал невероятно длинный список счас изучу и отпишусь Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
jab Posted May 22, 2010 · Report post я теперь планирую стать мастером диагностики О, это как раз очень просто, достаточно 15 лет исполнять ежедневные ката. С боккэном и без. И медитировать стоя на одной ноге на лыжах в гамаке повторяя про себя мантру: f0 0f c7 c8. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Nubeera Posted May 22, 2010 · Report post прошу без юмора и флуда плз я и сам не прочь поприкалываться но мне счас не до смеха мне больше подойдет lsof ковыряю и то и то может кто сразу посоветует какие либо скрипты обработки вывода lsof или fstat? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Nubeera Posted May 22, 2010 (edited) · Report post проблема решена. банальная вирусная эпидемия в сети. диагностика: написал такой масик-скриптик #!/bin/sh sockstat -c -4 -p 80 | grep squid | grep 172.22. sockstat -4 | grep -w ' squid ' | grep -v '*' | wc -l netstat -anf inet | fgrep CLOSE_WAIT | wc -l увидел тучу сессий с одних и тех же ай пи из моей сети (172.22.0.0/16) решение: тюнинг сквида persistent_request_timeout 30 seconds client_lifetime 60 minutes half_closed_clients off до тюнинга цифры сокетов, файлов и т.п. были в тысячах после применения в сотнях спасибо можете обращться за более детальной информацией Edited May 22, 2010 by okolita75 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
LuckySB Posted May 22, 2010 · Report post В чем смысл использования сквида в 2010 году ? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
dsk Posted May 22, 2010 (edited) · Report post В усложнении себе жизни. Хотя в случае офисного гейта, может оказаться полезным. Edited May 22, 2010 by dsk Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Nubeera Posted May 22, 2010 · Report post В чем смысл использования сквида в 2010 году ? в чем вы видите решение если требуется распределить трафик локальной сети около 1к компов между 20 дслами? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
dsk Posted May 22, 2010 · Report post А с помощью NAT-а и PBR это разве не делается? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Lynx10 Posted May 22, 2010 (edited) · Report post А с помощью NAT-а и PBR это разве не делается? сквид я помню в продакшине ещё в 1998 :)) отказывайтесь от этого монстра....он вас ещё не раз напугает насчёт сквида можна было догадаться по 4177 squid 4 0 1460M 1457M kqread 0 27:42 10.99% squ - 10% это не мало а кроме того это сущство очень прожорливое если неправильно настроено - особенно в стороны дескрипторов сокетов памяти нагрузки на винты и т д Edited May 22, 2010 by Lynx10 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
jab Posted May 22, 2010 · Report post насчёт сквида можна было догадаться по 4177 squid 4 0 1460M 1457M kqread 0 27:42 10.99% squ - 10% это не мало Это для него как-раз абсолютно нормально, даже маловато я бы сказал, но нагрузка небось мизерная. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Lynx10 Posted May 22, 2010 (edited) · Report post насчёт сквида можна было догадаться по 4177 squid 4 0 1460M 1457M kqread 0 27:42 10.99% squ - 10% это не мало Это для него как-раз абсолютно нормально, даже маловато я бы сказал, но нагрузка небось мизерная. согласен - при больших трафиках - может быть и больше - но у автора я думаю там такими объёмами и не пахнет! Edited May 22, 2010 by Lynx10 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted May 22, 2010 (edited) · Report post half_closed_clients offЭто ж значение по умолчанию :/ В чем смысл использования сквида в 2010 году ?У провайдеров его почти нет, разве что у мелких совсем.Для дома/офиса вполне себе решение, от которого больше плюсов, чем минусов. Ещё он умеет WCCP для кошек. Есть антивирусы, типа доктор веба, которые могут траффик со сквида проверять. Хотя лично мне больше нравится принцип HAVP, но оч не нравится реализация, а своё всё никак не допишу до продакшена. Можно ещё Polipo попробовать, там есть плюшки в виде HTTP1/1, кеширование частей контента (актуально для кеширование апейтов винды, у кого нет возможности использовать WSUS). Но есть сомнения что нагрузку выдержит. А так и выбрать особо не из чего. Про винду лучше не вспоминать - либо часто сбоит, либо редко но трудно диагностируемо для ремонта, особенно без опыта и навыков либо нагрузку не держит/досится легко. Edited May 22, 2010 by Ivan_83 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Lynx10 Posted May 22, 2010 · Report post Для дома/офиса вполне себе решение, от которого больше плюсов, чем минусов. Ещё он умеет WCCP для кошек. Есть антивирусы, типа доктор веба, которые могут траффик со сквида проверять. Хотя лично мне больше нравится принцип HAVP, но оч не нравится реализация, а своё всё никак не допишу до продакшена. Можно ещё Polipo попробовать, там есть плюшки в виде HTTP1/1, кеширование частей контента (актуально для кеширование апейтов винды, у кого нет возможности использовать WSUS). Но есть сомнения что нагрузку выдержит. да много чего можно - но его реально юзать только в офисе или на предприятиях - ВСЁ! а прикрутить всякой дряни к нему - да можно много Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...