Buat Amazon GameLift Anywhere armada - Amazon GameLift

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

Buat Amazon GameLift Anywhere armada

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

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

Karena armada Anywhere dikelola sendiri, menyiapkan armada membutuhkan beberapa pekerjaan tambahan. Untuk mendapatkan armada Anywhere yang siap menjadi tuan rumah 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 Amazon GameLift Anywhere atauPeta jalan pengembangan untuk hosting hybrid dengan Amazon GameLift.

  • Integrasikan kode server game Anda dengan GameLift server Amazon SDK versi 5.x (atau lebih tinggi). Anda tidak perlu menyelesaikan semua tugas integrasi game, hanya yang diperlukan untuk membangun 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 Amazon GameLift Anywhere). Anda dapat menggabungkan komponen tambahan (seperti klien game yang GameLift diaktifkan Amazon) saat Anda mengembangkannya.

  • Package perangkat lunak server game Anda untuk instalasi ke komputasi armada Anywhere Anda. Paket harus menyertakan build server game terintegrasi Anda dan semua perangkat lunak pendukung yang diperlukan untuk menjalankan server game Anda.

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

Buat lokasi kustom

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

Untuk membuat lokasi kustom

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

Console

Di GameLift konsol Amazon, 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 bermakna untuk sekumpulan sumber daya komputasi. Mungkin lokasi geografis, nama pusat data, atau pengenal lokasi lainnya. Amazon GameLift menambahkan nama lokasi kustom Anda dengan custom-.

  2. (Opsional) Tambahkan tag ke lokasi kustom Anda. Setiap tag terdiri dari kunci dan nilai opsional, yang keduanya Anda tentukan. 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-locationperintah. Berikan location-name nilai, yang harus dimulai dengancustom-. Sebagai praktik terbaik, gunakan nama yang menggambarkan lokasi yang bermakna untuk sekumpulan sumber daya komputasi. Mungkin lokasi geografis, nama pusat data, atau pengenal 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" } }

Buat armada Anywhere

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

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

Untuk membuat armada Anywhere

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

Console

Di GameLift konsol Amazon, 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 Detail Armada:

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

    2. Berikan Deskripsi singkat tentang armada.

  2. Tetapkan opsional ini Detail tambahan sesuai kebutuhan. Anda dapat memperbarui pengaturan armada ini nanti.

    1. Saat membuat armada untuk pengujian produksi atau pra-prod, gunakan pengaturan ini untuk menentukan nilai Biaya per jam untuk perhitungan armada. Amazon GameLift dapat 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 Anda gabungkan bersama. Lihat metrik untuk grup metrik untuk melihat data agregat.

  3. Tambahkan tag opsional ke lokasi kustom Anda. Setiap tag terdiri dari kunci dan nilai opsional, yang keduanya Anda tentukan. 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 kustom

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

  1. Di lokasi Kustom, pilih satu atau beberapa lokasi untuk komputasi armada. Daftar ini mencakup semua lokasi kustom yang telah ditentukan dalam pilihan Anda saat ini Wilayah AWS. Untuk menentukan lokasi kustom baru yang ingin ditambahkan 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 menyebarkan armada baru, pilih Buat. Amazon GameLift segera 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-fleetperintah untuk membuat armada tipe ANYWHERE komputasi. Berikan nama dan setidaknya satu lokasi khusus. Amazon GameLift membuat resource armada Anywhere di 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" } }

Pada penciptaan, baru Anywhere armada dengan cepat bergerak ke status armadaACTIVE. Anda dapat menambahkan komputasi ke armada setelah mencapaiACTIVE.

Perhatikan bahwa respon tidak termasuk lokasi armada. Anda dapat mengambil detail armada lengkap dengan menelepon describe-fleet-attributesdan 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. Pendaftaran memberi tahu Amazon sumber daya hosting fisik GameLift apa yang merupakan bagian dari armada.

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

catatan

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

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

Sebagai praktik terbaik, kami sarankan untuk mengotomatiskan kedua tugas ini dengan menambahkan skrip startup ke setiap komputasi. Skrip startup secara otomatis memanggil perintah register-compute dan get-compute-auth-token perintah. 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 khusus komputasi 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 GameLift layanan Amazon (lihat ServerParameters di referensi serverSDK). Kami menyarankan Anda menetapkan nilai khusus komputasi ini (atau lokasi yang disimpan) sebagai variabel lingkungan. Jika Anda menggunakan GameLift Agen Amazon, 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

Hubungi register-computeuntuk 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 kustom yang berbeda, gunakan GameLift konsol Amazon untuk memperbarui armada atau panggil AWS CLI perintah create-fleet-locationsuntuk menambahkan lokasi kustom 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-attributesdan 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

Panggilan get-compute-auth-tokenuntuk meminta token otentikasi yang valid. daftarkan komputasi. Identifikasi ID armada dan hitung nama.

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-computedengan 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" }

Memulai 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 GameLift server Amazon SDK versi 5.x (atau lebih tinggi) dengan fungsionalitas minimum yang diperlukan untuk berkomunikasi dengan GameLift layanan Amazon.

Langkah 2 Siapkan komputasi Anda untuk menjalankan server game

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

Jika Anda telah menggunakan GameLift Agen Amazon dengan perangkat lunak server game Anda, pastikan 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 SDK tindakan server InitSDK() dengan serangkaian parameter server yang valid. Ketika proses server siap untuk meng-host sesi permainan, ia memanggilProcessReady().

catatan

Jika Anda menggunakan perangkat lunak server game Anda dengan GameLift Agen Amazon, 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 GameLiftMetrik Amazon untuk armada. Jika proses server game Anda gagal diinisialisasi, verifikasi bahwa proses tersebut mengambil nilai parameter server yang tepat untuk komputasi yang dijalankannya.