nuclight: (Default)
Пока на больничном, есть свободное время, решил записать воспоминания про олимпиаду для Linux-администраторов — а то уже не всё помню. В этом году её честно назвали олимпиадой для Linux-администраторов, и я, будучи фряшником, хотя сомневался, всё-таки пошел попробовать. Попробовал очень даже неплохо :) Причем, что любопытно, очень даже неплохо из BSD-админов "попробовал" не только я: если во 2-й тур прошло 5 человек из 36 с канала #freebsd (shattered, dmn42, Jay, imax и ваш покорный слуга) — то в финал пробралось четверо из них. Четверо из десяти. По-моему, эти 40% на чисто линуксовой олимпиаде вполне подтверждают тезис о том, что BSDшники профессиональнее =) Причем дело не в том, что эти люди просто "случайно" оказались универсалами, знающими несколько платформ (и случайно завсегдатаями канала #freebsd). Они, как и я, еще и предпочитают эту систему, а лично я — так и вообще имел не так много опыта с другими системами. Мой опыт общения с линуксами в основном ограничивается SLES на вычислительном кластере родного политеха. И сусю эту предписывалось трогать как можно меньше (суппорт, мол, есть), и был этот кластер толком никому не нужен — увы, провинциальные реалии... так что мы большую часть времени занимались если не виндой и суппортом не умеющих писать на Си юзеров, то, кхм, саморазвитием (и отнюдь не по линуксовой части).

Но обо всём по порядку. Первые игры олимпиады — вопросы по теории, но это лишь отсев, а не что-то, способное действительно показать профессионалов в отрасли. Определяет практика, и первая практика на олимпиаде началась во втором туре. 25 октября нужно было починить, кроме мелочей, LDAP, Джумлу и Друпал (да, мне тоже было смешно), в виртуалках, доступ в которые был сделан через веб — типа консоль tmux. Видимо, специально затем, чтобы больше времени потратили — все ж к screen привыкли. Эта игра глючила и глючила, и довольно быстро вообще прекратилась, поскольку кто-то нашел дырку в реализации организаторами доступа к tmux через web — и пробрался из виртуалку и хост-машину, где еще и ответы лежали. Так что игру отменили, и я уже даже не помню, что там было.

Повторная игра 2-го тура была 27 октября, вот там уже был человеческий VNC. Правда, интерфейс "старт/стоп виртуальной машины" был сделан на вебе неудобно, впрочем, то мелочи (хотя у некоторых они вызвали большие нарекания). Итак, "физическая" консоль виртуалки по VNC, в виртуалке — Убунта. Тщательно сломанная (вообще это уровень уже даже не финала, а суперфинала прошлого года), настолько, что паникует при загрузке. И надо её починить — мониторинг снаружи проверяет сервисы этой машины, которые должны работать (ессно, пока на ней нет поднятой сети, всё горит красным). Сделать надо всё за 1 час, чем больше и раньше других сделано — тем выше место в таблице участников.

Вот тут начинается самое интересное. Я эту Ubuntu, как и вообще современный Линукс, видел вживую впервые в жизни. Камрад Jay описал чуть спустя то, что на этой игре было по заданиям. А у меня было интересное психологическое состояние, и многие из обсуждавшихся вещей меня удивили — я их не заметил, хотя и решил. Наверное, ближе всего будет описать это состояние, как "танк, рвущийся на прорыв через препятствия". Воля к победе, боевой дух, решимость, как её там еще?.. Короче, время пошло, взлетаем.
Под катом не без сисек )
Что можно сказать по итогу — в отличие от прошлого года, по этой олимпиаде уже вполне можно судить о положении дел в отрасли, её результаты показывают уже что-то реальное — всё стало гораздо ближе к практике. На прошлой было три теоретических теста (1 тур, 2 тур, финал), пусть и разных по форме, и лишь одна игра с практикой — суперфинал. В этой — только первый тур с отсевом по теории, но вот все 3 практики были однообразные — "починить упавший сервер за 1 час".

Поскольку победителям прошлых лет запрещено участвовать в следующих олимпиадах, могу свободно высказать предположения, как можно было бы её еще улучшить. Например, в финале можно было бы не чинить сервер, а настраивать что-то с нуля. А в суперфинале — оттюнить медленно работающий сервер (привет, хайлоад). Или, там, разобраться с тем, почему в боевых условиях не работает поделие криворукого программера (это классическое бодание админов и программеров, вошедшее в байки и мемы, бывает даже в самом Яндексе). Одна беда — это требует больше времени, а в программе финального дня еще экскурсия в ДЦ Яндекса, затягивающаяся по московским пробкам... Может быть, стоило бы объединить финал и суперфинал, чтоб уместилось, но, наверное, это будет противоречить правилам, которых хочет придерживаться Яндекс...
nuclight: (Default)
А я тут в результате http://root.yandex.ru (кстати, тема для отдельного поста — в десятке финалистов линуксовой олимпиады было четверо фряшников) из Томска переехал в Москву понаехал в Нерезиновую. Успел, наконец, разобраться со всеми тяготами и хлопотами переезда до наступления нового, по всем прогнозам тяжелого, года. Некоторые из которых проводят некоторые исторические параллели (вот Николай II — тоже взошел на престол примерно за 11 лет до первых событий). Что ж, год будет тяжелый, но пока — отдыхаем и пьем.

Пять минууут, пять минуууут... С Новым 1905 годом вас всех, товарищи!

26

Jan. 26th, 2011 08:24 pm
nuclight: (Default)
26! Круглая дата! Столько бывает только раз в жизни!

Вот и дожил наконец до эпохального. Ура!

И природа со мной солидарна - сегодня 15000 день от начала эпохи:
$ echo `date +%s` / 86400 | bc
15000


Пожелаю себе следования путем 26, яркого и огненного. Вперед, к вершинам и победам!

Мск

Nov. 3rd, 2010 11:35 pm
nuclight: (Default)
В связи с http://root.yandex.ru/ буду с 18 по 21 число в Москве. Желающие пересечься - велкам в комменты ;)

P.S. Если по части FreeBSD/*nix, то у #freebsd@RusNet намечается коннект, соответственно, лучше на него :)
nuclight: (Default)
===
В марте, помнится, я написал в ipfw@ предложения по архитектурным улучшениям ipfw, как кандидат на GSoC 2008. Никто не отреагировал (многабукаф, фигли). Дальше, в конце мая в RU.UNIX.BSD разгорелся спор - народ хотел изменения "как Cisco ACLs, но лучше", однако конкретики не было, хотя со временем что-то уже вырисовалось, я поглядел на идеи для будущего из перевода рассказа о Netgraph и набросал примерный вариант, как это могло бы выглядеть. И что же? Тут же дискуссия заглохла. Стало понятно, что выносить такие вещи на публику не имеет смысла - как только доходит до дела, любители почесать языком тут же исчезают. С другой стороны, каждый раз пересказывать сначала идеи тем индивидам, которые заинтересованы и могут сделать, долго, поэтому я решил расписать это и сделать доступным на вебе, чтоб не потерялось. А может, со временем и поможет найти тех, кто заинтересован и либо сможет сделать, либо обсудить изменения планов, исходя из практических потребностей.
Много букв для kernel-девелоперов, мало кому более интересных )
===

Этот недописанный пост изначально неспешно готовился как памятка на будущее для узкого круга лиц о том, какие изменения в ipfw хотелось бы видеть и хотелось бы сделать. Однако идеей заинтересовались во FreeBSD Foundation и согласились спонсировать разработку этих идей - правда, всё никак не сделают официальный анонс (ну и я сильно подробно не публиковал пока поэтому). Организаторам RootConf 2009 предлагаемые идеи понравились тоже, посему официально сообщаю - я буду рассказывать об этом на оной конференции, проходящей в Москве 13-14 апреля сего года. На странице http://www.rootconf.ru/papers2009/12352.html доступны тезисы, там же, как обещают, будут позже выложены и презентация с видеозаписью доклада. Данный же пост, возможно, будет позднее дописан (или написан новый) с более подробной информацией о работе - ваши комментарии и пожелания по улучшению ipfw, впрочем, можете писать уже сейчас ;)

У меня, правда, есть еще одна проблема - негде остановиться в Москве в ночь с 12 на 15 апреля :) Никто не хочет впустить? :)
nuclight: (Default)
К нам в томский политех привезли вычислительный кластер. Состоит из 24 узлов, каждый - одноюнитовый корпус с двумя двухъядерными 3-гигагерцовыми ксеонами внутри и 8 гигами оперативы. Плюс 2-юнитовая управляющая станция в аналогичной конфигурации, разве что винтов больше в RAID'е. Узлы связаны между собой шиной Infiniband, это 10-гигабит по меди, служит для передачи данных (задержка - единицы микросекунд), а также управляющим гигабитным Ethernet. Воткнута в узлы еще некая управляющая сеть, разработка какого-то нашего института, на которую заведены резет, питание, а также один последовательный порт каждого узла - таким образом, с управляющей станции к ним ко всем можно иметь доступ по serial console, а также включать и выключать их удаленно. Стоит на них на всех SLES 10 (уже немного поебались с RPM на нём, да :)) с MPI, gcc и icc.
Кроме того, еще имеется хранилище на 5 Тб от Panasas. Это "вещь в себе", организующая RAID "на уровне отдельных файлов", имеющая web-интерфейс и отдающая данные через 4-линковый Ethernet-транк (выдает до 350 MB/s полезных) несколькими разными файловыми системами - обычно родной panfs, но умеет и nfs и smbfs. Внутри этой штуки, кстати, стоит сильномодифицированная FreeBSD (в которой, впрочем, поковыряться нельзя, "вещь в себе", наружу не торчит).
Всё это хозяйство стоит в черной готичной APC-шной стойке, питается двумя Liebert'овскими UPS'ами на 10 кВА, шумит как паровоз (стойка со 7 свитчами в моей серверной в несколько раз тише, пожалуй) и легко может подогреть комнату, в которой это находится, с +20 до +35 и выше, если кондиционеры не включать.
Стоит это хозяйство 6 млн. руб. (7, включая помещение и пр.). Это конечно не 288 узлов собираемого сейчас в соседнем ТГУ кластера, который станет самым мощным в СНГ, но тем не менее, 750 рабочих Gflops (а в пике может доходить до 1000) в HP Linpack мы на нем уже получили. Кстати говоря, при такой стоимости железа очень смешно было увидеть в качестве Ethernet-свитча D-Link DES-1248T. Да, основные данные идут по Infiniband, но всё же...

Собственно, я это всё к чему. Поскольку администрировать сие хозяйство буду я вместе с однокурсником, нас посылают в двухнедельную командировку в Москву на обучение, прилетаю 19 числа (если погода будет летная ;)), будем тренироваться на подопытных кроликах в НИВЦ МГУ. Московским френдам, желающим пересечься - велкам в комменты.
nuclight: (Default)
Пару месяцев не читал ЖЖ совсем, да и сейчас выборочно (сессия, госы, бакалаварский диплом, ng_tag, все дела). И вот, читая несвежие уже новости, могу сказать - коммьюнити (расширение области "около BFP") трещит по швам. Причем уже по базовым швам. Что будет дальше? Я, конечно, буду рад ошибиться, но таки накаркаю сделаю прогноз. Итак, /* напрягает 1-ю и 2-ю функции */ коммьюнити прекратит своё существование (по крайней мере, в своей нынешней форме) через /* задействует 8-ю функцию */ примерно через 4-5 месяцев. Ну а пока - живём.

P.S. А сейчас ухожу в обычный свой полный оффлайн (возможный инет редкий, хреновый диалап и нерегулярный) до сентября. Поеду домой, автобус в Казахстан через несколько часов.
nuclight: (Default)
Снилась мне сегодня, как обычно всякая хрень. Из чего запомнил - одно про ЧАЭС. Там почему-то стержни призмами назывались (а может и клизмами, хехе). Другой - про ходячих транформаторов. Добрые такие трансформаторы, дружелюбные к людям, белой краской выкрашенные. Ходят неспешно, вразвалочку (дык ить, особо тут не побегаешь). Ну и гудят. Периодически. Мощно так гудят, ибо положенно. Всё ж таки сурьезные трансформаторы, не меньше 5600 кВА.
В общем хрень да хрень. Только с чего-то решил написать. К чему бы это?..
nuclight: (Default)
Закончил перевод всей почтовой базы с TheBat на встроенный почтовик Оперы, М2. В целом - доволен. Но расскажу по порядку, начиная с концепции M2.
Традиционные почтовые клиенты, как просто MUA (в Unix), так и "частично комбинированные" с MTA (обычные клиенты для Windows), хранят почту в папках (folders), по аналогии c файловой системой. Бывают стандартные папки - "Входящие", "Исходящие", "Отправленные", "Черновики", "Корзина". Через какое-то время писем становится много, и все они свалены в одну кучу. Тогда можно организовать свои папки, даже целую их иерархию, и настроить фильтры для входящей почты, которые будут класть эти письма куда надо.
С годами писем становится много - тысячи или даже десятки тысяч. Сортировка писем (настройка фильтров) по папкам при большом объеме корреспонденции, а потом ориентирование в десятках папок начинает занимать всё больше времени. Чтобы найти какое-то письмо, может потребоваться много времени, потому что оно подходит под тематику нескольких папок, так что в результате придется устроить поиск по всей базе размеров в сотню-другую мегабайт. Еще больше запутает картину наличие нескольких почтовых ящиков, особенно если между ними в разное время были редиректы.
Разработчики 7-ой версии Оперы придумали другой вариант. Вместо буквального копирования расположения писем в папках как файлов в каталогах сделано иначе. Все письма, со всех ящиков, кладутся в единую базу. Далее, при отображении пользователю, создаются так называемые Views (виды, представления). Что такое представление, можно хорошо пояснить на примере аналогии с SQL: пусть все письма лежат в таблице, тогда представление делает SELECT из этой таблицы по некоторому критерию, и показывает отобранные таким образом письма. Причем, аналогия идет и дальше, представления могут образовывать иерархию, в которой дочерние элементы могут отбирать письма только из родительских (хотя могут и напрямую из полной базы).
Из идеи представлений следует, что одно письмо может присутствовать одновременно в нескольких представлениях - хранится одна физическая копия, а показываются отобранные экземпляры. Более точной является аналогия с хард-линками на юниксовых файловых системах (и NTFS) - виды-каталоги хранят лишь ссылки на иноды, а уж те - информацию о самих письмах. Read more... )

Хорошо ли, плохо ли будет - посмотрим. Главное, ради чего я переходил на почтовик Оперы, достигнуто - кроссплатформенность. Я смогу со своей почтой работать из любой ОС, в которой работает Опера. Одно из основных препятствий на пути миграции из Windows в мир Unix - почта - устранено ;)

Дыбр

Mar. 27th, 2006 07:46 pm
nuclight: (Default)
Через пару часов уезжаю на региональную олимпиаду (программерскую, личное первенство) в Новокузнецк. Вернусь в пятницу днём.
nuclight: (Default)
Новогодняя истерия заебала. С начала декабря (а кое-где и раньше) уже начинают капать мозги всевозможными "предновогодними скидками". Кругом ведутся украшательства, нередко с идиотскими конкурсами "кто лучше украсит". Мода на дурацике красные шапочки возникла, идрить ее через колено.

Отовсюду сыпятся шаблонные поздравление и стандартные стихи. Со стандартными же иллюстрациями. Вона, родной профком учудил на днях - прислали всем юзерам @tpu.ru письмо с поздравлением, причем в двух экземплярах. И в каждом - полуторамегабайтная (!) .bmp (!!) картинка. Мало того, в письме в заголовках перечислены все ящики - сливайте базу спамерам на здоровье, ага. Хорошо, хоть дебиливизора у меня нет. Там уже давным давно в новогоднюю ночь показывают всякую мерзость.

Вот, помнится, начало надоедать оно мне еще в школьные годы. А в городе устроили праздник на двух основных площадях. Ну и вот, по телевизору ничего хорошего не показывали, решили мы с отцом и младшим братом сходить посмотреть, как же народ отмечает там, вокруг елки (это было где-то лет пять назад). Первое, что бросилось в глаза еще на подходе (шли-то издалека) - туман в воздухе. Точнее, дым - оказалось, там и сям постоянно палили из китайской пиротехники. Ребятишки во всех углах баловались петардами. Подошли ближе - на сцене что-то лабали казахские музыканты, деффки периодически визжали.
Пошли на другую площадь - по дороге пару раз чуть не оглохли от петард этих придурков, которые взрывали их совсем рядом. Ну и под ноги надо было смотреть - разбитые бутылки на льду вовсе не сахар. На второй площади оказалось то же самое. Разве что пришлось увернуться от Деда Мороза со Снегурочкой, которые за два метра благоухали перегаром. В общем, после часовой прогулки, отцу с братом, уж на что экстравертам, это надоело, возвращались домой наименее людными улицами - чтоб уменьшить вероятность даже просто видеть этих алкашей.

Что, однако, больше всего раздражает сейчас - слишком большая продолжительность праздников. Десять дней, это же уму непостижимо. Сколько там за это время будет "случаев бытового травматизма с летальным исходом" ? Не говоря уже об отсутствии нормальной работы не то что каких-то повседневных услугодателей, но и просто магазинов, в том числе и продуктовых.

И, главное, вся эта шумиха по поводу события, яйца выеденного не стоящего - циферки на календаре сменятся, видите ли. Однако, громкость в коридорах ужасающая, и хорошо, если эти пьяные рожи не заваливаются с поздравлениями. В прошлый год в комнате было две двери - засел читать книжку Implementing CIFS (про SMB/NetBIOS), но дочитать так и не дали. В этот раз чего почитать тоже есть - хоть бы тот же "Последний Позор" Лукьяненко, а вот что с шумом (дверь теперь одна) делать... Некуда, блин, от них от всех сбежать :(

И поздравления, поздравления. Как они заебали. Нахрен мне ваше новое счастье? Я и без старого обойдусь.
Только в сети с этим получше - помнится, в предыдущие годы на поздравления в реале "с новым годом!" я отвечал "и вас туда же". Сейчас смотрю, в сети на каналах кое-кто отвечает аналогично. Вообще, чем интеллектуальней группа, тем она более скептически и с юмором относится к НГ. Вот, поздравляют с новым 03726 годом :)

И чем меньше шума, тем лучше. Замечательный подход у Стругацких описан в "Понедельнике". Да только где ж в ближайшем окружении таких единомышленников найти?.. :(

В общем, с наступающим, блять, 0x29 A.S.!
nuclight: (Default)
Давным давно (аж в прошлую пятницу), 11 ноября, состоялся коннект #tfug по случаю трехлетия канала. Пришел я из-за репетиции через два часа после начала, но это и к лучшему :) Под катом пара фотографий с пьянки, 50 Кб.

Знакомьтесь: Антон Гураль (kreeesp в irc), автор нового лого FreeBSD.

Вот он, этот коварный тип гражданской наружности! )

Теперь весь Tomsk FreeBSD User Group (точнее, те, кто еще оставались, потому что Антон пришел весьма поздно) гордится, что "мы пили с самим Гуралем!" :)

А это те, кто остались за столом ближе к самому концу.

Справа налево: fvl, nuclight, kreeesp (Гураль), Unit, Ejik, kid-, Sib, IlyaZ, vladvic

Некоторые из них завсегдатаи #freebsd )

Кстати, Гураль (нарисовавший лого за 24 часа и совершенно не ожидавший, что это окажется лучшим) был очень недоволен тем, как был организован конкурс. Сейчас он занят тем, что доделывает шрифт, использованный для лого.
nuclight: (Default)
Подходит давно ожидаемое событие у нас в общаге - переключение на новую кабельную систему. Тянущаяся с ноября эпопея получила логическое продолжение в конце мая - выбили деньги, набралась бригада добровольцев-монтажников. И начали сверлить дырки, монтировать каналы, плести косы, заводить кабеля, по 2 в каждую комнату общаги (всего 350 кабелей).
Сессия, каникулы, ремонт 5 этажа и лестничных пролетов общаги - и вот наконец прокладка снаружи завершилась. Закуплена стойка, новые кроссы, подготовлено все внутри серверной. Осталось последнее - переключение со старой работающей кабельной системы на новую. Чем они завтра в обед и займутся.
Итак, с 5 по 9 числа (включительно) у нас сети не будет, соотвественно, я по всем электронным комуникациям (кроме мобилы, она не в счет) буду недоступен. То есть, в понедельник должен буду уже быть доступен, но /me пессимист и приготовился жить без сети неделю :)

Пара фото, 40 Кб )
nuclight: (Default)
Таки наконец написал, сдал и защитил летнюю практику. Темой я себе выбрал написание клиент-серверной системы с unix-сервером. Чтобы, значится, научиться программировать под юниксы (ну в общем-то так и есть...) и все такое. Ну вот стало быть, летом я сначала колотил балду, потом три недели сочинял протокол ("может сегодня перевыполнить план и написать 2 абзаца?"), потом за 6 дней настрочил клиента на Delphi, без тестирования, ибо нечем. В процессе оценил удобства редактора Delphi, вроде autocompletion. Потом неспеша принялся за сервер.. опаньки, а тут в Томск пора ехать.
В Томске к этому делу изъявил желание подключиться сосед-линуксоид. Положили под CVS и поехали. Впрочем, писал он совершеннейшую чушь (в commands.c), пришлось переделывать.
В процессе, как водится, выловили огромное количество багов. Начиная от смешных, когда & вместо && в if вываливал сервер в корку сразу при старте, продолжая "невозможными", когда сервер терминировала проверка указателя на NULL там, где он казалось бы, ну никак не может попасть в этот кусок кода, если этот указатель равен NULL, и заканчивая вообще странными проблемами с портабельностью. Например, инициализацию демона с вызовами отадочных syslog() в процессе:
openlog(...);
//daemonize here
for (i=0; i < 20; i++) /*we guaranted to have at least 20 descriptors */
  close(i);            /* close them as W.R.Stevens suggests */
...
socket(); bind(); listen();
...
select(); //in endless loop

С этим куском обнаружились интересные вещи - сервер порт то слушал, то не слушал! Причем в зависимости от уровня записи отладочной инфы в syslog было разное поведение, тестировалось на FreeBSD 4.11 и Linux 2.6.11 (Slackware 10.2). В процессе разборок, когда уже пришлось спрашивать у опытных товарищей ([livejournal.com profile] netch'у привет, ага), выяснилось, что это тут трюки в syslog - он этот дескриптор перехватывал, а на разных системах разная реализация - тут глюки есть, там нет. Мораль: не закрывайте в демоне дескрипторы, кроме 0,1 и 2 (эти лучше открыть на /dev/null).

Итак, под конец этот простенький чат (многоканальный, а-ля IRC) заработал нормально. Качество кода, имхо... э-э-э... среднеопенсорсное :) Точнее, оставил на закуску один специфический race condition, с подробным описанием бага и путей решения в последнем commit'е.

Архив с этой поделкой (исходники клиента, сервера, CVS-репозиторий сервера, протокол и отчет по практике) выложен тут. Вполне может пригодиться кому как курсовая, например. Или просто поизучать на простом примере, как пишется сетевой сервер по модели однопроцессной FSM (FAQ fido7.ru.unix.prog, appendix 1, п. 2) - в этом случае также полезно посмотреть изменения от ревизии к ревизии для изучения ошибок :)

P.S. Программу в работе у меня никто не смотрел. Даже не спрашивали толком :)

February 2017

S M T W T F S
   1 234
567891011
12131415161718
19202122232425
262728    

Syndicate

RSS Atom

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 19th, 2025 06:57 am
Powered by Dreamwidth Studios