Jump to content

Recommended Posts

Posted (edited)

Добрый день.

 

Имеется сервер который раз в 2-3 дня ядро фряхи на котором паникует, в результате чего сервер перезагружается. Нагрузка судя по cacti с ребутами никак не коррелирует.

 

FreeBSD 10.0-RELEASE-p5

Ядро кастомное добавлен только NetGraph

 

На что подозрения:

netstat -m

[quote]65555/6955/72510 mbufs in use (current/cache/total)
65542/3682/69224/512000 mbuf clusters in use (current/cache/total/max)
65542/3664 mbuf+clusters out of packet secondary zone in use (current/cache)
0/18/18/256000 4k (page size) jumbo clusters in use (current/cache/total/max)
0/0/0/301750 9k jumbo clusters in use (current/cache/total/max)
0/0/0/169734 16k jumbo clusters in use (current/cache/total/max)
147472K/9174K/156647K bytes allocated to network (current/cache/total)
[b]1427/39763/65831 requests for mbufs denied (mbufs/clusters/mbuf+clusters)[/b]
0/0/0 requests for mbufs delayed (mbufs/clusters/mbuf+clusters)
0/0/0 requests for jumbo clusters delayed (4k/9k/16k)
18/0/0 requests for jumbo clusters denied (4k/9k/16k)
0 requests for sfbufs denied
0 requests for sfbufs delayed
0 requests for I/O initiated by sendfile
[/quote]

vmstat -z

[quote]ITEM                   SIZE  LIMIT     USED     FREE      REQ FAIL SLEEP

UMA Kegs:               384,      0,     101,       9,     101,   0,   0
UMA Zones:             3712,      0,     101,       0,     101,   0,   0
UMA Slabs:               80,      0,    3154,      46,   24692,   0,   0
UMA RCntSlabs:           88,      0,   34634,      16,   34634,   0,   0
UMA Hash:               256,      0,       1,      14,       8,   0,   0
4 Bucket:                32,      0,      34,    2966,    1331,   0,   0
8 Bucket:                64,      0,     157,    2881,    7424,   0,   0
[b]16 Bucket:              128,      0,     288,    2719,     551,  36,   0
32 Bucket:              256,      0,     262,    1463,     862, 159,   0
64 Bucket:              512,      0,     408,     360,    1109, 119,   0
128 Bucket:            1024,      0,     914,     898,   18165,  26,   0
vmem btag:               56,      0,   19223,    1864,   19223, 298,   0
VM OBJECT:              256,      0,    1567,    1913,  155768,   0,   0
RADIX NODE:             144,      0,    5755,    1886,  301975,  59,   0[/b]
MAP:                    240,      0,       3,      61,       3,   0,   0
KMAP ENTRY:             128,      0,       6,     273,       6,   0,   0
MAP ENTRY:              128,      0,     823,    4695,  471875,   0,   0
VMSPACE:                448,      0,      25,     794,   11021,   0,   0
fakepg:                 104,      0,       0,       0,       0,   0,   0
mt_zone:               4112,      0,     364,       0,     364,   0,   0
16:                      16,      0,    9394,    1901,  640000,   0,   0
32:                      32,      0,   24170,    3205,  772980,   0,   0
64:                      64,      0,   54924,    2178,  320171,   0,   0
128:                    128,      0,  133083,    3348,  543027,   0,   0
256:                    256,      0,    3258,    1332,  259155,   0,   0
512:                    512,      0,    1294,     450,   32583,   0,   0
1024:                  1024,      0,     108,     752,   73759,   0,   0
2048:                  2048,      0,     246,     162,   16089,   0,   0
4096:                  4096,      0,     602,     351,   19095,   0,   0
uint64 pcpu:              8,      0,    6300,    1508,    6732,   0,   0
SLEEPQUEUE:              80,      0,     526,    2357,     526,   0,   0
Files:                   80,      0,     135,    3015,   99306,   0,   0
TURNSTILE:              136,      0,     526,    1014,     526,   0,   0
rl_entry:                40,      0,     314,    2686,     314,   0,   0
umtx pi:                 96,      0,       0,       0,       0,   0,   0
MAC labels:              40,      0,       0,       0,       0,   0,   0
PROC:                  1208,      0,      44,     166,   11039,   0,   0
THREAD:                1168,      0,     397,     128,    2158,   0,   0
cpuset:                  72,      0,     206,    1554,     274,   0,   0
audit_record:          1248,      0,       0,       0,       0,   0,   0
[b]mbuf_packet:            256, 13035630,   65527,    3679, 1191484,65831,   0
mbuf:                   256, 13035630,      25,    3354, 1054682,1491,   0
mbuf_cluster:          2048, 512000,   69206,      18,   69206,39763,   0
mbuf_jumbo_page:       4096, 256000,       0,      22,     196,  22,   0[/b]
mbuf_jumbo_9k:         9216, 301750,       0,       0,       0,   0,   0
mbuf_jumbo_16k:       16384, 169734,       0,       0,       0,   0,   0
mbuf_ext_refcnt:          4,      0,       0,       0,       0,   0,   0
NetGraph items:          72,  65565,       1,    3378,  111256,   0,   0
NetGraph data items:     72,  65565,       1,    3874,  997677,   0,   0
g_bio:                  248,      0,       0,    1648,   14061,   0,   0
ttyinq:                 160,      0,     180,     920,     765,   0,   0
ttyoutq:                256,      0,      95,    1015,     407,   0,   0
ata_request:            336,      0,       0,       0,       0,   0,   0
vtnet_tx_hdr:            24,      0,       0,       0,       0,   0,   0
FPU_save_area:          832,      0,       0,       0,       0,   0,   0
VNODE:                  472,      0,     777,     383,     818,   0,   0
VNODEPOLL:              112,      0,       0,       0,       0,   0,   0
BUF TRIE:               144,      0,     101,  105847,    1045,   0,   0
NAMEI:                 1024,      0,       0,     340,  161661,   0,   0
S VFS Cache:            108,      0,     763,    2387,    7058,   0,   0
STS VFS Cache:          148,      0,       0,       0,       0,   0,   0
L VFS Cache:            328,      0,       0,       0,       0,   0,   0
LTS VFS Cache:          368,      0,       0,       0,       0,   0,   0
DIRHASH:               1024,      0,      54,      78,      54,   0,   0
NCLNODE:                528,      0,       0,       0,       0,   0,   0
Mountpoints:            816,      0,       4,      36,       4,   0,   0
pipe:                   744,      0,      13,     342,    8399,   0,   0
procdesc:               128,      0,       0,       0,       0,   0,   0
ksiginfo:               112,      0,     201,    2564,     238,   0,   0
itimer:                 352,      0,       1,      32,       1,   0,   0
KNOTE:                  128,      0,       3,     152,       3,   0,   0
socket:                 696, 1046775,      57,     363,   41130,   0,   0
unpcb:                  240, 1046784,      12,    1460,    8546,   0,   0
ipq:                     56,  16046,       0,       0,       0,   0,   0
udp_inpcb:              392, 1046780,      19,     801,   32328,   0,   0
udpcb:                   16, 1046921,      19,    2993,   32328,   0,   0
tcp_inpcb:              392, 1046780,       7,     603,     139,   0,   0
tcpcb:                 1024, 1046776,       7,     269,     139,   0,   0
tcptw:                   88,  27810,       0,       0,       0,   0,   0
syncache:               160,  15375,       0,     450,      28,   0,   0
hostcache:              136,  15370,       1,      86,       1,   0,   0
tcpreass:                40,  32000,       0,       0,       0,   0,   0
sackhole:                32,      0,       0,       0,       0,   0,   0
sctp_ep:               1408, 1046776,       0,       0,       0,   0,   0
sctp_asoc:             2352,  40000,       0,       0,       0,   0,   0
sctp_laddr:              48,  80012,       0,    2324,     114,   0,   0
sctp_raddr:             728,  80000,       0,       0,       0,   0,   0
sctp_chunk:             136, 400026,       0,       0,       0,   0,   0
sctp_readq:             104, 400026,       0,       0,       0,   0,   0
sctp_stream_msg_out:    104, 400026,       0,       0,       0,   0,   0
sctp_asconf:             40, 400000,       0,       0,       0,   0,   0
sctp_asconf_ack:         48, 400060,       0,       0,       0,   0,   0
ripcb:                  392, 1046780,       0,     670,      89,   0,   0
rtentry:                200,      0,     466,     894,     506,   0,   0
IPFW dynamic rule:      120,   4125,       0,       0,       0,   0,   0
divcb:                  392, 1046780,       0,       0,       0,   0,   0
selfd:                   56,      0,     279,    2774,  978745,   0,   0
SWAPMETA:               288, 4073641,       0,       0,       0,   0,   0
FFS inode:              168,      0,     726,    1045,     765,   0,   0
FFS1 dinode:            128,      0,       0,       0,       0,   0,   0
FFS2 dinode:            256,      0,     726,    1044,     765,   0,   0
NetFlow IPv4 cache:      88, 1048606,    3471,    3783,   32086,   0,   0
NetFlow IPv6 cache:     128, 1048606,       0,       0,       0,   0,   0
[/quote]

 

Тюнинг

loader.conf

[quote]hw.igb.rxd=4096
hw.igb.txd=4096
hw.ix.rxd=4096
hw.ix.txd=4096
net.graph.maxdata=65536
net.graph.maxalloc=65536
hw.igb.max_interrupt_rate=32000
hw.ix.max_interrupt_rate=32000
net.isr.defaultqlimit=4096
net.link.ifqmaxlen=10240
kern.ipc.semmnu=256
kern.ipc.semmns=32000
kern.ipc.shmmni=4096
net.isr.maxthreads=18

kern.ipc.nmbufs=0
kern.ipc.nmbclusters=512000
kern.ipc.nmbjumbop=256000
[/quote]

sysctl.conf

net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
kern.ipc.somaxconn=32768
net.inet.tcp.syncookies=1
net.inet.icmp.bmcastecho=0
net.inet.tcp.drop_synfin=1

net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=0
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0

net.inet.ip.sourceroute=0
net.inet.ip.sourceroute=0
net.inet.icmp.maskrepl=0

net.inet.icmp.icmplim=10000
net.inet.tcp.msl=7500

net.inet.ip.portrange.first=1024
net.inet.ip.portrange.last=65535

net.inet.ip.intr_queue_maxlen=10240
net.route.netisr_maxqlen=10240

#kern.ipc.maxsockets=512000
net.inet.tcp.sack.enable=1
hw.intr_storm_threshold=9000

net.graph.maxdgram=8388608
net.graph.recvspace=8388608


kern.ipc.maxsockbuf=83886080
kern.maxfiles=512000
kern.maxfilesperproc=131072

#kern.ipc.nmbufs=0
kern.ipc.nmbclusters=512000
kern.ipc.nmbjumbop=256000
kern.ipc.nmbjumbo9=128000
kern.ipc.nmbjumbo16=64000

kern.random.sys.harvest.ethernet=0
kern.random.sys.harvest.point_to_point=0
kern.random.sys.harvest.interrupt=0

net.inet.raw.maxdgram=16384
net.inet.raw.recvspace=16384

kern.threads.max_threads_per_proc=16384

net.inet.ip.fastforwarding=1

net.inet.tcp.fast_finwait2_recycle=1
###########################

dev.igb.0.rx_processing_limit=4096
dev.igb.1.rx_processing_limit=4096

dev.ix.0.rx_processing_limit=4096
dev.ix.1.rx_processing_limit=4096

 

Сетевые карты igb Intel I350

Edited by ViacheslavR
Posted (edited)

У меня была очень большая беда с netflow + mpd5.

set netflow peer localhost 42111
set netflow timeouts 15 1800
set netflow version 5

Примерно такие строки, да?

Дело в том, что нужно уносить оттуда netflow, ибо на каждый новый коннект оно создает ещё 2 доп. ноды.

Когда подвисает сессия нетфлоу - машина может вести себя по разному.

У меня паник не было, он просто замирал. Даже консоль замирала, никакой реакции не отдавала.

Попробуйте выключить сперва netflow на mpd.

У меня после выключения пошли стабильные аптаймы, а до этого за месяц могло раз 10 вываливаться.

+ ещё 2 ссылки, почитайте, может найдете чего полезного

Обсуждение по сабжу

Мои попытки сделать нетфлоу на одной ноде

Да и не мешало б откатится на 9.2, т.к. 10 ещё сыровата.

Какой функционал из 10-ки вам нужен? Может проще просто на 9.2 перейти и не заниматься гемороем.

Edited by GrandPr1de
Posted

mpd.conf

#netflow export
set netflow peer aa.bb.cc.dd 2009
set netflow timeouts 60 120
...............................
set iface enable netflow-in netflow-out
...................................

честно говоря не уверен насчет нетфлоу, т.к. есть еще сервера с абсолютно теми же настройками правда под 8.1, 8.2

Собственно до 10-ки этот же сервак крутился на 9.2, глюки те же.

Posted

А что там лишнего? на мой взгляд вполне себе обычные настройки для таких задач.

UPD

1) убрал с интерфейсов igb lrob tso, добавил vlanhwfilter, txcsum, rxcsum

2) Заметил что ошибки mbuf, mbuf+cluster начинают расти только при отключении/включении интерфейсов igb

немного снизился load average, вторые сутки полет нормальный.

-------------------

Т.к. ната нет, то планирую убрать нетфлоу с каждой ноды, а снимать только с внешнего интерфейса, кроме того наверное отключу HT

Posted

kern.ipc.somaxconn=32768
net.inet.tcp.syncookies=1
net.inet.tcp.drop_synfin=1
net.inet.tcp.msl=7500
net.inet.tcp.sack.enable=1
net.inet.tcp.fast_finwait2_recycle=1

 

Чем этот роутер у вас занимается что вы применили выше написанное?

По поводу выносу нетфлоу - правильное решение.

txcsum,rxcsum - не нужно, ещё нужно проверить наличие flowcontrol - и тоже повыключать, лично у меня в сети с флоуконтролом проблемы.

Posted

kern.ipc.somaxconn=32768 - защита от synflood. "Large listen queues do a better job of avoiding Denial of Service (DoS) attacks".(FreeBSD Handbook)

net.inet.tcp.syncookies=1 Включение механизма syncookie когда syncache переполнен, тоже защита от ddos

net.inet.tcp.drop_synfin=1 - T/TCP не нужен

net.inet.tcp.msl=7500 -60 сек в состоянии TIME_WAIT долго(default 30000) 15 сек хватит

net.inet.tcp.sack.enable=1 TCP Selective Acknowledgements RFC2018 http://tools.ietf.org/html/rfc2018

net.inet.tcp.fast_finwait2_recycle=1 -быстрое закрытие соединений в состоянии fin_wait2

Posted
net.inet.tcp

Это касается только трафика между хост системой и клиентами и совершенно никак не касается транзитного трафика.

Как, собственно, и оставшийся somaxconn

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...