= การโฮสต์เซิร์ฟเวอร์เกมพื้นฐานบน Azure =
สถาปัตยกรรมอ้างอิงนี้ให้รายละเอียดขั้นตอนในการตั้งค่าแบ็กเอนด์ Azure พื้นฐานที่จะโฮสต์เซิร์ฟเวอร์เกมบน Windows หรือ Linux โดยใช้
**เซิร์ฟเวอร์ Minecraft** เป็นตัวอย่าง ![ เซิร์ฟเวอร์ Minecraft ทำงานบน Azure Virtual Machine](media/multiplayer/multiplayer-minecraft-server.png)
== แผนภาพสถาปัตยกรรม ==
![ โฮสต์เซิร์ฟเวอร์เกมเดียวบน Azure Virtual Machine](media/multiplayer/multiplayer-basic-game-server-hosting.png)
== บริการที่เกี่ยวข้อง ==
- Azure Windows Virtual Machines และ Azure Linux Virtual Machines - วิธีพื้นฐานที่สุดในการรับพลังการประมวลผลบน Azure
- Azure Disk Storage - ที่เก็บข้อมูลถาวรพื้นฐาน
== ทีละขั้นตอน ==
สรุปขั้นตอนที่ต้องทำให้เสร็จคือ:
- ตั้งค่ากลุ่มทรัพยากร
- ตั้งค่า Azure Virtual Machine แนบดิสก์ถาวร และเปิดพอร์ต
- เข้าถึง Azure Virtual Machine ใหม่จากระยะไกลผ่านพอร์ตการบำรุงรักษา
- ตั้งค่าไฟร์วอลล์ระบบปฏิบัติการ
- เริ่มต้นและฟอร์แมตดิสก์ข้อมูลถาวร
- ติดตั้งการพึ่งพาเซิร์ฟเวอร์เกม
- ติดตั้งเซิร์ฟเวอร์เกมเอง
- กำหนดค่าเซิร์ฟเวอร์เกม
- เปิดเซิร์ฟเวอร์เกมและตรวจสอบอีกครั้งว่าพอร์ตเปิดอยู่
ตั้งค่ากลุ่มทรัพยากร
กลุ่มทรัพยากรคือคอลเลกชันเชิงตรรกะของทรัพยากร Azure ทรัพยากรทั้งหมดถูกปรับใช้และจัดการในกลุ่มทรัพยากร ทำดังต่อไปนี้เพื่อสร้างกลุ่มทรัพยากร:
- หากคุณไม่มีการสมัคร Azure ให้สร้างบัญชีฟรีก่อนที่จะเริ่ม
- ลงชื่อเข้าใช้พอร์ทัล Azure
- ในการนำทางด้านซ้าย ให้คลิก
กลุ่มทรัพยากร จากนั้นคลิกเพิ่ม
- พิมพ์ชื่อเฉพาะสำหรับกลุ่มทรัพยากร ระบบจะตรวจสอบทันทีเพื่อดูว่ามีชื่ออยู่ในการสมัคร Azure ที่เลือกในปัจจุบันหรือไม่
- ใน
การสมัครใช้งาน คลิกชื่อการสมัคร Azure ที่คุณต้องการสร้างกลุ่มทรัพยากร
- เลือกที่ตั้งทางภูมิศาสตร์สำหรับกลุ่มทรัพยากร
- คลิก
สร้าง.
ตั้งค่า Azure Virtual Machine แนบดิสก์ถาวร และเปิดพอร์ต
สร้างทรัพยากรและเลือกเครื่องเสมือนด้วย
ระบบปฏิบัติการที่เซิร์ฟเวอร์เกมจะทำงาน ค้นหาสิ่งต่อไปนี้ใน Azure Portal ซึ่งมักจะเป็นที่นิยมมากที่สุด: Windows Linux Windows Server 2016 Datacenter หรือ Windows Server 2016 VM Ubuntu Server 18.04 LTS หรือ Ubuntu Server 18.04 VM
เลือก
การสมัครใช้งาน Azure กลุ่มทรัพยากร ชื่อของเครื่องเสมือน และภูมิภาค
เลือกประเภทเครื่อง ประเภทดิสก์ และขนาดดิสก์ที่ตรงกับความต้องการ I/O และทรัพยากรของคุณเอง ในกรณีของเซิร์ฟเวอร์ Minecraft เครื่องเสมือน Azure ขนาดเล็กเช่น
Standard B2s ที่มี 2 virtual CPU (vCPU) และ 4GB of RAM จะใช้ได้สำหรับผู้ใช้น้อยกว่า 10 คน
ตั้งค่าเครื่อง
ชื่อผู้ใช้และรหัสผ่านของผู้ดูแลระบบ เพื่อให้สามารถเข้าถึงได้ในภายหลังจากระยะไกล
อนุญาตให้
พอร์ตขาเข้าสาธารณะเพื่อให้สามารถเชื่อมต่อกับเครื่องเสมือนในฐานะผู้ดูแลระบบในภายหลัง (พอร์ตบำรุงรักษา) พอร์ตเฉพาะจากเซิร์ฟเวอร์เกมของคุณจะเปิดใช้งานในภายหลัง: พอร์ต Windows Linux RDP (โปรโตคอลเดสก์ท็อประยะไกล): TCP/3389
เลือกเพิ่มพอร์ต SSH: TCP/22
พอร์ต SSH: TCP/22
สลับไปที่
ดิสก์และเลือกสร้างและแนบดิสก์เปล่าข้อมูลใหม่ไปยัง Azure Virtual Machine เพื่อจัดเก็บเซิร์ฟเวอร์เกมที่สามารถเรียกใช้งานได้และไฟล์ข้อมูลที่สร้างขึ้น ประเภทแหล่งที่มาคือไม่มี (ดิสก์ว่าง)
Azure Virtual Machines มีดิสก์ระบบปฏิบัติการหนึ่งดิสก์และดิสก์ชั่วคราวสำหรับการจัดเก็บระยะสั้น แต่ข้อมูลที่เก็บไว้จะสูญหายทันทีที่ Azure Virtual Machine หยุดทำงาน ด้วยดิสก์ถาวร แม้ว่า Azure Virtual Machine ที่รันเซิร์ฟเวอร์จะหยุดทำงาน
ข้อมูลจะยังคงมีอยู่ต่อไปในภายหลัง
สลับไปที่
ส่วนเครือข่ายเพื่อเปิดใช้งานพอร์ตที่เซิร์ฟเวอร์เกมของคุณต้องการเพื่อยอมรับคำขอของผู้เล่นและสร้าง IP สาธารณะ
ในการเปิดพอร์ต คุณจะต้องใช้ประโยชน์จากเครือข่ายเสมือน ซับเน็ต และ Network Security Group (NSG)
ทั้งเครือข่ายเสมือนและซับเน็ตถูกสร้างขึ้นตามค่าเริ่มต้น ในกรณีของเซิร์ฟเวอร์ Minecraft คุณไม่ต้องแตะต้องอะไรเลย สำหรับการสร้าง Network Security Group ให้เลือกปุ่มตัวเลือกเพื่อเปิดใช้งาน
กลุ่มความปลอดภัยเครือข่าย NIC ขั้นสูง กำหนดค่ากลุ่มความปลอดภัยเครือข่ายใหม่ (NSG) โดยคลิกที่ลิงก์ "สร้างใหม่"ถัดจากนั้น และเพิ่มกฎหรือกฎขาเข้าที่เกี่ยวข้อง
ในกรณีของ Minecraft จำเป็นต้องมีเพียงพอร์ตเดียว ซึ่งแตกต่างกันไปตามจำนวนและโปรโตคอล ขึ้นอยู่กับรุ่นของ Minecraft (รุ่น Java, รุ่น Bedrock) แหล่งที่มาของค่าคือไฟล์ server.properties ซึ่งเป็นรูปแบบที่อธิบายไว้ที่นี่ . หลังจากคลิกที่ลิงก์ "เพิ่มกฎขาเข้า"ให้ใช้ค่าเหล่านี้:
Minecraft Java Edition Minecraft Bedrock Edition ต้นทางใด ๆ ช่วงพอร์ตต้นทางใด ๆ ปลายทางใด ๆ ช่วงพอร์ตปลายทางใด ๆ 25565 19132 โปรโตคอล TCP UDP การดำเนินการ อนุญาต อนุญาต ลำดับความสำคัญ 100 100 ชื่อ MinecraftJava_Port MinecraftBedrock_Port
สำหรับการสร้าง IP สาธารณะ ให้ทำตามขั้นตอนเหล่านี้: คลิกที่ลิงก์ "สร้างใหม่"ถัดจากการตั้งค่านี้ และกำหนดค่าด้วย
การมอบหมายแบบคงที่ ตรวจสอบและสร้าง Azure Virtual Machine โปรดทราบว่าจะใช้เวลาสองสามนาทีในการทำให้ใช้งานได้
เข้าถึง Azure Virtual Machine ใหม่จากระยะไกลผ่านพอร์ตการบำรุงรักษา
คุณจะต้องใช้ IP สาธารณะหรือชื่อ DNS เพื่อเชื่อมต่อกับ Azure Virtual Machine เพื่อค้นหาโดยทำตามขั้นตอนเหล่านี้:
- เข้าถึงกลุ่มทรัพยากรที่คุณสร้างขึ้น
- จากนั้นเลือกเครื่องเสมือนที่คุณสร้างขึ้น
- เดอะ
ที่อยู่ IP สาธารณะ DNS Namefields คือสิ่งที่คุณกำลังมองหา ทั้งสองอย่างนี้ก็ใช้ได้ ในการตั้งค่า DNS ให้คลิกที่ลิงก์ "กำหนดค่า"ใต้ชื่อ DNS ตั้งชื่อภายใต้ป้ายกำกับชื่อ DNS และบันทึก
หลังจากนั้น ให้ทำตามบทช่วยสอนเหล่านี้เพื่อเข้าถึง Azure Virtual Machine จากระยะไกล:
|โปรโตคอลเดสก์ท็อประยะไกล (TCP/3389SSH (TCP/22)|
|วิธีใช้เดสก์ท็อประยะไกล||โปรโตคอล Secure Shell|
เมื่อคุณเชื่อมต่อกับ Azure Virtual Machine แล้ว คุณสามารถดำเนินการตามขั้นตอนที่เหลือด้านล่าง
ตั้งค่าไฟร์วอลล์ระบบปฏิบัติการ
เครื่องเสมือนของคุณได้รับการกำหนดค่าให้ยอมรับคำขอไปยังพอร์ตเฉพาะสำหรับการบำรุงรักษาและเซิร์ฟเวอร์เกมแล้ว อย่างไรก็ตาม
**ไฟร์วอลล์ระบบปฏิบัติการ** จำเป็นต้องได้รับการกำหนดค่าด้วย ทำตามคำแนะนำเหล่านี้เพื่อเปิด **พอร์ตที่เซิร์ฟเวอร์เกมของคุณต้องการ** เพื่อรับคำขอของผู้เล่น
|Windows||ลินุกซ์|
|สร้างกฎพอร์ตขาเข้าบน Windows Server 2016||ไฟร์วอลล์ที่ไม่ซับซ้อนของ Ubuntu
|
ตัวอย่างเช่น ในกรณีของ Minecraft คำสั่งจะเป็น:
-
-
ในกรณีของเซิร์ฟเวอร์ Minecraft โปรดทราบว่าพอร์ตเริ่มต้นจะแตกต่างกันไปตามเวอร์ชันของเกม: Minecraft Java Edition ใช้ TCP/25565 ในขณะที่ Minecraft Bedrock Edition ใช้ UDP/19132
เริ่มต้นและฟอร์แมตดิสก์ข้อมูลถาวร
|Windows||ลินุกซ์|
|ใช้การจัดการดิสก์ (diskmgmt.msc)
|
หากต้องการเปิด Disk Management ให้คลิกขวาที่ปุ่ม Start แล้วเลือก Disk Management
ขอให้สังเกตว่าดิสก์ 2 ไม่ได้ถูกจัดสรร นั่นคือดิสก์ถาวรที่ต้องเริ่มต้นและฟอร์แมต
|เชื่อมต่อกับ Linux VM เพื่อเมานต์ดิสก์ใหม่
|
มันเกี่ยวข้องกับขั้นตอนต่อไปนี้:
1. การค้นพบดิสก์
2. การแบ่งพาร์ติชัน
3. การเขียนระบบไฟล์บนนั้น
4. ติดตั้งเข้ากับไดเร็กทอรี
5. การตั้งค่าการติดตั้งอัตโนมัติหลังจากรีบูต
ติดตั้งการพึ่งพาเซิร์ฟเวอร์เกม
ในกรณีของเซิร์ฟเวอร์ Minecraft การขึ้นต่อกันคือ:
|รุ่นเซิร์ฟเวอร์ Minecraft||Windows||Linux|
|Minecraft Java Edition||Java 8 รุ่น 64 บิต||การติดตั้ง Java 8 บน Ubuntu|
|Minecraft Bedrock Edition||Microsoft Visual C++ แจกจ่ายซ้ำได้สำหรับ Visual Studio||ไม่มี|
ติดตั้งเซิร์ฟเวอร์เกมเอง
สร้างโฟลเดอร์ในดิสก์ถาวรที่คุณเพิ่งฟอร์แมต
ดาวน์โหลดและติดตั้งเซิร์ฟเวอร์เกมที่นั่น ในกรณีของเซิร์ฟเวอร์ Minecraft ลิงค์ดาวน์โหลดคือ:
Minecraft Java Edition Minecraft Bedrock Edition ลิงค์ดาวน์โหลด ลิงค์ดาวน์โหลด
หากคุณกำลังเข้าถึง Azure Virtual Machine ผ่าน SSH:
- ตรวจสอบเอกสารประกอบคำสั่ง Wget เพื่อเรียนรู้วิธีใช้โปรแกรมดาวน์โหลดเครือข่ายแบบไม่โต้ตอบ
- ติดตั้ง unzip โดยเรียกใช้
sudo apt-get install unzipand แล้วรัน
sudo เปิดเครื่องรูด THEZIPFILE เพื่อให้สามารถเปิดเครื่องรูดเซิร์ฟเวอร์ Minecraft Bedrock Edition
กำหนดค่าเซิร์ฟเวอร์เกม
ในกรณีของเซิร์ฟเวอร์ Minecraft Java Edition ก่อนอื่นให้เปลี่ยนพารามิเตอร์ไฟล์ eula.txt (eula=true) เพื่อยอมรับ EULA หากคุณกำลังเข้าถึง Azure Virtual Machine ผ่าน 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.executable
- บน Linux ให้ใช้
LD_LIBRARY_PATH=. ./bedrock_server จากไดเร็กทอรีที่ติดตั้งเซิร์ฟเวอร์ เซิร์ฟเวอร์ไม่จำเป็นต้องรันในฐานะรูท
หากคุณใช้ Minecraft Java Edition เมื่อเซิร์ฟเวอร์ทำงาน คุณสามารถตรวจสอบว่าพอร์ตที่จำเป็นสำหรับเซิร์ฟเวอร์เกมของคุณเปิดอยู่และกำลังฟังอยู่ แต่ให้แน่ใจว่าเซิร์ฟเวอร์เกมทำงานอยู่ก่อนทำการทดสอบ:
|ทดสอบจาก||Windows||Linux|
|ภายใน Azure Virtual Machine||เรียกใช้
|กำลังฟัง |วิ่ง
|
|นอก Azure Virtual Machine||1. เปิดใช้งาน Telnet โดยทำตามขั้นตอนเหล่านี้: คลิกที่ Start, Control Panel, Programs จากนั้นเปิดหรือปิดคุณลักษณะของ Windows จากนั้นเลื่อนลงมาและเลือก Telnet Client แล้วคลิกตกลง
|
2. หลังจากนั้นให้เรียกใช้จากบรรทัดคำสั่ง
ได้รับการยอมรับ | เรียกใช้
| ยอมรับ
หากคุณใช้ Minecraft Bedrock Edition:
|ทดสอบจาก||Windows||Linux|
|ภายใน Azure Virtual Machine||เรียกใช้
||วิ่ง
|
== ข้อควรพิจารณาด้านความปลอดภัย ==
พอร์ตขาเข้าสาธารณะเปิดเผยต่ออินเทอร์เน็ต ดังนั้นคุณควรใช้การควบคุมขั้นสูงของ Azure Portal เพื่อจำกัดการบำรุงรักษาการรับส่งข้อมูลขาเข้าไปยังที่อยู่ IP ที่รู้จัก ซึ่งหมายความว่ามีเพียงคุณเท่านั้นที่สามารถเข้าถึง Azure Virtual Machine จากระยะไกลได้
== ราคา ==
หากคุณไม่มีการสมัคร Azure ให้สร้างบัญชีฟรีเพื่อเริ่มต้นใช้บริการฟรี 12 เดือน คุณจะไม่ถูกเรียกเก็บเงินสำหรับบริการฟรีที่รวมอยู่ในบัญชี Azure ฟรี เว้นแต่คุณจะใช้เกินขีดจำกัดของบริการเหล่านี้ เรียนรู้วิธีตรวจสอบการใช้งานผ่าน Azure Portal หรือผ่านไฟล์การใช้งาน
คุณต้องรับผิดชอบค่าใช้จ่ายของบริการ Azure ที่ใช้ขณะเรียกใช้สถาปัตยกรรมอ้างอิงเหล่านี้ จำนวนเงินทั้งหมดขึ้นอยู่กับจำนวนเหตุการณ์ที่จะรันผ่านไปป์ไลน์การวิเคราะห์ ดูหน้าเว็บการกำหนดราคาสำหรับแต่ละบริการที่ใช้ในสถาปัตยกรรมอ้างอิง:
คุณยังมีเครื่องคำนวณราคา Azure เพื่อกำหนดค่าและประเมินค่าใช้จ่ายสำหรับบริการ Azure ที่คุณวางแผนจะใช้
== ข้อเสนอแนะ ==
ส่งและดูข้อเสนอแนะสำหรับ