Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bangun AWS landing zone yang mencakup MongoDB Atlas
Igor Alekseev, Amazon Web Services
Ringkasan
Pola ini menjelaskan cara membangun AWS landing zone yang terintegrasi dengan cluster MongoDB Atlas. Infrastruktur secara otomatis digunakan dengan menggunakan skrip Terraform.
AWS Lingkungan multi-akun yang terstruktur dengan baik, yang disebut landing zone, menawarkan skalabilitas dan keamanan, terutama untuk perusahaan. Ini berfungsi sebagai fondasi untuk penyebaran cepat beban kerja dan aplikasi, dan membantu memastikan kepercayaan dalam keamanan dan infrastruktur. Membangun landing zone memerlukan pertimbangan yang cermat terhadap faktor teknis dan bisnis, termasuk struktur akun, jaringan, keamanan, dan manajemen akses. Pertimbangan ini harus selaras dengan pertumbuhan masa depan dan tujuan bisnis organisasi Anda.
Kasus penggunaan untuk pola ini meliputi yang berikut ini.
Platform SaaS dan PaaS Perusahaan: Perangkat lunak multitenant as a service (SaaS) aplikasi dan platform sebagai layanan (PaaS) platform yang berjalan AWS dapat menggunakan pengaturan ini untuk membantu menyediakan akses pribadi yang aman ke MongoDB Atlas tanpa mengekspos data melalui internet publik.
Industri yang sangat diatur: Perbankan, jasa keuangan, perawatan kesehatan, dan beban kerja pemerintah yang memerlukan kepatuhan ketat terhadap standar seperti Health Insurance Portability and Accountability Act (HIPAA), Payment Card Industry Data Security Standard (PCI DSS), System and Organization Controls 2 (), dan General Data Protection Regulation (GDPRSOC2) mendapat manfaat dari:
Konektivitas pribadi terenkripsi melalui AWS PrivateLink
Multi-AZ ketersediaan tinggi set replika MongoDB
AI/ML Beban kerja yang aman: Saluran pipa pelatihan atau inferensi di Amazon Bedrock, SageMaker Amazon AI, atau model AI khusus dapat mengambil dan menyimpan data dengan aman di MongoDB Atlas. PrivateLink
Pemulihan bencana dan kelangsungan bisnis: Desain multi-AZ memastikan bahwa tidak ada satu pun kegagalan Availability Zone yang mengganggu beban kerja. Replika Atlas yang disetel di seluruh Availability Zones memastikan failover otomatis. Ini sangat penting untuk layanan yang selalu aktif seperti aplikasi teknologi keuangan (fintech), perbankan digital, atau pemantauan kesehatan.
Prasyarat dan batasan
Prasyarat
Pemilik organisasi mengakses MongoDB Atlas sehingga Anda dapat membuat kunci Atlas API. Untuk informasi tentang persyaratan ini, lihat Mengelola Akses Organisasi
dalam dokumentasi MongoDB. Aktif Akun AWS
. Terraform
, diinstal dan dikonfigurasi. Cluster MongoDB Atlas, dibuat dengan MongoDB versi 6.0 atau yang lebih baru.
Keakraban dengan MongoDB dan MongoDB Atlas. Untuk informasi selengkapnya, lihat dokumentasi MongoDB Atlas
.
Batasan
Beberapa Layanan AWS tidak tersedia di semua Wilayah AWS. Untuk ketersediaan Wilayah, lihat Layanan AWS berdasarkan Wilayah
. Untuk titik akhir tertentu, lihat Titik akhir dan kuota layanan, dan pilih tautan untuk layanan.
Arsitektur
Diagram arsitektur referensi berikut menggambarkan pengaturan penyebaran untuk AWS landing zone yang terintegrasi dengan titik akhir pribadi MongoDB Atlas. Arsitektur referensi ini menunjukkan bagaimana membangun AWS landing zone yang aman, terukur, dan sangat tersedia yang terintegrasi dengan MongoDB Atlas. Dengan menggabungkan praktik AWS terbaik seperti penyebaran multi-AZ, kontrol keamanan dengan hak istimewa, dan konektivitas pribadi, desain ini memungkinkan organisasi untuk menyediakan lingkungan yang kuat untuk aplikasi modern.

Arsitektur ini terdiri dari yang berikut:
VPC
Satu virtual private cloud (VPC) mencakup tiga Availability Zone.
VPC dibagi lagi menjadi subnet yang selaras dengan setiap Availability Zone. Subnet ini mendistribusikan beban kerja untuk ketersediaan tinggi.
Akses internet
Gateway internet menyediakan konektivitas internet outbound untuk sumber daya yang membutuhkannya, seperti host aplikasi atau bastion.
Subnet publik dapat menampung gateway NAT, yang memungkinkan beban kerja subnet pribadi untuk mengunduh pembaruan, tambalan, dan paket lain yang diperlukan tanpa memaparkannya langsung ke internet publik.
Subnet pribadi dan tabel rute
Komponen aplikasi, layanan mikro, atau sumber daya sensitif lainnya biasanya berada di subnet pribadi.
Tabel rute khusus mengontrol arus lalu lintas. Rutekan lalu lintas keluar langsung dari subnet pribadi ke gateway NAT untuk akses internet yang aman dan hanya jalan keluar.
Permintaan masuk dari aliran internet melalui penyeimbang beban elastis atau host benteng (jika digunakan) di subnet publik, dan kemudian rute dengan tepat ke sumber daya subnet pribadi.
Konektivitas MongoDB Atlas melalui PrivateLink
Arsitektur menggunakan PrivateLink (melalui titik akhir VPC) untuk terhubung dengan aman ke MongoDB Atlas tanpa mengekspos data Anda ke internet publik.
Permintaan tetap ada di jaringan AWS backbone. Data dalam perjalanan mendapat manfaat dari PrivateLink enkripsi dan tidak pernah dialihkan melalui internet publik.
VPC khusus MongoDB Atlas menghosting node primer dan sekunder Anda, dan menyediakan lingkungan yang aman dan terisolasi untuk cluster database terkelola Anda.
Deployment Multi-AZ
Komponen infrastruktur penting (seperti gateway NAT dan subnet aplikasi) didistribusikan di setidaknya tiga Availability Zone. Jika Availability Zone mengalami pemadaman, arsitektur ini memastikan bahwa beban kerja di Availability Zone yang tersisa tetap beroperasi.
MongoDB Atlas, secara default, menawarkan ketersediaan tinggi melalui set replika dan memastikan bahwa lapisan database Anda tetap toleran terhadap kesalahan. Infrastruktur kritis tersebar di setidaknya tiga Availability Zone untuk ketahanan.
Alat
Layanan AWS
AWS Secrets Managermembantu Anda mengganti kredensi hardcode dalam kode Anda, termasuk kata sandi, dengan panggilan API untuk mengambil rahasia secara terprogram.
Produk dan alat lainnya
MongoDB
Atlas adalah database yang dikelola sepenuhnya sebagai layanan (dBaaS) untuk menyebarkan dan mengelola database MongoDB di cloud. Terraform
adalah alat infrastruktur sebagai kode (IAc) HashiCorp yang membantu Anda membuat dan mengelola sumber daya cloud dan lokal. Dalam pola ini, Anda menggunakan Terraform untuk menjalankan skrip untuk memfasilitasi penerapan sumber daya yang diperlukan di dan AWS MongoDB Atlas.
Repositori kode
Kode untuk pola ini tersedia di repositori AWS dan MongoDB Atlas
Epik
Tugas | Deskripsi | Keterampilan yang dibutuhkan |
---|---|---|
Identifikasi pemangku kepentingan utama. | Identifikasi semua pemangku kepentingan utama dan anggota tim yang terlibat dalam proyek landing zone Anda. Ini dapat mencakup peran seperti:
| Pimpin migrasi |
Buat cetak biru struktural. | Buat cetak biru yang menguraikan struktur yang diinginkan dari landing zone berkemampuan Atlas Anda dan AWS MongoDB. | Pimpin migrasi |
Buat rencana arsitektur. | Bekerja dengan arsitek aplikasi Anda untuk menganalisis persyaratan dan merancang arsitektur yang tahan terhadap kesalahan dan tangguh. Pola ini menyediakan template arsitektur starter untuk referensi Anda. Anda dapat menyesuaikan template ini untuk memenuhi kebutuhan keamanan dan infrastruktur organisasi Anda. | Arsitek awan |
Rencanakan penyiapan dan penerapan. | Tentukan, dengan semua pemangku kepentingan, bagaimana arsitektur akan diterapkan, bagaimana langkah-langkah keamanan akan diterapkan, dan aspek lainnya untuk memastikan keselarasan dengan kepentingan organisasi dan tim yang meminta. | Pimpinan migrasi, DevOps insinyur, DBA |
Tugas | Deskripsi | Keterampilan yang dibutuhkan |
---|---|---|
Kloning repositori. | Kloning kode dari GitHub repositori
| Pengembang aplikasi, DevOps insinyur |
Dapatkan ID organisasi Atlas Anda. |
| DBA |
Hasilkan kunci API tingkat organisasi Atlas. | Untuk membuat kunci API tingkat organisasi Anda di Atlas, ikuti petunjuk dalam dokumentasi MongoDB. | DBA |
Buat rahasia di AWS Secrets Manager. | Simpan kunci MongoDB Atlas API yang dihasilkan pada langkah sebelumnya sebagai rahasia nilai kunci di Secrets Manager. Untuk petunjuk, lihat dokumentasi Secrets Manager. | DevOps insinyur |
Pilih tingkat cluster Atlas. | Untuk memilih tingkat cluster Atlas yang benar, ikuti petunjuk dalam dokumentasi MongoDB | DBA |
Tugas | Deskripsi | Keterampilan yang dibutuhkan |
---|---|---|
Ubah skrip Terraform. | Di salinan GitHub repositori lokal Anda, perbarui nama rahasia di modules/mongodb-atlas/mainfile.tf | DevOps insinyur |
Buat ID kunci AWS akses dan kunci rahasia. | Untuk membuat ID kunci AWS akses dan kunci rahasia, ikuti petunjuk di artikel AWS re:Post Bagaimana cara membuat kunci AWS akses? Ini adalah praktik terbaik untuk menetapkan kebijakan dengan hak istimewa paling sedikit yang diperlukan, tetapi untuk kasus ini, pilih kebijakan. Setelah Anda membuat kunci akses, tinjau praktik terbaik Keamanan di IAM untuk mempelajari praktik terbaik dalam mengelola kunci akses. | DevOps insinyur |
Alokasikan alamat IP elastis. | Alokasikan setidaknya dua alamat IDs IP elastis. Untuk petunjuknya, lihat dokumentasi Amazon Virtual Private Cloud (Amazon VPC). | DevOps insinyur |
Buat ember S3. | Buat bucket S3 untuk menyimpan status penerapan Terraform Anda dengan mengikuti petunjuk di dokumentasi Amazon Simple Storage Service (Amazon S3). | DevOps insinyur |
Perbarui bucket S3 untuk penyimpanan. | Perbarui informasi bucket S3 di versi lokal environments/development/main.tf
Untuk contoh ini, Anda dapat mengonfigurasi Terraform untuk menggunakan Untuk informasi selengkapnya tentang awalan kunci Amazon S3, lihat Mengatur objek menggunakan awalan dalam dokumentasi Amazon S3. | DevOps insinyur |
Tetapkan variabel Terraform. | Sample landing zone mendefinisikan nilai variabel input dengan menggunakan file definisi variabel Terraform File variabel terletak di environments/development/variables.tf. | DevOps insinyur |
Mengatur variabel lingkungan. | Jika Anda berencana untuk menjalankan skrip Terraform di mesin lokal Anda, siapkan variabel lingkungan berikut:
Untuk informasi selengkapnya tentang pengaturan variabel lingkungan, lihat dokumentasi AWS Command Line Interface (AWS CLI). | DevOps insinyur |
Periksa konfigurasi VPC. | Untuk mengikuti praktik terbaik yang direkomendasikan oleh AWS, konfigurasikan pengaturan untuk VPC dan subnet CIDRs, gateway NAT, rute, dan tabel rute dalam skrip Terraform untuk memenuhi kebutuhan organisasi Anda. Untuk spesifik, lihat file Readme | DevOps insinyur |
Sumber daya tag. | Anda dapat menandai AWS sumber daya Anda untuk memantaunya saat digunakan oleh skrip Terraform. Sebagai contoh, lihat file Readme | DevOps insinyur |
Gunakan beberapa lingkungan. | GitHub Repositori menyediakan folder Untuk menambahkan lingkungan, salin | DevOps insinyur |
Tugas | Deskripsi | Keterampilan yang dibutuhkan |
---|---|---|
Inisialisasi direktori kerja Terraform. | Untuk menginisialisasi direktori kerja dan mengunduh paket yang diperlukan, jalankan perintah:
| DevOps insinyur |
Buat rencana eksekusi. | Untuk membuat rencana eksekusi dan memvisualisasikan perubahan yang akan dilakukan Terraform pada infrastruktur Anda, jalankan perintah:
| DevOps insinyur |
Menyebarkan perubahan. | Untuk mengimplementasikan perubahan pada infrastruktur Anda seperti yang dijelaskan dalam kode, jalankan perintah:
| DevOps insinyur |
Validasi penerapan. | Validasi komponen yang dibuat atau dimodifikasi Terraform di infrastruktur Anda. Untuk menguji penyiapan, sediakan sumber daya komputasi (misalnya, EC2 instans atau AWS Lambda fungsi Amazon) di dalam atau dilampirkan ke VPC. | DevOps insinyur, Pengembang aplikasi |
Tugas | Deskripsi | Keterampilan yang dibutuhkan |
---|---|---|
Bersihkan. | Setelah Anda selesai menguji, jalankan perintah berikut untuk menghancurkan sumber daya yang diterapkan Terraform di infrastruktur Anda:
| DevOps insinyur |
Sumber daya terkait
Penemuan dan penilaian
Kiat administratif untuk pengaturan landing zone (AWS Control Tower dokumentasi)
Harapan untuk konfigurasi landing zone (AWS Control Tower dokumentasi)
Praktik terbaik untuk pembaruan landing zone (AWS Control Tower dokumentasi)
Menyiapkan MongoDB Atlas dan lingkungan AWS
Mendapatkan MongoDB Atlas
()AWS Marketplace Memori
(dokumentasi MongoDB Atlas) Contoh ukuran dengan kumpulan data sampel Atlas
(dokumentasi MongoDB Atlas) Contoh ukuran untuk aplikasi seluler
(dokumentasi MongoDB Atlas) Lalu lintas jaringan
(dokumentasi MongoDB Atlas) Cluster auto-scaling
(dokumentasi MongoDB Atlas) Template ukuran Atlas (dokumentasi
MongoDB Atlas) Siapkan koneksi peering jaringan
(dokumentasi MongoDB Atlas) Titik akhir pribadi di Atlas
(dokumentasi MongoDB Atlas) Enkripsi tingkat bidang sisi klien (dokumentasi basis data
MongoDB) Enkripsi otomatis
(dokumentasi database MongoDB) Memilih tingkat cluster (dokumentasi
MongoDB Atlas)
Menyebarkan landing zone