karguine.ru

Персональный блог

FreeBSD, em, ierrs

Столкнулся с офигенно интересной проблемой. На FreeBSD 8.2-RELEASE начали теряться входящие пакеты на внешнем интерфейсе с двумя vlan и ipfw nat на одном из них.

Вся сложность в том, что проблема проявляется не всегда, и предсказать время её проявления невозможно. Может каждые пять минут возникать, а может и неделю работать без проблем.

Пробовал править всякие переменные sysctl, увеличивал размеры буферов, включал/выключал net.isr, пробовал ставить драйверы от Яндекса. Не помогает.

Посидев перед консолью денёк, я поймал проблему, и, по советам умных людей в рассылке UAFUG снял необходимые показания по загрузке разных кусков ОС. Этим дело, к сожалению, не ограничилось, и мне пришлось пересобирать ядро с поддержкой какого-то там ядерного профайлера. Справился, отправил данные.

И ответили мне странное. Нужно либо распаралеливать nat, либо править какие-то константы в ядре.

Это странно, потому что нагрузка по сети на машину не такая и большая — в пиках не более 60 kpps через оба интерфейса.

В это же время один из специалистов из рассылки в лично переписке очень советовал перейти на более мощные двухголовые сетевухи. Но, во-первых, они стоят много денег, а, во-вторых, нужно будет менять не только их, но и материнску плату, т.к. в нынешней нет двух портов PCI-e.

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

Планирую сделать это сегодня. Если не поможет и это, то даже и не знаю, что делать.

Демотиватор

Не знаю почему, но эта картинка заставила меня очень долго и очень громко смеяться.

![22806 225619 498f 1cd 18d 3cabf 9e 825242dba 73a 4b 1](http://karguine.ru/wp-content/uploads/2011/03/22806_225619_498f_1cd_18d_3cabf_9e_825242dba_73a_4b_1.jpg)

Купание зелёного попугая

А вот так выглядит попугай Пшик после купания. Страшный, правда?

![Мокрый попугай](http://karguine.ru/wp-content/uploads/2011/03/imag0038.jpg)

Ручная птичка

Попугай Пшик стал окончательно ручной. Начал садиться на голову, очень любит сидеть и на плече у Ольки, когда она в кофте. Видимо, за кофту удобно цепляться.

Может сойти по руке и заглянуть в тарелку, когда мы едим. Ест и изо рта, и с рук, и с вилки. Легко садится на палец и сидит там чистится или потягивается.

Вот только орёт очень громко и часто.

Как лечить баги

Есть у меня в парке одна машинка — бордер. Нагрузки на ней никакой, стоит себе, роутит пакетики, забирает маршруты по BGP, натит клиентов сеть. В общем-то, на этом её задачи заканчиваются.

Но завёлся за ней один непонятный глюк: перегружается периодически, зараза. Иногда по два дня работает, иногда по два-три раза подряд может перегрузиться. В логах чисто, а перегружается.

Думал я, думал и придумал включить создание дампов памяти, чтобы посмотреть, как там и что.

Забавно то, что после этого перегружаться она перестала. Вот уже почти четверо суток стоит, молотит. А мне уже не терпится в дампе покопаться.

Взаимосвязь всего и вся

Вот очень всё неудобно получается в этим биллингом.

Решил попробовать хранить архивные данные не в mysql, а в обычном текстовом файле. Мне показалось, что так должно быть быстрее. Потестировал на настольной машине, результат хороший. Решил проверить на сервере.

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

Вот, сижу теперь и жду пока всё обновится/соберётся вместо того, чтобы тестировать производительность и двигаться дальше. И такие вот стопоры встречаются на каждом шагу.

Пора браться за ум

Так. Всё, доигрались. Биллинг у нас работает всё хуже и хуже. Всё менее надежно и предсказуемо. Хотя, оно и не мудрено, семь лет прошло с момента внедрения. Он и на то время был не сказать чтобы очень уж хороший, но работал и стоит в десятки раз дешевле остального.

В общем, так. Пора браться и откапывать начатый года два или три назад проектик по написанию собственного биллинга для маленького провайдера. Как мне сейчас кажется, прогресс там застыл на отметке примерно 30-40%. На данный момент есть костяк, который умеет считать. Допиливать там ещё есть что. Также нужны веб-морды: клиентская и админская, сопряжение с оборудованием доступа, и — главное — тестирование.

Именно тестирование убивает меня наповал. Очень страшно чего-нибудь не оттестировать как следует и выпустить в продакшн. Это же деньги, причём и мои тоже.

Нагнал сумбура, пойду вникать в свой старый код. Дня два понадобится, думаю, только на то, чтобы привыкнуть к проектику.

Болтаем

У нас прогресс. Пшик начал пытаться разговаривать. Говорит одновременно с кем-то говорящим из людей. Причем, если говорит Олька, то голос у него высокий, а когда говорю я, то он пытается чирикать басом, что в его исполнении похоже на какой-то скрежет или скрип.

Если так пойдёт и дальше, то скоро будет скрипеть что-то осмысленное.

PS. У меня тут есть подозрение, что аллергия на попугаев у меня тоже имеется. Осталось только как-то это выяснить. А для этого нужно сначала выздороветь.

Пшик

Купили мы тут себе попугая. Неделю назад. Волнистого, зеленого. Назвали Пшик.

Поначалу он был какой-то неактивный, сутки просто сидел на одном месте и даже ничего не ел. Потом понемногу освоился и начал лазить по клетке.

Через пять дней пребывания у нас дома, этот смышленый малый научился открывать кормушку изнутри с целью выбраться из клетки на свободу. Там такая сдвигающаяся вбок крышка для засыпания корма на ней. Мы как раз тогда сидели на кухне за столом и все видели. Дали ему немного полетать, потом поймали и посадили обратно в клетку. Кормушку заблокировали резинкой.

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

А сегодня он начал есть с рук. Если положить на палец мелких круглых семечек (подозреваю, что это просо) и поднести к нему, он не боится и не улетает, а ест.

Скоро привыкнет совсем и можно будет выпускать его полетать по комнате.

Переезд

Переехал на standalone с блогохостинга blogger.com. Всё отлично, вот только все предыдущие посты и комментарии начинаются с символа >. Что с этим делать пока не придумал, но обещаю подумать.

Оформление тоже изменится, конечно же.

UPD. Оказывается, с переездом всё не так просто. Теги, которые я присваивал записям в blogger, стали после миграции категориями. Как сделать имена категорий тегами я пока не знаю. Руками править более трёхсот записей мне совершенно не хочется. Видимо, придётся бросить всё как есть и не трогать ничего до тех пор, пока не найду способ сделать это пакетно.