

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

# Akses sumber daya armada dari jarak jauh
<a name="remote-access-intro"></a>

Anda dapat terhubung ke instans apa pun di EC2 Amazon GameLift Servers terkelola aktif atau armada kontainer terkelola. Untuk armada kontainer, Anda juga dapat terhubung ke kontainer individual yang berjalan pada sebuah instance untuk memecahkan masalah sesi game, memeriksa log, dan men-debug masalah runtime. Alasan umum untuk mengakses instance dari jarak jauh meliputi:
+ Memecahkan masalah dengan integrasi server game Anda.
+ Sempurnakan konfigurasi runtime Anda dan pengaturan khusus armada lainnya.
+ Pantau aktivitas server game real-time, seperti pelacakan log.
+ Jalankan alat benchmarking menggunakan lalu lintas pemain yang sebenarnya.
+ Selidiki masalah tertentu dengan sesi permainan atau proses server.

Saat menghubungkan ke sebuah instance, ingatlah hal berikut:
+ Anda dapat terhubung ke instans apa pun dalam armada aktif. Umumnya, Anda tidak dapat terhubung ke armada non-aktif, seperti armada yang sedang dalam proses mengaktifkan atau berada dalam keadaan kesalahan. (Armada ini mungkin memiliki ketersediaan terbatas untuk waktu yang singkat.) Untuk bantuan terkait masalah aktivasi armada, lihat [Masalah Amazon GameLift Servers armada debug](fleets-creating-debug.md).
+ Menghubungkan ke instans aktif tidak memengaruhi aktivitas hosting instans. Instance terus memulai dan menghentikan proses server berdasarkan konfigurasi runtime. Ini mengaktifkan dan menjalankan sesi permainan. Instance mungkin dimatikan sebagai respons terhadap peristiwa penurunan skala atau peristiwa lainnya.
+ Setiap perubahan yang Anda buat pada file atau pengaturan pada instance dapat memengaruhi sesi permainan aktif instans dan pemain yang terhubung.

# Connect ke instance armada
<a name="fleets-remote-access"></a>

Anda dapat terhubung dari jarak jauh ke EC2 Amazon GameLift Servers terkelola aktif atau instans armada kontainer terkelola untuk memecahkan masalah server game, memeriksa log, dan men-debug perilaku runtime. Connect menggunakan Amazon GameLift Servers konsol atau AWS CLI.

## Akses jarak jauh melalui konsol
<a name="fleets-remote-access-console"></a>

Anda dapat terhubung ke instans armada langsung dari Amazon GameLift Servers konsol menggunakan Amazon EC2 Systems Manager (SSM). Metode ini menyediakan akses aman tanpa memerlukan pengaturan tambahan atau manajemen kredensyal. Untuk armada kontainer, setelah terhubung ke instance, Anda dapat mengakses kontainer individual yang berjalan di atasnya. Untuk informasi selengkapnya, lihat [Connect ke kontainer](containers-remote-access.md).

1. **Di Amazon GameLift Servers konsol, pilih **EC2 Terkelola** atau **Kontainer terkelola** dari panel navigasi, lalu Armada.**

1. Pilih ID armada yang berisi instance yang ingin Anda akses.

1. Pada halaman detail armada, pilih tab **Instans** untuk melihat semua instans komputasi untuk armada.

1. Pilih instance yang ingin Anda sambungkan, lalu pilih **Connect**. Ini menampilkan dialog Connect to instance yang memberi tahu Anda tentang detail koneksi, dan memungkinkan Anda untuk melihat skrip yang akan digunakan untuk terhubung ke instance Anda. Konfirmasikan dengan memilih **Connect** lagi.

1. Dalam dialog koneksi, pilih **Jalankan** untuk membuat sesi SSM baru. Sistem mengotentikasi sesi Anda melalui AWS Key Management Service (AWS KMS) dan membuka terminal di browser Anda.

**catatan**  
Akses jarak jauh berbasis konsol tersedia untuk armada yang menjalankan server SDK versi 5.x. Untuk armada yang menjalankan versi SDK sebelumnya, gunakan metode AWS CLI yang dijelaskan di bagian berikut.

## Akses jarak jauh dengan AWS CLI
<a name="fleets-remote-access-cli"></a>

Instruksi berikut menjelaskan cara menghubungkan jarak jauh ke sebuah instance menggunakan antarmuka baris AWS perintah (CLI). Anda juga dapat melakukan panggilan terprogram menggunakan AWS SDK, seperti yang didokumentasikan dalam [referensi API layanan](https://docs.aws.amazon.com/gamelift/latest/apireference/) untuk. Amazon GameLift Servers

### Kumpulkan data instance
<a name="fleets-remote-access-getinfo"></a>

Untuk menyambung ke instans armada EC2 Amazon GameLift Servers terkelola, Anda memerlukan informasi berikut: 
+ ID dari instance yang ingin Anda sambungkan. Anda dapat menggunakan ID instance atau ARN.
+ SDK server untuk Amazon GameLift Servers versi yang digunakan pada instance. Server SDK terintegrasi dengan game build yang berjalan pada instance. 

Instruksi berikut menjelaskan bagaimana menyelesaikan tugas-tugas ini menggunakan AWS CLI. Anda harus mengetahui ID armada untuk contoh yang ingin Anda sambungkan.

1. **Dapatkan nama komputasi.** Dapatkan daftar semua komputasi aktif di armada. Panggil [daftar-komputasi dengan ID](https://docs.aws.amazon.com/cli/latest/reference/gamelift/list-compute.html) armada atau ARN. Untuk armada satu lokasi, tentukan pengenal armada saja. Untuk armada multi-lokasi, tentukan pengenal armada dan lokasi. Dengan armada EC2 terkelola, `list-compute` mengembalikan daftar instance armada, dan properti `ComputeName` adalah ID instans. Temukan komputasi yang ingin Anda akses. 

   **Permintaan**

   ```
   aws gamelift list-compute \
     --fleet-id  fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \
     --location sa-east-1
   ```

   **Respons**

   ```
   {
     "ComputeList": [
       {
         "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "FleetArn": "arn:aws:gamelift:us-west-2::fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "ComputeName": "i-0abc12d3e45fa6b78",
         "IpAddress": "00.00.000.00",
         "DnsName": "b08444ki909kvqu6zpw3is24x5pyz4b6m05i3jbxvpk9craztu0lqrbbrbnbkks.uwp57060n1k6dnlnw49b78hg1rw4rcz7.us-west-2.amazongamelift.com",
         "ComputeStatus": "Active",
         "Location": "sa-east-1",
         "CreationTime": "2023-07-09T22:51:45.931000-07:00",
         "OperatingSystem": "AMAZON_LINUX_2023",
         "Type": "c4.large"
       }
     ]
   }
   ```

1. **Temukan versi SDK server.** Untuk informasi ini, Anda perlu mencari build yang dikerahkan ke armada. Versi SDK Server adalah properti build.

   1. Hubungi [describe-fleet-attributes](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-fleet-attributes.html)dengan ID armada atau ARN untuk mendapatkan ID build armada dan ARN.

   1. Panggil [describe-build](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-build.html) dengan ID build atau ARN untuk mendapatkan versi SDK server build. 

      Contoh:

      **Permintaan**

   ```
   aws gamelift describe-fleet-attributes \
     --fleet-ids  fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa
   ```

   **Respons**

   ```
   {
     "FleetAttributes": [
       {
         "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "ComputeType": "EC2",
         "BuildId": "build-3333cccc-44dd-55ee-66ff-00001111aa22",
         . . .
       }
     ]
   }
   ```

   **Permintaan**

   ```
   aws gamelift describe-build \
     --build-id build-3333cccc-44dd-55ee-66ff-00001111aa22
   ```

   **Respons**

   ```
   "Build": {
     "BuildId": "build-1111aaaa-22bb-33cc-44dd-5555eeee66ff",
     "Name": "My_Game_Server_Build_One",
     "OperatingSystem": "AMAZON_LINUX_2023",
     "ServerSdkVersion": "5.1.1",
     . . .
   }
   ```

## Connect ke sebuah instans (server SDK 5)
<a name="fleets-remote-access-connect-5"></a>

Jika instance yang ingin Anda sambungkan menjalankan game build dengan server SDK versi 5.x, sambungkan ke instans menggunakan Amazon EC2 Systems Manager (SSM). Anda dapat mengakses instans jarak jauh yang menjalankan Windows atau Linux. Untuk armada kontainer, setelah terhubung ke instance, Anda dapat mengakses kontainer individual yang berjalan di atasnya. Untuk informasi selengkapnya, lihat [Connect ke kontainer](containers-remote-access.md).

**Sebelum Anda mulai:**  
Selesaikan langkah-langkah pengaturan SSM dan instal plugin SSM di mesin lokal Anda. Untuk informasi selengkapnya, lihat [Menyiapkan SSM](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html) dan [Menginstal plugin Session Manager untuk AWS CLI](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html) di Panduan Pengguna *Amazon EC2* Systems Manager.

1. **Minta kredensyal akses untuk instance.** Panggil [get-compute-access](https://docs.aws.amazon.com/cli/latest/reference/gamelift/get-compute-access.html)dengan ID armada dan nama komputasi untuk instance yang ingin Anda sambungkan. Amazon GameLift Serversmengembalikan satu set kredensyal sementara untuk mengakses instance. Contoh: 

   **Permintaan**

   ```
   aws gamelift get-compute-access \
   --compute-name i-11111111a222b333c \
   --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa
   --region us-west-2
   ```

   **Respons**

   ```
   {
     "ComputeName": "i-11111111a222b333c",
     "Credentials": {
       "AccessKeyId": "ASIAIOSFODNN7EXAMPLE",
       "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
       "SessionToken": "AQoDYXdzEJr...<remainder of session token>"
     },
     "FleetArn": "arn:aws:gamelift:us-west-2::fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
     "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa"
   }
   ```

1. **Ekspor kredensyal akses (opsional).** Anda dapat mengekspor kredensyal ke variabel lingkungan dan menggunakannya untuk mengkonfigurasi AWS CLI untuk pengguna default. Untuk detail selengkapnya, lihat [Variabel lingkungan untuk mengonfigurasi AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) di AWS Command Line Interface Panduan Pengguna.

   ```
   export AWS_ACCESS_KEY_ID=ASIAIOSFODNN7EXAMPLE
   export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   export AWS_SESSION_TOKEN=AQoDYXdzEJr...<remainder of session token>
   ```

1. **Connect ke instance armada.** Mulai sesi SSM dengan instance yang ingin Anda sambungkan. Sertakan AWS Wilayah atau lokasi instance. Untuk informasi selengkapnya, termasuk cara mengatur SSM dan plugin SSM, lihat [Memulai sesi (AWS CLI)](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-sessions-start.html#sessions-start-cli) di Panduan Pengguna *Amazon EC2 Systems Manager*. 

   Permintaan sesi awal akan secara otomatis menggunakan kredensyal yang Anda peroleh di Langkah 1. 

   ```
   aws ssm start-session \
   --target i-11111111a222b333c \
   --region us-west-2 \
   ```
**catatan**  
Jika Anda mendapatkan kesalahan akses ditolak, Anda mungkin memiliki variabel `AWS_PROFILE` lingkungan yang disetel ke AWS profil, yang menyebabkan AWS CLI menggunakan kredensyal yang salah untuk akses jarak jauh. Untuk mengatasinya, hapus sementara variabel `AWS_PROFILE` lingkungan Anda. Atau, Anda dapat membuat AWS profil khusus untuk kredensyal akses jarak jauh Anda dan menambahkan parameter baris `--profile` perintah ke permintaan Anda`start-session`. 

## Connect ke sebuah instans (server SDK 4.x atau yang lebih lama)
<a name="fleets-remote-access-connect"></a>

Jika instance yang ingin Anda sambungkan menjalankan game build dengan server SDK versi 4 atau yang lebih lama, gunakan petunjuk berikut. Anda dapat terhubung ke instance yang menjalankan Windows atau Linux. Connect ke instance Windows menggunakan klien remote desktop protocol (RDP). Connect ke instance Linux menggunakan klien SSH. 

1. **Minta kredensyal akses untuk instance.** Bila Anda memiliki ID instance, gunakan perintah [get-instance-access](https://docs.aws.amazon.com/cli/latest/reference/gamelift/get-instance-access.html)untuk meminta kredensyal akses. Jika berhasil, Amazon GameLift Servers mengembalikan sistem operasi instans, alamat IP, dan satu set kredensyal (nama pengguna dan kunci rahasia). Format kredensial tergantung pada sistem operasi instans. Gunakan instruksi berikut untuk mengambil kredensial, baik RDP maupun SSH. 
   + **Untuk instans Windows** – Untuk connect ke instans Windows, RDP memerlukan nama pengguna dan kata sandi. Permintaan `get-instance-access` mengembalikan nilai-nilai ini sebagai string sederhana, sehingga Anda dapat menggunakan nilai yang dikembalikan apa adanya. Kredenensi contoh: 

     ```
     "Credentials": {
         "Secret": "aA1bBB2cCCd3EEE",
         "UserName": "gl-user-remote"
     }
     ```
   + **Untuk instance Linux** — Untuk terhubung ke instance Linux, SSH memerlukan nama pengguna dan kunci pribadi. Amazon GameLift Serversmengeluarkan kunci pribadi RSA dan mengembalikannya sebagai string tunggal, dengan karakter baris baru (`\n`) menunjukkan jeda baris. Untuk membuat kunci pribadi dapat digunakan, ambil langkah-langkah ini: (1) konversi string ke `.pem` file, dan (2) mengatur izin untuk file baru. Contoh kredensial yang dikembalikan: 

     ```
     "Credentials": {
         "Secret": "-----BEGIN RSA PRIVATE KEY-----nEXAMPLEKEYKCAQEAy7WZhaDsrA1W3mRlQtvhwyORRX8gnxgDAfRt/gx42kWXsT4rXE/b5CpSgie/\nvBoU7jLxx92pNHoFnByP+Dc21eyyz6CvjTmWA0JwfWiW5/akH7iO5dSrvC7dQkW2duV5QuUdE0QW\nZ/aNxMniGQE6XAgfwlnXVBwrerrQo+ZWQeqiUwwMkuEbLeJFLhMCvYURpUMSC1oehm449ilx9X1F\nG50TCFeOzfl8dqqCP6GzbPaIjiU19xX/azOR9V+tpUOzEL+wmXnZt3/nHPQ5xvD2OJH67km6SuPW\noPzev/D8V+x4+bHthfSjR9Y7DvQFjfBVwHXigBdtZcU2/wei8D/HYwIDAQABAoIBAGZ1kaEvnrqu\n/uler7vgIn5m7lN5LKw4hJLAIW6tUT/fzvtcHK0SkbQCQXuriHmQ2MQyJX/0kn2NfjLV/ufGxbL1\nmb5qwMGUnEpJaZD6QSSs3kICLwWUYUiGfc0uiSbmJoap/GTLU0W5Mfcv36PaBUNy5p53V6G7hXb2\nbahyWyJNfjLe4M86yd2YK3V2CmK+X/BOsShnJ36+hjrXPPWmV3N9zEmCdJjA+K15DYmhm/tJWSD9\n81oGk9TopEp7CkIfatEATyyZiVqoRq6k64iuM9JkA3OzdXzMQexXVJ1TLZVEH0E7bhlY9d8O1ozR\noQs/FiZNAx2iijCWyv0lpjE73+kCgYEA9mZtyhkHkFDpwrSM1APaL8oNAbbjwEy7Z5Mqfql+lIp1\nYkriL0DbLXlvRAH+yHPRit2hHOjtUNZh4Axv+cpg09qbUI3+43eEy24B7G/Uh+GTfbjsXsOxQx/x\np9otyVwc7hsQ5TA5PZb+mvkJ5OBEKzet9XcKwONBYELGhnEPe7cCgYEA06Vgov6YHleHui9kHuws\nayav0elc5zkxjF9nfHFJRry21R1trw2Vdpn+9g481URrpzWVOEihvm+xTtmaZlSp//lkq75XDwnU\nWA8gkn6O3QE3fq2yN98BURsAKdJfJ5RL1HvGQvTe10HLYYXpJnEkHv+Unl2ajLivWUt5pbBrKbUC\ngYBjbO+OZk0sCcpZ29sbzjYjpIddErySIyRX5gV2uNQwAjLdp9PfN295yQ+BxMBXiIycWVQiw0bH\noMo7yykABY7Ozd5wQewBQ4AdSlWSX4nGDtsiFxWiI5sKuAAeOCbTosy1s8w8fxoJ5Tz1sdoxNeGs\nArq6Wv/G16zQuAE9zK9vvwKBgF+09VI/1wJBirsDGz9whVWfFPrTkJNvJZzYt69qezxlsjgFKshy\nWBhd4xHZtmCqpBPlAymEjr/TOlbxyARmXMnIOWIAnNXMGB4KGSyl1mzSVAoQ+fqR+cJ3d0dyPl1j\njjb0Ed/NY8frlNDxAVHE8BSkdsx2f6ELEyBKJSRr9snRAoGAMrTwYneXzvTskF/S5Fyu0iOegLDa\nNWUH38v/nDCgEpIXD5Hn3qAEcju1IjmbwlvtW+nY2jVhv7UGd8MjwUTNGItdb6nsYqM2asrnF3qS\nVRkAKKKYeGjkpUfVTrW0YFjXkfcrR/V+QFL5OndHAKJXjW7a4ejJLncTzmZSpYzwApc=\n-----END RSA PRIVATE KEY-----",
         "UserName": "gl-user-remote"
     }
     ```

     Saat menggunakan AWS CLI, Anda dapat secara otomatis membuat `.pem` file dengan menyertakan parameter *--query dan *--output** ke permintaan Anda. `get-instance-access` 

     Gunakan perintah berikut untuk memeriksa izin pada `.pem` file.

     ```
     $ chmod 400 MyPrivateKey.pem
     ```

1. **Buka port untuk koneksi jarak jauh.** Anda dapat mengakses instance dalam Amazon GameLift Servers armada melalui port apa pun yang diotorisasi dalam konfigurasi armada. Anda dapat melihat pengaturan port armada menggunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-fleet-port-settings.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-fleet-port-settings.html). 

   Sebagai praktik terbaik, kami menyarankan untuk membuka port untuk akses jarak jauh hanya saat Anda membutuhkannya dan menutupnya saat Anda selesai. Anda tidak dapat memperbarui pengaturan port setelah membuat armada tetapi sebelum aktif. Jika Anda macet, buat ulang armada dengan pengaturan port terbuka.

   Gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-fleet-port-settings.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-fleet-port-settings.html) untuk menambahkan pengaturan port untuk koneksi jarak jauh (seperti `22` untuk SSH atau `3389` untuk RDP). Untuk nilai rentang IP, tentukan alamat IP untuk perangkat yang akan Anda gunakan untuk connect (dikonversi ke format CIDR). Contoh: 

   ```
   $ AWS gamelift update-fleet-port-settings
       --fleet-id  "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa"
       --inbound-permission-authorizations "FromPort=22,ToPort=22,IpRange=54.186.139.221/32,Protocol=TCP"
   ```

   Contoh berikut membuka port 3389 pada armada Windows

   ```
   $ AWS gamelift update-fleet-port-settings
   --fleet-id  "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa"
       --inbound-permission-authorizations "FromPort=3389,ToPort=3389,IpRange=54.186.139.221/32,Protocol=TCP"
   ```

1. **Buka klien koneksi jarak jauh.** Gunakan Desktop Jarak Jauh untuk Windows atau SSH untuk instans Linux. Connect ke instans menggunakan alamat IP, pengaturan port, dan kredensial akses.

   Contoh SSH: 

   ```
   ssh -i MyPrivateKey.pem gl-user-remote@192.0.2.0
   ```

## Melihat file pada instance jarak jauh
<a name="fleets-remote-access-permissions"></a>

Setelah terhubung ke instance armada, Anda memiliki akses pengguna dan administratif penuh. Ini berarti Anda juga memiliki kemampuan untuk menyebabkan kesalahan atau kegagalan dengan hosting game. Jika instans menghosting game dengan pemain aktif, Anda mungkin berisiko menabrak sesi game dan menjatuhkan pemain, atau mengganggu proses shutdown game yang dapat menyebabkan kesalahan dalam data dan log game yang disimpan.

Untuk armada kontainer, setelah mengakses kontainer (lihat[Connect ke kontainer](containers-remote-access.md)), lokasi file berikut berlaku di dalam sistem file kontainer. Untuk armada EC2, lokasi file ini berlaku langsung pada instance.

Cari sumber daya ini pada instance hosting:
+ **Game membangun file.** File-file ini adalah game build yang Anda unggah. Amazon GameLift Servers Mereka termasuk satu atau lebih server game executable, aset, dan dependensi. File build game ada di direktori root yang disebut`game`: 
  + Pada Windows:`c:\game`
  + Pada Linux:`/local/game`
+ **File log game.** Temukan file log yang dihasilkan server game Anda di direktori `game` root di jalur direktori apa pun yang Anda tentukan.
+ **Amazon GameLift Serverssumber daya hosting.** Direktori root `Whitewater` berisi file yang digunakan oleh Amazon GameLift Servers layanan untuk mengelola aktivitas hosting game. Jangan memodifikasi file-file ini karena alasan apa pun. 
+ **Konfigurasi runtime.** Jangan mengakses konfigurasi runtime untuk instance individual. Untuk membuat perubahan pada properti konfigurasi runtime, perbarui konfigurasi runtime armada (lihat operasi AWS SDK [UpdateRuntimeConfiguration](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateRuntimeConfiguration.html)atau). AWS CLI [update-runtime-configuration](https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-runtime-configuration.html)
+ **Data armada.** File JSON berisi informasi tentang armada yang dimiliki instance, untuk digunakan oleh proses server yang berjalan pada instance. File JSON berada di lokasi berikut:
  + Pada Windows:`C:\GameMetadata\gamelift-metadata.json`
  + Pada Linux:`/local/gamemetadata/gamelift-metadata.json`
+ **Sertifikat TLS.** Jika instance berada di armada yang mengaktifkan pembuatan sertifikat TLS, cari file sertifikat, termasuk sertifikat, rantai sertifikat, kunci pribadi, dan sertifikat root di lokasi berikut:
  + Pada Windows:`c:\\GameMetadata\Certificates`
  + Pada Linux:`/local/gamemetadata/certificates/`

# Connect ke kontainer
<a name="containers-remote-access"></a>

Untuk armada Amazon GameLift Servers kontainer, Anda dapat mengakses kontainer server game yang berjalan pada instance armada. Gunakan akses kontainer untuk memecahkan masalah sesi game, memeriksa log, dan men-debug masalah runtime.

## Connect ke wadah
<a name="containers-remote-access-connect"></a>

**Sebelum Anda mulai:**  
Connect ke instance armada. Untuk petunjuk, lihat [Connect ke instance armada](fleets-remote-access.md).

Jalankan perintah berikut untuk membuat daftar kontainer yang sedang berjalan pada instance:

```
sudo docker ps
```

Output mencantumkan semua kontainer yang berjalan pada instance, termasuk kontainer server game dan Amazon GameLift Servers kontainer internal. Cari wadah dengan gambar server game Anda untuk mengidentifikasi wadah server game.

**Contoh keluaran:**

```
CONTAINER ID   IMAGE                  COMMAND                  CREATED      STATUS
b9676e9489f5   game-server-container  "/bin/sh -c ./$GAME_…"   2 days ago   Up 2 days
1d1c8443efe2   support-container      "/bin/sh -c ./$SUPPO…"   2 days ago   Up 2 days
```

Untuk terhubung ke wadah server game, gunakan ID pendek kontainer dari `CONTAINER ID` kolom. Ini memberi Anda akses baca dan tulis penuh ke sistem file kontainer.

```
sudo docker exec -it container-short-id sh
```

## Connect ke wadah melalui konsol
<a name="containers-remote-access-console"></a>

Anda dapat terhubung ke kontainer server game dari Amazon GameLift Servers konsol menggunakan Amazon EC2 Systems Manager (SSM). Metode ini menyediakan akses aman tanpa memerlukan pengaturan tambahan atau manajemen kredensi. Anda dapat terhubung ke kontainer dari tab **Komputasi** atau tab **Sesi permainan** di halaman detail armada.

1. Di Amazon GameLift Servers konsol, pilih **Kontainer terkelola** dari panel navigasi, lalu **Armada.**

1. Pilih ID armada yang berisi wadah atau sesi permainan yang ingin Anda akses.

1. Pada halaman detail armada, pilih salah satu tab berikut:
   + **Komputasi** — Daftar kontainer yang berjalan di armada. Pilih wadah yang ingin Anda sambungkan.
   + **Sesi permainan** — Daftar sesi permainan untuk armada. Pilih sesi permainan untuk terhubung ke wadah hosting itu.

1. Pilih **Hubungkan**. Salin perintah yang ditampilkan untuk terhubung ke wadah, lalu pilih **Connect** lagi.

1. Dalam dialog koneksi, pilih **Jalankan** untuk membuat sesi SSM baru. Sistem mengotentikasi sesi Anda melalui AWS Key Management Service (AWS KMS) dan membuka terminal di browser Anda.

1. Setelah Anda terhubung ke instance, tempel perintah docker dari langkah 4 dan jalankan pada instance untuk mengakses wadah.

## Connect ke kontainer hosting sesi permainan
<a name="containers-remote-access-game-session"></a>

Untuk terhubung ke wadah server game yang menghosting sesi game tertentu, ikuti langkah-langkah ini.

1. **Dapatkan nama komputasi.** Hubungi [describe-game-sessions](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-game-sessions.html)untuk mendapatkan sesi permainan. `ComputeName`

   **Permintaan**

   ```
   aws gamelift describe-game-sessions \
       --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \
       --game-session-id arn:aws:gamelift:us-west-2::gamesession/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa/gs-1111aaaa-2222-3333-4444-5555bbbb66cc
   ```

   **Respons**

   ```
   {
     "GameSessions": [
       {
         "GameSessionId": "arn:aws:gamelift:us-west-2::gamesession/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa/gs-1111aaaa-2222-3333-4444-5555bbbb66cc",
         "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "ComputeName": "62c5ff7f7a9a445d84877074c80aeafc",
         "Status": "ACTIVE",
         . . .
       }
     ]
   }
   ```

   Perhatikan `ComputeName` nilai dari respons (misalnya,`62c5ff7f7a9a445d84877074c80aeafc`).

1. **Dapatkan akses komputasi dan atribut kontainer.** Panggil [get-compute-access](https://docs.aws.amazon.com/cli/latest/reference/gamelift/get-compute-access.html)dengan ID armada dan hitung nama.

   Tanggapan tersebut mencakup bidang-bidang berikut:
   + `ContainerIdentifiers`— The `ContainerName` dan `ContainerRuntimeId` untuk setiap wadah.
   + `GameServerContainerGroupDefinitionArn`— ARN dari definisi grup kontainer.
   + `Credentials`- Kredensi sementara untuk terhubung ke instance.

   **Permintaan**

   ```
   aws gamelift get-compute-access \
       --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \
       --compute-name 62c5ff7f7a9a445d84877074c80aeafc
   ```

   **Respons**

   ```
   {
     "ComputeName": "62c5ff7f7a9a445d84877074c80aeafc",
     "ContainerIdentifiers": [
       {
         "ContainerName": "game-server",
         "ContainerRuntimeId": "02accb92cd9bef3373300e7151d5c2b3dcca3b06eff1bb4e345085fc008d4678"
       }
     ],
     "Credentials": {
       "AccessKeyId": "ASIAIOSFODNN7EXAMPLE",
       "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
       "SessionToken": "AQoDYXdzEJr...<remainder of session token>"
     },
     "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
     "GameServerContainerGroupDefinitionArn": "arn:aws:gamelift:us-west-2::containergroupdefinition/MyGameServerGroup"
   }
   ```

1. **Hubungkan ke instans.** Gunakan kredensil dari langkah 2 untuk terhubung ke instance armada. Untuk petunjuk mendetail, lihat [Connect ke instance armada](fleets-remote-access.md).

1. **Temukan nama wadah server game.** Panggil [describe-container-group-definition](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-container-group-definition.html)menggunakan `GameServerContainerGroupDefinitionArn` dari langkah 2 untuk mengidentifikasi nama kontainer server game.

   **Permintaan**

   ```
   aws gamelift describe-container-group-definition \
       --name arn:aws:gamelift:us-west-2::containergroupdefinition/MyGameServerGroup
   ```

   **Respons**

   ```
   {
     "ContainerGroupDefinition": {
       "ContainerGroupDefinitionArn": "arn:aws:gamelift:us-west-2:123456789012:containergroupdefinition/MyGameServerGroup:3",
       "Name": "MyGameServerGroup",
       "ContainerGroupType": "GAME_SERVER",
       "GameServerContainerDefinition": {
         "ContainerName": "game-server",
         . . .
       },
       . . .
     }
   }
   ```

   Perhatikan `GameServerContainerDefinition.ContainerName` nilainya (misalnya,`game-server`).

1. **Identifikasi ID runtime kontainer server game.** Menggunakan nama kontainer server game dari langkah sebelumnya, temukan entri yang cocok di `ContainerIdentifiers` dari `get-compute-access` respons di langkah 2. Perhatikan `ContainerRuntimeId` nilainya.

1. **Connect ke wadah.** Gunakan `ContainerRuntimeId` sebagai ID kontainer dan jalankan perintah berikut:

   ```
   sudo docker exec -it 02accb92cd9bef3373300e7151d5c2b3dcca3b06eff1bb4e345085fc008d4678 sh
   ```