REL02-BP01 Gunakan konektivitas jaringan dengan ketersediaan tinggi untuk titik akhir publik beban kerja Anda - AWS Kerangka Well-Architected

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

REL02-BP01 Gunakan konektivitas jaringan dengan ketersediaan tinggi untuk titik akhir publik beban kerja Anda

Membuat konektivitas jaringan dengan ketersediaan tinggi untuk titik akhir publik beban kerja Anda dapat membantu Anda mengurangi waktu henti karena hilangnya konektivitas dan meningkatkan ketersediaan serta SLA beban kerja Anda. Untuk mencapai ini, gunakan DNS dengan ketersediaan tinggi, jaringan pengiriman konten (CDN), gateway API, penyeimbangan beban, atau proksi mundur.

Hasil yang diinginkan: Sangat penting bagi Anda untuk merencanakan, membangun, dan mengoperasionalkan konektivitas jaringan dengan ketersediaan tinggi untuk titik akhir publik Anda. Jika beban kerja Anda menjadi tidak terjangkau karena hilangnya konektivitas, meskipun beban kerja Anda beroperasi dan tersedia, para pelanggan Anda akan menganggap sistem Anda tidak berfungsi (down). Dengan menggabungkan konektivitas jaringan yang tangguh dan memiliki ketersediaan yang tinggi untuk titik akhir publik beban kerja Anda, bersama dengan arsitektur yang tangguh untuk beban kerja itu sendiri, Anda dapat memberikan tingkat layanan dan ketersediaan sebaik mungkin untuk para pelanggan Anda.

AWS Global Accelerator, Amazon CloudFront, Amazon API Gateway, URL Fungsi AWS Lambda, API AWS AppSync, dan Elastic Load Balancing (ELB) semuanya menyediakan titik akhir publik dengan ketersediaan yang tinggi. Amazon Route 53 menyediakan layanan DNS dengan ketersediaan yang tinggi untuk resolusi nama domain guna memverifikasi bahwa alamat titik akhir publik Anda dapat diselesaikan.

Anda juga dapat mengevaluasi peralatan perangkat lunak AWS Marketplace untuk melakukan penyeimbangan beban dan proksi.

Anti-pola umum:

  • Mendesain sebuah beban kerja dengan ketersediaan yang tinggi tanpa merencanakan konektivitas jaringan dan DNS untuk ketersediaan tinggi.

  • Menggunakan alamat internet publik di masing-masing instans atau kontainer dan mengelola konektivitasnya dengan DNS.

  • Menggunakan alamat IP, bukan nama domain untuk mencari layanan.

  • Tidak menguji skenario di mana konektivitas ke titik akhir publik Anda hilang.

  • Tidak menganalisis pola distribusi dan kebutuhan throughput jaringan.

  • Tidak menguji dan merencanakan skenario di mana konektivitas jaringan internet ke titik akhir publik beban kerja Anda mungkin mengalami gangguan.

  • Memberikan konten (seperti halaman web, aset statis, atau file media) ke area-area geografis besar dan tidak menggunakan CDN.

  • Tidak membuat rencana untuk serangan penolakan layanan terdistribusi (DDoS). Serangan DDoS berisiko menghalangi lalu lintas sah dan menurunkan ketersediaan untuk para pengguna Anda.

Manfaat menerapkan praktik terbaik ini: Membuat desain untuk konektivitas jaringan dengan ketersediaan tinggi dan tangguh akan memastikan bahwa beban kerja Anda dapat diakses dan tersedia bagi para pengguna Anda.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Tinggi

Panduan implementasi

Inti dari pembangunan konektivitas jaringan dengan ketersediaan tinggi untuk titik akhir publik adalah pengarahan rute lalu lintas. Untuk memverifikasi bahwa lalu lintas Anda dapat menjangkau titik akhir, DNS harus dapat mengatur nama domain ke alamat IP-nya yang bersangkutan. Gunakan Sistem Nama Domain (DNS) yang dapat diskalakan dan dengan ketersediaan tinggi seperti Amazon Route 53 untuk mengelola catatan DNS domain Anda. Anda juga dapat menggunakan pemeriksaan kondisi yang disediakan oleh Amazon Route 53. Pemeriksaan kondisi memverifikasi bahwa aplikasi Anda dapat dijangkau, tersedia, dan berfungsi, dan pemeriksaan ini dapat diatur sedemikian sehingga dapat menyerupai perilaku pengguna Anda, seperti meminta halaman web atau URL tertentu. Jika terjadi kegagalan, Amazon Route 53 merespons permintaan resolusi DNS dan mengarahkan lalu lintas ke titik akhir dengan kondisi bagus saja. Anda juga dapat mempertimbangkan penggunaan kemampuan Perutean Berbasis Latensi dan DNS Geo yang ditawarkan oleh Amazon Route 53.

Untuk memverifikasi bahwa beban kerja Anda sendiri mempunyai ketersediaan yang tinggi, gunakan Elastic Load Balancing (ELB). Amazon Route 53 dapat digunakan untuk menargetkan lalu lintas ke ELB, yang mendistribusikan lalu lintas ke instans komputasi target. Anda juga dapat menggunakan Amazon API Gateway bersama dengan AWS Lambda untuk solusi nirserver. Pelanggan juga dapat menjalankan beban kerja di beberapa Wilayah AWS. Dengan pola aktif/aktif multi-situs, beban kerja dapat melayani lalu lintas yang datang dari beberapa Wilayah. Dengan pola aktif/pasif multi-situs, beban kerja dapat melayani lalu lintas dari wilayah aktif sementara data akan direplikasi ke wilayah sekunder dan menjadi aktif jika terjadi kegagalan di wilayah primer. Pemeriksaan kondisi Route 53 kemudian dapat digunakan untuk mengontrol failover DNS dari titik akhir mana pun di Wilayah primer ke titik akhir di Wilayah sekunder, yang memverifikasi bahwa beban kerja Anda dapat dijangkau dan tersedia untuk pengguna Anda.

Amazon CloudFront memberikan API yang sederhana untuk mendistribusikan konten dengan laju transfer data yang tinggi dan latensi yang rendah dengan melayani permintaan menggunakan jaringan lokasi edge di seluruh dunia. Jaringan pengiriman konten (CDN) melayani para pelanggan dengan menghadirkan konten yang berada di atau di-cache di lokasi yang dekat dengan pengguna. Ini juga akan meningkatkan ketersediaan aplikasi Anda karena beban untuk konten dialihkan dari server Anda ke lokasi edge CloudFront. Lokasi edge dan cache edge regional menyimpan cache salinan konten Anda berada dekat dengan penonton Anda sehingga konten dapat diambil dengan cepat, konten lebih mudah dijangkau, dan beban kerja memiliki ketersediaan yang lebih tinggi.

Untuk beban kerja yang memiliki pengguna yang tersebar secara geografis, AWS Global Accelerator akan membantu Anda dalam meningkatkan ketersediaan dan performa aplikasi. AWS Global Accelerator memberikan alamat IP statis Anycast yang berfungsi sebagai titik masuk tetap ke aplikasi Anda yang di-host di satu atau beberapa Wilayah AWS. Hal ini akan memungkinkan lalu lintas masuk ke jaringan global AWS sedekat mungkin dengan para pengguna Anda, yang akan meningkatkan keterjangkauan dan ketersediaan beban kerja Anda. AWS Global Accelerator juga memantau kondisi titik akhir aplikasi Anda dengan menggunakan TCP, HTTP, dan pemeriksaan kondisi HTTPS. Setiap perubahan yang terjadi pada kondisi atau konfigurasi titik akhir Anda akan mengizinkan pengarahan ulang lalu lintas pengguna ke titik akhir yang memiliki kondisi kesehatan yang bagus yang memberikan ketersediaan dan performa terbaik bagi pengguna Anda. Selain itu, AWS Global Accelerator juga memiliki desain yang dapat mengisolasi kesalahan yang menggunakan dua alamat IPv4 status yang dilayani oleh zona jaringan mandiri sehingga dapat meningkatkan ketersediaan aplikasi Anda.

Untuk membantu Anda melindungi pelanggan dari serangan DDoS, AWS menyediakan AWS Shield Standard. Shield Standard secara otomatis dinyalakan dan akan melindungi dari serangan infrastruktur umum (lapisan 3 dan 4) seperti banjir SYN/UDP dan serangan refleksi untuk mendukung ketersediaan aplikasi Anda yang tinggi di AWS. Untuk perlindungan tambahan dari serangan yang lebih besar dan lebih canggih (seperti banjir UDP ), serangan penghentian layanan (seperti banjir TCP SYN), dan untuk membantu melindungi aplikasi Anda yang dijalankan di Amazon Elastic Compute Cloud (Amazon EC2), Elastic Load Balancing (ELB), Amazon CloudFront, AWS Global Accelerator, dan Route 53, Anda dapat mempertimbangkan untuk menggunakan AWS Shield Advanced. Untuk perlindungan dari serangan lapisan Aplikasi seperti HTTP POST atau GET flood, gunakan AWS WAF. AWS WAF dapat menggunakan alamat IP, header HTTP, bodi HTTP, string URI, injeksi SQL, dan kondisi skrip lintas situs untuk menentukan apakah permintaan harus diblokir atau diizinkan.

Langkah-langkah implementasi

  1. Siapkan DNS dengan ketersediaan tinggi: Amazon Route 53 adalah layanan web Sistem Nama Domain (DNS) yang dapat diskalakan dan memiliki ketersediaan tinggi. Route 53 menghubungkan permintaan pengguna ke aplikasi internet yang dijalankan di AWS atau on-premise. Untuk informasi selengkapnya, silakan lihat Mengonfigurasi Amazon Route 53 sebagai layanan DNS Anda.

  2. Siapkan pemeriksaan kondisi: Ketika menggunakan Route 53, verifikasi bahwa hanya target dengan kondisi bagus yang dapat diselesaikan. Mulailah dengan membuat pemeriksaan kondisi Route 53 dan mengonfigurasi failover DNS. Aspek-aspek berikut penting untuk Anda pertimbangkan ketika mempersiapkan pemeriksaan kondisi:

  3. Hubungkan layanan DNS Anda ke titik akhir Anda.

    1. Saat menggunakan Penyeimbangan Beban Elastis sebagai target untuk lalu lintas Anda, buat catatan alias menggunakan Amazon Route 53 yang mengarah ke titik akhir regional penyeimbang beban Anda. Selama pembuatan catatan alias, atur opsi Evaluasi kondisi target ke Ya.

    2. Untuk beban kerja nirserver atau API pribadi saat API Gateway digunakan, gunakan Route 53 untuk mengarahkan lalu lintas ke API Gateway.

  4. Buat keputusan mengenai jaringan pengiriman konten.

    1. Untuk mengirimkan konten dengan menggunakan lokasi edge yang lebih dekat dengan pengguna, mulailah dengan memahami cara CloudFront memberikan konten.

    2. Memulai dengan distribusi CloudFront yang sederhana. Kemudian CloudFront akan mengetahui dari mana Anda ingin konten dikirimkan, dan detail tentang cara melacak dan mengelola pengiriman konten. Aspek-aspek berikut penting untuk dipahami dan dipertimbangkan ketika Anda mempersiapkan distribusi CloudFront:

  5. Siapkan perlindungan lapisan aplikasi: AWS WAF akan membantu Anda melindungi dari bot dan eksploitasi web umum yang dapat memengaruhi ketersediaan, mengancam keamanan, atau memakai sumber daya secara berlebihan. Untuk mendapatkan pemahaman yang lebih dalam, silakan tinjau cara kerja AWS WAF dan kapan Anda siap menerapkan perlindungan dari lapisan aplikasi HTTP POST DAN GET floods, tinjau Memulai dengan AWS WAF. Anda juga dapat menggunakan AWS WAF dengan CloudFront, silakan lihat dokumentasi tentang cara kerja AWS WAF dengan fitur Amazon CloudFront.

  6. Siapkan perlindungan DDoS tambahan: Secara default, semua pelanggan AWS akan menerima perlindungan dari serangan DDoS lapisan transpor dan jaringan paling sering terjadi yang menargetkan situs web atau aplikasi Anda, dengan menggunakan AWS Shield Standard tanpa biaya tambahan. Untuk perlindungan tambahan terhadap aplikasi yang terhubung ke internet yang berjalan di Amazon EC2, Penyeimbangan Beban Elastis, Amazon CloudFront, AWS Global Accelerator, dan Amazon Route 53, Anda dapat mempertimbangkan AWS Shield Advanced dan meninjau contoh arsitektur tangguh DDoS. Untuk melindungi beban kerja dan titik akhir publik Anda dari serangan DDoS, silakan tinjau Memulai AWS Shield Advanced.

Sumber daya

Praktik-praktik terbaik terkait:

Dokumen terkait:

Video terkait:

Contoh terkait: