суббота, 29 сентября 2012 г.

mysql: сколько занимает база/таблица

Иногда надо посмотреть, сколько места занимают все базы, для myISAM это можно сделать через du. Но чаще нужно, сколько занимает 1 база или даже таблица.

Размер таблицы:
show table status like '%table%'
и ищем Data_length плюс Index_length (размер данных и индексов)

Для myisam можно опять же посмотреть на размер файлов этой таблицы. Для innodb - если режим "файл на таблицу", так же, иначе - только через table status.

Посчитать размер индекса:
SELECT TABLE_SCHEMA, SUM(INDEX_LENGTH) FROM information_schema.TABLES GROUP BY TABLE_SCHEMA;
Так сделано вроде в ispmanager.

Для размера базы - или считаем через du для myisam, или через show table status и сложением для innodb без разбиения по файлам.

Компания Western Digital анонсировала линейку жестких дисков объемом 4тб

Компания Western Digital анонсировала линейку жестких дисков SAS и SATA для обычных покупателей и корпоративных пользователей. Основной особенностью данной линейки является наличие накопителя объемом 4 терабайта.
Серия 3.5-дюймовых WD RE SATA накопителей состоит из моделей объемом 2 Тб, 3 Тб и 4 Тб. SAS диски представлены в объемах 1 Тб, 2 Тб, 3 Тб и 4 Тб. Все новинки работают на скорости 7.200 об/мин.
Новые накопители обещают от 1.2 миллиона до 1.4 миллиона часов работы на отказ. А используемая здесь технология NoTouch обещает, что считывающие головки никогда не коснуться самих блинов (их используется 5, каждый объемом 800 Гб).
Все жесткие диски будут поставляться с 5 летней гарантией.

пятница, 28 сентября 2012 г.

event scheduler

Начиная с версии 5.1, в mysql появился встроенный планировщик а-ля cron - event_scheduler

Perfect Workflow in Sublime Text 2

Perfect orkflow in Sublime Text 2

I’m a confessed code editor addict, and have tried them all! I was an early adopter of Coda, a TextMate advocate, even a Vim convert. But all of that changed when I discovered Sublime Text 2, the best code editor available today. Don’t believe me? Let me convince you in this course.

настройки транка для telphin на asterisk

Памятка. (на конец 2010 года была верной)

вторник, 25 сентября 2012 г.

selectel снова лежит...

В очередной раз у селектела проблемы, только в этот раз они отмалчиваются. Около 22 часов ноды отпали, около 23 одна на небольшое время вернулась в строй и снова отпала. 2:24, всё пока лежит, информации нет. Печально.

UP
В 7 утра ответили:
"В результате сбоя в работе сетевого оборудования, возникла проблема со стабильностью связи между хостами виртуализации и хранилищами, данные не затронуты. В настоящий момент работа сети стабилизировалась, и идет запуск всех машин, которые работали до сбоя."

Но по системам мониторинга последние ноды запустились только в 11.30.
Очередной "хороший" сбой более чем на 12 часов.

UP2
Колбасит дальше.
"К сожалению, произошла потеря связности в сети передачи данных.
Ответственным специалисты уже извещены, ведутся восстановительные работы.

Срок восстановления ориентировочно, составит несколько часов."

Мотает 15 часов уже.

UP3
Итог. Колбасило 25 часов, аптайм был менее 50%. Интересно, что у них случилось, что всё лежало так долго.

Итог: http://habrahabr.ru/company/selectel/blog/152351/

понедельник, 24 сентября 2012 г.

Доставка приложений и тонкие клиенты. Можно доставлять конкретные приложения, можно целиком виртуальную машину.

Наиболее интересные технологии -- SPICE (RedHat) и vdi (citrix, vmware)

Технологии у citrix (XenDesktop (протокол ICA)) и VmWare (VMware View Client (протокол PCoIP))

Правильный расчет для VDI (vmware)

freebsd+percona

Какое-то время, почти 2 года, был порт percona-server, но зимой возникли проблемы с его сборкой, и он как-то тихо пропал. Полностью пропал. Что с одной стороны печально, с другой - уже есть оф мускл 5.5 + mariadb, в которой есть и aria и xtradb и pbxt... Хотя на sql.ru марию не любят, и мне довелось долго с ней возиться. Версия 5.2.4 например была кошмаром, к 5.2.6 основные баги выловили, сейчас 5.3.8 - работает неплохо и весьма стабильно, с учетом что у нас много репликаций между серверами.

Интересно, в каких версиях кроме перконы есть такая штука:
http://kb.askmonty.org/en/slow-query-log-extended-statistics/

Отслеживание зависаний

Бывает так, что работал себе сервер, и вдруг не отвечает или просто не пускает, хоть и пингуется. А после перезагрузки в логах всё_хорошо_а_вот_пошла_загрузка. Проблема актуальна только для "неполноценных" систем, коими кишит дешёвый хостинг, и наиболее известный - хецнер/фаствпс.
2 основных метода решения проблемы, не считая серьезные решения типа IPMI/SOL:
1) через syslog (rsyslog)
2) netconsole - 1, 2, 3

Nexenta

Очень интересная система для локальной СХД, построена на форке opensolaris с zfs.

http://www.nexentastor.org/projects/site/wiki/CommunityEdition
http://mosqit.ru/solutions/storage/177-nexenta.html

Максимум в хранилище 18Тб, без поддержки.

Нужен будет ключ

Установка

Готовые решения
Одна проблема - цен найти на это так и не удалось.

Файлер на ZFS для облачной инфраструктуры — NexentaStor
Тестируем VPS на базе сервера KVM с томами, подключенными по iSCSI c файлера NexentaStor

php-сессии в memcached

В php.ini:

session.save_path=tcp://127.0.0.1:11211
session.save_handler=memcache
session.name=SESSIONID

С ispmanager может быть бага
Fatal error: session_start(): Failed to initialize storage module: memcache (path: /home/user/data/mod-tmp) in ...

"Внутри VirtualHost в конфиге Apache прописан php_admin_value session.save_path и оттуда берется значение на которое ругается в ошибке."

Тест конфигурации mysql

Простейший вариант:
mysqld --help

(примечание для freebsd: надо с полным адресом
/usr/local/libexec/mysqld --help)

Подробнее, с переменными
mysqld --verbose --help

Указав другой конфиг для тестирования
mysqld --defaults-file=/tmp/new.cnf --verbose --help

четверг, 20 сентября 2012 г.

Dell CacheCade

В процессе изучения документации была найдена интересная строчка про cachecade:

NOTE: To avoid inefficient use of space, it is recommended that CacheCade volumes are created with drives of the same size. Larger disk sizes are truncated to the size of the smallest contributing disk, similar to RAID 0.

Получается, силами рейда просто делается зеркало между ssd и обычными дисками. То, что софтово можно было сделать лет 10 как например во freebsd через gmirror, выставив режим чтения в load/priority.
Так что вещь по сути полезная, но давно делающаяся штатно в нормальных системах. В отличии от того же MaxIQ, который гораздо интуитивнее и ускоряет работу всех дисков, а не маленького кусочка.

Плюс большой вопрос, умеет ли этот cachecade технологию TRIM, без которой на ряде дисков можно _вдруг_ получить просадку производительности в 3-4 раза, которую будет очень сложно исправить.

типы SSD

http://www.dell.com/downloads/global/products/pvaul/en/Solid-State-Drive-FAQ-us.pdf

Сейчас есть 3 основных типа:
SLC
MLC
eMLC


вторник, 18 сентября 2012 г.

mdadm: наиболее часто используемые команды

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

Дополнение к первому посту.

Просмотр статуса массивов
cat /proc/mdstat

Список массивов
mdadm --detail --scan --verbose
Этот же вывод иногда нужен для конфига mdadm.conf

Статус конкретного массива, подробный
mdadm --detail /dev/md2

Перестройка нужного массива - замена отказавшего диска (удалить из массива и снова внести)
mdadm --manage /dev/md0 -r /dev/sdc3
mdadm --manage /dev/md0 -a /dev/sdc3

При необходимости, можно регулировать скорость процесса расширения массива, указав нужное значение в файлах
/proc/sys/dev/raid/speed_limit_min
/proc/sys/dev/raid/speed_limit_max

Управление синхронизацией через файл
echo idle > /sys/block/md2/md/sync_action

Много на xgu.ru

вторник, 11 сентября 2012 г.

hpa-tftp

Настраиваем hpa-tftpd, так как он из немногих, которые умеют работать не через inetd а как демон.

Во freebsd оно лежит в ftp/tftp-hpa

Запускать для тестов можно так:
/usr/local/libexec/in.tftpd -L -p -c /tftpboot
L: работать в консоли (не уходить в фон), удобно при отладке и частом перезапуске. При этом имеет смысл добавить -v
l: запуститься в фоне
p: пропускать ряд проверок. Зачастую на тестах облегчает жизнь.
c: разрешить создавать файлы.
Также можно включить режим s: сделать chroot в указанный каталог.

Запускается демон от nobody, поэтому у каталога должны быть права на работу от этого пользователя.

При отладке в клиенте желательно включать подробный режим:
$ tftp hostxyz
tftp> ver
Verbose mode on.
tftp> trace
Packet tracing on.
tftp> get send.txt
getting from hostxyz:send.txt to send.txt [netascii]
sent RRQ

Из проблем: может быть такое
Sending RRQ: filename: 'file.txt', mode 'netascii'
Waiting 5 seconds for packet
Got ERROR packet: Only absolute filenames allowed

Значит надо указать полный путь к файлу.
get /tftpboot/file.txt

И снова не забываем про права на рабочий каталог и файлы в нём. Флаги по умолчанию
tftpd_flags:="-s /usr/local/tftp"

Демон по умолчанию сделает чрут в /usr/local/tftp.

линки
http://icesquare.com/wordpress/solvedtftp-error-code-2-access-violation/
http://www.suacommunity.com/forum/tm.aspx?high=&m=13561&mpage=1#13570

понедельник, 10 сентября 2012 г.

Памятка про спец биты

kryukov.biz/wiki/Специальные_права

Поскольку специальные права используются крайне редко, при выводе программы ls символ, их обозначающий, закрывает символ стандартных прав доступа. И не понятно, rwt — это rw- или rwx? Определить, стоит ли символ стандартных прав доступа под символами s и t очень просто. Если t маленькое, значит x установлен. Если T большое, значит x не установлен. То же самое правило распространяется и на s.

4=SUID
2=SGID
1=sticky

Устанавливать можно как g+s, u+s...

На каком оборудовании и софте работают поисковые роботы Google

Указал бы оригинал, но он просто засран всяким сеошным мусором.