Menggunakan layanan penyeimbangan beban di Azure
Pengantar
Microsoft Azure menyediakan beberapa layanan untuk mengelola cara lalu lintas jaringan didistribusikan dan bebannya diseimbangkan. Anda dapat menggunakan layanan ini satu per satu atau menggabungkan metodenya, tergantung kebutuhan Anda, untuk membangun solusi yang optimal.
Dalam tutorial ini, pertama-tama kita mendefinisikan kasus penggunaan pelanggan dan melihat bagaimana hal itu dapat dibuat lebih kuat dan berkinerja dengan menggunakan portofolio penyeimbangan beban Azure berikut: Traffic Manager, Application Gateway, dan Load Balancer. Kemudian, kami akan memberikan instruksi detail untuk membuat penyebaran yang secara geografis redundan, mendistribusikan lalu lintas ke VM, dan membantu Anda mengelola berbagai jenis permintaan.
Pada tingkat konseptual, masing-masing layanan tersebut memainkan peran yang berbeda dalam hierarki penyeimbangan beban.
Traffic Manager menyediakan penyeimbangan beban DNS global. Traffic Manager melihat permintaan DNS yang masuk dan merespons dengan titik akhir yang sehat, sesuai dengan kebijakan perutean yang dipilih pelanggan. Opsi untuk metode penjaluran adalah:
- Perutean performa untuk mengirim pemohon ke titik akhir terdekat dalam hal latensi.
- Perutean prioritas untuk mengarahkan semua lalu lintas ke titik akhir, dengan titik akhir lainnya sebagai cadangan.
- Perutean round-robin tertimbang, yang mendistribusikan lalu lintas berdasarkan pembobotan yang ditetapkan ke setiap titik akhir.
- Perutean berbasis geografi untuk mendistribusikan lalu lintas ke titik akhir aplikasi Anda berdasarkan lokasi geografis pengguna.
- Perutean berbasis subnet untuk mendistribusikan lalu lintas ke titik akhir aplikasi Anda berdasarkan subnet (rentang alamat IP) pengguna.
- Perutean Multi Nilai yang memungkinkan Anda mengirim alamat IP lebih dari satu titik akhir aplikasi dalam satu respons DNS.
Klien terhubung langsung ke titik akhir yang dikembalikan oleh Traffic Manager. Azure Traffic Manager mendeteksi kapan titik akhir tidak sehat, lalu mengalihkan klien ke instans sehat lainnya. Lihat dokumentasi Azure Traffic Manager untuk mempelajari selengkapnya tentang layanan ini.
Application Gateway menyediakan pengontrol pengiriman aplikasi (ADC) sebagai layanan, menawarkan berbagai kemampuan penyeimbangan beban Lapisan 7 untuk aplikasi Anda. Ini memungkinkan pelanggan untuk mengoptimalkan produktivitas pertanian web dengan membongkar penghentian TLS intensif CPU ke gateway aplikasi. Kemampuan perutean Lapisan 7 lainnya termasuk distribusi round-robin lalu lintas masuk, afinitas sesi berbasis cookie, perutean berbasis jalur URL, dan kemampuan untuk meng-hosting beberapa situs web di balik satu gateway aplikasi. Application Gateway dapat dikonfigurasi sebagai gateway yang menghadap ke Internet, gateway internal saja, atau kombinasi keduanya. Application Gateway sepenuhnya dikelola, dapat diskalakan, dan sangat tersedia. Ini menyediakan seperangkat kemampuan diagnostik dan pengelogan yang kaya untuk pengelolaan yang lebih baik.
Load Balancer adalah bagian integral dari tumpukan Azure SDN, yang menyediakan layanan penyeimbangan beban Lapisan 4 berperforma tinggi dengan latensi rendah untuk semua protokol UDP dan TCP. Azure Load Balancer mengelola koneksi masuk dan keluar. Anda dapat mengonfigurasi titik akhir publik dan internal yang seimbang dan menentukan aturan untuk memetakan koneksi masuk ke tujuan kumpulan back-end dengan menggunakan opsi pemeriksaan kesehatan TCP dan HTTP untuk mengelola ketersediaan layanan.
Skenario
Dalam contoh skenario ini, kami menggunakan situs web sederhana yang melayani dua jenis konten: gambar dan halaman web yang dirender secara dinamis. Situs web harus redundan secara geografis, dan harus melayani penggunanya dari lokasi yang terdekat (latensi terendah) dengan mereka. Pengembang aplikasi telah memutuskan bahwa setiap URL yang sesuai dengan pola /images/* dilayani dari kumpulan VM khusus yang berbeda dari farm web lainnya.
Selain itu, kumpulan VM default yang menyajikan konten dinamis perlu berbicara dengan database back-end yang di-hosting di kluster ketersediaan tinggi. Seluruh penyebaran disiapkan melalui Azure Resource Manager.
Dengan menggunakan Traffic Manager, Application Gateway, dan Load Balancer, Anda dapat mengaktifkan situs web ini untuk mencapai tujuan desain berikut:
- Redundansi multi-geo: Jika satu wilayah tidak aktif, Traffic Manager merutekan lalu lintas dengan mulus ke wilayah terdekat tanpa intervensi apa pun dari pemilik aplikasi.
- Pengurangan latensi: Karena Traffic Manager otomatis mengarahkan pelanggan ke wilayah terdekat, pelanggan mengalami latensi yang lebih rendah saat meminta konten halaman web.
- Skalabilitas independen: Karena beban kerja aplikasi web dipisahkan menurut jenis konten, pemilik aplikasi dapat menskalakan beban kerja permintaan secara independen satu sama lain. Application Gateway memastikan bahwa lalu lintas dirutekan ke kumpulan yang tepat berdasarkan aturan yang ditentukan dan kesehatan aplikasi.
- Penimbangan beban internal: Karena Load Balancer berada di depan kluster ketersediaan tinggi, hanya titik akhir yang aktif dan sehat untuk database yang diekspos ke aplikasi. Selain itu, administrator database dapat mengoptimalkan beban kerja dengan mendistribusikan replika aktif dan pasif di seluruh kluster yang tidak bergantung pada aplikasi front-end. Load Balancer menyediakan koneksi ke kluster ketersediaan tinggi dan memastikan bahwa hanya database yang sehat yang akan menerima permintaan koneksi.
Diagram berikut menunjukkan arsitektur skenario ini:
Catatan
Contoh ini hanyalah salah satu dari banyak kemungkinan konfigurasi layanan penyeimbangan beban yang ditawarkan Azure. Traffic Manager, Application Gateway, dan Load Balancer dapat digabungkan dan dicocokkan agar sesuai dengan kebutuhan penyeimbangan beban Anda. Misalnya, jika offload TLS atau pemrosesan Lapisan 7 tidak diperlukan, Load Balancer dapat digunakan untuk menggantikan Application Gateway.
Menyiapkan tumpukan penyeimbangan beban
Langkah 1: Membuat profil Traffic Manager
Di portal Azure, klik Buat sumber daya>Jaringan>Profil Traffic Manager>Buat.
Masukkan informasi dasar berikut ini:
- Nama: Beri profil Traffic Manager Anda nama awalan DNS.
- Metode perutean: Pilih kebijakan metode perutean lalu lintas. Untuk informasi selengkapnya tentang metode tersebut, lihat Tentang metode perutean lalu lintas Traffic Manager.
- Langganan: Pilih langganan yang memuat profil.
- Grup sumber daya: Pilih grup sumber daya yang memuat profil. Ini mungkin grup sumber daya baru atau yang sudah ada.
- Lokasi grup sumber daya: Layanan Traffic Manager bersifat global dan tidak terikat pada suatu lokasi. Namun, Anda harus menentukan wilayah untuk grup tempat metadata yang terkait dengan profil Traffic Manager berada. Lokasi ini tidak berdampak pada ketersediaan runtime profil.
Klik Buat untuk menghasilkan profil Traffic Manager.
Langkah 2: Membuat gateway aplikasi
Di portal Azure, di panel kiri, klik Buat sumber daya>Jaringan>Application Gateway.
Masukkan informasi dasar berikut tentang gateway aplikasi:
- Nama: Nama gateway aplikasi.
- Ukuran SKU: Gateway aplikasi tersedia dalam ukuran Kecil, Sedang, atau Besar.
- Jumlah instans: Jumlah instans, nilai dari 2 hingga 10.
- Grup sumber daya: Grup sumber daya yang menyimpan gateway aplikasi. Ini mungkin grup sumber daya yang ada atau yang baru.
- Lokasi: Wilayah untuk gateway aplikasi, yang merupakan lokasi yang sama dengan grup sumber daya. Lokasi penting, karena jaringan virtual dan IP publik harus berada di lokasi yang sama dengan gateway.
Klik OK.
Tentukan konfigurasi jaringan virtual, subnet, IP front-end, dan pendengar untuk gateway aplikasi. Dalam skenario ini, alamat IP front-end adalah Publik, yang memungkinkannya untuk ditambahkan sebagai titik akhir ke profil Traffic Manager nanti.
Catatan
Jika Anda menggunakan HTTPS, pilih HTTPS di samping Protokol pada tab Listener . Opsi defaultnya adalah HTTP. Anda juga harus membuat dan menetapkan sertifikat SSL. Untuk informasi selengkapnya, lihat tutorial Application Gateway untuk SSL.
Mengonfigurasikan perutean URL untuk gateway aplikasi
Saat Anda memilih kumpulan back-end, gateway aplikasi yang dikonfigurasi dengan aturan berbasis jalur mengambil pola jalur URL permintaan selain distribusi round-robin. Dalam skenario ini, kami menambahkan aturan berbasis jalur untuk mengarahkan URL apa pun dengan "/images/*" ke kumpulan server gambar. Untuk informasi selengkapnya tentang mengonfigurasi perutean berbasis jalur URL untuk gateway aplikasi, lihat Membuat aturan berbasis jalur untuk gateway aplikasi.
Dari grup sumber daya Anda, buka instans gateway aplikasi yang dibuat di bagian sebelumnya.
Di Pengaturan, pilih Kumpulan backend, lalu pilih Tambahkan untuk menambahkan VM yang ingin dikaitkan dengan kumpulan back-end tingkat web.
Masukkan nama kumpulan back-end dan semua alamat IP komputer yang berada di kumpulan. Dalam skenario ini, kami menghubungkan dua kumpulan server back-end komputer virtual.
Di Pengaturan gateway aplikasi, pilih Aturan, lalu klik tombol Berbasis jalur untuk menambahkan aturan.
Konfigurasikan aturan dengan memberikan informasi berikut.
Pengaturan dasar:
- Nama: Nama yang mudah diingat untuk aturan yang dapat diakses di portal.
- Pendengar: Pendengar yang digunakan untuk aturan.
- Kumpulan backend default: Kumpulan back-end yang akan digunakan dengan aturan default.
- Pengaturan HTTP default: Pengaturan HTTP yang akan digunakan dengan aturan default.
Aturan berbasis jalur:
- Nama: Nama yang mudah diingat untuk aturan berbasis jalur.
- Jalur: Aturan jalur yang digunakan untuk meneruskan lalu lintas.
- Kumpulan Backend: Kumpulan back-end yang akan digunakan dengan aturan ini.
- Pengaturan HTTP: Pengaturan HTTP yang akan digunakan dengan aturan ini.
Penting
Jalur: Jalur yang valid harus dimulai dengan "/". Karakter kartubebas "*" hanya diperbolehkan di akhir. Contoh yang valid adalah /xyz, /xyz*, atau /xyz/*.
Langkah 3: Menambahkan gateway aplikasi ke titik akhir Traffic Manager
Dalam skenario ini, Traffic Manager terhubung ke gateway aplikasi (seperti yang dikonfigurasi dalam langkah-langkah sebelumnya) yang berada di berbagai wilayah. Kini, setelah gateway aplikasi dikonfigurasi, langkah berikutnya adalah menghubungkannya ke profil Traffic Manager Anda.
Buka profil Traffic Manager Anda. Untuk melakukannya, lihat di grup sumber daya Anda atau cari nama profil Traffic Manager dari Semua Sumber Daya.
Di panel kiri, pilih Titik Akhir, lalu klik Tambahkan untuk menambahkan titik akhir.
Buat titik akhir dengan memasukkan informasi berikut:
- Jenis: Pilih jenis titik akhir untuk keseimbangan beban. Dalam skenario ini, pilih titik akhir Azure karena kami menyambungkannya ke instans gateway aplikasi yang dikonfigurasi sebelumnya.
- Nama: Masukkan nama titik akhir.
- Jenis sumber daya target: Pilih Alamat IP publik lalu, di Sumber daya target, pilih IP publik dari gateway aplikasi yang dikonfigurasi sebelumnya.
Sekarang Anda dapat menguji penyiapan dengan mengaksesnya dengan DNS profil Traffic Manager Anda (dalam contoh ini:
TrafficManagerScenario.trafficmanager.net
). Anda dapat mengirim ulang permintaan, memunculkan VM, atau menurunkan VM dan server web yang dibuat di berbagai wilayah. Anda juga dapat mengubah dan menguji pengaturan profil Traffic Manager yang berbeda.
Langkah 4: Membuat penyeimbang beban
Dalam skenario ini, Load Balancer mendistribusikan koneksi dari tingkat web ke database dalam kluster ketersediaan tinggi.
Jika kluster database ketersediaan tinggi Anda menggunakan SQL Server Always On, lihat Mengonfigurasi satu atau beberapa Listener Grup Ketersediaan AlwaysOn untuk instruksi langkah demi langkah.
Untuk informasi selengkapnya tentang mengonfigurasi penyeimbang beban internal, lihat Membuat penyeimbang beban internal di portal Azure.
- Di portal Azure, di panel kiri, klik Buat sumber daya>Jaringan>Penyeimbang beban.
- Pilih nama untuk penyeimbang beban Anda.
- Atur Jenis ke Internal, lalu pilih jaringan virtual dan subnet yang sesuai untuk penyeimbang beban.
- Di Penetapan alamat IP, pilih Dinamis atau Statik.
- Di Grup sumber daya, pilih grup sumber daya untuk penyeimbang beban.
- Di Lokasi, pilih wilayah yang sesuai untuk penyeimbang beban.
- Klik Buat untuk membuat penyeimbang beban.
Menghubungkan tingkat database back-end ke penyeimbang beban
Dari grup sumber daya Anda, temukan penyeimbang beban yang dibuat pada langkah sebelumnya.
Di Pengaturan, klik Kumpulan backend, lalu klik Tambahkan untuk menambahkan kumpulan back-end.
Masukkan nama kumpulan back-end.
Tambahkan komputer atau ketersediaan yang ditetapkan untuk kumpulan back-end.
Mengonfigurasi probe
Di penyeimbang beban Anda, di Pengaturan, pilih Probe, lalu klik Tambahkan untuk menambahkan probe.
Masukkan nama untuk probe.
Pilih Protokol untuk probe. Untuk database, Anda mungkin menginginkan probe TCP daripada probe HTTP. Untuk mempelajari selengkapnya tentang pemeriksaan load-balancer, lihat Memahami pemeriksaan load balancer.
Masukkan Port database Anda yang akan digunakan untuk mengakses probe.
Di Interval, tentukan seberapa sering pemeriksaan aplikasi.
Di Ambang batas tidak sehat, tentukan jumlah kegagalan probe berkelanjutan yang semestinya terjadi sehingga VM back-end dianggap tidak sehat.
Klik OK untuk membuat probe.
Mengonfigurasi aturan penyeimbangan beban
- Di Pengaturan penyeimbang beban Anda, pilih Aturan penyeimbangan beban, lalu klik Tambahkan untuk membuat aturan.
- Masukkan Nama untuk aturan penyeimbangan beban.
- Pilih Alamat IP Frontend dari penyeimbang beban, Protokol, dan Port.
- Di Port Backend,tentukan port yang akan digunakan di kumpulan back-end.
- Pilih Kumpulan Backend dan Probe yang dibuat di langkah-langkah sebelumnya untuk menerapkan aturan.
- Di Persistensi sesi, pilih bagaimana Anda ingin sesi untuk bertahan.
- Di Waktu diam habis, tentukan jumlah menit sebelum waktu diam habis.
- Di bawah Floating IP, pilih Nonaktif atau Aktif.
- Klik OK untuk membuat aturan.
Langkah 5: Menghubungkan VM tingkat web ke penyeimbang beban
Sekarang kita mengonfigurasi alamat IP dan port front-end penyeimbang beban di aplikasi yang berjalan di VM tingkat web Anda untuk koneksi database apa pun. Konfigurasi ini khusus untuk aplikasi yang berjalan pada VM tersebut. Untuk mengonfigurasi alamat IP dan port tujuan, lihat dokumentasi aplikasi. Untuk menemukan alamat IP front-end, di portal Azure, buka kumpulan IP front-end pada Pengaturan penyeimbang beban.