Перейти до вмісту

Блог ·

Як продавати хостинг Minecraft на MCSManager

MCSManager запускає ігрові сервери без вимоги Docker, на кількох вузлах, з однієї панелі. Що це дає і чого ще бракує для продажу.

Автор: Provibr

Хостинг Minecraft є тим, з чого починає більшість бізнесів хостингу ігор, і не без причини: попит сталий, клієнти терплячі до малих провайдерів, а технічна планка до першого платного клієнта справді низька. Панеллю, з якої ви починаєте, зазвичай стає те, що працювало на наявному у вас залізі.

MCSManager є тим, на що приземляється багато людей. Він з відкритим кодом, він малий, він охоплює кілька машин і (властивість, що вирішує справу для багатьох) не вимагає Docker. Цей один факт ставить його на залізо, де родина Pterodactyl непрактична, і варто зрозуміти чому, перш ніж будувати на ньому бізнес.

Чим MCSManager є насправді

Дві частини, у тепер вже стандартній формі: вебпанель і демон. Панель є інтерфейсом і місцем, де відбувається адміністрування між вузлами; демон працює на кожній машині й саме він насправді запускає, зупиняє та наглядає за процесами. Одна панель може розмовляти з багатьма демонами, тож зростання означає додати машину, а не піднімати другу панель.

Він написаний на TypeScript (Node.js та Vue спереду, Node.js на демонах), що робить його легким у роботі й простим для читання, якщо вам колись знадобиться дізнатися точно, що він робить. Приблизно 4800 зірок на GitHub на час написання цих рядків, активно розробляється й перекладений кількома мовами.

Обсяг охоплює Minecraft передусім, а поруч ігри на основі Steam: Palworld, Terraria, Project Zomboid та решта цієї родини. Якщо ваш каталог звучить як «Minecraft плюс гра на виживання, у яку цього року грають усі», це чисто лягає на MCSManager.

Питання Docker і чому воно вирішує справу

Pterodactyl та його нащадки вимагають контейнерів. Це виправдане проєктне рішення (воно дає вам ізоляцію та ліміти ресурсів безкоштовно), але воно також задає нижню межу того, де ви можете працювати.

MCSManager підтримує Docker і не наполягає на ньому. Сервери можуть працювати як звичайні процеси, якими керує демон. Три практичні наслідки:

  • Він працює на дешевому й незручному залізі. Малий VPS, де вкладені контейнери неприємні, машина на OpenVZ чи LXC, перепрофільована машина в офісі: MCSManager там працюватиме.
  • Він працює на Windows. Для аматора, що виростає в бізнес, це часто те, що насправді доступне.
  • Ціною цього є ізоляція. Без контейнерів «сервер цього клієнта зʼїв усю RAM» не стає автоматично чужою проблемою, яку хтось стримує. Хоч би яку ізоляцію та ліміти ви хотіли, ви влаштовуєте їх самі: cgroups, окремі користувачі, окремі машини або таки увімкнення Docker.

Про останній пункт варто подумати до десятого клієнта, а не після. Запускати неізольовані процеси для людей, які вам заплатили, нормально на трьох серверах і погана ідея на трьохстах. Панель дозволить вам і те, й інше.

Автентифікація та багатокористувацькість

MCSManager має кілька користувачів і ключі API: ключ генерується на кожного користувача і саме він автентифікує програмний доступ, а демон має власний ключ як єдиний засіб автентифікації панелі перед ним.

Варто чітко сказати, для чого ця модель: користувачі MCSManager є людьми, які керують серверами. Вони не клієнти з підписками. До користувача не привʼязано ні тарифу, ні строку дії, ні ціни, ні рахунка, і нічого, що каже, що користувач перестав платити. Якщо ви даєте кожному клієнту вхід у панель, ви дали йому обліковий запис оператора на вашій інфраструктурі, а те, хто вам винен гроші, ви відстежуєте зовсім в іншому місці.

Це не вада. Так само в кожній ігровій панелі, зокрема й у тих, за які люди платять гроші. Це просто лінія, де панель закінчується, а ваш бізнес починається.

Що насправді потрібно для продажу

Панель дає вам машинну половину: створити сервер, запустити його, зупинити, перезапустити, дістатися консолі, видалити його. Комерційна половина повністю ваша (будувати або купувати):

  • Форма замовлення й каталог, з тарифами, які щось означають у RAM, слотах чи сховищі.
  • Платіж, що провізіює за секунди. У хостингу ігор це не приємна дрібниця: клієнт зазвичай сидить із друзями в очікуванні приєднатися, а затримка провізіювання, виміряна у хвилинах, і є тим, як ви їх втрачаєте.
  • Шлях стягнення: прострочено, попереджено, призупинено, відновлено. Призупинення тут важливіше, ніж у вебхостингу, бо ігровий сервер, лишений працювати, безперервно споживає RAM для того, хто перестав платити.
  • Потужність, яку ви бачите, щоб знати, що ви несете по всіх цих демонах, перш ніж рахунок за хостинг скаже вам.
  • Журнал аудиту, щоб «хто видалив той світ» мало відповідь. Саме в хостингу Minecraft це питання ставлять, і відповідь має бути кращою за знизування плечима.
  • Модель прав для вашого персоналу, щоб волонтер підтримки міг перезапустити сервер, не маючи змоги видалити його.

Більшість малих хостерів Minecraft ведуть цю половину на електронній таблиці, платіжному посиланні та великій кількості доброї волі. Це працює, доки не перестає, і збій рідко буває драматичним: це повільне накопичення серверів, за які ніхто не платить, повернень коштів, які ви не можете відтворити, і одного вечора на місяць, витраченого на звірку вручну.

Одна практична примітка про сам проєкт

MCSManager походить з китайськомовної спільноти, і саме там досі його центр ваги. Панель належно інтернаціоналізована, і англійська документація існує, але коли ви шукаєте глибоку відповідь (крайній випадок у протоколі демона, незвичне розгортання), найбагатший матеріал і найшвидші відповіді спільноти часто китайською. Машинний переклад дає з цим раду. Це варто знати до того, як вам знадобиться підтримка опівночі, а не виявити це тоді.

Куди вписується Provibr

Підтримка MCSManager діє. Агент усередині вашої власної мережі говорить із вебпанеллю через http або https, тож ані панель, ані демони за нею не мусять дивитися в інтернет. Створення, запуск, зупинка, перезапуск, призупинення та вилучення екземплярів працюють, а те, що вже є на панелі, можна імпортувати. Навколо цього стоїть шар, описаний вище: тарифи й потужність із ціною за одиницю, модель прав для вашої команди, повний журнал активності, а також REST API та модуль WHMCS, щоб те, чим ви вже виставляєте рахунки, могло ним керувати.

MCSManager уже розподіляє одну інсталяцію між кількома демонами, тож зростання означає ще одну машину, а не другу панель. Provibr читає цей список і розміщує новий сервер на вільній памʼяті; коли демонів більше одного й немає типового вибору, він відмовляє, а не вгадує. Призупинення тут справжнє: MCSManager сам тримає протермінований екземпляр вимкненим, тож клієнт із доступом до панелі не запустить його знову.

Чого інтеграція не може, так це стерти прогалини самої панелі. Консолі немає, бо консоль MCSManager працює через socket.io, і графіків споживання немає, бо панель їх не міряє. Перевстановлення теж немає: MCSManager перезбирає лише з пресета, а Provibr будує зі стартової команди. Без Docker панель не накладає жодних обмежень, і інтеграція про це каже, а не вдає протилежне.

Чого воно не робитиме

Керувати серверами не означає керувати панеллю. Встановлення MCSManager, його оновлення, додавання демонів, вибір того, чи використовувати Docker, і догляд за машинами під сподом лишаються за вами. Світи, плагіни, моди та резервні копії лишаються в панелі, де ви й ваші клієнти продовжуєте ними користуватися.

Хостинг ігор рідко лишається тільки хостингом ігор. Provibr сьогодні запускає свої панелі керування, гіпервізори та ігрові панелі пліч-о-пліч, під одним інвентарем, однією моделлю прав і одним журналом активності. Сервери Minecraft на одній панелі, VPS, на який клієнт переходить, на іншій, і одне місце, де ви бачите обидва.

Почніть з одного хоста й одного агента

Створіть обліковий запис, встановіть агента однією командою та підключіть свій перший хост Proxmox. Пробний період триває 14 днів і не потребує платіжних даних.