Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
GAMEOPS02-BP01 Mengadopsi strategi multi-akun untuk mengisolasi berbagai game dan aplikasi ke dalam akun mereka sendiri
Merancang struktur akun yang akan memandu penyebaran infrastruktur untuk memenuhi kebutuhan keamanan, isolasi, dan operasional setiap lingkungan. Isolasi lingkungan dengan membatasi akses ke sana dan hanya mengizinkan AWS layanan yang diperlukan untuk digunakan di dalamnya sangat penting, dengan lingkungan produksi terkunci, sementara lingkungan pengembangan dan pengujian lunak untuk memungkinkan eksperimen. Isolasi lebih lanjut dari sub-sistem utama di setiap lingkungan, dan layanan umum yang digunakan oleh beberapa lingkungan untuk di-host dan dikelola sendiri sangat Akun AWS dianjurkan.
Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Tinggi
Panduan implementasi
Mengadopsi strategi multi-akun AWS dengan mengisolasi lingkungan yang berbeda (seperti pengembangan, pengujian, pementasan, produksi, dan layanan bersama) ke individu Akun AWS, yang mengurangi ruang lingkup insiden. Pertimbangkan AWS Organizations untuk mengelola hierarki Anda secara terpusat Akun AWS untuk lebih menyederhanakan operasi, serta menentukan dan menerapkan kebijakan tingkat akun dan tingkat unit organisasi (OU-level) secara selektif. Dengan merancang OU dan Akun AWS struktur yang sesuai yang selaras dengan pengembangan dan kebutuhan alur kerja produksi Anda, Anda dapat mengoptimalkan biaya dan meningkatkan skalabilitas.
-
Mengadopsi strategi multi-akun: Mengisolasi lingkungan untuk mengurangi radius insiden dan menyederhanakan operasi.
-
Gunakan AWS Organizations: Kelola akun secara hierarkis, terapkan kebijakan, dan aktifkan tata kelola terpusat.
-
Rencana untuk Skalabilitas: Merancang struktur akun berbutir halus dan menerapkan langkah-langkah penghematan biaya untuk pertumbuhan di masa depan.
Langkah-langkah implementasi
Sistem game yang digunakan AWS harus menggunakan beberapa akun yang diatur secara logis untuk memberikan isolasi yang tepat, yang mengurangi radius ledakan masalah dan menyederhanakan operasi saat skala infrastruktur game Anda. Akun AWS bahwa infrastruktur game host biasanya dikelompokkan ke dalam lingkungan logis berikut:
-
Lingkungan pengembangan game digunakan oleh pengembang untuk mengembangkan perangkat lunak dan sistem untuk game.
-
Lingkungan pengujian atau jaminan kualitas (QA) digunakan untuk melakukan pengujian integrasi, QA manual, dan pengujian otomatis lainnya yang harus dilakukan.
-
Lingkungan pementasan atau pra-produksi digunakan untuk hosting perangkat lunak yang lengkap sehingga pengujian beban dan asap dapat dilakukan sebelum diluncurkan ke produksi.
-
Lingkungan hidup atau produksi digunakan untuk hosting perangkat lunak dan infrastruktur langsung dan melayani lalu lintas produksi dari pemain.
-
Layanan bersama atau lingkungan alat menyediakan akses ke sistem umum, perangkat lunak, dan alat yang digunakan oleh banyak tim yang berbeda. Misalnya, repositori kontrol sumber yang dihosting sendiri pusat dan game build farm mungkin di-host di akun layanan bersama.
-
Lingkungan keamanan digunakan untuk mengkonsolidasikan log terpusat dan teknologi keamanan yang digunakan oleh tim yang berfokus pada keamanan cloud.
Untuk infrastruktur game aktif AWS, disarankan untuk membuat akun terpisah untuk setiap lingkungan game (pengembangan, pengujian, pementasan, dan produksi), serta akun untuk keamanan, pencatatan, dan layanan bersama pusat.
Biasanya, studio pengembangan game yang lebih kecil yang mengelola sejumlah sumber daya infrastruktur, biasanya beberapa ratus server atau kurang, dapat membuat satu Akun AWS untuk masing-masing lingkungan ini (misalnya, satu akun produksi, satu akun pengembangan, dan satu akun pementasan). Namun, karena infrastruktur game atau ukuran tim Anda tumbuh dari waktu ke waktu, model yang disederhanakan ini mungkin tidak berskala dengan baik.
Saat menyiapkan lingkungan ini, pertimbangkan bahwa banyak AWS layanan berbagi sumber daya dan Service Quotas Tingkat API untuk seluruh akun dalam Wilayah tertentu. Ini harus dipertimbangkan ketika menentukan cara mengatur akun secara logis. Akun AWS hanya mengeluarkan biaya untuk mengkonsumsi layanan yang dikerahkan ke dalamnya. Oleh karena itu, ini menyediakan cara untuk secara efektif mengurangi pertikaian sumber daya dan kuota layanan, terutama ketika game Anda tumbuh dan lebih banyak pengembang memerlukan akses untuk membangun dan mengelola sumber daya.
Berdasarkan pengalaman kami bekerja dengan studio pengembangan game yang lebih besar yang biasanya mengoperasikan ribuan server dengan ratusan pengembang mengakses sumber daya, kami sarankan Anda merancang struktur akun yang lebih halus di mana aplikasi individual yang mendukung game Anda memiliki pengembangan, pengujian, pementasan, dan akun produksi mereka sendiri. Karena sulit dan memakan waktu untuk mendesain ulang strategi AWS multi-akun Anda setelah Anda meluncurkan game karena kompleksitas dalam perencanaan dan migrasi sistem live, pertimbangkan kebutuhan penskalaan masa depan Anda saat menentukan struktur multi-akun yang tepat.
Anda dapat menggunakan AWS Organizations
AWS Control Tower
Isolasi ini membantu Anda mengatur izin dan pagar pembatas khusus atau individual ke setiap lingkungan permainan. Akun produksi harus memiliki pagar pembatas yang diperlukan, pembatasan akses, pemantauan dan peringatan, dan alat keamanan, sementara akun non-produksi mungkin tidak memerlukan tingkat pagar dan izin yang sama. Lingkungan non-produksi dapat diotomatisasi untuk mematikan sumber daya setelah jam kerja dan menghemat biaya. Pemisahan akun pada tingkat granularitas ini membuatnya mudah untuk memantau biaya infrastruktur untuk setiap lingkungan yang mendukung permainan.
Berikut ini adalah contoh struktur multi-akun untuk perusahaan game yang menggunakan AWS Organizations dan unit organisasi (OUs) untuk secara logis mengelompokkan Akun AWS ke dalam lingkungan dan studio yang terpisah. Dalam contoh ini, OUs digunakan untuk mengelompokkan akun berdasarkan lingkungan mereka dan kemudian didasarkan pada studio yang mengoperasikan lingkungan. Ini menunjukkan bagaimana Anda dapat membuat hierarki bersarang untuk memungkinkan aplikasi dan game terpisah untuk digunakan ke akun mereka sendiri dalam lingkungan mereka (digambarkan sebagai OUs), yang dapat berguna jika Anda mengembangkan dan mengoperasikan beberapa game. Lihat dokumentasi dan whitepaper yang disediakan di bagian sumber daya pilar ini untuk mempelajari strategi tambahan yang dapat Anda pertimbangkan untuk mengatur strategi multi-akun Anda.
Berdasarkan pembahasan di atas, contoh diagram di bawah ini mengasumsikan studio game (Organisasi) yang memiliki pipeline pengembangan yang terdiri dari 4 tahap (pengembangan, pengujian, pementasan, dan produksi). Untuk game tertentu (game1), masing-masing lingkungan (OU) memiliki individu Akun AWS untuk layanan game, server game khusus, layanan sosial, dan server web. Sumber daya yang berjalan di masing-masing Akun AWS relevan dengan masing-masing sub-sistem. Biasanya, setiap game individu yang menggunakan pipa pengembangan semacam ini akan mereplikasi ini atau struktur serupa untuknya. Akun AWS
Selain lingkungan game-sentris ini OUs, ada juga layanan bersama OU dan keamanan OU. Ini OUs harus di seluruh organisasi, bukan untuk setiap permainan individu. Dengan begitu game akan menggunakan layanan bersama untuk alat pengembangan dan data dan analitik seperti dalam contoh ini. Kemudian, kirim log aplikasi dan sistem ke Akun AWS pengaturan untuk log di OU keamanan.
Contoh struktur akun untuk lingkungan game