Ускоряем базу данных. Bcache
Сравнение bcache и btier
Flashcache, или I/O на стероидах
http://www.accelcloud.com/2012/04/18/linux-flashcache-and-bcache-performance-testing/
Также ещё есть
https://github.com/stec-inc/EnhanceIO
https://github.com/mingzhao/dm-cache
Что bcache, что btier пока в нестабильных версиях ядра, пока на данный момент использовать с осторожностью.
воскресенье, 24 ноября 2013 г.
четверг, 21 ноября 2013 г.
Перезапуск сервисов в разных ОС на примере sshd
http://www.starnet.com/xwin32kb/restart_sshd
для 10 соляриса на самом деле методов несколько:
1) svcadm disable ssh; svcadm enable ssh
2) svcadm restart ssh
3) svcadm restart svc:/network/ssh:default
4) /lib/svc/method/sshd restart
5) kill -HUP `cat /var/run/sshd.pid`
С 10 солярисом есть особенность: если конфиг-файл был ошибочен, всякими svcadm restart ssh сервис не поднимается и порт не слушается, хоть уже установленные соединения и не рвутся. Система переходит в maintenance, проверять так:
svcs -xv ssh
(точного вывода нет, поэтому примерно)
State: maintenance since Thu Mar 24 19:26:28 2011
Reason: Start method exited with ...
See: /var/svc/log/network-ssh:default.log
Impact: This service is not running.
Смотрим этот самый лог на предмет ошибок
tail /var/svc/log/network-ssh\:default.log
исправляем, выводим из maintenance, запускаем, проверяем
# svcadm clear ssh
# svcadm restart ssh
State: online since 20 пҐп+я¦п¦я-я¦ 2013 пЁ. 11:39:44 MSK
See: man -M /usr/share/man -s 1M sshd
See: /var/svc/log/network-ssh:default.log
Impact: None.
И на всякий случай netstat -an|grep 22 |grep LISTEN
SMF — управление сервисами в Solaris
для 10 соляриса на самом деле методов несколько:
1) svcadm disable ssh; svcadm enable ssh
2) svcadm restart ssh
3) svcadm restart svc:/network/ssh:default
4) /lib/svc/method/sshd restart
5) kill -HUP `cat /var/run/sshd.pid`
С 10 солярисом есть особенность: если конфиг-файл был ошибочен, всякими svcadm restart ssh сервис не поднимается и порт не слушается, хоть уже установленные соединения и не рвутся. Система переходит в maintenance, проверять так:
svcs -xv ssh
(точного вывода нет, поэтому примерно)
State: maintenance since Thu Mar 24 19:26:28 2011
Reason: Start method exited with ...
See: /var/svc/log/network-ssh:default.log
Impact: This service is not running.
Смотрим этот самый лог на предмет ошибок
tail /var/svc/log/network-ssh\:default.log
исправляем, выводим из maintenance, запускаем, проверяем
# svcadm clear ssh
# svcadm restart ssh
# svcs -xv ssh
svc:/network/ssh:default (SSH server)State: online since 20 пҐп+я¦п¦я-я¦ 2013 пЁ. 11:39:44 MSK
See: man -M /usr/share/man -s 1M sshd
See: /var/svc/log/network-ssh:default.log
Impact: None.
И на всякий случай netstat -an|grep 22 |grep LISTEN
SMF — управление сервисами в Solaris
суббота, 16 ноября 2013 г.
debian: socket() failed (24: Too many open files)
Настройки дебиана для сервера далеко не оптимальны, в частности лимит на количество открытых файлов. Это затрагивает много серверного софта, например mysql, apache, nginx...
В частности, следвие для nginx - в логе
socket() failed (24: Too many open files)
среда, 13 ноября 2013 г.
jira: java.lang.OutOfMemoryError: Java heap space
Когда джире мало памяти, могут быть ошибки вида
com.atlassian.core.AtlassianCoreException: Error in action: <a href='mailto:com.atlassian.jira.action.admin.DataExport@7c523802'>com.atlassian.jira.action.admin.DataExport@7c523802</a>, result: error<br/> Ошибка при экспорте данных: java.lang.OutOfMemoryError: Java heap space
Кончилась память, которая выставляется через -Xmx. Но для начала теория, что там бывают за виды ошибок с памятью
Теперь увеличиваем память. Смотрим, где лежит bin-каталог
# cat /etc/init.d/jira|grep BIN
BIN='/opt/jira/JIRA 4.2/bin'
переходим туда (если в пути есть пробелы, не забываем их экранировать или брать путь в кавычки) и правим setenv.sh, нужна строка
JVM_MAXIMUM_MEMORY="512m"
увеличиваем до 1024 например.
чуть об отладке
четверг, 7 ноября 2013 г.
Семь уязвимостей в IPMI-прошивках Supermicro
http://www.opennet.ru/opennews/art.shtml?num=38362
Разработчики проекта Metasploit раскрыли данные о семи уязвимостях в IPMI-прошивках серверных продуктов Supermicro и опубликовали прототипы эксплоитов. Проблемы остаются неисправленными, несмотря на то, что приватное уведомление об их наличии было отправлено сотрудникам Supermicro три месяца назад.
Но надо понимать, что косяки такого рода есть у всех
Из подверженных проблемам серверных систем отмечены серверы на базе контроллеров HP Integrated Lights Out (iLO), Dell DRAC и IBM Remote Supervisor Adapter.
http://www.opennet.ru/opennews/art.shtml?num=37554
Разработчики проекта Metasploit раскрыли данные о семи уязвимостях в IPMI-прошивках серверных продуктов Supermicro и опубликовали прототипы эксплоитов. Проблемы остаются неисправленными, несмотря на то, что приватное уведомление об их наличии было отправлено сотрудникам Supermicro три месяца назад.
Но надо понимать, что косяки такого рода есть у всех
Из подверженных проблемам серверных систем отмечены серверы на базе контроллеров HP Integrated Lights Out (iLO), Dell DRAC и IBM Remote Supervisor Adapter.
http://www.opennet.ru/opennews/art.shtml?num=37554
среда, 6 ноября 2013 г.
HP UPS Network Module
У ИБП HP (конкретно в модели R5000) есть модуль управления, который называется HP UPS Network Module, и на нём 2 порта: левый LAN, правый служебный, rs232 консоль с 8p8c (rj45) разъёмом.
среда, 30 октября 2013 г.
php+debian: проблемы с max_input_vars
Очередная бага дебиляна:
http://stackoverflow.com/questions/19042734/is-there-a-limit-like-max-input-vars-in-versions-before-5-3-9
есть условный сервер с проектом на битриксе, к которому не покупалось поддержки и он не работает на 5.4, поэтому нужна версия именно 5.3. А в дебиляне это
PHP 5.3.3-7+squeeze17 with Suhosin-Patch (cli) (built: Aug 23 2013 15:06:16)
Все норм дистры позволяют обновиться до более поздних версий (5.4 не подходит), а тут - штатно без вариантов.
Суть бага: установка max_input_vars в версиях ниже 5.3.9 не имеет значения, ограничение в 1000 прописано в коде, хотя даже по phpinfo всё выставлено верно.
Самый простой вариант - на dotdeb есть 5.3.9+ (5.3.25, 5.3.27...)
Установка php 5.3 на Debian 7 Wheezy
Не забываем ограничить "наглость" репы, иначе половину пакетов заменит, в том числе то что не нужно.
Вот 5.4 ставить лучше оф, если нет особой нужды именно в последних версиях - штатная конечно будет устаревшей, но относительно проверенной "миллионами хомячков".
http://stackoverflow.com/questions/19042734/is-there-a-limit-like-max-input-vars-in-versions-before-5-3-9
есть условный сервер с проектом на битриксе, к которому не покупалось поддержки и он не работает на 5.4, поэтому нужна версия именно 5.3. А в дебиляне это
PHP 5.3.3-7+squeeze17 with Suhosin-Patch (cli) (built: Aug 23 2013 15:06:16)
Все норм дистры позволяют обновиться до более поздних версий (5.4 не подходит), а тут - штатно без вариантов.
Суть бага: установка max_input_vars в версиях ниже 5.3.9 не имеет значения, ограничение в 1000 прописано в коде, хотя даже по phpinfo всё выставлено верно.
Самый простой вариант - на dotdeb есть 5.3.9+ (5.3.25, 5.3.27...)
Установка php 5.3 на Debian 7 Wheezy
Не забываем ограничить "наглость" репы, иначе половину пакетов заменит, в том числе то что не нужно.
Вот 5.4 ставить лучше оф, если нет особой нужды именно в последних версиях - штатная конечно будет устаревшей, но относительно проверенной "миллионами хомячков".
mpt-statusd: detected non-optimal RAID status
Есть у дебиана 7 (странный) глюк при развороте на vmware esxi:
в /var/log/messages пишет
mpt-statusd: detected non-optimal RAID status
при том, что никакого рейда там нет.
Фикс:
service mpt-statusd stop
в /var/log/messages пишет
mpt-statusd: detected non-optimal RAID status
при том, что никакого рейда там нет.
Фикс:
service mpt-statusd stop
update-rc.d mpt-statusd disable
вторник, 29 октября 2013 г.
debian: allow-hotplug и auto, что это и чем отличаются
Суть в том, что в дебиане после установки зачастую в /etc/network/interfaces есть только строка allow-hotplug, но нет auto, поэтому есть проблемы с получением адреса по dhcp, сеть гарантированно не поднимается после service networking restart и нужно делать принудительно dhclient eth0
if eth0 is allow-hotplug but not auto it will be started at boot when the hardware is found, or when the hardware is attached (eg USB) but not when /etc/init.d/networking is run, which only calls ifup -a.
http://forums.debian.net/viewtopic.php?f=5&t=47649
allow-hotplug говорит о том что этот интерфейс запускается не через /etc/init.d/networking а через что-то другое. если Вы хотите управлять интерфейсами через скрипт /etc/init.d/networking - замените allow-hotplug на auto
http://ru-nix.livejournal.com/18890.html
Насколько я понимаю, allow-hotplug - применить настройки при обнаружении устройства (разово), а auto - при поднятии интерфейса. Поэтому настройка фаервола и статики лучше делается через allow-hotplug, а dhcp через auto. Но я могу ошибаться.
И на всякий случай из ЖЖ блок кода с примерами автонастройки фаервола и статики.
И еще сайт,
http://xmodulo.com/2012/05/how-to-run-iptables-automatically-after.html
Ещё линки
http://www.debian.org/doc/manuals/debian-reference/ch05.en.html
https://wiki.debian.org/NetworkConfiguration
http://forums.debian.net/viewtopic.php?f=5&t=47649
if eth0 is allow-hotplug but not auto it will be started at boot when the hardware is found, or when the hardware is attached (eg USB) but not when /etc/init.d/networking is run, which only calls ifup -a.
http://forums.debian.net/viewtopic.php?f=5&t=47649
allow-hotplug говорит о том что этот интерфейс запускается не через /etc/init.d/networking а через что-то другое. если Вы хотите управлять интерфейсами через скрипт /etc/init.d/networking - замените allow-hotplug на auto
http://ru-nix.livejournal.com/18890.html
Насколько я понимаю, allow-hotplug - применить настройки при обнаружении устройства (разово), а auto - при поднятии интерфейса. Поэтому настройка фаервола и статики лучше делается через allow-hotplug, а dhcp через auto. Но я могу ошибаться.
И на всякий случай из ЖЖ блок кода с примерами автонастройки фаервола и статики.
Пример /etc/network/interfaces: auto lo iface lo inet loopback pre-up /sbin/iptables-restore < /var/lib/iptables/rules allow-hotplug eth1 iface eth1 inet static address IP адресс провайдера netmask 255.255.255.X hwaddress ether 00:E0:4C:A2:C4:48 network Х.Х.Х.0 broadcast Х.Х.Х.255 gateway Х.Х.Х.Х dns-nameservers Х.Х.Х.X Х.Х.Х.Х up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.17.254 eth0 auto eth1 iface eth0 inet static address 192.168.Х.Х netmask 255.255.255.0 up route add -net 10.0.10.0 netmask 255.255.255.0 gw 10.0.0.1 dev $IFACE up route add -net 10.0.20.0 netmask 255.255.255.0 gw 10.0.0.1 dev $IFACE up echo Interface $IFACE going up | /usr/bin/logger -t ifup down echo Interface $IFACE going down | /usr/bin/logger -t ifdown auto eth0
И еще сайт,
http://xmodulo.com/2012/05/how-to-run-iptables-automatically-after.html
Ещё линки
http://www.debian.org/doc/manuals/debian-reference/ch05.en.html
https://wiki.debian.org/NetworkConfiguration
http://forums.debian.net/viewtopic.php?f=5&t=47649
воскресенье, 27 октября 2013 г.
MySQL+SSL репликация
Репликация у MySQL изначально без шифрования, что снижает нагрузку на систему, но при разнесении базы на несколько площадок возникает вопрос безопасной репликации. Это можно делать как через сторонние тоннели, так и штатными методами через SSL. Будем делать штатными методами.
четверг, 24 октября 2013 г.
Немного про zfs send
Команда zfs send создает потоковое представление снимка, передаваемое на стандартный вывод. По умолчанию генерируется полный поток. Выходные данные можно перенаправить в файл или в другую систему. Команда zfs receive создает снимок, содержимое которого помещается в поток, направляемый на стандартный ввод. При получении полного потока также создается новая файловая система. С помощью этих команд можно отправлять и получать данные снимков ZFS и файловых систем.
http://docs.oracle.com/cd/E19253-01/820-0836/gbchx/
http://docs.oracle.com/cd/E19253-01/820-0836/gbchx/
О надёжности рейдов
Неожиданно обнаружилось, что в блоге нет очень важной заметки про надёжность RAID разных уровней.
http://blog.aboutnetapp.ru/archives/975
"RAID-5 на 7 дисках данных (7d+1p) почти в четыре тысяч раз менее надежен, чем RAID-6, на тех же 7 дисках данных (7d+2p)!"
Почему RAID-5 — «mustdie»?
Почему RAID5 — «must have»?
http://blog.aboutnetapp.ru/archives/975
"RAID-5 на 7 дисках данных (7d+1p) почти в четыре тысяч раз менее надежен, чем RAID-6, на тех же 7 дисках данных (7d+2p)!"
Почему RAID-5 — «mustdie»?
Почему RAID5 — «must have»?
Но тут следует читать скорее как "почему raid-6 лучше чем raid-10", помня про оочень долгое время перестроения у raid-5 и существенное снижение производительности, в отличии от той же 10, где надо отзеркалировать только 1 диск, вообще без вычислений, и существенный рост нагрузки на оставшиеся диски, с шансом "добить" еще диск и гарантированно потерять весь массив.
Ну и про write hole помним.
публикация консольных "плюшек" с голосовалкой за лучшие
What's this?
commandlinefu.com is the place to record those command-line gems that you return to again and again.
Delete that bloated snippets file you've been using and share your personal repository with the world. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.
http://www.commandlinefu.com/commands/browse
commandlinefu.com is the place to record those command-line gems that you return to again and again.
Delete that bloated snippets file you've been using and share your personal repository with the world. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.
http://www.commandlinefu.com/commands/browse
debian: ставим утилиты для raid-контроллеров
Штатно в дебиляне нет программ для управления raid-контроллерами, того же arcconf. Исправим это недоразумение.
Подключаем доп репу hwraid (на примере 7, для 6 заменяем wheezy на squeeze)
cat > /etc/apt/sources.list.d/hwraid.list <<EOF
deb http://hwraid.le-vert.net/debian wheezy main
EOF
(а вообще -- branch can be lenny, squeeze, wheezy and sid for debian, or hardy, intrepid, jaunty and lucid for ubuntu.)
GPG сигнатуры
wget -O - http://hwraid.le-vert.net/debian/hwraid.le-vert.net.gpg.key | sudo apt-key add -
обновим листы
apt-get update
Теперь доступны такие утилиты как aacraid-status, arcconf, cciss-vol-status, hpacucli, megactl итд.
Да, при попытке установить ASM выдаст, что не может найти jre5 или jre6, надо искать последнюю рабочую версию jre-6 на просторах интернета.
Линки
Подписаться на:
Сообщения (Atom)