[Перевод] Истории из жизни IT-специалиста на судне, прошедшем вокруг Антарктики

image

Карлеса Пина-и-Эстани никак нельзя назвать типичным исследователем Заполярья. Этот уроженец солнечной Барселоны работает программистом в компании Mendeley. Эта технологическая компания принадлежит научному издательству Elsevier и базируется в Лондоне. До этого года он ни разу не ночевал на судне. Но когда его пригласили поучаствовать в трёхмесячной экспедиции вокруг Антарктики, он с радостью ухватился за этот шанс.

Всё произошло довольно быстро. Партнёр Пина-и-Эстани, Джен Томас, до этого работавший с Британской Антарктической службой, работал специалистом по данным в исследовательском путешествии, возглавляемым недавно созданным Швейцарским полярным институтом [Swiss Polar Institute]. SPI объединяет исследователей, работающих за полярным кругом или в других экстремальных условиях, доносит до широкой общественности информацию об их существовании, и облегчает доступ исследователей в эти области. Экскурсию оплатил шведский миллиардер и искатель приключений Фредерик Паулсен младший — и он даже поехал вместе со всеми. Это вам не в офисе техподдержкой заниматься.
93fd25183fc5ad3f7f772fcc48265820.jpg

Специалиста по IT необходимо было иметь на борту (в дополнение к двум инженерам по электронике и обслуживанию). К счастью, у Томаса был знакомый. И внезапно Пина-и-Эстани обнаружил, что находится на борту «Академика Трёшникова», российского исследовательского судна, отправляющегося по амбициозному пути, известному как Антарктическая петля, через Кейптаун в Южной Африке, Хобарт в Тасмании и Пунта-Аренас в Чили.

2b43083dbb77cf7bb1933a057f3f17ac.jpg
Маршрут «Антарктическая петля»

Во время краткого пребывания нашего героя в роли морского айтишника, «Академик Трёшников» боролся с плохой погодой, едой ниже среднего, и телекоммуникационным оборудованием, никак не желавшим правильно работать. И хотя в любом подобном путешествии стоит ожидать трудностей, Пина-и-Эстани с самого начала столкнулся с набором проблем из-за слишком малого времени, отведённого на подготовку оборудования. Как он сам это оптимистично прокомментировал, «у меня было больше возможностей решать всякие задачи».

6eb773c90d13da2868b2b08ef9be6673.jpg

«Сейчас мне 35, и я работаю с компьютерами более 20 лет — днями, вечерами, по выходным, и в виде личных проектов, — рассказал он нам. — И в этом походе я использовал всё, что знаю, и мне пригодились даже те редкие знания, которые я считал бесполезными. В Антарктике всё становится полезным».

Когда необычное рабочее время Пина-и-Эстани подошло к концу этим летом, и он вернулся в Лондон в конце июля, он нашёл время побеседовать с нашей редакцией и попотчевать нашего внутреннего нёрда-сетевика рассказами о жизни IT в открытых морях. Из его рассказа по меньшей мере можно вынести то, что техподдержка в самых экстремальных частях мира не слишком сильно отличается от техподдержки в более привычных условиях — за исключением отсутствия надёжной связи и возможности докупать нужные запчасти с Amazon или в местном магазине. Но необходимость в помощи присутствует постоянно, эмоции могут зашкаливать, а требования разнятся от простой работы с сервером электронной почты до таких вещей, которым вас не обучит ни один курс по программированию.

f60e76ff15a7f8ed6cf44509cc2ba559.jpg

Лебёдка


Как-то вечером, примерно через месяц после начала похода, один исследователь бодро обратился к Пина-и-Эстани с тем, что он назвал «новым испытанием». До того он преимущественно работал с привычным оборудованием, не выводившим его из зоны комфорта: компьютерами, роутерами, жёсткими дисками и Raspberry Pi.

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

До того Пина-и-Эстани даже не знал, что такое «лебёдка». А эта лебёдка отвечала за спуск единственного на борту CTD-профилографа, собиравшего и анализировавшего воду. Обычно CTD опускали на глубины до 1500 м, и этот прибор был критичен для большинства из присутствовавших на борту 22 команд исследователей.

41d36374ee5cff05bd3032beb68b83e4.jpg

Оказалось, что проблема крылась в ПО. Ошибка вмешивалась в функцию лебёдки по плавному опусканию длинного троса в воду. Пина-и-Эстани попробовал заняться отладкой, но производитель оборудования сообщил ему, что ввести новые параметры в компьютер CTD-лебёдки удалённо невозможно. А поскольку «Академик Трёшников» был в океане, из-за этого возникли небольшие трудности.

Решение потребовало применения хакерских навыков и готовности бросить вызов стихиям:

«Температура была от нуля до -2 градусов, повсюду океанские брызги, лодка качалась, и у меня замерзали руки. Люди спрашивали меня, что я делаю там с компьютером — CTD подсоединялась по очень короткому сетевому кабелю. Поэтому приходилось работать снаружи, — рассказывает он мне. — Я получил доступ к компьютеру лебёдки, работавшему под управлением Windows CE, со своей машины, работающей под Linux. IP-адрес я увидел на экране загрузки, используя nmap, я обнаружил, что у него есть удалённый десктоп-сервер. Я очень обрадовался, когда после нажатия Enter оказалось, что я способен изменять параметры!»

f99129d13263a925f8dfe0ea1a5bb1be.jpg

Пина-и-Эстани радовался недолго — проблему это не решило. После того, как производитель нехотя разрешил ему переустановить программу, ему пришлось ждать до тех пор, пока они не пришвартуются в Хобарте для пополнения запасов, чтобы скачать прошивку через WiFi в отеле.

«Мы всё переустановили, и компьютер всё равно не загружался, — говорит он. — Это был один из худших моментов всей экспедиции с точки зрения IT. Проблема была в том, что CTD была одним из самых необходимых предметов среди научного оборудования –, но ведь это большая лебёдка, и у меня не было никаких знаний в этой области».

К счастью, у этой истории счастливый конец. После повторной установки обновления другим способом лебёдка перестала капризничать. Вскоре все учёные успешно собрали свои пробы воды, и Пина-и-Эстани смог наконец унести свой компьютер обратно в тепло.

3777145474b555b5ce1428961f73bf54.jpg

Сетевой хак


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

«Ну я говорю — да, проблем нет, а где роутер? — вспоминает он. — Он был не на корабле — выяснилось, что он стоял вообще где-то в Австралии».

825f2467df06e1d372a24bb983771456.jpg

Самые удалённые точки этой петли, проходившей от Кейптауна до Пунта-Аренас, могут отстоять от Австралии на 10000 км, а в тот момент, по словам Пина-и-Эстани, они были где-то в 3000 км от Южной Африки. Но это его не остановило, он использовал свой ноутбук как удалённую точку доступа, подсоединившись к FTP-серверу оборудования для доступа к данным. «Но это было не очень удобным решением, потому что каждый раз, когда им требовались данные, им нужно было добраться до меня и моего компьютера».

Вместо этого Пина-и-Эстани задействовал простое, но предпочтительное устройство для сетевых взломщиков — смартфон. «Я придумал, как хакнуть сеть при помощи телефона под управлением Android, — объясняет он. — На нём можно поднять точку доступа, и даже без внешнего сигнала устройство может соединить их ноутбук с оборудованием через телефон. Таким способом учёные могли доставать свои данные, когда хотели, без моего участия».

276d3b82d69ad718e84ee73274acfd09.jpg

Почтовая система


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

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

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

62ce18cbc20c42159e0e02cbec34378b.jpg

«Было бы проще вернуться в порт и получить их, чем доставать их посреди моря через Outlook», — объясняет он.

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

b797a23d6d4302398c286d7cfc8c645f.jpg

«Так что я оставил эту программу работающей на 8–9 часов, а потом открыл этот большой файл в Thunderbird, — сказал он. — после этого я смог достать все необходимые письма, включая и разрешения».

Но такое решение проблемы на коленке не решало основную — судно получило письма, но у экспедиции всё равно не было надёжной системы связи.

«Я знал, как это исправить, но для этого мне требовалось несколько часов надёжного интернета, — сказал Пина-и-Эстани. — Во время нашего трёхдневного перерыва после первого перехода мы с Джен отправились в отель, где я [через интернет] настроил новый домен для веб-сайта и сервер webmail, а потом создал каждому пользователя. Он стал очень популярным. Везде, где бы на судне я ни оказался, люди использовали мой webmail. Наблюдать за этим было удивительно».

d5e1259760e6970955c518ca7413a097.jpg

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

«Я разработал систему, в которой письма качались по кускам, — вспоминает он. — Это был, по сути, хак, поскольку протоколы почты не позволяют разделять письма — они их либо скачивают, либо нет. Я это обошёл, и сделал так, что если скачивание обрывалось на 20%, оно возобновлялось заново с этого же места».

b3da91143842dd78c136f004064597ba.jpg

Также он настроил систему очередей для работы с медленным соединением. Благодаря ей, даже если кому-то требовалось 5–10 минут на получение почты, пользователи сразу получали уведомления и знали, что всё работает.

«Я очень переживал за справедливость системы, поэтому письма скачивались в порядке получения», — сказал он.

13bab374593e1e8b408f91b006039451.jpg

Ferry Box


Последняя история с Пина-и-Эстани случилась в области, с которой так или иначе сталкивается любой IT-специалист: управление данными. Задача по управлению огромным количеством собранных экспедицией данных в реальном времени была одной из самых сложных и постоянных задач, к которой он применял свои компьютерные навыки. Лучшим примером можно назвать Ferry Box — машину под управлением Linux, которую постоянно использовали для измерения солёности и температуры на поверхности воды.

8286dbc740fafeb57a64acd7a4e3b0f6.jpg

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

2e7b5739693885c94ec828fbf1d213df.jpg

«Для решения этой проблемы я придумал, как выкладывать данные на веб-сайт, к которому у учёных был доступ в реальном времени, — говорит Пина-и-Эстани. — Таким способом они могли вовремя принимать решения о том, где остановиться и, к примеру, провести заборы образцов».

40975e8bbbb128a6bd2923dd5854c61c.jpg

Такая функциональность позволила исследователям перейти от реактивной к проактивной деятельности по сбору данных. Легко видеть, как это влияет на саму науку. И после нескольких таких историй от Пина-и-Эстани легко видеть, как даже самые экстремальные научные изыскания зависят от скромных тружеников IT.

© Geektimes