Pull to refresh

Настоящий сервер в настоящих облаках: «Слабоумие и отвага!»

Reading time 5 min
Views 15K
Выражение «сервер в облаках» стало настолько устойчивым, что мы, хабражители, уже не воспринимаем его как что-то буквальное. Между тем, датацентры, в которых находятся облачные хранилища, находятся далеко не в облаках, а иногда и вовсе под землей, в старых бункерах или укрепленных командных пунктах.
Мы, группа энтузиастов из компании RuVDS, собравшись в очередной раз за кружкой пятничного пива, подумали: «А почему бы нам не сделать сервер в облаках? Настоящий сервер и в настоящих облаках?».

Серега (он у нас настраивает Linux и его главное правило — «не трогай, если работает»), поперхнулся пивом. А когда откашлялся, сказал добродушно: «Ребята, закусывать надо!». Закуски, действительно, не несли очень долго, пятничный вечер, полный бар, не успевали официанты обслуживать...
Компания RuVDS проводит конкурс с крутыми призами
Но тут Володя (наш менеджер проектов) вспомнил про «Проект Loon» (Project Loon), разрабатываемый в лабораториях Google X, целью которого является предоставление доступа в Интернет жителям сельской местности и удаленных регионов. В проекте планируется использовать высотные аэростаты, дрейфующие в стратосфере на высоте около 18 км, для создания беспроводной сети со скоростями, сравнимыми с 4G и LTE.
У Володи есть знакомый, который работает пилотом в компании, запускающей воздушные шары, и он мог бы с ним договориться протестировать оборудование.
Про оборудование придумал Петр: «Сейчас сервер можно и на Raspberry Pi 3 сделать...»
Итак, наша идея начала обретать форму. И когда принесли закуски к пиву, на салфетке уже была нарисована первая схема проекта.
Cхема немного облагорожена нашим дизайнером, чтобы у вас не вытекли глаза, Володя — хороший сисадмин, а вот художник — не очень
А причем тут конкурс?
Через несколько дней мы посчитали, сколько стоит собрать это всё, оплатить пилота и запуск аэростата, и немного приуныли.
Мы пошли в отдел маркетинга и рассказали им идею. Они почесали голову, сказали, что мы, конечно, больные на всю голову, но идея клевая. Только чтобы выделить на это бюджет, надо привлечь как можно больше хабражителей, тогда будет хоть какое-то оправдание этих трат перед шефом. Ну там, KPI, CPC и другие страшные трехбуквенные заклинания, которыми так любят отшивать любую интересную идею эти маркетологи.
В этот же момент по принципу «случайности не случайны», команда RUVDS познакомилась с Сашей Бабицким и его школой яхтинга Seanation. Саша как раз начинал активную подготовку к традиционной регате для начинающих шкиперов AFR и предложил нам в нее вписаться объединенной командой Хабра и RUVDS. В этот момент в наших головах идея начала обретать полностью завершенную форму: облака, ветер, паруса, море...Регата! И вопрос о том, как собрать побольше хаброжителей
вокруг проекта, получил ответ: мы решили сделать конкурс, и в качестве главного приза разыграть не что иное, как бесплатное участие в Регате в составе объединенной команды RUVDS и Хабра. Семь дней среди греческих островов на яхте, азарт соревнований и кайф от отдыха с неповторимым средиземноморским колоритом — это ли не приз мечты?!
Да, стоимость проекта выросла на пару нулей, но теперь это всё выглядело не как безумный гиковский эксперимент (каковым он, по сути, и является, не будем скрывать), а как безумная маркетинговая акция!
Итак, теперь ты всё знаешь.
Да, мы зашли слишком далеко, и нам немного страшновато — всё начиналось с простого трепа за кружкой пива, с этого ветра перемен (кто его знает, может быть, в пивную в тот момент зашла красивая девушка и пробудила в нас дух путешественников, первооткрывателей, завоевателей...).
Но теперь, за неделю до вылета, мы нервно хихикаем и в шутку повесили соответствующий демотиватор с Чипом и Дэйлом. #понятьипростить
Ну ОК, давайте дальше!
Итак, конкурс. Мы разбили его на две части. Первая — это простое тестирование, которое не будет препятствием практически любому хабражителю. После прохождения этой части ты сразу получишь приятный бонус — код на скидку в 15% на услуги виртуальных серверов.
Но задача первой части — не впарить тебе скидку (если ты читаешь наш блог на Хабре, то и так знаешь, что мы вставляем коды со скидкой почти в каждом посте), а отсеять случайных прохожих. Конкурс мы затеваем исключительно для «своих». Потому что плыть неделю на яхте хотелось бы с нормальным человеком, разделяющим наши ценности (да простят нас маркетологи и пиарщики, тусующиеся на VC.RU).
А вот вторая часть одновременно и простая, и сложная. С одной стороны, во второй части тебе нужно будет лишь указать точку на карте (да, всего один клик). Для участия в конкурсе необходимо авторизоваться на Хабре
А куда именно нужно будет направить свой указующий перст — вот в этом и состоит задачка.
Но обо всем по порядку.
Мы собрали и настроили сервер и модуль радиосвязи. «Сердцем» системы стал микросервер на основе Raspberry Pi 3. К нему мы подключили:
  • широкоугольную камеру, чтобы вы могли полюбоваться местностью под воздушным шаром с высоты, на которую заберётся не всякая птица;
  • GSM-модем для передачи координат через сотовую связь. В него мы вставим две SIM-карты, основную и дублирующую;
  • если сотовый канал накроется, отслеживать сервер мы будем через GPS-трекер;
  • наконец, самая важная приблуда (после самого сервера) — бортовой компьютер, собирающий данные с датчиков и камеры.
Вообще, это только звучит легко и просто — «собрали и настроили». На самом деле, ушло две недели работы и ведро нервных клеток, пока связка железок наконец заработала, как нужно. То камера не показывает, то координаты не передаются, то сервер не пингуется.
Подробнее о «железном» этапе можно почитать в этом посте.
28 августа (а может и чуть позже, всё будет зависеть от погоды), мы собираемся уложить это оборудование в корзину воздушного шара и взлететь.
Наш мобильный WiFi-джип, будет ловить сигнал и перемещаться по траектории полета воздушного шара. По возможности, конечно. Достаточно часто бывает, что сделать это невозможно из-за особенностей сети автодорог, которые мы, в отличие от шара, не можем игнорировать.
Что нужно сделать, чтобы выиграть?
Смотри, тема такая. Мы не знаем, в каком месте сервер упадет приземлится. Этого не знает даже пилот. Потому что там очень много неизвестных, начиная от погодных условий и заканчивая силой и направлением ветра в конкретном высотном эшелоне.
Это получается офигенный генератор истинно случайных чисел. Даже достоверно зная розу ветров в момент запуска, угадать место падения («ПРИЗЕМЛЕНИЯ!», громко поправляет нас пилот, крестясь) хотя бы с погрешностью 500 метров не сможет даже IBM Watson (а вообще, не будем зарекаться, вдруг сможет?).
С другой стороны, выбрать точку па... приземления можно более-менее осознанно: например, нарыть историю метеонаблюдений в Дмитрове, прикинуть направление дрейфа, и ткнуть в карту хотя бы в каком-то секторе от места старта. Но это так, не подсказка, а импровизация на салфетке. Но если что, у нас есть кулёк полезных ссылок.
Ты можешь использовать вот этот или вот этот сервис для расчета прогноза приземления нашего шара.
Для прогнозирования траектории можно использовать вот этот онлайн-сервис.
Исходные данные для расчета:
  1. Стартуем 28 августа (или в один из последующих дней, всё будет зависеть от погоды).
  2. Полет продлится 1,5 часа, из них 5 минут займёт набор высоты после взлета, 10 минут до истечения 1,5 часа и 10 минут после — на посадку, т.е. полет в высотном интервале, отличном от заданного. Указанные 20 минут — как максимум.
  3. Высотный интервал 400-700 метров MSL, исключая взлет и посадку.
    Место взлета — Дмитровский район Московской области.
    Осталось дело за малым: поставить точку на карте и угадать, где мы приземлимся.
    Те трое счастливчиков, чьи точки на карте окажутся ближе всего к месту посадки, и займут первые три места.
Ты можешь не ждать запуска и поставить точку прямо сейчас.
Итак, поехали (или, скорее, «полетели», а потом и «поплыли»!)
Tags:
Hubs:
+33
Comments 18
Comments Comments 18