Threads

Параметр thread_cache_size играет немаловажную роль в производительности нагруженного MySQL-сервера. В некоторых случаях можно увеличить производительность на 30-50%.

Этот параметр указывает количество тредов, уходящих в кеш при отключении клиента. При новом подключении тред используется из кеша, что позволяет экономить ресурсы при больших нагрузках.

Выявить необходимость оптимизации параметра thread_cache_size можно следующим путем:
mysqladmin -u root -p extended-status | grep Threads

Если значение Threads_created значительно больше, чем Threads_cached (на тысячи), значит thread_cache_size или слишком мал, или вовсе отключен.

Оптимальное значение thread_cache_size, при котором Threads_created держится на приемлемом уровне, колеблется от 8 до 100, в зависимости от нагрузки и количества памяти.

Рекомендуется постепенно повышать значение thread_cache_size и наблюдать за Threads_created до тех пор, пока Threads_created будет незначительно больше Threads_cached.

http://habrahabr.ru/post/159085

bind ubuntu

root@fserver1:/var/log# cat ./syslog


Nov  4 04:18:15 fserver1 kernel: [122063.816863] type=1400 audit(1351981095.464:28): apparmor="DENIED" operation="mknod" parent=1 profile="/usr/sbin/named" name="/etc/bind/tmp-m1OUXJ4YSM" pid=1113 comm="named" requested_mask="c" denied_mask="c" fsuid=104 ouid=104



root@fserver1:/etc/apparmor.d# ll
total 48
drwxr-xr-x  8 root root 4096 нояб.  4 04:21 ./
drwxrwxrwx 96 bind bind 4096 нояб.  3 02:10 ../
drwxr-xr-x  3 root root 4096 нояб.  1 01:05 abstractions/
drwxr-xr-x  2 root root 4096 нояб.  4 04:23 cache/
drwxr-xr-x  2 root root 4096 нояб.  1 00:57 disable/
drwxr-xr-x  2 root root 4096 окт.   3 05:43 force-complain/
drwxr-xr-x  2 root root 4096 нояб.  1 01:06 local/
-rw-r--r--  1 root root 2139 окт.   9 20:42 sbin.dhclient
drwxr-xr-x  4 root root 4096 нояб.  1 01:05 tunables/
-rw-r--r--  1 root root 1280 нояб.  4 04:21 usr.sbin.named
-rw-r--r--  1 root root 1393 марта 30  2012 usr.sbin.rsyslogd
-rw-r--r--  1 root root 1418 авг.  21 01:44 usr.sbin.tcpdump
root@fserver1:/etc/apparmor.d#


правка usr.sbin.named
Значение по умолчанию:
 /etc/bind/** r,

Должно быть:
 /etc/bind/** rw,


/etc/init.d/apparmor restart
rndc reload

> 2TB

parted /dev/sdb
mklabel gpt
mkpart primary 0 20917G
quit

mkfs.ext4 /dev/sdb1


или сразу с mkpartfs

freebsd and adaptec 6805

оффициально нет поддержки на странице хардваре
но на сайте адаптека уверяют что есть.

качаем дрова
http://www.adaptec.com/en-us/speed/raid/aac/unix/aacraid_freebsd_b18668_tgz.htm


ответ из одной организации… кто тесто связан с адаптеком…
ХП и ИБМ давно уже на LSI перешли

sysctl

security.bsd.see_other_uids=0 : запрещаем пользователям просматривать чужие процессы (будут видны только свои)
security.bsd.see_other_gids=0 : тоже самое, только группам
net.inet.tcp.blackhole=2 : пускаем запросы на закрытые порты в «чёрные дыры», то есть просто напросто убиваем, без всяких оповещений. Очень помогает при сканнировании портов. Это для протокола tcp.
net.inet.udp.blackhole=1 : тоже самое, но только для udp
security.bsd.hardlink_check_uid=1 : пользователи могут делать hardlink только на свои файлы
security.bsd.hardlink_check_gid=1 : тоже самое, но только для групп.
net.link.ether.ipfw=1 : ipfw2 позволяет фильтровать по MAC адресам
net.inet.icmp.drop_redirect=1 : ICMP REDIRECT пакеты игнорируются
net.inet.icmp.bmcastecho=0 : для защиты от SMURF атак (ICMP echo request на broadcast адрес)
net.inet.icmp.maskrepl=0 : запрет широковещательного запроса временного штампа
kern.ipc.somaxconn=32768 : защита от synflood атак (увеличиваем количество полуоткрытых сокетов)
net.inet.tcp.sendspace=64395 : размера TCP окна (Увеличенный размер окна позволит более эффективно передавать данные)
net.inet.tcp.recvspace=64395 : размера TCP окна (Увеличенный размер окна позволит более эффективно передавать данные)
net.link.ether.inet.max_age=1200 : для защиты от подмены Arp-записей
net.inet.ip.sourceroute=0: защита для локальных IP
net.inet.ip.accept_sourceroute=0 : защита для локальных IP
net.inet.tcp.drop_synfin=1 : небольшая защита
net.inet.tcp.syncookies=1 : от доса
net.inet.icmp.log_redirect=1
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0
net.inet.ip.ttl=128 : Определяем TTL в заголовке IP-пакета
net.inet.tcp.rfc1323=1 : Указываем ОС изменять параметры window и timestamps в соответствии с RFC 1323.
net.inet.tcp.msl=15000
net.inet.icmp.icmplim=50
net.inet.tcp.log_in_vain=1
net.inet.udp.log_in_vain=1
net.link.ether.inet.log_arp_movements=1
net.inet.tcp.icmp_may_rst=0
security.bsd.conservative_signals=1
security.bsd.unprivileged_proc_debug=0
security.bsd.unprivileged_read_msgbuf=0
security.bsd.unprivileged_get_quota=0
vfs.usermount=0
kern.ps_showallprocs=0
net.inet.tcp.sack.enable=0
kern.ps_showallprocs=0: Разрешаем смотреть список всех процессов только root

php5 ffmpeg FreeBSD

WWW
ставим ffmpeg
Port:   php5-ffmpeg-0.6.0_7
Path:   /usr/ports/graphics/php5-ffmpeg
Info:   The ffmpeg shared extension for php


подключаем
/usr/local/etc/php/extensions.ini
extension=ffmpeg.so


phpinfo или php -i

ffmpegffmpeg-php version 	0.6.0-svn 
ffmpeg-php built on 	Oct 21 2012 23:22:22 
ffmpeg-php gd support 	enabled 
ffmpeg libavcodec version 	Lavc52.123.0 
ffmpeg libavformat version 	Lavf52.111.0 
ffmpeg swscaler version 	SwS0.14.1


установка проверена под
php -v
PHP 5.3.16 with Suhosin-Patch (cli) (built: Sep  6 2012 18:51:57)
Copyright © 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright © 1998-2012 Zend Technologies
    with the ionCube PHP Loader v4.0.10, Copyright © 2002-2011, by ionCube Ltd.

hex-string iptables ipfw

Защита от HLDSFlood
iptables -A INPUT -p udp -m udp -m string --hex-string "|17c74a30a2fb752396b63532b1bf79b0|" --algo kmp -j DROP
iptables -A INPUT -p udp -m udp -m string --hex-string "|17951a20e2ab6d63d6ac7d62f1f721e057cd4270e2f1357396f66522f1ed61f0|" --algo kmp -j DROP
iptables -A INPUT -p udp -m udp -m string --hex-string "|178f5230e2e17d73d6bc6562f1ed29e0|" --algo kmp -j DROP
iptables -A INPUT -p udp -m udp -m string --hex-string "|d50000806e000000|" --algo kmp -j DROP
iptables -A INPUT -p udp -m udp -m string --hex-string "|ffffffff6765746368616c6c656e6765000000000000|" --algo kmp -j DROP


/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|0000000000380000|" --algo bm --from 36 --to 45 -j DROP
/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|7F FF FF FF AB|" --algo bm --from 40 --to 44 -j DROP
/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|7F FF FF FF 00 03 20 00|" --algo bm --from 36 --to 43 -j DROP
/sbin/iptables -A FORWARD -m udp -p udp -m string --hex-string "|00 38 00 00 00 01 00 00|" --algo bm --from 40 --to 47 -j DROP


iptables -A FORWARD -p udp -m length --length 61 -m string --hex-string "|7F FF FF FF|" --algo kmp --from 40 --to 44 -j DROP


FreeBSD через ng_bpf
#!/bin/sh
 
kldload ng_bpf
kldload ng_tag
kldload ng_ipfw
 
/usr/sbin/ngctl -f- < <-SEQ
        mkpeer ipfw: bpf 61 ipfw_hook61
        name ipfw:61 bpf_utp_filter
        mkpeer bpf_utp_filter: tag matched tag_utp
        name bpf_utp_filter:matched tag_utp_tagger
SEQ
 
ngctl msg bpf_utp_filter: setprogram { thisHook=\"ipfw_hook61\" ifNotMatch=\"ipfw_hook61\" ifMatch=\"matched\" bpf_prog_len=12 bpf_prog=[ { code=48 jt=0 jf=0 k=0 } { code=84 jt=0 jf=0 k=240 } { code=21 jt=0 jf=8 k=64 } { code=48 jt=0 jf=0 k=9 } { code=21 jt=0 jf=6 k=17 } { code=40 jt=0 jf=0 k=6 } { code=69 jt=4 jf=0 k=8191 } { code=177 jt=0 jf=0 k=0 } { code=64 jt=0 jf=0 k=20 } { code=21 jt=0 jf=1 k=2147483647 } { code=6 jt=0 jf=0 k=65535 } { code=6 jt=0 jf=0 k=0 } ] }
ngctl msg bpf_utp_filter: setprogram { thisHook=\"matched\" ifMatch=\"ipfw_hook61\" bpf_prog_len=1 bpf_prog=[ { code=6 jt=0 jf=0 k=96 } ] }
ngctl msg tag_utp_tagger: sethookin { thisHook=\"tag_utp\" ifNotMatch=\"tag_utp\" }
ngctl msg tag_utp_tagger: sethookout { thisHook=\"tag_utp\" tag_cookie=1148380143 tag_id=61 }
 
ipfw add netgraph 61 udp from any to any iplen 0-61
ipfw add deny udp from any to any tagged 0-61
 
# to test outgoing - tcpdump -pni Out_Interface "ip[40:4]=0x7FFFFFFF" and "ip[44:1]=0xab" and ether src Ext_If_Mac


снятие
tcpdump -Xni vlan0 "ip[40:4]=0x7FFFFFFF and ip[44:1]=0xAB"


kldload ng_ipfw
# ngctl mkpeer ipfw: bpf 127 ipfw
# ngctl name ipfw:127 utp_filter
# ngctl name ipfw:127 pptp_utp_filter
# ngctl msg pptp_utp_filter: setprogram '{ thisHook="ipfw" ifMatch="matched" ifNotMatch="ipfw" bpf_prog_len=36 bpf_prog=[ { code=0xb1 } { code=0x40 } { code=0x54 k=4286578687 } { code=0x15 jf=31 k=805406731 } { code=0x50 k=1 } { code=0x54 k=128 } { code=0x74 k=5 } { code=0x4 k=12 } { code=0xc } { code=0x7 } { code=0x48 } { code=0x15 jf=3 k=65283 } { code=0x87 jf=3 } { code=0x4 k=2 } { code=0x7 } { code=0x50 } { code=0x15 jf=3 } { code=0x87 jf=3 } { code=0x4 k=1 } { code=0x7 } { code=0x50 } { code=0x15 jf=13 k=33 } { code=0x87 jf=3 } { code=0x4 k=1 } { code=0x7 } { code=0x50 k=9 } { code=0x15 jf=8 k=17 } { code=0x50 } { code=0x54 k=15 } { code=0x64 k=2 } { code=0xc } { code=0x7 } { code=0x40 k=20 } { code=0x15 jf=1 k=2147483647 } { code=0x6 k=65535 } { code=0x6 } ] }'
# sysctl net.inet.ip.fw.one_pass=0
# ipfw add 127 netgraph 127 gre from any to any via ng0
# ngctl msg pptp_utp_filter: getstats '"ipfw"'



/usr/sbin/ngctl -f- <<-SEQ
        mkpeer ipfw: bpf 61 ipfw_hook61
        name ipfw:61 bpf_utp_filter
        mkpeer bpf_utp_filter: tag matched tag_utp
        name bpf_utp_filter:matched tag_utp_tagger
SEQ

ngctl msg bpf_utp_filter: setprogram { thisHook=\"ipfw_hook61\" ifNotMatch=\"ipfw_hook61\" ifMatch=\"matched\" bpf_prog_len=12 bpf_prog=[ { code=48 jt=0 jf=0 k=0 } { code=84 jt=0 jf=0 k=240 } { code=21 jt=0 jf=8 k=64 } { code=48 jt=0 jf=0 k=9 } { code=21 jt=0 jf=6 k=17 } { code=40 jt=0 jf=0 k=6 } { code=69 jt=4 jf=0 k=8191 } { code=177 jt=0 jf=0 k=0 } { code=64 jt=0 jf=0 k=20 } { code=21 jt=0 jf=1 k=2147483647 } { code=6 jt=0 jf=0 k=65535 } { code=6 jt=0 jf=0 k=0 } ] }
ngctl msg bpf_utp_filter: setprogram { thisHook=\"matched\" ifMatch=\"ipfw_hook61\" bpf_prog_len=1 bpf_prog=[ { code=6 jt=0 jf=0 k=96 } ] }
ngctl msg tag_utp_tagger: sethookin { thisHook=\"tag_utp\" ifNotMatch=\"tag_utp\" }
ngctl msg tag_utp_tagger: sethookout { thisHook=\"tag_utp\" tag_cookie=1148380143 tag_id=61 }


ipfw add netgraph 61 udp from any to any iplen 0-61
ipfw add deny udp from any to any tagged 0-61




sysctl net.inet.ip.fw.one_pass=0

почитать
http://citrin.ru/freebsd:ng_ipfw_ng_bpf

оптимально не максимально для нагруженого сервера

оптимально не максимально для нагруженого сервера

/sbin/sysctl -w net.inet.ip.forwarding=1 
/sbin/sysctl -w net.inet.tcp.always_keepalive=1 
/sbin/sysctl -w kern.ipc.somaxconn=1024 
/sbin/sysctl -w kern.somaxconn=512 
/sbin/sysctl -w net.inet.tcp.delayed_ack=0 
/sbin/sysctl -w net.inet.ip.portrange.last=30000 

#samba
/sbin/sysctl -w net.local.stream.recvspace=65535 
/sbin/sysctl -w net.local.stream.sendspace=65535 
/sbin/sysctl -w net.inet.tcp.sendspace=65535 
/sbin/sysctl -w net.inet.tcp.recvspace=65535 


ядро:
maxusers 200 
options "MAXDSIZ=(512*1024*1024)" 
options "DFLDSIZ=(128*1024*1024)" 
options "NMBCLUSTERS=16384" 
options "CHILD_MAX=512" 
options "OPEN_MAX=512"