Записи с меткой ‘freebsd

В определенных ситуациях требуется быстро раздавать фиксированный набор статических файлов, например при раздаче swf файлов flash/flex приложений. Для того, чтобы снизить нагрузку на диски и уменьшить время реакции, можно организовать горячее кэширование файлов в оперативной памяти: Создадим хранилище для кэша на md диске: mkdir /var/tmp/nginx chown www:www /var/tmp/nginx echo «md /var/tmp/nginx mfs rw,-s128m,late 2 0″ [...]

Добавляем параметр log к конфигурации ната: ipfw nat 1 config ip 1.2.3.4 log Теперь количество трансляций можно посмотреть командой: # ipfw nat show nat 1: icmp=106, udp=34388, tcp=115736, pptp=0, proto=0, frag_id=14 frag_ptr=0 / tot=150244 Есть возможность посмотреть, сколько ядерной памяти потребляет нат: # vmstat -m | grep alias | tr -s ‘ ‘ | cut [...]

В связи с тем, что в новой версии популярного торрент клиента µTorrent была включена поддержка протокола µTP, значительно выросло количество транзитных пакетов на пограничных маршрутизаторах. Было принято решения заблокировать паразитный трафик. #!/bin/sh /usr/sbin/ngctl mkpeer ipfw: bpf 2 main /usr/sbin/ngctl name ipfw:2 utp_filter /usr/sbin/ngctl msg utp_filter: setprogram { thisHook=\»main\» ifMatch=\»\» ifNotMatch=\»main\» bpf_prog_len=12 bpf_prog=[ { code=48 jt=0 [...]

При использовании mpd5 в качестве клиента часто сталкиваюсь с необходимостью завернуть весь трафик через ng интерфейс в нат. Делается это очень просто — с помощью up- и down-скриптов, которые вызываются, когда интерфейс создается и удаляется. Добавляем в mpd.conf строчки set iface up-script /usr/local/etc/mpd5/iface-up.sh set iface down-script /usr/local/etc/mpd5/iface-down.sh И создаем соответствующие скрипты: #!/bin/sh route delete default [...]

Тем временем Pawel Jakub Dawidek влил в HEAD код HAST (Highly Avalable STorage), геом класс, позволяющий организовывать зеркало из дисков, расположенных на разных серверах. Синхронизация такого хранилища будет осуществляться по TCP/IP. Функциональность обещает быть схожей с линуксовым DRDB. Оригинальное сообщение в рассылке Описание во FreeBSD WIKI

mysql-master-master 1.x

2, Фев 2010

Внедрил первую ветку mysql-master-master. Впечатления остались двойственные: сама задумка неплоха, но авторы откровенно забили на проект, многие issues открыты больше года и до сих пор не закрываются. Так, например, при установке read_only агент не делает flush tables with read lock, что может серьезно поломать репликацию. Кроме того, авторы забили и на включение-выключение event scheduler в [...]

Тюнинг MySQL и InnoDB InnoDB начинает работать с файлами данных и логами напрямую, не используя буферы файловой системы. Позволяет избежать двойной буферизации при работе с файлами данных и логов. innodb_flush_method = O_DIRECT Механизм буфера двойной записи (doublewrite) используется в InnoDB для того, чтобы удостовериться, что измененные страницы были записаны в файл данных. Этот механизм позволяет [...]

Кстати, бэкапиться с ZFS на слейвах очень и очень просто: #!/bin/sh user=’mysqlbackup’; pass=’superpass’; /usr/local/bin/mysql -u $user -p$pass -e ‘STOP SLAVE; FLUSH LOGS; FLUSH TABLES WITH READ LOCK; \ SYSTEM zfs destroy -r data/mysql@yesterday; \ SYSTEM zfs rename -r data/mysql@today @yesterday; \ SYSTEM zfs snapshot -r data/mysql@today; \ UNLOCK TABLES; START SLAVE;’ Скрипт выполняется примерно за [...]

Открыл для себя очередную крутую штуку, FreeBSD UFS/ZFS Snapshot Management Environment. В портах можно найти в sysutils/freebsd-snapshot . Утилита позволяет манипулировать UFS2 снапшотами не сложнее, чем это делается в ZFS: # snapshot list /var Filesystem User User% Snap Snap% Snapshot # snapshot make -g4 /var:test # snapshot list /var Filesystem User User% Snap Snap% Snapshot [...]

С удивлением обнаружил, что во стандартной поставке FreeBSD отсутствует скрипт для автоматического подключения iscsi таргетов. После недолгих поисков нашел сей скрипт в рассылке.


Наверх