Saturday, February 07, 2009

Трое в серверной, не считая админа. Глава 11. Вперед в будущее

Предыдущие главы:
Глава 1. Серверная
Глава 2. Админ
Глава 3. Бег на месте
Глава 4. Порнонет
Глава 5. Голубая угроза
Глава 6. Заговор
Глава 7. Неожиданное предложение
Глава 8. Тестеры и аналитики
Глава 9. Побег
Глава 10. Ключ



Где искать потерявшегося программиста. Мечты и одиночество. Планы на пасеку. Наводнение. О сериализации важных ресурсов в мужском коллективе. Callback на примере мусорного ведра. Девушки и Дюна-2. Респект мастерам крюка. Производственная травма. Лишний сервер. Молчаливый Админ из рода Больших Хомяков. MAC и хак. Странный Гугль. По следам Герберта Уэлса
\



Мысль о том, что нам придется провести в серверной еще неопределённое время (в худшем случае еще пару суток - в конце концов, кому нужна эта серверная, кроме Миши и нас; а искать нас начнут, скорее всего, на дачах или в барах, а никак не на работе), слегка расстроила меня.

Вновь усевшись на диван, я задумался об изменении масштабов желаний. В детские времена пределом мечтаний была новая игрушка, чуть постарше – чтобы симпатичная девушка обратила внимание, потом машина, дом, дача, престижная работа, личный самолет, яхта, космический туризм, стать президентом, сняться в Доме-2, чтобы симпатичная девушка обратила внимание… Брр, какая же это всё фигня!
Теперь, сидя в серверной, я понял, что больше всего на свете хочу оказаться просто за пределами этого помещения. Практически с восторгом я подумал о выхлопных газах, клубящихся на Проспекте Мира, о милых и добрых людях в метро… Их так много и они все разнообразные, не то, что эти три рожи вокруг.

Я мысленно дал себе твердый зарок покончить с мещанским накоплением собственности, сидением в помещениях (во пузо отрастил!), бросить эти чертовы информационные технологии и заняться трудом на свежем воздухе. Хорошо бы завести пасеку, как Юрий Михайлович, дело-то очевидно интересное и прибыльное, вона как жену он балует…
А еще лучше на речку, или на озеро, где под мирное кваканье лягушек можно сесть на бережку с удочкой и слушать плескание воды, глядя на колышущийся поплавок.

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

Мы с Сергеем заходили кругами вокруг запертой двери:
- Слышь, ты давай там побыстрее, -  сказал Сергей и постучал в дверь.
- Типичный случай блокировки в сериализованном окружении, - прокомментировал Миша. – Один процесс занял важный ресурс, остальные ждут в очереди.
- А у меня на прежней работе в офисе было семь туалетов, - сказал Сергей, - пул коннектов, и всегда свободно.
- А что, если восьмой процесс возникнет? – спросил Миша. – Опять блокировка. Нет, на фиксированное число нельзя рассчитывать архитектуру, пул должен быть динамически расширяемым.
- В данном случае динамическое расширение слишком дорого обойдется – каждому по туалету строить не набегаешься, - возразил Сергей.
- Если коллектив мужской, то вполне возможно и совместное использование ресурса в случае небольшой загрузки, - сказал я.
Тут из-за двери раздался хохот и Кирилл крикнул: - Заткнитесь там, и не мешайте мне сосредоточиться! А то дедлок сейчас будет.
- Выходи быстрей, а то kill process сделаем, - закричал в ответ Сергей.
Посмеявшись, и разобравшись в конце концов с туалетной проблемой, мы пришли в относительно хорошее настроение.

- Ну что, давайте разберемся что вы там внизу натворили, - сказал Миша. - Надо вернуть все в рабочее состояние. Это чудо какое-то, что все как-то работает.
- Дык, талант не пропьешь, - сказал Сергей. - Помню, еще студентами на древних БЭСМах паяли такие времянки из жгутов, что все диву давались как оно вообще заводится.
- Опять завираешь, - сказал Кирилл, - Не было уже живых БЭСМов тогда.
Они слегка слегка попрепирались на тему, что было раньше, PDP/11 или IBM/360, и мы спустились в серверную, стараясь не зацепиться за провода вокруг.

Оказалось, что все не так уж и страшно, как показалось сначала.
В ИТ вообще все выглядит на первый взгляд непонятно и страшно, а как разберешься - ну такая фигня, до чего же очевидная вещь! Помню, как я не мог понять принцип работы callback-функций, сидел за компьютером, а потом меня мама позвала зачем-то на кухню, и там неожиданно вручила мусорное ведро и поручила его вынести... и тут до меня как раз и дошло – вот же оно как! От радости я попытался бросить ведро и вернуться за компьютер, но тут же познакомился с обработкой исключений, и ведро все-таки пришлось вынести.

Эх, молодость... эти радости маленьких и больших открытий. Первая кружка пива, первый указатель, первая девушка и, конечно, General protection fault в самый ответственный момент в "Дюне-2" (которая, кстати, даже на 286 неплохо работала, а на 386DX вообще летала).

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

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

Когда я спустился вниз, то увидел, что уставшие Кирилл и Сергей сидят на полу, а Миша с некоторым недоумением смотрит на последний оставшийся 4-х юнитовый сервер, стоящий на полу посередине серверной, с укрепленным сверху плоским дисплеем и клавиатурой (удобная вещь, монтируется прямо в стойку, занимает всего 1U высоты, а при необходимости выезжает и превращается в полноценный экран и клавиатуру).

-Быстро вы закончили тут, - сказал я, - А этот чего не поставили?
-Ну, - Миша обошел вокруг сервера, заглянул сзади, сбоку.- Я не помню такой машины. Это, по ходу, не наш сервер.

Я с любопытством подошел поближе. 4U-машина помигивала лампочками питания и сети. Ничего особенного, за исключением, может, того, что полосатый логотип IBM был черно-красного цвета, и на сервере красовалась пластиковая нашлека Series Yi.
- А что такое Series Yi? - спросил Кирилл. - Series i знаю, а Yi что-то новенькое.
- Понятия не имею, - пожал плечами Миша. - Самое главное, что у нас тут нет свободных пяти юнитов, чтобы поставить его, и давно уж нет. И вообще, все новые сервера тут у нас тонкие лезвия, а среди старых такого не помню. Давайте поглядим, что там внутри.

Миша вытянул монитор и клавиатуру в боевое положение и включил. Сбоку у клавиатуры обнаружился небольшой, но довольно удобный трекбол.
На экране показалось стандартное приглашение *nix залогиниться. Миша не глядя ввел имя supermike и пробежал пальцами, набирая длинный пароль, но пароль не был принят.
Миша попробовал еще раз, помедленнее, контролируя нажатия на клавиши, с тем же результатом.
- Точно не мой сервер, - уверенно сказал он. - Я всегда завожу себе такого юзера, с определенным паролем.
Он попробовал еще разок с root, с другими логинами, но всё без толку - компьютер не поддавался.

Мы приуныли. Я обошел несколько раз загадочную железяку и словил себя на сильном желании пнуть ее. И тут Сергей наклонился к задней панели и выудил оттуда крохотный кусочек бумаги:
- Миш, смотри, это было наклеено над сетевым разъемом. 

Миша только взглянул на цифры (00-19-C6-64-C2-23, если кому интересно) и воскликнул - дык это ж MAC! Сейчас мы его просканим и хотя бы IP-адрес узнаем, посмотрим, что там крутится.

Он ушел к другому серверу, стоящему в стойке, и достал откуда-то и приличную клавиатуру, и даже мышь с подставкой.
- Вот кулак, - возмутился Сергей.  - Попрятал всё приличное, а мы тут мучились с кривой клавиатурой. Если бы ты был индейцем, твое имя было бы Молчаливый Админ из рода Больших Хомяков!

Миша покосился на Сергея, хотел что-то сказать, но только вздохнул, осторожно потрогал синеющий фингал под глазом и продолжил стучать по клавишам. Не прошло и пару минут, как он удовлетворенно хмыкнул и показал нам список слушающих портов на загадочном сервере.
22 FTP
25 SMTP
80 HTTP
110 POP3
3050 gds_db
3052 UPS
....

- Смотри-ка, тут есть веб-сервер, давай зайдем,  - предложил Кирилл.
Миша согласно кивнул и набрал в строке браузера http://175.41.80.5
Практически мгновенно отобразилась поисковая страница Google, только с лого не обычной веселой расцветки, а довольно мрачных черно-красных тонов.

- Что за фигня? - спросил Кирилл. - Там форвард на Гугль стоит, что ли?
- Нет, - покачал головой Миша и показал на неизменный адрес в браузере, - По крайней мере, не прямой форвард. Может, просто сайт в стиле Гугля сделали. Давайте проверим...

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

Миша пробурчал что-то насчет тупоголовых гуманитариев, которые даже USB правильно воткнуть не могут, а берутся рассуждать обо всем на свете, и собрался вернуться назад, но Кирилл вдруг остановил его:
- Погоди. Поглядите-ка сюда., - и он ткнул пальцем в рекламу какого-то автомобиля, на которой по кругу менялись картинки, превозносившие разнообразные качества авто.
-Ну и что? - спросил Сергей.
-Смотри внимательнее - какой модельный год, - снова ткнул пальцем Кирилл. На мгновение возникла картинка, на которой было написано "модельный ряд 2012 года", и снова сменилась картинкой кожаного салона.

Миша щелкнул по рекламе, и мы попали на сайт производителя, на котором уже большими буквами красовалась надпись "Модельный ряд 2012 года по цене 2011! Ограниченное предложение". А снизу была картинка зеленой лужайки, на которой сидели натянуто улыбающиеся фотомодели, изображавшие счастливую пару, и подпись "Главная награда на Кабульском автосалоне в категории "Семейный электромобиль"!"

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

Тотчас мы получили выдачу результатов, в которой уже совпадений было куда больше. Миша щелкнул по первому, это был пресс-релиз о продаже нашей компании некому венчурному фонду Blue Wealthy.
-Оба-на!, Нас что, продали, пока мы тут сидим? - сказал Кирилл, и, наклонившись к экрану, стал жадно читать пресс-релиз.

Как и всякий пресс-релиз, этот тоже содержал кучу бесполезных сведений и напыщенных цитат, очевидно выдуманных маркетологами (ну кто поверит, что наш генеральный директор, рязанский мужик 120кг весу и почти 2 м росту, будет коверкать свой язык фразой вроде «конвергенция синергии градуированных потоков данных является важнейшим прорывом в индустрии с начала тысячелетия»). Да он сроду больше трех слов не произносил: либо «Все переделать,***!», либо «Неплохо, неплохо...Но расслабляться нельзя!».

Самым интересным в этом пресс-релизе была, конечно же, дата, а именно 15 марта 2010 года, что находилось в очевидном будущем относительно текущего момента.

- Я не понял, это мы сколько же здесь сидим?, - спросил Сергей
Мы переглянулись, охваченным весьма неприятным чувством. Это в книжках весело читать про перенос в будущее, а представить это на своей шкуре совсем не здорово.
Миша решительно встряхнул головой, и набрал в браузере адрес нашей компании. Показался наш обычный корпоративный сайт, с последними вполне себе актуальными новостями. Затем он попробовал новостные сайты, все показывали текущую дату, все те же новости (или их отсутствие за прошедшие выходные дни), и наконец набрал google, который явил свою обычную разноцветную заставку.
- Это какой-то фейковый интернет в этом серваке, - с заметным облегчением сказал Миша, и тут же с подозрением поглядел на нас.- Шутники, это небось вы насовали туда всякой фигни? К 1 апреля готовитесь?
Мы клятвенно заверили Мишу, что не имеем отношения ни к серверу, ни к загадочным прогнозам.
- Интересно, что там еще есть? Может, там прогнозы какие-нибудь по курсам акций? – заинтересовался Кирилл, не чуждый финансовым экспериментам. Он отодвинул Мишу в сторону и вернулся к загадочному сайту на 175.41.80.5.
Продолжение здесь.

11 comments:

Vladimir Pouzanov said...

Ура, наконец-то!

Corvin said...

Дождались :)

Гилёв Вячеслав said...

Афтор, ты бы вместо IT занялся бы написанием научно-фантастических романов. IT-лобострясов и так много, а таких писателей днем с огнем не сыщешь. Короче, пишы исчо и многа!!!
:))))

Alexey Kovyazin said...

да какие романы, чистейшая правда :)

Гилёв Вячеслав said...

тем более, чаще - быстрее - больше пиши
выдвеним на какого-нибудь литературного "хьюго" (премия такая) :)

Slava said...

Надеюсь, продолжение будет не через полгода, а побыстрее :-))

Unknown said...

Готов опубликовать Вашу повесть тиражом 20000. Коммерческое предложение мылом.

Unknown said...

> General protection fault в самый ответственный момент в "Дюне-2"

Какой нафиг GPF? Она ж в реальном режиме выполнялась!

Alexey Kovyazin said...

>Какой нафиг GPF? Она ж в реальном
>режиме выполнялась!

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

Flycat said...

А МАС-то 00-19-C6-64-C2-23 -- не IBM
0019C6 -- это какой-то ZTE
АйБиЭмы:
000255 IBM
0004AC IBM
000629 IBM
00096B IBM
000D60 IBM
0010D9 IBM Japan, Fujisawa Mt+d
001125 IBM
00145E IBM
001A64 IBM
002035 IBM
00215E IBM
005076 IBM
006094 IBM
08005A IBM
10005A IBM
Или это так специально задумано? ;-)

chesty morgan said...
This comment has been removed by a blog administrator.