Мережа у fly.io

Всі ваші сервери знаходяться всередині приватної IPv6 мережі. Всі регіони зв'язані у одну мережу, а гнучкий DNS дозволяє вам резолвити імена типу top<number>.nearest.of.<appname>.internal, який автоматично підбере вам найближчий інстанс. Втім мені воно не потрібно, в мене всі апки живуть у Франкфурті. Крім того доступно ще багато регіонів, навідміну від Heroku, у якого їх всього два.

За необхідності, кожен процес вашої апки (вебсервер і тд) може отримати зовнішній проксі-сервер щоб до нього можна було звертатися з інтернету. Але якщо це не потрібно (для воркерів та для баз даних), то все буде приватним. Heroku виставляє вашу базу даних голою дупою в інтернет, і захищена вона лише довжелезним паролем. Коли б я робив свою хмару, то теж би планував таку архітектуру—все приватне.

Щоб отримати доступ до приватної мережі, fly дає можливість підключатися до WireGuard гейтвеїв. Таким чином ви однією командою можете опинитися всередині своєї мережі. Нажаль, мені не вдалося налаштувати WireGurad на лінуксі так щоб він міг резолвити .internal DNS імена і я не інвестував в то багато часу, але на макбуках все має бути окей.

WireGuard це топ софт і набагато зручніший ніж OpenVPN та інші VPN рішення.

Якщо вам потрібно відкрити собі доступ лише до якоїсь частини ресурсів то команда типу fly proxy 15432:5432 rozhok-db.internal прокине вам тунель на локалхост. Власне поки я не знайшов часу розібратися з DNS то я так і прокидую собі базу з редісом та працюю.

“Але ж все це давно є в кубах та інфраструктурі навколо!”, вигукне досвічений читач. Звичайно є, але воно все тягне за собою сотні шарів непотрібних мені абстракцій.

P.S.

Буквально у дні перед початком війни я вже майже-майже розгорнув кластер кубера для того щоб переїхати з Heroku, але потім було не до того, а зараз після того як спробував fly взагалі бачу що моя задача повністю вирішена.

Якщо додати туди ще декілька фіч, то це буде ідеальний PaaS, той, який я мріяв зробити сам ще два роки тому. Бачите, якщо ви довго чекаєте, то хороша ідея приходить у голову не тільки вам, і поки кабанчики-стартапери піднімають серйозні раунди, ви продовжуєте чистити унітази виделкою.

Fly позиціонують себе як платформу на якій інші можуть будувати свої PaaS та рішення, і вже навіть з'явилися такі компанії.

Сподіваюсь що мені вистачить мотивації, я відкину ідею піднімати свою оркестрацію та побудую свій продукт з ідеальним Developer Experience на вже готовій платформі яку дає fly.


Сподобалось? Долучайтеся до мого телеграм каналу: https://t.me/full_of_hatred