История одного полета
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 08.02.08 17:59
Оценка: 831 (63) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :)
Изначально, этот пост предназначался для КУ, но дописав его я глубоко задумался, вспомнив цикл постов местных старожил под общим названием "Learning to fly" Дело в том, что ниже описана история из моей жизни, в результате которой я впервые испытал довольно странное, но очень приятное ощущение. Это ощущение не было похоже ни на что другое: легкость после решения тяжелой задачи, гордость за реализованное решение, буквально — легкое головокружение от успеха перед самим собой, все сразу и в одном месте, но совершенно иначе нежели по-отдельности. Я тогда еще не был разработчиком в каком-бы то ни было смысле, так... Писал что-то для себя на делфях, неплохо владел асмом, но серьезных задач особо-то и не решал. И только-только начинал интересоваться дотнетом и статьями о каких-то непонятных мне, но жутко затягивающих шаблонах проектирования

Второй раз в жизни, я испытал это чувство много позже, через пару лет, когда сотни дилеров одной сотовой компании по всему региону участвовали в SMS-конкурсе с замысловатой логикой и нетривиальным определением победителей и расчетов вознаграждений. Движок для этого конкурса был написан целиком и полностью мной, практически с нуля. Это был мой первый серьезный проект и он ни разу не сбойнул за все время, пока проводились этапы конкурса. Я испытывал это чувство снова и снова, когда видел возникающие подводные камни (в основном — в требованиях к внесению изменений в проект), которые я предвидел, как эти камни с изяществом устранялись благодаря может и не очень красивой, но точно — продуманной архитектуре. Я испытывал это чувство тогда, когда видел, что паттерны здесь пришлись к месту и не были надуманны...

Это чувство — ощущение полета, это то, ради чего был весь мой learning to fly (c) вплоть до этого момента. Это длится секунды, но запоминается на всю жизнь. Это то, ради чего я занимаюсь разработкой (а она для меня — не более чем хобби, я никогда не был профессиональным разработчиком и наверное, уже не буду), и это (3xIMHO) то, ради чего пишут тысячи строк кода другие разработчики, такие же одержимые желанием испытать это чувство еще хотя бы раз.

Так вот, задумался я о том, что в общем-то неважно, чем ты занимаешься — разработкой или администрированием, строительством или эксплуатацией зданий, созданием автомобилей или гонками и т.п. Это чувство... оно одинаково для любых сфер деятельности, но для каждого человека оно разное. Если ты хотя бы раз испытал это чувство, ты будешь желать испытывать его еще и еще. И будешь годами учиться летать, чтобы опять взлететь на несколько секунд, порой — неожиданно даже для самого себя. И поэтому решил, что возможно здесь (в ФП) эта история даст другим такой же повод для размышлений, какой она дала мне

Моя история, как раз о таком случае, не связанном с разработкой, но явившимся результатом learning to fly меня и моего коллеги. Можете возразить, что наши знания и опыт здесь были не при чем, что этот бытовой в общем-то вопрос мы бы решили и не безо-всяких там learning to fly'ев за плечами, что это тут притянуто за уши... Может быть. Но в тот момент — мы летали, и вряд ли бы смогли это сделать, если бы не были одержимыми каждый в интересующих нас, и никак не связанных с решаемой проблемой, областях.

*Если модераторы сочтут, что ей место все же в КУ — ок, бо там действительно есть от чего улыбнуться

--8<--------------------------------

В жизни каждого человека (а тем более — инженера) были есть и будут такие принятые им решения, которыми он имеет полное право гордиться всю свою оставшуюся жизнь. Это не всегда что-то грандиозное и масштабное, но всегда оригинальное и нестандартное, которое любому другому НОРМАЛЬНОМУ человеку — в голову бы никогда не пришло Об одном таком моменте в своей жизни я и хочу рассказать. И хотя этот момент большей частью не был моим, я горжусь, что хотя бы принимал в нем непосредственное участие... Итак:

Февраль, 2003 г., Россия, г. Ростов-на-Дону, офис регионального филиала компании, в которой я работал тогда руководителем группы сисадминов (и работаю по сегодняшний день, правда уже в другой должности). ПЯТНИЦА, шестой час вечера...

Ничего не предвещало беды, все уже потихоньку начинали готовиться к отъезду из офиса, настроение у всех было пятничное и работать совершенно не хотелось. Я, наш старший сисадмин (пусть будет — Кирилл, это главный герой этой истории ) и еще несколько человек, решили сгонять в кваку и тем самым вполне достойно встретить начало выходных. В кваку удалось поиграть максимум минут десять, т.к. битва была жестко прервана звонком серверного дежурного. Дело в том, что в нашей компании мониторинг ИТ-инфраструктуры — дело сугубо централизованное и осуществляется вот такими вот дежурными в столичной штаб-квартире. Когда возникает какой-нибудь алерт, дежурный это дело отслеживает, оповещает кого надо, регистрирует инцидент и контролирует своевременное устранение алерта, периодически эскалируя этот вопрос руководителям отвественных, если те динамят процесс. Падлы в общем, но дело делают полезное. На этот раз он не сообщил нам ничего нового — этот пятничный алерт заключался в том, что температура воздуха в нашей серверной превысила допустимый порог (не более 25 градусов по цельсию). Это означало либо пожар (маловероятно), либо то, что уже в сотый раз на сплитах произошло срабатывание защиты и они выключились (99,9%). Сплиты в серверной стояли хиленькие, старенькие, но тратить деньги на их ремонт или замену руководство не собиралось, т.к. мы были уже "на чемоданах" в ожидании переезда в другое здание. С другой стороны, оборудования в серверной (~15 кв. м.) было приличино (8 hp'шных серверов, 1 sun'овский и здоровенная ленточная библиотека в одном шкафу и куча цисок в другом + апсы для всего этого хозяйства + напольная мини-АТС, высотой — по грудь взрослому человеку), грелись они конкретно и охлаждения требовали недетского. Сплиты на них за это периодически обижались и, будучи не в состоянии держать нужную температуру самоустранялись от греха подальше. Кроме того, планировка помещения была такова (не спрашивайте — "почему?", так получилось), что сплиты дули аккурат на заднюю часть шкафов, куда как раз и выдувался весь теплый воздух и процессорными кулерами и кулерами БП. Т.е. КПД этих сплитов и так был сильно занижен, даже без учета их возраста.

Зайдя в серверную, мы с Кириллом поняли, что успели вовремя т.к. там было уже совсем жарко. Система мониторинга климата показывала 35 градусов и медленную, но уверенную тенденцию роста температуры, что было совсем плохо. Ну, не в первый раз — надо просто передернуть сплиты по питанию и все заработает. Так сделали, но сплиты видимо обиделись не на шутку и ни в какую не хотели включаться. Сначала предположили, что просто выбило автомат... — хрен. Сгорели сплиты. Оба. В пятницу. В конце рабочего дня!!!

Стоим и понимаем, что надо что-то делать (а какой идиот приедет в пятницу вечером менять сплиты, да еще и без гарантий что мы за это потом заплатим?), что времени у нас мало (еще 10-15 градусов и сервера мы можем потерять, а останавливать их — смерти подобно, хотя и придется в крайнем случае), что руководства уже давно нет на месте, а раз нет на месте, то дозвониться в пятницу вечером будет мягко говоря тяжело (были уже прецеденты) и т.д. и т.п. Стало понятно, что паники тут не место, что надо действовать хладнокровно настолько, насколько это возможно с учетом окружающей среды.

Сначала, мы потушили все, что имели право потушить самостоятельно, не с кем не согласовывая. Температура стала расти медленнее. Затем, мы наконец-то додумались открыть окно, вспомнив, что на улице февраль-месяц (было тепло, около +5 градусов, но тем не менее) Температура перестала расти, но и не снижалась, т.к. кулеры оборудования дули прямо в сторону окна. Поливая матом того завхоза, чьим "волевым" решением шкафы были поставлены задом к окну, мы стали думать что же можно сделать еще. Достаточно здравой, нам показалась идея создать сквозняк с управляемым вектором, чтобы кулерами засасывался более холодный воздух из офисного корридора. Попробовали — температура снизилась до 32-33 градусов достаточно быстро, но потом — устойчиво держалась примерно на этом уровне. Стали думать как охладить корридор, но эксперимент показал полную абсурдность этой идеи, т.к. его площадь была довольно большой, а с векторами сквозняка у нас что-то не клеилось. И тут Кирилла осенила идея — надо форсировать поступление воздуха из окна в помещение серверной! Благо, офис-менеджер была еще на месте, и вскоре осчастливила нас замечательным напольным вентилятором от китайских братьев по разуму. Воздрузив вентилятор между окном и шкафами мы торжественно включили его. Ноль эффекта! Поток воздуха из шкафов был достаточно сильным для того, чтобы компенсировать поток от вентилятора — холодный воздух до шкафов практически не доходил

И вот тут-то (эврика!) и родилась задача, ради которой — я и рассказал всю эту длинную предысторию: надо создать направленный и нерассеиваемый по пути поток холодного воздуха, чтобы он прошел от вентилятора вдоль серверной, мимо шкафов — прямо на их лицевую часть! Тогда кулеры будут засасывать холодный воздух, охлаждать оборудование и выдувать теплый прямо в окно! Система казалась гениальной, но как ее реализовать, если мы — даже со сквозняком-то справиться не смогли? Ведь у нас нет никаких подручных материалов и оборудования для этого? Решение внезапно пришло в голову Кириллу, благодаря чему он и является главным героем этой истории. Ведь у нас нет никаких подручных материалов и оборудования кроме НОЖНИЦ, СКОТЧА и ПАКЕТОВ ДЛЯ МУСОРА! ...

Через двадцать минут трехметровая труба из полиэтилена была готова. Мы еще раз прошлись по всем швам скотчем, потушили вентилятор и смонтировали один конец трубы на его переднуюю часть. Трубу аккуратно выложили вдоль серверной, убедились что ее другой конец будет выдувать воздух в нужное место и торжественно включили наше чудо инженерной мысли. Буквально за секунду труба стала объемной и из ее свободной части пошел поток ХОЛОДНОГО воздуха. Нашему счастью не было предела... Температура в серверной падала! Затем мне пришла в голову мысль, что если затруднить выход воздуха из трубы, то интенсивность воздушного потока может возрасти. Недолго думая, я склеил О-образный выход трубы посередине скотчем так, что он стал напоминать символ бесконечности. Труба надулась еще сильнее (исчезли складки) и воздух стал выходить практически со свистом и гораздо большей скоростью.

Убедившись, что все работает как часы и что нет тенденции температуры (а мы достигли 17 градусов) к изменению, мы счастливые отправились на заслуженные выходные. Но к сожалению мы просчитались в одной детали — наша система сильно зависела от температуры воздуха на улице... Правда поняли мы это только через день, когда воскресным утром раздался звонок серверного дежурного и из трубки чистым потоком полилось примерно следующее "Вы че там б"№дь о№;"ли что-ли? Вы вообще видели, что творится у вас, су№а в серверной?". Я тут же перезвонил Кириллу, мы вместе решили, что наверное вентилятор вырубился или порвалась труба и там опять жара. Когда мы одновременно зашли на веб-сервер мониторинга климата мы и вправду о№;"ли — датчик показывал +5 в помещении. За субботу случилось похолодание и температура на улице упала до -8. Вот тогда мы и выяснили, что регулировать температуру можно как углом открытия обоих половинок окна, так и переключением скорости вращения лопастей вентилятора...

Эпилог:

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

Ну и чтобы не быть голословным... Спустя 10 минут после первого опытного запуска этой системы, мы сделали ее фото, вот она родная

--8<------------------------

Вот так и случился мой первый в жизни полет...

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.