= Базовий хостинг ігрового сервера на Azure = Ця еталонна архітектура детально описує кроки для налаштування базової серверної частини Azure, яка розміщуватиме ігровий сервер у Windows або Linux за допомогою **Сервер Minecraft** як приклад. ![Сервер Minecraft працює на віртуальній машині Azure](media/multiplayer/multiplayer-minecraft-server.png) == Діаграма архітектури == ![ Розміщення одного ігрового сервера на віртуальній машині Azure](media/multiplayer/multiplayer-basic-game-server-hosting.png) == Відповідні служби == - Віртуальні машини Azure Windows і віртуальні машини Azure Linux - найпростіший спосіб отримати обчислювальну потужність на Azure. - Azure Disk Storage - базове постійне сховище. == Крок за кроком == Короткий перелік кроків, які потрібно виконати: - Створіть групу ресурсів. - Налаштуйте віртуальну машину Azure, підключіть постійний диск і відкрийте порти. - Доступ до нової віртуальної машини Azure віддалено через порт обслуговування. - Налаштувати брандмауер операційної системи. - Ініціалізація та форматування диска з постійними даними. - Встановіть залежності ігрового сервера. - Встановити сам ігровий сервер. - Налаштувати ігровий сервер. - Запустіть ігровий сервер і перевірте, чи відкриті порти. Створіть групу ресурсів Група ресурсів — це логічний набір ресурсів Azure. Усі ресурси розгортаються та керуються в групі ресурсів. Виконайте такі дії, щоб створити групу ресурсів: - Якщо у вас немає підписки на Azure, створіть безкоштовний обліковий запис, перш ніж почати. - Увійдіть на портал Azure. - У лівій панелі навігації натисніть Групи ресурсів. Потім натисніть Додати. - Введіть унікальну назву для групи ресурсів. Система негайно перевіряє, чи доступне ім’я в поточній вибраній підписці Azure. - В Підписка, клацніть назву підписки Azure, у якій потрібно створити групу ресурсів. - Виберіть географічне розташування для групи ресурсів. - Натисніть Створити. Налаштуйте віртуальну машину Azure, підключіть постійний диск і відкрийте порти Створіть ресурс і виберіть віртуальну машину з операційна система, на якій працюватиме ігровий сервер. Шукайте наступне на порталі Azure, зазвичай вони є одними з найпопулярніших: Windows Linux Windows Server 2016 Datacenter або Windows Server 2016 VM Ubuntu Server 18.04 LTS або Ubuntu Server 18.04 VM Виберіть Підписка Azure, група ресурсів, назва віртуальної машини та регіон. Виберіть тип машини, тип диска та розмір диска, які відповідають вашим власним потребам вводу-виводу та ресурсів. У випадку з сервером Minecraft, невелика віртуальна машина Azure Стандартні B2 з 2 віртуальними ЦП (vCPU) і 4 ГБ оперативної пам’яті підійдуть для менш ніж 10 користувачів. Налаштуйте машину ім’я користувача та пароль адміністратора, щоб отримати до нього доступ пізніше. Дозвольте загальнодоступні вхідні порти для можливості підключення до віртуальної машини як адміністратор пізніше (порти обслуговування), певні порти з вашого ігрового сервера будуть увімкнені пізніше: Windows Linux RDP (протокол віддаленого робочого столу) порт: TCP/3389 За бажанням додайте порт SSH: TCP/22 Порт SSH: TCP/22 Переключитися на diskssection і виберіть створити та прикріпити новий порожній диск даних до віртуальної машини Azure, щоб зберегти виконуваний файл ігрового сервера та файли даних, які він створює. Тип джерела - немає (порожній диск). Віртуальні машини Azure мають один диск операційної системи та тимчасовий диск для короткочасного зберігання, але збережену інформацію буде втрачено, щойно віртуальну машину Azure зупинять. З постійним диском, навіть якщо віртуальну машину Azure, на якій працює сервер, зупинено, дані зберігатимуться й надалі. Переключитися на мережевий розділ, щоб увімкнути порти, необхідні вашому ігровому серверу, щоб приймати запити гравців і створювати загальнодоступну IP-адресу. Щоб відкрити порти, вам знадобиться використовувати віртуальну мережу, підмережу та групу безпеки мережі (NSG). І віртуальна мережа, і підмережа створюються за замовчуванням, у випадку з сервером Minecraft вам нічого чіпати не потрібно. Щоб створити групу безпеки мережі, виберіть перемикач, щоб увімкнути розширену групу безпеки мережі NIC, налаштуйте нову групу безпеки мережі (NSG), натиснувши посилання «Створити нову» поруч із нею та додайте відповідне правило або правила вхідного доступу. У випадку Minecraft потрібен лише один порт, кількість і протокол якого відрізняються залежно від версії Minecraft (Java Edition, Bedrock Edition), джерелом значень є файл server.properties, формат якого пояснюється тут . Після натискання посилання «Додати вхідне правило» використовуйте ці значення: Minecraft Java Edition Minecraft Bedrock Edition Джерело Будь-який Будь-який Діапазони портів джерела Призначення Будь-який Будь-який Діапазони портів призначення 25565 19132 Протокол TCP UDP Дія Дозволити Дозволити Пріоритет 100 100 Назва MinecraftJava_Port MinecraftBedrock_Port Щоб створити загальнодоступну IP-адресу, виконайте такі дії: клацніть посилання «Створити новий» поруч із цим параметром і налаштуйте його за допомогою статичне призначення. Перегляньте та створіть віртуальну машину Azure. Майте на увазі, що розгортання займе кілька хвилин. Отримайте віддалений доступ до нової віртуальної машини Azure через порт обслуговування Для підключення до віртуальної машини Azure вам знадобиться загальнодоступна IP-адреса або ім’я DNS. Щоб знайти їх, виконайте такі дії: - Доступ до групи ресурсів, яку ви створили. - Потім виберіть віртуальну машину, яку ви створили. - The Загальнодоступна IP-адреса або поля імен DNS – це те, що ви шукаєте. Щоб налаштувати DNS, клацніть посилання «Налаштувати» в розділі DNS-ім’я, введіть ім’я під міткою імені DNS і збережіть його. Після цього дотримуйтесь цих посібників, щоб отримати віддалений доступ до віртуальної машини Azure: |Протокол віддаленого робочого стола (TCP/3389SSH (TCP/22)| |Як використовувати Remote Desktop||Secure Shell Protocol| Після підключення до віртуальної машини Azure ви можете продовжити виконання решти кроків, наведених нижче. Налаштуйте брандмауер операційної системи Ваша віртуальна машина вже налаштована на прийом запитів як до портів обслуговування, так і до портів ігрового сервера, однак **Брандмауер операційної системи** також потрібно налаштувати. Виконайте ці підручники, щоб відкрити **порти, необхідні вашому ігровому серверу** для прийому запитів гравців. |Windows||Linux| |Створення правила вхідного порту на Windows Server 2016||Нескладний брандмауер Ubuntu | Наприклад, у випадку Minecraft команди будуть такими: - - У випадку серверів Minecraft просто нагадуємо, що порти за замовчуванням відрізняються залежно від версії гри: Minecraft Java Edition використовує TCP/25565, а Minecraft Bedrock Edition використовує UDP/19132. Ініціалізуйте та відформатуйте диск із постійними даними |Windows||Linux| |Використовувати керування дисками (diskmgmt.msc) | Щоб відкрити керування дисками, клацніть правою кнопкою миші кнопку «Пуск» і виберіть «Керування дисками». Зверніть увагу, що диск 2 нерозподілений, це постійний диск, який потрібно ініціалізувати та відформатувати. |Підключіться до віртуальної машини Linux, щоб підключити новий диск | Він передбачає наступні кроки: 1. Відкриття диска 2. Розбиття його 3. Запис на ньому файлової системи 4. Монтування до каталогу 5. Налаштування автоматичного монтування після перезавантаження Встановити залежності ігрового сервера У випадку з сервером Minecraft залежно: |Серверна версія Minecraft||Windows||Linux| |Minecraft Java Edition||64-розрядна версія Java 8||Встановлення Java 8 на Ubuntu| |Minecraft Bedrock Edition||Microsoft Visual C++ Redistributable for Visual Studio||N/A| Встановіть сам ігровий сервер Створіть папку на постійному диску, який ви щойно відформатували. Завантажте та встановіть там ігровий сервер. У випадку з сервером Minecraft посилання для завантаження: Minecraft Java Edition Minecraft Bedrock Edition Посилання для завантаження Посилання для завантаження Якщо ви отримуєте доступ до віртуальної машини Azure через SSH: - перегляньте документацію до команди Wget, щоб дізнатися, як використовувати неінтерактивний мережевий завантажувач. - встановити розархівувати, запустивши sudo apt-get install розпакуйте та запустіть sudo розпакуйте THEZIPFILE, щоб мати можливість розпакувати сервер Minecraft Bedrock Edition. Налаштувати ігровий сервер У випадку сервера Minecraft Java Edition спочатку змініть параметр файлу eula.txt (eula=true), щоб прийняти їх EULA. Якщо ви отримуєте доступ до віртуальної машини Azure через SSH, перегляньте документацію редактора Nano, щоб редагувати файли через SSH. Дотримуйтеся цього підручника з офіційної вікі Minecraft, щоб налаштувати сервер Minecraft для обох версій сервера Minecraft. Запустіть ігровий сервер і перевірте, чи відкриті порти Щоб запустити сервер Minecraft Java Edition, використовуйте це з командного рядка (Windows) або терміналу (Linux): java -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -jar server.jar nogui Якщо ви бажаєте запустити сервер із його графічним інтерфейсом користувача, ви можете пропустити частину «nogui». Для зручності можна створити пакетний файл (Windows) або сценарій (Linux). Щоб запустити сервер Minecraft Bedrock Edition: - у Windows просто двічі клацніть на bedrock_server.exe виконуваний файл. - на Linux використовуйте LD_LIBRARY_PATH=. ./bedrock_serverз каталогу, де встановлено сервер. Сервер не потрібно запускати від імені root. Якщо ви використовуєте Minecraft Java Edition, після запуску сервера ви можете перевірити, що порти, необхідні для вашого ігрового сервера, відкриті та прослуховують. Але перед тестуванням переконайтеся, що ігровий сервер працює: |Тестування з||Windows||Linux| |У віртуальній машині Azure||Запустити |прослуховування |Бігати | |Поза межами віртуальної машини Azure||1. Увімкніть Telnet, виконавши такі дії: Натисніть «Пуск», «Панель керування», «Програми», а потім «Увімкніть або вимкніть функції Windows»; потім прокрутіть вниз і виберіть Telnet Client і натисніть OK | 2. Після цього з командного рядка запустіть прийнято |Виконати | прийнято Якщо ви використовуєте Minecraft Bedrock Edition: |Тестування з||Windows||Linux| |У віртуальній машині Azure||Запустити ||Бігати | == Міркування безпеки == Загальнодоступні вхідні порти доступні для доступу до Інтернету, тому вам слід використовувати розширені засоби керування Azure Portal, щоб обмежити вхідний трафік обслуговування відомими IP-адресами, тобто лише ви можете отримати віддалений доступ до віртуальної машини Azure. == Ціноутворення == Якщо у вас немає підписки на Azure, створіть безкоштовний обліковий запис, щоб отримати 12 місяців безкоштовних послуг. З вас не стягується плата за послуги, включені безкоштовно з безкоштовним обліковим записом Azure, якщо ви не перевищите обмеження цих послуг. Дізнайтеся, як перевірити використання через портал Azure або через файл використання. Ви несете відповідальність за вартість послуг Azure, які використовуються під час роботи цих еталонних архітектур. Загальна сума залежить від кількості подій, які виконуватимуться через конвеєр аналітики. Перегляньте веб-сторінки з цінами для кожної служби, яка використовувалася в еталонних архітектурах: У вас також є калькулятор цін Azure, щоб налаштувати та оцінити витрати на служби Azure, які ви плануєте використовувати. == Відгук == Надіслати та переглянути відгук для