Краткий отчёт о развёртывании VDS для этого сайта

Jazz

Опубликован:  2023-06-17T11:46:33.378774Z
Отредактирован:  2023-06-17T11:44:29.376968Z
Статус:  публичный
23
0
0

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

Когда вы занимаетесь web-разработкой на базе языка программирования Python, вы себе очень нравитесь, вы необычны, загадочны и предусмотрительны, особенно когда всё получается как задумано, и отладка идёт ровно. Но... рано или поздно приходит момент, когда вам нужно показать свою работу, вернее, её результаты миру. Уже на этапе начального проектирования важно продумать процесс развёртывания web-приложения на сайт. И в связи с Python, перед вами стоит единственный возможный вариант - VDS, остаётся определиться только с хостером.

Выбор VDS-провайдера

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

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

  1. RuWeb - мой любимый провайдер, ответственный и адекватный, с вежливой и быстро отвечающей технической поддержкой, с удобным менеджером виртуальной машины и стабильно работающим оборудованием.

  2. Timeweb, провайдер с привлекательной ценой и интересной системой скидок, но для меня - тёмная лошадка, его услугами я не имел удовольствия пользоваться до сих пор.

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

RuWeb на текущий момент предлагает за 199 рублей в месяц сервер с оперативной памятью всего-то 0.5Гб. Учитывая, что приложение работает на PostgreSQL и Redis, 0.5Гб RAM это слёзы, очень горькие слёзы. Сервер с 1Гб RAM в две сотни рублей в месяц не умещается, даже если оплачивать на год вперёд. Увы, не для наших финансов, надеюсь, что пока...

Предложение Timeweb c 1Гб RAM и 15Гб SSD выглядело весьма заманчиво, и я даже решил, что вот он, мой новый товарищ. Но оказалось, что VDS в облаке, и развернуть его из привычного iso-образа не получится, провайдер предлагает несколько иную методологию процесса. Я почитал инструкцию, взвесил свои силы и возможности в части владения приёмами, которые эта методология использует, и отложил эту идею в сторону, отметив, впрочем, как весьма интересную и привлекательную. Мне нужна предварительная теоретическая подготовка и обката процесса. Обязательно вернусь к этому варианту чуть позже.

И в итоге я оказался с единственным тузом на руках - IHOR...

Обоснование выбора и прочая лирика

IHOR предлагает начальный вариант VDS всего за 100 рублей в месяц, но при этом параметры оборудования слишком, чрезвычайно скромны. Всего лишь 768Мб RAM и 7Гб NVME. Дешево, но сердито. Двух моих потрёпанных купюр номиналом в сто рублей хватит аж на два месяца, при этом конечно же есть риск, что ресурсов машины приложению будет крайне мало, но в сложившихся обстоятельствах я готов рисковать.

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

Чем мне нравится IHOR:

  1. Великолепный, на мой вкус, менеджер виртуальной машины. Согласитесь, классно, когда можно самостоятельно загрузить провайдеру iso-образ и воткнуть его в виртуальную машину, не дёргая при этом техподдежку. Маленькие радости, но из выше перечисленных, только IHOR предлагает такие своим пользователям.

  2. Адекватная, взвешенная, вежливая, терпеливая и быстро отвечающая техническая поддержка.

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

  4. Методология процесса развёртывания VDS в IHOR мне знакома, хорошо изучена, привычна и удобна.

Заказ сервера

Заказ сервера в IHOR произошёл очень быстро. Зарегистрировался, заполнил данные плательщика, заказал VDS, оплатил. Через 15 минут после оплаты сервер оказался в моём полном распоряжении, все порты открыты, все дороги радугой. Единственный момент, при оплате выяснилось, что все предложенные способы оплаты требуют комиссии. В итоге я заплатил за месяц не 100 рублей, как расчитывал, а 103 рубля с копейками.

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

Установка операционной системы

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

Поскольку у сервера чрезвычайно по сегодняшним меркам малый объём RAM, графическая программа установки оказалась недоступной, а локализацию пришлось настраивать уже в командной строке сразу после завершения установки. Сеть в программе установки поднялась в полном соответствии с рекомендациями техподдержки, параметры сети я взял в системе, установленной из шаблона, его я предварительно и поверхностно изучил. Всё остальное - дело техники. Диск пришлось переразметить, теперь на нём один единственный раздел. Вот как этот диск представлен в системе:

QDub8Pght3.png

Итого в моём распоряжении после установки всего необходимого осталось 3.9ГиБ дискового пространства - маловато будет, увы, денег нет, но мы держимся.

Установка необходимого моему web-приложению программного обеспечения прошла быстро, ровно и без проблем. Я настроил окружение, базу данных и web-сервер. Для автоматического запуска вебки пришлось написать единственный юнит systemd. Чуть-чуть пришлось повозиться с сертификатом letsencrypt. Я справился, и теперь у меня снова есть собственный Интернет сайт.

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

Hxx6GYoiAw.png

В целом, опытом вчерашнего дня я полностью доволен. Констатирую, IHOR снова произвёл на меня приятное впечатление.

Перспективы

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

Изначально я задумывал эту вебку как отрытый проект, приложение было опубликовано на github со свободной лицензией. Но внимание тамошних зевак мне не очень понравилось, каждый очередной коммит ребятки клонировали по 10 раз, в итоге я временно закрыл репу, помогать всё равно никто не хочет. А до стадии готовности проекту ещё очень и очень далеко. Будет готов - открою, может быть, а процесс развёртывания вебки на VDS воспроизведу здесь в деталях и с иллюстрациями, если это будет кому-нибудь интересно. Лишь бы не было войны...

Метки:  web, vds, server, ihor, codej