Краткий отчёт о развёртывании VDS для этого сайта
Jazz
Опубликован: | 2023-06-17T11:46:33.378774Z |
Отредактирован: | 2023-06-17T11:44:29.376968Z |
Статус: | публичный |
Последние пару месяцев я усиленно работал над web-приложением для этого сайта, я переработал его с нуля, используя код предудыщей версии, но в корне поменяв архитектуру. На текущий момент не все возможности вебки готовы, но я чутка утомился придумывать, отлаживать и тестировать код, мне нужен перерыв. В кармане завалялась пара потрёпанных сторублёвых купюр, и я подумал, а почему бы не поменять на время перерыва род занятий, домен простаивает, интересные идеи есть. Решено, делаем сервер.
Когда вы занимаетесь web-разработкой на базе языка программирования Python, вы себе очень нравитесь, вы необычны, загадочны и предусмотрительны, особенно когда всё получается как задумано, и отладка идёт ровно. Но... рано или поздно приходит момент, когда вам нужно показать свою работу, вернее, её результаты миру. Уже на этапе начального проектирования важно продумать процесс развёртывания web-приложения на сайт. И в связи с Python, перед вами стоит единственный возможный вариант - VDS, остаётся определиться только с хостером.
Выбор VDS-провайдера
Так как бюджет мероприятия сказочно скромен, всего пара сотен сэкономленных на бензине и мороженном рублей в месяц, выбор вероятного соискателя на освоение этого бюджета становится главной проблемой. Я выбирал из трёх провайдеров, имея ещё двух провайдеров в тёмной области, под вуалью.
Уложиться в пару сотен рублей в месяц оказалось сложно, в связи с последними событиями в стране и на её окраинах. Заявленному ограничению отвечали три вероятных кандидата:
-
RuWeb - мой любимый провайдер, ответственный и адекватный, с вежливой и быстро отвечающей технической поддержкой, с удобным менеджером виртуальной машины и стабильно работающим оборудованием.
-
Timeweb, провайдер с привлекательной ценой и интересной системой скидок, но для меня - тёмная лошадка, его услугами я не имел удовольствия пользоваться до сих пор.
-
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:
-
Великолепный, на мой вкус, менеджер виртуальной машины. Согласитесь, классно, когда можно самостоятельно загрузить провайдеру iso-образ и воткнуть его в виртуальную машину, не дёргая при этом техподдежку. Маленькие радости, но из выше перечисленных, только IHOR предлагает такие своим пользователям.
-
Адекватная, взвешенная, вежливая, терпеливая и быстро отвечающая техническая поддержка.
-
Стабильная работа оборудования. За почти два года пользования их услугами я всего два раза обращался в техподдержку, первый, когда настраивал сервер на начальном этапе, второй, когда они ссорились.
-
Методология процесса развёртывания VDS в IHOR мне знакома, хорошо изучена, привычна и удобна.
Заказ сервера
Заказ сервера в IHOR произошёл очень быстро. Зарегистрировался, заполнил данные плательщика, заказал VDS, оплатил. Через 15 минут после оплаты сервер оказался в моём полном распоряжении, все порты открыты, все дороги радугой. Единственный момент, при оплате выяснилось, что все предложенные способы оплаты требуют комиссии. В итоге я заплатил за месяц не 100 рублей, как расчитывал, а 103 рубля с копейками.
После заказа сервера и изучения установленной из шаблона операционной системы мне пришлось задать пару вопросов технической поддержке. Первый - по поводу разметки диска, в их шаблоне диск весьма скромных размеров был разделён на три раздела. Второй - по поводу настройки сети. Ответы техподдержки меня полностью устроили, и я развернул сервер из iso-образа легко и без проблем.
Установка операционной системы
Предложенный провайдером шаблон операционной системы меня никак не устраивал, в нём слишком старая версия операционной системы, поэтому я загрузил образ нового с иголочки Debian bookworm в варианте netinstall, загрузил виртуальную машину с него, и побежали.
Поскольку у сервера чрезвычайно по сегодняшним меркам малый объём RAM, графическая программа установки оказалась недоступной, а локализацию пришлось настраивать уже в командной строке сразу после завершения установки. Сеть в программе установки поднялась в полном соответствии с рекомендациями техподдержки, параметры сети я взял в системе, установленной из шаблона, его я предварительно и поверхностно изучил. Всё остальное - дело техники. Диск пришлось переразметить, теперь на нём один единственный раздел. Вот как этот диск преставлен в системе:
Итого в моём распоряжении после установки всего необходимого осталось 3.9ГиБ дискового пространства - маловато будет, увы, денег нет, но мы держимся.
Установка необходимого моему web-приложению программного обеспечения прошла быстро, ровно и без проблем. Я настроил окружение, базу данных и web-сервер. Для автоматического запуска вебки пришлось написать единственный юнит systemd. Чуть-чуть пришлось повозиться с сертификатом letsencrypt. Я справился, и теперь у меня снова есть собственный Интернет сайт.
Не знаю, как долго этот сервер проработает, и сколько проблем принесёт, слишком уж мало у него оперативной памяти, пришлось даже организовывать swap-пространство. Вот что показывает top через сутки после развёртывания приложения.
В целом, опытом вчерашнего дня я полностью доволен. Констатирую, IHOR снова произвёл на меня приятное впечатление.
Перспективы
Сайт работает в тестовом режиме. По-большому счёту, вебку ещё пилить и пилить до примлемых и удовлетворительных кондиций. Но сервер даже со скромными ресурсами будет очень полезен. Теперь я по-крайней мере знаю, как это работает на сервере, ожидания подтвердились, и появились идеи, как некоторые тонкие детали доработать и усовершенствовать.
Изначально я задумывал эту вебку как отрытый проект, приложение было опубликовано на github со свободной лицензией. Но внимание тамошних зевак мне не очень понравилось, каждый очередной коммит ребятки клонировали по 10 раз, в итоге я временно закрыл репу, помогать всё равно никто не хочет. А до стадии готовности проекту ещё очень и очень далеко. Будет готов - открою, может быть, а процесс развёртывания вебки на VDS воспроизведу здесь в деталях и с иллюстрациями, если это будет кому-нибудь интересно. Лишь бы не было войны...