Konfigurasi IP Mengambang Azure Load Balancer

Load balancer menyediakan beberapa kemampuan untuk aplikasi UDP dan TCP.

IP Mengambang

Beberapa skenario aplikasi lebih memilih atau memerlukan penggunaan port yang sama oleh beberapa instans aplikasi pada satu VM di kumpulan backend. Contoh umum penggunaan kembali port termasuk pengklusteran untuk ketersediaan tinggi, appliance virtual jaringan, dan mengekspos beberapa titik akhir TLS tanpa enkripsi ulang.

Status IP Mengambang Hasil
IP Mengambang diaktifkan Azure mengubah pemetaan alamat IP ke alamat IP Frontend dari Load Balancer
IP Mengambang dinonaktifkan Azure mengekspos alamat IP instans VM

Jika Anda ingin menggunakan kembali port ujung belakang di beberapa aturan, Anda harus mengaktifkan IP Mengambang dalam definisi aturan. Mengaktifkan IP Mengambang memungkinkan lebih banyak fleksibilitas.

Dalam diagram, Anda akan melihat cara kerja pemetaan alamat IP sebelum dan sesudah mengaktifkan IP Mengambang: Diagram ini menunjukkan lalu lintas jaringan melalui load balancer sebelum mengaktifkan FLOATING IP.

Diagram ini menunjukkan lalu lintas jaringan melalui load balancer setelah mengaktifkan IP Mengambang.

Anda mengonfigurasi IP Floating pada aturan Load Balancer melalui portal Azure, REST API, CLI, PowerShell, atau klien lainnya. Selain konfigurasi aturan, Anda juga harus mengonfigurasi Gues OS mesin virtual Anda untuk menggunakan Floating IP.

Diagram lalu lintas load balancer untuk beberapa IP frontend dengan IP mengambang.

Untuk skenario ini, setiap VM di kumpulan ujung belakang memiliki tiga antarmuka jaringan:

  • IP backend: NIC Virtual yang terkait dengan VM (konfigurasi IP sumber daya NIC Azure).
  • Frontend 1 (FIP1): antarmuka loopback dalam OS tamu yang dikonfigurasi dengan alamat IP FIP1.
  • Frontend 2 (FIP2): antarmuka loopback dalam OS tamu yang dikonfigurasi dengan alamat IP FIP2.

Mari kita asumsikan konfigurasi ujung depan yang sama seperti dalam skenario sebelumnya:

Ujung depan Alamat IP protokol pelabuhan
ujung depan hijau 1 65.52.0.1 TCP 80
ujung depan ungu 2 65.52.0.2 TCP 80

Kami mendefinisikan dua aturan IP mengambang:

Aturan Ujung depan Petakan ke kumpulan ujung belakang
1 aturan hijau FIP1:80 ujung belakang hijau FIP1:80 (dalam VM1 dan VM2)
2 aturan ungu FIP2:80 ujung belakang ungu FIP2:80 (dalam VM1 dan VM2)

Tabel berikut ini menunjukkan pemetaan lengkap di load balancer:

Aturan Alamat IP ujung depan protokol pelabuhan Tujuan pelabuhan
aturan hijau 1 65.52.0.1 TCP 80 sama seperti ujung depan (65.52.0.1) sama seperti ujung depan (80)
aturan ungu 2 65.52.0.2 TCP 80 sama seperti ujung depan (65.52.0.2) sama seperti ujung depan (80)

Tujuan alur masuk sekarang menjadi alamat IP frontend pada antarmuka loopback di VM. Setiap aturan harus menghasilkan alur dengan kombinasi unik alamat IP tujuan dan port tujuan. Penggunaan kembali port dimungkinkan pada VM yang sama dengan memvariasikan alamat IP tujuan ke alamat IP frontend alur. Layanan Anda diekspos ke load balancer dengan mengikatnya ke alamat IP ujung depan dan port dari antarmuka loopback masing-masing.

Anda melihat port tujuan tidak berubah dalam contoh. Dalam skenario IP mengambang, Azure Load Balancer juga mendukung penentuan aturan penyeimbangan beban untuk mengubah port tujuan backend dan membuatnya berbeda dari port tujuan frontend.

Jenis aturan IP Mengambang adalah fondasi dari beberapa pola konfigurasi load balancer. Salah satu contoh yang saat ini tersedia adalah Mengonfigurasikan satu atau beberapa pendengar grup ketersediaan AlwaysOn. Seiring waktu, kita akan mendokumentasikan lebih banyak skenario ini. Untuk informasi lebih rinci tentang konfigurasi OS Tamu tertentu yang diperlukan untuk mengaktifkan FLOATING IP, silakan lihat konfigurasi IP Floating Azure Load Balancer di bagian berikutnya.

Konfigurasi Guest OS Floating IP

Untuk berfungsi, Anda mengonfigurasi OS Tamu untuk komputer virtual untuk menerima semua lalu lintas yang terikat untuk IP frontend dan port load balancer. Mengonfigurasi VM memerlukan:

  • menambahkan antarmuka jaringan loopback
  • mengonfigurasi loopback dengan alamat IP frontend dari penyeimbang muatan
  • memastikan sistem dapat mengirim/menerima paket pada antarmuka yang tidak memiliki alamat IP yang ditetapkan ke antarmuka tersebut. Sistem Windows memerlukan pengaturan antarmuka untuk menggunakan model "host lemah". Untuk sistem Linux, model ini biasanya digunakan secara default.
  • mengonfigurasi firewall host untuk mengizinkan lalu lintas pada port IP frontend.

Catatan

Contoh di bawah ini semuanya menggunakan IPv4; untuk menggunakan IPv6, ganti "ipv6" untuk "ipv4". Perhatikan juga bahwa IP Mengambang untuk IPv6 tidak berfungsi untuk Load Balancer Internal.

Windows Server

Luaskan

Untuk setiap Mesin Virtual di backend pool, jalankan perintah berikut di Perintah Windows di server.

Untuk mendapatkan daftar nama antarmuka yang Anda miliki di VM, ketik perintah ini:

netsh interface ipv4 show interface 

Untuk NIC Mesin Virtual (yang dikelola Azure), ketik perintah ini.

netsh interface ipv4 set interface "interfacename" weakhostreceive=enabled

(ganti "nama antarmuka" dengan nama antarmuka ini)

Untuk setiap antarmuka loopback yang Anda tambahkan, ulangi perintah ini:

netsh interface ipv4 add addr floatingipaddress floatingip floatingipnetmask
netsh interface ipv4 set interface floatingipaddress weakhostreceive=enabled  weakhostsend=enabled 

(ganti loopbackinterface dengan nama antarmuka loopback ini dan floatingip dan floatingipnetmask dengan nilai yang sesuai dengan IP frontend load balancer)

Terakhir, jika host tamu menggunakan firewall, pastikan aturan disiapkan sehingga lalu lintas dapat mencapai VM pada port yang sesuai.

Contoh konfigurasi ini mengasumsikan konfigurasi IP frontend load balancer 1.2.3.4 dan aturan penyeimbangan beban untuk port 80:

netsh int ipv4 set int "Ethernet" weakhostreceive=enabled
netsh int ipv4 add addr "Loopback Pseudo-Interface 1" 1.2.3.4 255.255.255.0
netsh int ipv4 set int "Loopback Pseudo-Interface 1" weakhostreceive=enabled weakhostsend=enabled
netsh advfirewall firewall add rule name="http" protocol=TCP localport=80 dir=in action=allow enable=yes

Ubuntu

Luaskan

Untuk setiap Mesin Virtual di backend pool, jalankan perintah berikut melalui sesi SSH.

Untuk mendapatkan daftar nama antarmuka yang Anda miliki di VM, ketik perintah ini:

ip addr

Untuk setiap antarmuka loopback, ulangi perintah ini, yang menetapkan IP mengambang ke alias loopback:

sudo ip addr add floatingip/floatingipnetmask dev lo:0

(ganti floatingip dan floatingipnetmask dengan nilai yang sesuai dengan IP frontend load balancer)

Terakhir, jika host tamu menggunakan firewall, pastikan aturan disiapkan sehingga lalu lintas dapat mencapai VM pada port yang sesuai.

Contoh konfigurasi ini mengasumsikan konfigurasi IP frontend load balancer 1.2.3.4 dan aturan penyeimbangan beban untuk port 80. Contoh ini juga mengasumsikan penggunaan UFW (Uncomplicated Firewall) di Ubuntu.

sudo ip addr add 1.2.3.4/24 dev lo:0
sudo ufw allow 80/tcp

Batasan

  • Dengan IP Mengambang diaktifkan pada aturan penyeimbangan beban, aplikasi Anda harus menggunakan konfigurasi IP utama antarmuka jaringan untuk keluar.
  • Anda tidak dapat menggunakan IP Mengambang pada konfigurasi IPv4 sekunder untuk skenario Load Balancing. Batasan ini tidak berlaku untuk load balancer Publik dengan konfigurasi dual-stack (IPv4 dan IPv6) atau ke arsitektur yang menggunakan NAT Gateway untuk konektivitas keluar.
  • Jika aplikasi Anda mengikat ke alamat IP frontend yang dikonfigurasi pada antarmuka loopback di OS tamu, keluar Azure tidak akan menulis ulang alur keluar, dan alur gagal. Ulas skenario keluar.

Langkah berikutnya