?

Log in

No account? Create an account
записки рисованного
 
[Most Recent Entries] [Calendar View] [Friends View]

Saturday, November 25th, 2006

Time Event
2:36p
Вчера дали странный хьюлетовский сервер (марку не знаю, но подозреваю dl140). Внутри 4х ядерный Xeon и дисковый контроллер, который по lspci выглядит как Intel Corporation 631xESB/632xESB/3100 Chipset SATA Storage Controller IDE (rev 09).

Если все 4 ядра поднялись нормально, то дисковый контроллер упирался всеми своими ножками и полупроводниковыми элементами. Ядро линукса видело, что он SATA, но инициализировать отказывалось, предпочитая видеть в нем обычный IDE. Ну а что значит IDE, когда оно там SATA? Это значит работа в PIO режиме, жуткие тормоза по каждому чиху и обещание создать raid за двое суток.

Перерыл весь инет - глухо. Никаких криков, никаких жалоб ... у всех всё работает, кроме меня. А как же я - я же лучше собаки ... Пошел искать по ошибкам, который выдал dmesg в районе дисков.

Оказалось, что контроллер тупой, а линукс слишком умный. Когда линукс пытается инициализировать контроллер, то он радостно попробовав стандартный IDE контроллер тем самым загоняет SATA контроллер в режим PATA-only и на последующую попытку поднять SATA получает "инна!".

Решение простое: добавить ide0=noprobe ide1=noprobe в параметры ядра и перезагрузиться. Счастье наступает мгновенно и полноценно:
# cat /proc/mdstat |grep speed
      [===>.................]  resync = 15.6% (45544960/291836672) finish=65.3min speed=62807K/sec

А было 2,2-2,4Мб/с ...
6:57p
Придумал новую пузомерку для линуксоидов:
# route -n|wc -l
29


P.S. Показания машин с VPS не считаются ;)
8:22p
(рассматривая горстку терминалов) Кажется, усё ... Тут у меня очередной этап завершился. По поводу создания той самой сетки с "неубиваевыми" сервисами. Этап заключался в планомерном сносе openvz со всех машин и переконфигурировании сервисов, которые крутились в openvz. Правда, на одной машине openvz остался - там под разные платформы пакетики собираются ;)

Самая главная причина, по которой я сносил openvz: имена/адреса узлов окончательно устаканились и больше не требовалось решать задач типа "где этот postfix, который отвечал по адресу 1.2.3.4?". Теперь хватает простого "миррора" данных и iptables -j DNAT. А нафиг лишний оверхед по памяти/диску/процу? Рассказка пишется, да ...

Но, к сожалению, если и личные причины для сноса openvz. Первая: почему-то девелоперы в openvz обожают выключать драйвера для дисковых контроллеров, которые включены в том же редхате или центосе. В итоге мне приходилось для 2х машин пересобирать ядра самому. Мелочь, а раздражает. Вторая гораздо серьезней: девелоперы покопавшись в ядре, сделали невозможной нормальную работу quagga (AKA zebra) и как я подозреваю, любых штук, которые с роутингом работают через netlink (так он вроде обзывается). Нет, мне удалось завести зебру, но опять же, путем пересборки и прибивания длинных и грязных гвоздей и костылей в получившуюся конструкцию. Но видимо, у меня руки кривые и в итоге quagga "умирала" в интервале неделя/месяц. Нет, ospf работал, только никаких изменений в таблице роутинга не происходило. После перезапуска все оживало ... Неаккуратненько ;)

А так ... для standalone сервера, к которому основное требование "работать!" - openvz самая прикольная штука. Главное тут не полениться и хотя бы прочитать документацию. Пусть даже и по диагонали. Пусть даже если она и невнятная (кто поймет с первого раза про дисковые квоты и сможет их же с первого раза установить - тот либо гений, либо разработчик openvz) - всё равно надо прочитать ;) . Возможность завести на одной машине кучу однотипных сервисов попросту неоценима. Никто не мешает держать на одной машине пару mysql с одинаковыми конфигами, но разных версий. Или как я сейчас - попросту собираю пакеты для разных дистрибутивов с разными gcc и glibc. Правда, openvz тут расхолаживает: вместо того, что бы думать про безопасность, возникает желание "прикрутить гайки" у виртуальной машины и забыть ...

Update: в последних версиях ovzkernel починили работу с роутингом, так что вторая личная причина больше не состоятельна ;)

<< Previous Day 2006/11/25
[Calendar]
Next Day >>
multik   About LiveJournal.com