View a markdown version of this page

Buat sebuah GameLift Server Amazon Armada di mana saja - GameLift Server Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Buat sebuah GameLift Server Amazon Armada di mana saja

Topik ini menjelaskan cara membuat armada Amazon GameLift Servers Anywhere. Dengan armada Anywhere, Anda dapat menggunakan fitur manajemen sesi Amazon GameLift Servers game inti sambil menyelenggarakan sesi game dengan sumber daya komputasi Anda sendiri. Buat armada Anywhere untuk perangkat keras lokal atau sumber daya berbasis cloud lainnya.

Armada di mana saja biasanya digunakan bersama arm Amazon GameLift Servers ada yang dikelola dalam solusi hosting hybrid. Mereka juga menyediakan lingkungan pengujian yang berguna saat mengembangkan game untuk hostingAmazon GameLift Servers. Lihat topik ini untuk mempelajari lebih lanjut tentang kapan dan bagaimana menggabungkan arm Amazon GameLift Servers ada Anywhere ke dalam solusi hosting game:

Karena armada Anywhere dikelola sendiri, menyiapkan armada memerlukan beberapa pekerjaan tambahan. Untuk menyiapkan armada Anywhere untuk menyelenggarakan sesi permainan dan pemain, Anda harus menyelesaikan tugas-tugas berikut:

Sebelum Anda mulai

Sebelum membuat armada Anywhere, lakukan tugas-tugas berikut. Untuk panduan lebih rinci, lihat Peta jalan pengembangan untuk hosting dengan GameLift Server Amazon Dimana saja atauPeta jalan pengembangan untuk hosting hybrid dengan GameLift Server Amazon.

  • Integrasikan kode server game Anda dengan SDK Amazon GameLift Servers server versi 5.x (atau lebih tinggi). Anda tidak perlu menyelesaikan semua tugas integrasi game, hanya yang diperlukan untuk pembuatan server game. Praktik umum adalah mengatur mesin lokal Anda sebagai armada Anywhere dan menggunakan antarmuka baris perintah untuk menguji integrasi server game Anda (lihatSiapkan pengujian lokal dengan GameLift Server Amazon Dimana saja). Anda dapat memasukkan komponen tambahan (seperti klien game yang Amazon GameLift Servers diaktifkan) saat Anda mengembangkannya.

  • Kemas perangkat lunak server game Anda untuk dipasang ke komputasi armada Anywhere Anda. Paket harus mencakup build server game terintegrasi Anda dan semua perangkat lunak pendukung yang diperlukan untuk menjalankan server game Anda.

  • Putuskan apakah akan menggunakan Amazon GameLift Servers Agen dengan armada Anywhere Anda. Agen adalah alat manajemen proses on-compute yang mengotomatiskan beberapa tugas utama yang terkait dengan pengelolaan proses server dan komputasi untuk digunakan. Amazon GameLift Servers Untuk informasi selengkapnya, lihat Bekerja dengan Amazon GameLift Servers Agen.

Buat lokasi khusus

Buat lokasi khusus untuk mewakili lokasi fisik sumber daya komputasi Anda. Saat membuat armada Anywhere, Anda harus memiliki setidaknya satu lokasi khusus yang sudah ditentukan. Anda dapat membuat lokasi khusus tambahan dan menambahkannya ke armada yang ada kapan saja.

Untuk membuat lokasi khusus

Gunakan Amazon GameLift Servers konsol atau AWS Command Line Interface (AWS CLI) untuk membuat lokasi khusus.

Console

Di Amazon GameLift Servers konsol, gunakan panel navigasi untuk membuka halaman Lokasi. Pilih Buat lokasi untuk membuka kotak dialog Buat.

  1. Di kotak dialog, masukkan nama Lokasi. Sebagai praktik terbaik, gunakan nama yang menggambarkan lokasi yang berarti untuk sekumpulan sumber daya komputasi. Mungkin lokasi geografis, nama pusat data, atau pengidentifikasi lokasi lainnya. Amazon GameLift Serversmenambahkan nama lokasi kustom Anda dengan custom-.

  2. (Opsional) Tambahkan tag ke lokasi kustom Anda. Setiap tag terdiri dari satu kunci dan satu nilai opsional, yang keduanya Anda tentukan sendiri. Tetapkan tag ke AWS sumber daya yang ingin Anda kategorikan dengan cara yang berguna, seperti berdasarkan tujuan, pemilik, atau lingkungan. Pilih Tambahkan tag baru untuk setiap tag yang ingin Anda tambahkan.

  3. Pilih Buat.

AWS CLI

Buat lokasi khusus menggunakan create-location perintah. Berikan location-name nilai, yang harus dimulai dengancustom-. Sebagai praktik terbaik, gunakan nama yang menggambarkan lokasi yang berarti untuk sekumpulan sumber daya komputasi. Mungkin lokasi geografis, nama pusat data, atau pengidentifikasi lokasi lainnya.

aws gamelift create-location \ --location-name custom-location-1

Output

{ "Location": { "LocationName": "custom-location-1", "LocationArn": "arn:aws:gamelift:us-east-1:111122223333:location/custom-location-1" } }

Membuat armada Anywhere

Buat armada Anywhere untuk sekumpulan sumber daya komputasi yang Anda miliki. Armada Anywhere baru mulai kosong; Anda menambahkan komputasi ke armada dengan mendaftarkannya.

Saat dibuat, armada Anywhere baru dengan cepat bergerak melalui status armada dari NEW keACTIVE. Anda dapat menambahkan komputasi ke armada setelah mencapaiACTIVE.

Untuk membuat armada Anywhere

Gunakan Amazon GameLift Servers konsol atau AWS Command Line Interface (AWS CLI) untuk membuat armada Anywhere.

Console

Di Amazon GameLift Servers konsol, gunakan panel navigasi untuk membuka halaman Armada. Pilih Buat armada untuk memulai alur kerja pembuatan armada.

Langkah 1 Pilih jenis komputasi

Pilih opsi Anywhere dan pilih Next.

Langkah 2 Tentukan detail armada

Pada langkah ini, tentukan beberapa pengaturan utama di seluruh armada.

  1. Isi bagian rincian Ar mada:

    1. Masukkan Nama armada. Sebaiknya gunakan pola penamaan armada yang memudahkan mengidentifikasi jenis armada saat melihat daftar armada.

    2. Berikan Deskripsi singkat tentang armada.

  2. Atur rincian tambahan opsional ini sesuai kebutuhan. Anda dapat memperbarui pengaturan armada ini nanti.

    1. Saat membuat armada untuk pengujian produksi atau pra-produk, gunakan pengaturan ini untuk menentukan nilai Biaya per jam untuk komputasi armada. Amazon GameLift Serversdapat menggunakan informasi ini selama proses penempatan sesi permainan untuk memilih sumber daya hosting berdasarkan biaya.

    2. Jika Anda ingin menggabungkan data metrik untuk armada ini dan lainnya, tentukan nama grup Metrik. Gunakan nama grup metrik yang sama untuk semua armada yang ingin digabungkan bersama. Lihat metrik untuk grup metrik untuk melihat data agregat.

  3. Tambahkan tag opsional ke lokasi kustom Anda. Setiap tag terdiri dari satu kunci dan satu nilai opsional, yang keduanya Anda tentukan sendiri. Tetapkan tag ke AWS sumber daya yang ingin Anda kategorikan dengan cara yang berguna, seperti berdasarkan tujuan, pemilik, atau lingkungan. Pilih Tambahkan tag baru untuk setiap tag yang ingin Anda tambahkan.

  4. Pilih Berikutnya untuk melanjutkan alur kerja.

Langkah 3 Pilih lokasi khusus

Pada langkah ini, identifikasi lokasi fisik komputasi yang Anda rencanakan untuk ditambahkan ke armada ini. Anda dapat menentukan satu atau lebih lokasi sekarang, dan Anda dapat menambahkan atau menghapus lokasi nanti sesuai kebutuhan.

  1. Di Lokasi khusus, pilih satu atau lebih lokasi untuk komputasi armada. Daftar ini mencakup semua lokasi khusus yang telah ditentukan di yang Anda pilih saat ini Wilayah AWS. Untuk menentukan lokasi kustom baru yang ingin Anda tambahkan ke armada, pilih Buat lokasi.

  2. Pilih Berikutnya untuk melanjutkan alur kerja.

Langkah 4 Tinjau dan buat

Tinjau pengaturan Anda sebelum membuat armada.

Saat Anda siap untuk menggunakan armada baru, pilih Buat. Amazon GameLift Serverssegera memulai proses aktivasi armada, menetapkan ID unik dan menempatkan armada dalam NEW status. Anda dapat melacak kemajuan armada di halaman Armada.

AWS CLI

Gunakan create-fleet perintah untuk membuat armada tipe ANYWHERE komputasi. Berikan nama dan setidaknya satu lokasi khusus. Amazon GameLift Serversmembuat sumber daya armada Anywhere dalam default Anda saat ini Wilayah AWS (atau Anda dapat menambahkan tag --region untuk menentukan yang berbeda Wilayah AWS).

Contoh permintaan berikut membuat armada baru dengan pengaturan minimal yang diperlukan. Ganti FleetName dan custom-location dengan informasi Anda sendiri.

aws gamelift create-fleet \ --name FleetName \ --compute-type ANYWHERE \ --locations "Location=custom-location"

Contoh tanggapan

{ "FleetAttributes": { "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "FleetArn": "arn:aws:gamelift:us-west-2:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "Name": "HardwareAnywhere", "CreationTime": "2023-02-23T17:57:42.293000+00:00", "Status": "ACTIVE", "MetricGroups": [ "default" ], "CertificateConfiguration": { "CertificateType": "DISABLED" }, "ComputeType": "ANYWHERE" } }

Saat dibuat, armada Anywhere baru dengan cepat beralih ke status armadaACTIVE. Anda dapat menambahkan komputasi ke armada setelah mencapaiACTIVE.

Perhatikan bahwa respons tidak menyertakan lokasi armada. Anda dapat mengambil detail armada lengkap dengan menelepon describe-fleet-attributes dan describe-fleet-location-attributes.

Tambahkan komputasi ke armada

Untuk menambahkan sumber daya komputasi ke armada dan menyiapkannya untuk menyelenggarakan sesi permainan, lakukan tugas-tugas berikut:

  • Daftarkan komputasi dengan armada. Pendaftar Amazon GameLift Servers an memberi tahu sumber daya hosting fisik apa yang merupakan bagian dari armada.

  • Minta token otentikasi untuk komputasi. Setiap server game yang berjalan pada komputasi membutuhkan token ini untuk terhubung ke Amazon GameLift Servers layanan. Token otentikasi bersifat sementara dan harus diperbarui secara teratur.

catatan

Jika Anda menerapkan perangkat lunak server game Anda dengan Amazon GameLift Servers Agen, Anda dapat melewati langkah ini. Agen secara otomatis mendaftarkan setiap komputasi dan mempertahankan token otentikasi yang valid untuk komputasi. Lihat Bekerja dengan Amazon GameLift Servers Agen.

Anda dapat mendaftarkan komputasi dan meminta token otentikasi dengan menggunakan AWS CLI atau membuat panggilan terprogram ke SDK untuk. AWS Amazon GameLift Servers Tindakan ini tidak tersedia melalui Amazon GameLift Servers konsol.

Sebagai praktik terbaik, kami sarankan mengotomatiskan kedua tugas ini dengan menambahkan skrip startup ke setiap komputasi. Skrip startup secara otomatis memanggil get-compute-auth-token perintah register-compute dan. Anda juga dapat mengotomatiskan tugas untuk menyegarkan token autentikasi secara teratur sepanjang masa komputasi dan membatalkan pendaftaran komputasi saat dimatikan.

Setiap tindakan startup mengembalikan nilai komputasi spesifik yang perlu Anda simpan di komputasi. Ketika proses server game diluncurkan pada komputasi, itu harus meneruskan nilai-nilai ini sebagai parameter server saat menginisialisasi koneksi dengan Amazon GameLift Servers layanan (lihat ServerParameters di referensi SDK server). Sebaiknya tetapkan nilai komputasi spesifik ini (atau lokasi tersimpan) sebagai variabel lingkungan. Jika Anda menggunakan Amazon GameLift Servers Agen, tugas ini ditangani untuk Anda. Nilai khusus komputasi adalah sebagai berikut:

  • register-computemengembalikan nilai untukGameLiftServiceSdkEndpoint. Tetapkan nilai ini ke parameter webSocketUrl server.

  • compute-auth-tokenmengembalikan token otentikasi. Tetapkan nilai ini ke parameter authToken server.

AWS CLI

Petunjuk berikut menjelaskan cara mengirimkan setiap permintaan secara manual menggunakan AWS CLI.

Untuk mendaftarkan komputasi

Panggil register-compute untuk mendaftarkan komputasi. Identifikasi ID armada untuk menambahkan komputasi. Berikan informasi komputasi berikut: nama yang bermakna, alamat IP, dan lokasi. Lokasi komputasi harus merupakan lokasi khusus yang sudah dikaitkan dengan armada. Jika Anda ingin menggunakan lokasi khusus yang berbeda, gunakan Amazon GameLift Servers konsol untuk memperbarui armada atau panggil perintah AWS CLI create-fleet-locations untuk menambahkan lokasi khusus ke armada.

Dalam contoh berikut, ganti nilai placeholder untuk komputasi dan armada Anda. fleet-idNilai dikembalikan saat Anda membuat armada Anywhere. Anda dapat mengambil detail armada lengkap dengan menelepon describe-fleet-attributes dan describe-fleet-location-attributes.

aws gamelift register-compute \ --compute-name HardwareAnywhere \ --fleet-id arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --ip-address 10.1.2.3 \ --location custom-location-1

Contoh Output

{ "Compute": { "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "FleetArn": "arn:aws:gamelift:us-west-2:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "ComputeName": "HardwareAnywhere", "ComputeArn": "arn:aws:gamelift:us-west-2:111122223333:compute/HardwareAnywhere", "IpAddress": "10.1.2.3", "ComputeStatus": "Active", "Location": "custom-location-1", "CreationTime": "2023-02-23T18:09:26.727000+00:00", "GameLiftServiceSdkEndpoint": "wss://us-west-2.api.amazongamelift.com" } }

Untuk meminta token otentikasi

Panggil get-compute-auth-token untuk meminta token otentikasi yang valid. daftarkan komputasi. Identifikasi ID armada dan nama komputasi.

Dalam contoh berikut, ganti nilai placeholder untuk komputasi dan armada Anda. fleet-idNilai dikembalikan saat Anda membuat armada Anywhere. Anda dapat mengambil detail armada lengkap dengan menelepon describe-fleet-attributes. Untuk menemukan informasi komputasi, hubungi list-compute dengan ID armada untuk melihat semua komputasi yang terdaftar ke armada.

aws gamelift get-compute-auth-token \ --fleet-id arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --compute-name HardwareAnywhere

Contoh Output

{ "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "FleetArn": "arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "ComputeName": "HardwareAnywhere", "ComputeArn": "arn:aws:gamelift:us-east-1:111122223333:compute/HardwareAnywhere", "AuthToken": "0c728041-3e84-4aaa-b927-a0fb202684c0", "ExpirationTimestamp": "2023-02-23T18:47:54+00:00" }

Mulai server game

Setelah Anda membuat armada Anywhere dan menambahkan satu atau lebih komputasi ke armada, Anda siap untuk mulai menjalankan server game Anda.

Langkah 1 Instal perangkat lunak server game Anda

Dapatkan build server game Anda dan semua perangkat lunak dependen diinstal ke setiap komputasi di armada Anywhere Anda. Pembuatan server game harus terintegrasi dengan SDK Amazon GameLift Servers server versi 5.x (atau lebih tinggi) dengan fungsionalitas minimum yang diperlukan untuk berkomunikasi dengan Amazon GameLift Servers layanan.

Langkah 2 Siapkan komputasi Anda untuk menjalankan server game

Pastikan setiap komputasi terdaftar dan memiliki token otentikasi yang valid. Jika Anda menggunakan skrip untuk mengelola tugas-tugas ini, pastikan skrip berjalan pada setiap komputasi sebelum memulai proses server game apa pun.

Jika Anda telah menerapkan A Amazon GameLift Servers gen dengan perangkat lunak server game Anda, pastikan bahwa Agen yang dapat dieksekusi diluncurkan.

Langkah 3 Luncurkan proses server game

Jalankan instance server game Anda yang dapat dieksekusi pada komputasi. Jika build server game Anda terintegrasi dengan benar, proses server game memanggil tindakan SDK server InitSDK() dengan serangkaian parameter server yang valid. Ketika proses server siap untuk menjadi tuan rumah sesi permainan, ia memanggilProcessReady().

catatan

Jika Anda menerapkan perangkat lunak server game Anda dengan Amazon GameLift Servers Agen, Anda dapat melewati langkah ini. Agen secara otomatis meluncurkan proses server game berdasarkan instruksi runtime yang Anda berikan.

Anda dapat memantau kemajuan dengan melihat metrik proses server untuk mengaktifkan dan mengaktifkan proses server. Lihat GameLift Peladen Amazon metrik untuk armada. Jika proses server game Anda gagal diinisialisasi, verifikasi bahwa proses tersebut mengambil nilai parameter server yang tepat untuk komputasi yang dijalankannya.