

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

# Buat sebuah Amazon GameLift Servers Armada di mana saja
<a name="fleets-creating-anywhere"></a>

Topik ini menjelaskan cara membuat Amazon GameLift Servers Armada di mana saja. Dengan armada Anywhere, Anda dapat menggunakan inti Amazon GameLift Servers fitur manajemen sesi game 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 Amazon GameLift Servers armada terkelola dalam solusi hosting hybrid. Mereka juga menyediakan lingkungan pengujian yang berguna saat mengembangkan game untuk hosting Amazon GameLift Servers. Lihat topik ini untuk mempelajari lebih lanjut tentang kapan dan bagaimana menggabungkan Amazon GameLift Servers Di mana saja armada menjadi solusi hosting game: 
+ [Hosting hibrida](gamelift-intro-flavors.md#gamelift-intro-flavors-hosting-hybrid)
+ [Menyebarkan armada hosting untuk Amazon GameLift Servers](fleets-intro.md)
+ [Siapkan untuk pengembangan berulang dengan Amazon GameLift Servers Anywhere](integration-dev-iteration.md)

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:

**Topics**
+ [Sebelum Anda mulai](#fleet-anywhere-start)
+ [Buat lokasi kustom](#fleet-anywhere-location)
+ [Buat armada Anywhere](#fleet-anywhere-create)
+ [Tambahkan komputasi ke armada](#fleet-anywhere-compute)
+ [Memulai server game](#fleet-anywhere-process)

## Sebelum Anda mulai
<a name="fleet-anywhere-start"></a>

Sebelum membuat armada Anywhere, lakukan tugas-tugas berikut. Untuk panduan lebih rinci, lihat [Peta jalan pengembangan untuk hosting dengan Amazon GameLift Servers Anywhere](gamelift-roadmap-anywhere.md) atau[Peta jalan pengembangan untuk hosting hybrid dengan Amazon GameLift Servers](gamelift-roadmap-hybrid.md). 
+ **Integrasikan kode server game Anda dengan Amazon GameLift Servers server 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 (lihat[Siapkan pengujian lokal dengan Amazon GameLift Servers Anywhere](integration-testing.md)). Anda dapat menggabungkan komponen tambahan (seperti Amazon GameLift Servers mengaktifkan klien game) 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 Amazon GameLift Servers Agen 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 ServersUntuk informasi selengkapnya, lihat [Bekerja dengan Amazon GameLift Servers Agen](integration-dev-iteration-agent.md).

## Buat lokasi kustom
<a name="fleet-anywhere-location"></a>

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 salah satu Amazon GameLift Servers konsol atau AWS Command Line Interface (AWS CLI) untuk membuat lokasi kustom. 

------
#### [ Console ]

Di [Amazon GameLift Servers konsol](https://console.aws.amazon.com/gamelift/), 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 Servers menambahkan nama lokasi kustom Anda dengan **custom-**.

1. (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. 

1. Pilih **Buat**.

------
#### [ AWS CLI ]

Buat lokasi khusus menggunakan [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/create-location.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/create-location.html)perintah. Berikan `location-name` nilai, yang harus dimulai dengan`custom-`. 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
<a name="fleet-anywhere-create"></a>

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

Saat pembuatan, armada Anywhere baru dengan cepat bergerak melalui status armada dari `NEW` ke`ACTIVE`. Anda dapat menambahkan komputasi ke armada setelah mencapai`ACTIVE`.

**Untuk membuat armada Anywhere**

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

------
#### [ Console ]

Di [Amazon GameLift Servers konsol](https://console.aws.amazon.com/gamelift/), 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. 

   1. Berikan **Deskripsi singkat tentang** armada.

1. 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 Servers dapat menggunakan informasi ini selama proses penempatan sesi permainan untuk memilih sumber daya hosting berdasarkan biaya.

   1. 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. 

1. 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. 

1. 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**. 

1. 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 Servers 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 [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/create-fleet.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/create-fleet.html)perintah untuk membuat armada tipe `ANYWHERE` komputasi. Berikan nama dan setidaknya satu lokasi khusus. Amazon GameLift Servers membuat sumber daya 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"
    }
}
```

Saat pembuatan, armada Anywhere baru dengan cepat bergerak ke status armada`ACTIVE`. Anda dapat menambahkan komputasi ke armada setelah mencapai`ACTIVE`.

Perhatikan bahwa respon tidak termasuk lokasi armada. Anda dapat mengambil detail armada lengkap dengan menelepon [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-attributes.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-attributes.html)dan [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-location-attributes.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-location-attributes.html). 

------

## Tambahkan komputasi ke armada
<a name="fleet-anywhere-compute"></a>

Untuk menambahkan sumber daya komputasi ke armada dan menyiapkannya untuk menyelenggarakan sesi permainan, lakukan tugas-tugas berikut: 
+ Daftarkan komputasi dengan armada. Registrasi memberitahu Amazon GameLift Servers 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 menggunakan 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](integration-dev-iteration-agent.md).

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 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 Amazon GameLift Servers layanan (lihat [ServerParameters](integration-server-sdk5-cpp-datatypes.md#integration-server-sdk5-cpp-dataypes-serverparameters) di referensi SDK server). Kami menyarankan Anda menetapkan nilai khusus komputasi ini (atau lokasi yang disimpan) sebagai variabel lingkungan. Jika Anda menggunakan Amazon GameLift Servers Agen, tugas ini ditangani untukmu. Nilai khusus komputasi adalah sebagai berikut:
+ `register-compute`mengembalikan nilai untuk`GameLiftServiceSdkEndpoint`. Tetapkan nilai ini ke parameter `webSocketUrl` server. 
+ `compute-auth-token`mengembalikan 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 [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/register-compute.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/register-compute.html)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 kustom yang berbeda, gunakan Amazon GameLift Servers konsol untuk memperbarui armada atau memanggil perintah AWS CLI [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/create-fleet-locations.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/create-fleet-locations.html)untuk menambahkan lokasi khusus ke armada. 

Dalam contoh berikut, ganti nilai placeholder untuk komputasi dan armada Anda. `fleet-id`Nilai dikembalikan saat Anda membuat armada Anywhere. Anda dapat mengambil detail armada lengkap dengan menelepon [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-attributes.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-attributes.html)dan [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-location-attributes.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-location-attributes.html).

```
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 [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/get-compute-auth-token.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/get-compute-auth-token.html)untuk 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-id`Nilai dikembalikan saat Anda membuat armada Anywhere. Anda dapat mengambil detail armada lengkap dengan menelepon [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-attributes.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/describe-fleet-attributes.html). Untuk menemukan informasi komputasi, hubungi [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/list-compute.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/gamelift/list-compute.html)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"
}
```

------

## Memulai server game
<a name="fleet-anywhere-process"></a>

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 Amazon GameLift Servers server SDK 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 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 menerapkan Amazon GameLift Servers Agen 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 akan memanggil tindakan SDK server `InitSDK()` dengan serangkaian parameter server yang valid. Ketika proses server siap untuk meng-host sesi permainan, ia memanggil`ProcessReady()`.   
Jika Anda menggunakan 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 [Amazon GameLift Serversmetrik untuk armada](monitoring-cloudwatch.md#gamelift-metrics-fleet). Jika proses server game Anda gagal diinisialisasi, verifikasi bahwa proses tersebut mengambil nilai parameter server yang tepat untuk komputasi yang dijalankannya. 