Rumah > Artikel > Operasi dan penyelenggaraan > Terdapat beberapa jenis pengimbangan beban dalam linux
Linux mempunyai 4 jenis pengimbangan beban: 1. Pengimbangan beban Lapisan 2 (mac), yang menggunakan alamat mac maya Permintaan luaran untuk alamat MAC maya diterima oleh pengimbang beban dan respons alamat MAC sebenar adalah diperuntukkan kepada bahagian belakang; 2. Pengimbangan beban tiga lapisan (ip), menggunakan alamat IP maya, permintaan luaran untuk alamat IP maya, pengimbangan beban memperuntukkan tindak balas alamat IP belakang sebenar selepas menerima permintaan; mengimbangi (tcp), bermula dari lapisan keempat Bermula dari "lapisan pengangkutan", gunakan "ip+port" untuk menerima permintaan 4. Layer seven load balancing (http).
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
Dalam kerja pembangunan dan operasi dan penyelenggaraan biasa, perkhidmatan pengimbangan beban sering digunakan dan tujuh lapisan beban akan disebut. Apakah sebenarnya beban lapisan 4? Apakah beban Lapisan 7? Apakah perbezaan antara keduanya?
1) Pengimbangan beban (Imbangan Beban) dibina pada rangkaian sedia ada struktur Selain itu, ia menyediakan kaedah yang murah, berkesan dan telus untuk mengembangkan lebar jalur peranti dan pelayan rangkaian, meningkatkan daya pengeluaran, meningkatkan keupayaan pemprosesan data rangkaian, dan meningkatkan fleksibiliti dan ketersediaan rangkaian. Pengimbangan beban mempunyai dua makna: Pertama, sebilangan besar akses serentak atau trafik data dikongsi kepada berbilang peranti nod untuk pemprosesan berasingan, mengurangkan masa pengguna menunggu untuk respons kedua, satu operasi beban berat dikongsi kepada berbilang nod. Pemprosesan selari dilakukan pada setiap peranti nod Selepas setiap peranti nod menyelesaikan pemprosesan, hasilnya diringkaskan dan dikembalikan kepada pengguna Keupayaan pemprosesan sistem.
2) Ringkasnya, ia adalah : Salah satunya ialah memajukan sejumlah besar pemprosesan serentak ke berbilang nod belakang untuk pemprosesan, mengurangkan masa tindak balas kerja; yang satu lagi ialah Majukan satu beban kerja berat ke berbilang nod belakang untuk diproses, dan kemudian kembalikan ke pusat pengimbangan beban sebelum mengembalikannya kepada pengguna. Pada masa ini, teknologi pengimbangan beban kebanyakannya digunakan untuk meningkatkan ketersediaan dan kebolehskalaan program pelayan Internet seperti pelayan Web, pelayan FTP dan pelayan kritikal misi lain.
Pengimbangan beban empat lapisan dan pengimbangan beban tujuh lapisan yang paling biasa dalam pembangunan dan operasi Pengimbangan beban.
Pengimbang beban yang sepadan dipanggil suis empat lapisan (suis L4), yang terutamanya menganalisis lapisan IP dan lapisan TCP/UDP untuk mencapai pengimbangan beban empat lapisan. Pengimbang beban jenis ini tidak memahami protokol aplikasi (seperti HTTP/FTP/MySQL, dsb.).
Perisian yang melaksanakan pengimbangan beban empat lapisan ialah: F5: Pengimbang beban perkakasan, dengan fungsi yang baik tetapi kos yang tinggi.
lvs: perisian beban empat lapisan berat berat
nginx: perisian beban empat lapisan ringan dengan fungsi caching, ungkapan biasa yang lebih fleksibel
haproxy: menyerupai pemajuan empat lapisan, lebih fleksibel
Pengimbang beban yang sepadan dipanggil suis tujuh lapisan (suis L7 Selain menyokong pengimbangan beban empat lapisan, ia juga menganalisis maklumat lapisan aplikasi, seperti URI protokol HTTP atau maklumat kuki, untuk mencapai tujuh lapisan). pengimbangan beban. Pengimbang beban jenis ini memahami protokol aplikasi.
Perisian yang melaksanakan pengimbangan beban tujuh lapisan termasuk:
haproksi: Kemahiran mengimbangi beban semula jadi, menyokong sepenuhnya proksi tujuh lapisan, ketekunan sesi, penandaan, pemindahan laluan; > nginx: Ia hanya mempunyai fungsi yang lebih baik pada protokol http dan protokol mel, dan prestasinya adalah serupa dengan haproxy
apache: fungsi lemah
Mysql proxy: fungsinya boleh diterima.
Secara amnya, lvs biasanya digunakan untuk beban lapisan 4; dengan beban lapisan 4 dan lapisan 7 Ia boleh dilakukan secara seimbang.
Pengimbangan beban empat lapisan yang dipanggil terutamanya menentukan pemilihan akhir melalui alamat destinasi dan port dalam mesej, serta kaedah pemilihan pelayan yang ditetapkan oleh pengimbangan beban peranti.
Mengambil TCP biasa sebagai contoh, apabila peranti pengimbangan beban menerima permintaan SYN pertama daripada klien, ia memilih pelayan terbaik melalui kaedah di atas dan mengubah suai alamat IP sasaran dalam mesej (Ditukar kepada IP pelayan bahagian belakang) dan dimajukan terus ke pelayan. Penubuhan sambungan TCP, iaitu, jabat tangan tiga hala diwujudkan terus antara pelanggan dan pelayan, dan peranti pengimbangan beban hanya bertindak sebagai tindakan pemajuan seperti penghala. Dalam sesetengah situasi penggunaan, untuk memastikan paket pemulangan pelayan boleh dikembalikan dengan betul ke peranti pengimbangan beban, alamat sumber asal paket mungkin diubah suai semasa memajukan paket.Apa yang dipanggil pengimbangan beban tujuh lapisan , juga dikenali sebagai "penukaran kandungan", terutamanya melalui proses sebenar kandungan dalam mesej. Kandungan lapisan aplikasi yang bermakna, ditambah dengan kaedah pemilihan pelayan yang disediakan oleh peranti pengimbangan beban, menentukan pemilihan pelayan dalaman yang terakhir.
Mengambil TCP biasa sebagai contoh, jika peranti pengimbangan beban ingin memilih pelayan berdasarkan kandungan lapisan aplikasi sebenar, ia hanya boleh memproksi pelayan dan klien akhir untuk mewujudkan sambungan (jabat tangan tiga hala) sebelum ia boleh menerima Klien menghantar mesej dengan kandungan lapisan aplikasi sebenar, dan kemudian berdasarkan medan khusus dalam mesej, ditambah dengan kaedah pemilihan pelayan yang ditetapkan oleh peranti pengimbangan beban, pelayan dalaman terpilih terakhir ditentukan. Peranti pengimbangan beban dalam kes ini lebih serupa dengan pelayan proksi. Pengimbangan beban dan klien bahagian hadapan dan pelayan bahagian belakang akan mewujudkan sambungan TCP masing-masing. Oleh itu, dari perspektif prinsip teknikal ini, pengimbangan beban tujuh lapisan jelas mempunyai keperluan yang lebih tinggi untuk peralatan pengimbangan beban, dan keupayaan untuk mengendalikan tujuh lapisan pasti akan lebih rendah daripada kaedah penggunaan mod empat lapisan.Pengimbangan beban empat lapisan dilakukan pada lapisan pengangkutan perantaraan, yang mengendalikan penghantaran mesej, tetapi tidak pertimbangkan kandungan mesej. Sebagai contoh, TCP ialah protokol lapisan 4 untuk trafik Hypertext Transfer Protocol (HTTP) pada rangkaian. Semasa proses ini, pengimbangan beban Lapisan 4 memajukan paket rangkaian ke pelayan huluan, tetapi tidak memeriksa kandungan paket dan hanya boleh membuat keputusan penghalaan terhad dengan memeriksa beberapa paket pertama dalam aliran TCP.
Pengimbangan beban tujuh lapisanBerbeza daripada pengimbangan beban empat lapisan, ia dilaksanakan pada lapisan aplikasi peringkat tinggi dan mengendalikan kandungan sebenar setiap mesej. HTTP ialah protokol lapisan 7 utama untuk trafik tapak web di web. Pengimbangan beban lapisan 7 mengarahkan trafik rangkaian dengan cara yang lebih canggih daripada pengimbangan beban lapisan 4, dan amat sesuai untuk trafik berasaskan TCP (seperti HTTP). Pengimbangan beban Lapisan 7 menamatkan trafik rangkaian dan membaca mesej dalam pelayan Ia boleh membuat keputusan pengimbangan beban berdasarkan kandungan mesej (seperti URL atau kuki). Selepas itu, pengimbangan beban tujuh lapisan mewujudkan sambungan TCP baharu dengan pelayan yang dipilih dan menulis permintaan kepada pelayan.
Secara ringkas, perbezaan antara keduanya
- Pengimbangan beban tujuh lapisan pada asasnya berdasarkan protokol http , sesuai untuk pengimbangan beban pelayan web. (nginx)
- Pengimbangan beban empat lapisanTerutamanya berdasarkan paket protokol tcp, ia boleh melakukan apa sahaja berdasarkan tcp /ip Pengimbangan beban perisian protokol. (haproxy, LVS)
- Perbezaan utama antara kedua-duanya ialah tahap mesej yang digunakan adalah berbeza, dan setiap satu mempunyai faedah tersendiri.
- Manfaat beban aplikasi tujuh lapisan adalah untuk menjadikan keseluruhan rangkaian lebih "pintar". Sebagai contoh, trafik pengguna yang melawat tapak web boleh memajukan permintaan untuk imej ke pelayan imej tertentu dan menggunakan teknologi caching melalui pendekatan tujuh lapisan untuk teks boleh dimajukan ke pelayan teks tertentu dan teknologi pemampatan boleh digunakan. Sudah tentu, ini hanyalah kes kecil aplikasi tujuh lapisan Dari perspektif teknikal, kaedah ini boleh mengubah suai permintaan pelanggan dan tindak balas pelayan dalam apa-apa erti kata, meningkatkan fleksibiliti sistem aplikasi pada lapisan rangkaian. Banyak fungsi yang digunakan di latar belakang, seperti Nginx atau Apache, boleh dialihkan ke peranti pengimbangan beban, seperti penulisan semula pengepala dalam permintaan klien, penapisan kata kunci atau sisipan kandungan dalam respons pelayan dan fungsi lain.
- Pengimbangan beban Lapisan 4 terutamanya lebih fleksibel dan boleh digunakan sebagai pengimbang beban untuk pelbagai perisian.
Untuk memberi contoh untuk menggambarkan dengan jelas: pengimbangan beban empat lapisan adalah seperti mesin beratur layan diri bank Setiap pelanggan yang tiba di bank memilih tetingkap yang sepadan untuk menerima perkhidmatan mengikut susunan mesin beratur; manakala pengimbangan beban tujuh lapisan Qian Qing adalah seperti pengurus lobi bank yang mula-mula mengesahkan perniagaan yang perlu dikendalikan oleh pelanggan, dan kemudian mengatur nombor. Dengan cara ini, pelanggan yang mengendalikan pengurusan kewangan, deposit dan pengeluaran, dan lain-lain akan diselaraskan dan dikendalikan mengikut sumber dalaman bank, mempercepatkan proses perniagaan pelanggan.
Faedah Pengimbangan Beban Lapisan 7
Pengimbangan Beban Lapisan 7 adalah lebih cekap daripada Beban Lapisan 4 berasaskan paket Pengimbangan Mengambil CPU, tetapi jarang menyebabkan kemerosotan prestasi pelayan. Pengimbangan beban tujuh lapisan membolehkan pengimbang beban membuat keputusan yang lebih termaklum dan membuat pengoptimuman serta perubahan pada kandungan seperti pemampatan, penyulitan dan banyak lagi. Pengimbangan beban Lapisan 7 juga boleh menggunakan penimbalan untuk memuatkan sambungan perlahan daripada pelayan huluan, dengan itu meningkatkan prestasi.
Komponen yang melaksanakan pengimbangan beban Lapisan 7 selalunya dipanggil pelayan proksi terbalik.
Contoh pengimbangan beban tujuh lapisan
Sebagai contoh mudah, katakan pengguna melawat tapak web yang mempunyai trafik tinggi semasa sesi boleh meminta kandungan Statik (seperti imej atau video), kandungan dinamik (seperti suapan berita), atau maklumat transaksi (seperti status pesanan), dsb. Pengimbangan beban Lapisan 7 membolehkan pengimbang beban menghalakan permintaan berdasarkan mesej dalam permintaan itu sendiri, seperti jenis kandungan. Iaitu, permintaan untuk imej atau video boleh dialihkan ke pelayan yang menyimpannya dan sangat dioptimumkan untuk menyampaikan permintaan untuk maklumat transaksi, seperti harga diskaun, boleh dihalakan ke pelayan aplikasi yang bertanggungjawab untuk menguruskan harga. Dengan pengimbangan beban Lapisan 7, rangkaian dan arkitek aplikasi boleh mencipta infrastruktur pelayan yang sangat dioptimumkan atau rangkaian penghantaran aplikasi yang berskala dengan cekap sambil memastikan kebolehpercayaan.
Ringkasan ringkas
Daripada perbandingan di atas, nampaknya perbezaan terbesar antara beban empat lapisan dan beban tujuh lapisan ialah perbezaan kecekapan dan kefungsian. Reka bentuk seni bina beban empat lapisan adalah agak mudah, tanpa perlu menghuraikan kandungan mesej tertentu, dan akan mempunyai daya pemprosesan dan keupayaan pemprosesan yang agak tinggi Kelebihan pengimbangan beban tujuh lapisan ditunjukkan dalam pelbagai fungsi dan kawalan yang fleksibel dan berkuasa . Apabila mereka bentuk seni bina perniagaan tertentu, penggunaan beban tujuh lapisan atau empat lapisan mesti dipertimbangkan berdasarkan keadaan tertentu.
Aliran data semasa pengimbangan beban semuanya melalui pengimbang beban Bagaimana untuk menyelesaikan masalah pengimbang beban menjadi kesesakan?
Dengan mengubah suai alamat sumber dan alamat destinasi mesej TCP, data yang dikembalikan daripada pelayan web dikembalikan terus kepada klien Ini adalah sesuatu yang tidak dapat dilakukan oleh pengimbangan beban tujuh lapisan kerana Jabat tangan tiga hala TCP Ditubuhkan antara klien dan pelayan pengimbangan beban, protokol http adalah berdasarkan protokol tcp Selepas pautan tcp diwujudkan, mesej http yang diterima menunjukkan bahawa pengimbang beban klien telah mewujudkan sambungan tcp, dan pelayan web dan Sambungan tcp pelanggan belum diwujudkan Bagaimana untuk mengembalikan data kepada klien? Kaedah di atas akan menyebabkan masalah: semua hos dalam kluster mempunyai alamat IP dalaman dan tidak boleh berkomunikasi dengan dunia luar.
Penyelesaian 1:
Jika anda boleh membeli begitu banyak alamat IP luaran untuk digunakan, kemudian muatkan bakinya kepada yang sebenar apabila pautan tcp adalah untuk diwujudkan Pelayan web membenarkan klien dan pelayan mewujudkan pautan TCP.
Penyelesaian 2:
Petikan: Semua masalah komputer boleh diselesaikan dengan mewujudkan lapisan maya.
Anda boleh memayakan semua IP hos pelayan ke dalam IP pelayan pengimbangan beban, supaya semua hos dalam kelompok pelayan boleh mengakses rangkaian luaran Kerana alamat IP (lapisan rangkaian, tiga lapisan) adalah sama, ia hanya boleh melaluinya lapisan kedua untuk mengenal pasti arah aliran data, ubah suai alamat MAC hos destinasi pada lapisan pautan data (lapisan 2), supaya permintaan dihantar ke pelayan web, dan kemudian sambungan tcp sebenarnya diwujudkan. kerana pelayan web boleh menyambung ke Internet, ia boleh memulangkan data terus kepada Pelanggan
daripada keperluan senario aplikasi, yang menjadikan keseluruhan rangkaian lebih "pintar" ". Sebagai contoh, trafik pengguna yang melawat tapak web boleh memajukan permintaan untuk imej ke pelayan imej tertentu dan menggunakan teknologi caching melalui pendekatan tujuh lapisan untuk teks boleh dimajukan ke pelayan teks tertentu dan teknologi pemampatan boleh digunakan. Sudah tentu, ini hanyalah kes kecil aplikasi tujuh lapisan Dari perspektif teknikal, kaedah ini boleh mengubah suai permintaan pelanggan dan tindak balas pelayan dalam apa-apa erti kata, meningkatkan fleksibiliti sistem aplikasi pada lapisan rangkaian. Banyak fungsi yang digunakan di latar belakang, seperti Nginx atau Apache, boleh dialihkan ke peranti pengimbangan beban, seperti penulisan semula pengepala dalam permintaan klien, penapisan kata kunci atau sisipan kandungan dalam respons pelayan dan fungsi lain.
Ciri lain yang sering disebut ialah keselamatan . Serangan SYN Flood yang paling biasa dalam rangkaian ialah penggodam mengawal banyak klien sumber dan menggunakan alamat IP palsu untuk menghantar serangan SYN ke sasaran yang sama Biasanya serangan ini akan menghantar sejumlah besar mesej SYN dan sumber berkaitan ekzos pada pelayan untuk dicapai Tujuan Penafian Perkhidmatan (DoS). Ia juga boleh dilihat dari prinsip teknikal bahawa dalam mod empat lapisan, serangan SYN ini akan dimajukan ke pelayan bahagian belakang dalam mod tujuh lapisan, serangan SYN ini secara semula jadi akan berakhir pada peranti pengimbangan beban tidak menjejaskan operasi biasa pelayan bahagian belakang. Selain itu, peranti pengimbangan beban boleh menetapkan berbilang dasar pada tahap tujuh lapisan untuk menapis mesej tertentu, seperti SQL Injection dan kaedah serangan peringkat aplikasi lain, untuk meningkatkan lagi keselamatan sistem keseluruhan daripada peringkat aplikasi.
Pengimbangan beban tujuh lapisan semasa terutamanya tertumpu pada aplikasi protokol HTTP, jadi skop aplikasinya adalah terutamanya sistem yang dibangunkan berdasarkan B/S seperti banyak tapak web atau platform maklumat dalaman. Pengimbangan beban Lapisan 4 sepadan dengan aplikasi TCP lain, seperti ERP dan sistem lain yang dibangunkan berdasarkan C/S.
3.1) Adakah ia benar-benar perlu. Aplikasi tujuh lapisan sememangnya boleh meningkatkan kecerdasan trafik, tetapi pada masa yang sama tidak dapat tidak membawa masalah seperti konfigurasi peranti yang kompleks, tekanan pengimbangan beban yang meningkat dan kerumitan dalam penyelesaian masalah. Apabila mereka bentuk sistem, adalah perlu untuk mempertimbangkan situasi campuran aplikasi serentak empat lapisan dan tujuh lapisan.
3.2) Sama ada keselamatan benar-benar boleh dipertingkatkan. Sebagai contoh, serangan Flood SYN, mod tujuh lapisan menyekat trafik ini daripada pelayan, tetapi peranti pengimbangan beban itu sendiri mesti mempunyai keupayaan anti-DDoS yang kuat Jika tidak, walaupun pelayan adalah normal dan peranti pengimbangan beban digunakan sebagai penghantar pusat gagal, keseluruhan aplikasi akan runtuh.
3.3) Sama ada fleksibiliti yang mencukupi. Kelebihan aplikasi tujuh lapisan ialah ia boleh menjadikan trafik keseluruhan aplikasi pintar, tetapi peranti pengimbangan beban perlu menyediakan fungsi tujuh lapisan yang lengkap untuk memenuhi penjadualan berasaskan aplikasi pelanggan mengikut situasi yang berbeza. Penilaian yang paling mudah ialah sama ada ia boleh menggantikan fungsi penjadualan pada pelayan bahagian belakang seperti Nginx atau Apache. Peranti pengimbangan beban yang boleh menyediakan antara muka pembangunan aplikasi tujuh lapisan membolehkan pelanggan menetapkan fungsi mengikut keperluan mereka, menjadikannya benar-benar mungkin untuk memberikan fleksibiliti dan kecerdasan yang berkuasa.
4.1) Kepintaran
Pengimbangan beban Lapisan 7 mempunyai semua fungsi lapisan 7 OIS, jadi dalam Ia boleh menjadi lebih fleksibel dalam mengendalikan keperluan pengguna Secara teori, model tujuh lapisan boleh mengubah suai semua permintaan pengguna kepada pelayan. Sebagai contoh, tambahkan maklumat pada pengepala fail dan klasifikasikan dan ke hadapan mengikut jenis fail yang berbeza. Model empat lapisan hanya menyokong pemajuan permintaan berdasarkan lapisan rangkaian dan tidak boleh mengubah suai kandungan permintaan pengguna.
4.2) Keselamatan
Memandangkan pengimbangan beban tujuh lapisan mempunyai semua fungsi model OSI, ia boleh menahan serangan daripada rangkaian dengan lebih mudah; model lapisan akan terus Memajukan permintaan pengguna ke nod hujung belakang tidak boleh menahan serangan rangkaian secara langsung.
4.3) Kerumitan
Model empat lapisan secara amnya mempunyai seni bina yang agak mudah, yang mudah diurus dan mencari masalah seni bina model tujuh lapisan adalah lebih kompleks, dan selalunya perlu mempertimbangkan untuk menggabungkan model empat lapisan Dalam kes penggunaan bercampur, pengesanan masalah adalah lebih rumit.
4.4) Nisbah kecekapan
Model empat lapisan adalah berdasarkan tetapan peringkat rendah dan biasanya lebih cekap, tetapi mempunyai skop aplikasi terhad model tujuh lapisan memerlukan lebih banyak sumber; penggunaan dan secara teorinya lebih cekap daripada Model empat lapisan mempunyai fungsi yang lebih kukuh, dan pelaksanaan semasa lebih berdasarkan aplikasi http.
Penyelesaian pengimbangan beban perisian merujuk kepada memasang satu atau lebih perisian tambahan pada sistem pengendalian yang sepadan bagi satu atau lebih pelayan untuk mencapai pengimbangan beban, seperti Imbangan Beban DNS, CheckPoint Firewall-1 ConnectControl, Keepalive+ipvs, dll. Kelebihannya adalah berdasarkan persekitaran khusus, konfigurasi mudah, penggunaan fleksibel, kos rendah, dan boleh memenuhi keperluan pengimbangan beban umum. Penyelesaian perisian juga mempunyai banyak kelemahan, kerana memasang perisian tambahan pada setiap pelayan akan menggunakan jumlah sumber sistem yang tidak terhad perisian itu sendiri akan menjadi kunci kepada kejayaan atau kegagalan pelayan; skalabiliti perisian tidak begitu baik dan dihadkan oleh sistem pengendalian itu sendiri sering menyebabkan masalah keselamatan;
Penyelesaian pengimbangan beban perkakasan ialah memasang peranti pengimbangan beban terus antara pelayan dan rangkaian luaran Peranti ini biasanya merupakan perkakasan yang tidak bergantung kepada sistem, dipanggil beban peranti pengimbangan. Oleh kerana peralatan khusus menyelesaikan tugas khusus dan tidak bergantung pada sistem pengendalian, prestasi keseluruhan dipertingkatkan dengan banyaknya dengan strategi pengimbangan beban yang pelbagai dan pengurusan trafik yang bijak, keperluan pengimbangan beban yang optimum dapat dicapai. Pengimbang beban datang dalam pelbagai bentuk Selain sebagai pengimbang beban bebas, beberapa pengimbang beban disepadukan ke dalam peranti pensuisan dan diletakkan di antara pelayan dan pautan Internet Ada yang menggunakan dua penyesuai rangkaian untuk menyambungkan pengimbang beban ini PC, satu disambungkan ke Internet, dan satu lagi disambungkan ke rangkaian dalaman ladang pelayan bahagian belakang.
Perbandingan antara pengimbangan beban perisian dan pengimbangan beban perkakasan:
Kelebihan pengimbangan beban perisian ialah persekitaran permintaan yang jelas, konfigurasi mudah dan fleksibel operasi. Ia adalah kos rendah, tidak cekap, dan boleh memenuhi keperluan perusahaan biasa adalah bahawa ia bergantung kepada sistem dan meningkatkan kualiti perisian menentukan prestasi persekitaran; dan kestabilan perisian akan menjejaskan keselamatan keseluruhan persekitaran.
Kelebihan pengimbangan beban perkakasan ialah ia tidak bergantung pada sistem, prestasi keseluruhannya bertambah baik, dan ia lebih baik daripada kaedah perisian dari segi fungsi dan prestasi pengurusan trafik, pelbagai strategi adalah pilihan , dan boleh mencapai kesan pengimbangan beban yang terbaik.
Pengimbangan beban dibahagikan kepada Imbangan Beban Tempatan berdasarkan struktur geografi aplikasinya dan Imbangan Beban Global (juga dipanggil pengimbangan beban serantau) Pengimbangan beban setempat merujuk kepada pengimbangan beban kumpulan pelayan setempat, dan pengimbangan beban global merujuk kepada pengimbangan beban pelayan yang diletakkan di lokasi geografi yang berbeza dengan struktur rangkaian yang berbeza.
Pengimbangan beban tempatan boleh menyelesaikan masalah trafik data yang berlebihan dan rangkaian beban yang berlebihan, dan tidak perlu membelanjakan perbelanjaan yang mahal untuk membeli pelayan dengan prestasi cemerlang, menggunakan sepenuhnya peralatan sedia ada , dan elakkan Satu titik kegagalan pelayan menyebabkan kehilangan trafik data. Ia mempunyai strategi pengimbangan yang fleksibel dan pelbagai untuk memperuntukkan trafik data secara munasabah kepada pelayan dalam kumpulan pelayan untuk beban bersama. Walaupun anda mengembangkan dan menaik taraf pelayan sedia ada, anda hanya boleh menambah pelayan baharu pada kumpulan perkhidmatan tanpa mengubah struktur rangkaian sedia ada atau menghentikan perkhidmatan sedia ada.
Global Load Balancing digunakan terutamanya untuk tapak yang mempunyai pelayan mereka sendiri dalam berbilang wilayah Untuk membolehkan pengguna global mengakses pelayan yang paling hampir dengan mereka dengan hanya satu alamat IP atau nama domain, oleh itu Untuk mendapatkan kelajuan capaian terpantas, ia juga boleh digunakan oleh syarikat besar dengan anak syarikat yang bertaburan dan tapak yang diedarkan secara meluas untuk mencapai peruntukan sumber yang bersatu dan munasabah melalui Intranet (Internet dalaman).
Menurut kesesakan yang berbeza di mana rangkaian terlebih beban, bermula dari peringkat rangkaian yang berbeza, pengimbangan beban yang sepadan boleh digunakan teknologi untuk menyelesaikan masalah sedia ada.
Apabila lebar jalur meningkat dan trafik data terus meningkat, antara muka data di bahagian teras rangkaian akan menghadapi masalah kesesakan Talian tunggal asal akan sukar untuk memenuhi permintaan dan peningkatan talian terlalu mahal atau walaupun sukar untuk dilaksanakan Pada masa ini, anda boleh mempertimbangkan untuk menggunakan teknologi pengagregatan pautan (Trunking).
Teknologi pengagregatan pautan (pengimbangan beban lapisan 2) menggunakan berbilang pautan fizikal sebagai satu pautan logik terkumpul dan trafik data rangkaian dikongsi oleh semua pautan fizikal dalam pautan logik terkumpul Ini secara logik meningkatkan kapasiti pautan supaya ia dapat memenuhi permintaan yang meningkat untuk lebar jalur.
Teknologi pengimbangan beban moden biasanya beroperasi pada lapisan keempat atau ketujuh rangkaian. Pengimbangan beban Lapisan 4 memetakan alamat IP yang didaftarkan secara sah di Internet ke alamat IP berbilang pelayan dalaman, dan secara dinamik menggunakan salah satu alamat IP dalaman untuk setiap permintaan sambungan TCP untuk mencapai pengimbangan beban. Dalam suis lapisan 4, teknologi pengimbangan ini digunakan secara meluas Alamat destinasi ialah kumpulan pelayan VIP (Alamat IP Maya) permintaan sambungan paket data melalui suis Suis menentukan alamat IP sumber dan destinasi, nombor port TCP Atau UDP strategi pengimbangan beban tertentu, pemetaan antara IP pelayan dan VIP, dan memilih pelayan terbaik dalam kumpulan pelayan untuk mengendalikan permintaan sambungan.
Pengimbangan beban tujuh lapisan mengawal kandungan perkhidmatan lapisan aplikasi, menyediakan kaedah kawalan peringkat tinggi untuk trafik akses dan sesuai untuk aplikasi dalam kumpulan pelayan HTTP. Teknologi pengimbangan beban Lapisan 7 menyemak pengepala HTTP yang berlalu dan melaksanakan tugas pengimbangan beban berdasarkan maklumat dalam pengepala.
Kelebihan pengimbangan beban tujuh lapisan ditunjukkan dalam aspek berikut:
1) Dengan menyemak pengepala HTTP, ralat siri HTTP400, 500 dan 600 boleh maklumat yang dikesan, dengan itu mengubah hala permintaan sambungan ke pelayan lain secara telus dan mengelakkan kegagalan lapisan aplikasi.
2) Mengikut jenis data yang mengalir (seperti menentukan sama ada paket data ialah fail imej, fail termampat atau format fail multimedia, dsb.), trafik data boleh diarahkan ke pelayan kandungan yang sepadan untuk pemprosesan, meningkatkan prestasi sistem.
3) Mengikut jenis permintaan sambungan, sama ada permintaan dokumen statik seperti teks atau imej biasa, atau permintaan dokumen dinamik seperti asp, cgi, dsb., permintaan yang sepadan boleh diarahkan kepada yang sepadan pelayan untuk pemprosesan, meningkatkan prestasi sistem dan Keselamatan.
Kekurangan pengimbangan beban tujuh lapisan ditunjukkan dalam aspek berikut:
1) Pengimbangan beban tujuh lapisan dihadkan oleh protokol yang disokongnya (biasanya sahaja HTTP), jadi Ini mengehadkan keluasan aplikasinya.
2) Pengepala HTTP pemeriksaan pengimbangan beban Lapisan 7 akan menduduki sejumlah besar sumber sistem, yang pasti akan menjejaskan prestasi sistem Dalam kes permintaan sambungan yang banyak, peranti pengimbangan beban itu sendiri boleh menjadi dengan mudah kesesakan untuk prestasi rangkaian keseluruhan.
Dalam aplikasi sebenar, anda mungkin tidak mahu hanya mengedarkan permintaan perkhidmatan pelanggan secara sama rata kepada pelayan dalaman, tidak kira sama ada pelayan itu tidak berfungsi. . Sebaliknya, kami mahu pelayan Pentium III menerima lebih banyak permintaan perkhidmatan daripada Pentium II Pelayan yang mengendalikan lebih sedikit permintaan perkhidmatan boleh diberikan lebih banyak permintaan perkhidmatan Pelayan yang gagal tidak lagi menerima permintaan perkhidmatan sehingga kegagalan dipulihkan, dsb . Pilih strategi pengimbangan beban yang sesuai supaya berbilang peranti boleh menyelesaikan tugasan bersama-sama dan menghapuskan atau mengelakkan kesesakan sedia ada yang disebabkan oleh pengagihan beban rangkaian yang tidak sekata, kesesakan trafik data dan masa tindak balas yang panjang. Dalam setiap kaedah pengimbangan beban, terdapat strategi pengimbangan beban yang sepadan untuk pengimbangan beban pada lapisan 2, 3, 4, dan 7 model rujukan OSI untuk keperluan aplikasi yang berbeza.
Kebaikan dan keburukan strategi pengimbangan beban dan kemudahan pelaksanaan mempunyai dua faktor utama: algoritma pengimbangan beban dan kaedah serta keupayaan untuk mengesan keadaan sistem rangkaian.
Algoritma pengimbangan beban
1) Round Robin : Setiap permintaan daripada rangkaian diberikan kepada pelayan dalaman secara bergilir-gilir, dari 1 hingga N dan kemudian bermula semula. Algoritma pengimbangan ini sesuai untuk situasi di mana semua pelayan dalam kumpulan pelayan mempunyai konfigurasi perkakasan dan perisian yang sama dan permintaan perkhidmatan purata secara relatifnya seimbang.
2) Weighted Round Robin : Mengikut keupayaan pemprosesan pelayan yang berbeza, pemberat yang berbeza diberikan kepada setiap pelayan supaya ia boleh menerima permintaan perkhidmatan dengan pemberat yang sepadan. Contohnya: berat pelayan A direka bentuk menjadi 1, berat B ialah 3, dan berat C ialah 6, kemudian pelayan A, B dan C akan menerima 10%, 30% dan 60% perkhidmatan. permintaan masing-masing. Algoritma pengimbangan ini memastikan pelayan berprestasi tinggi menerima lebih banyak penggunaan dan menghalang pelayan berprestasi rendah daripada dibebankan.
3) Baki rawak (Random) : Mengedarkan permintaan daripada rangkaian secara rawak kepada berbilang pelayan dalaman.
4) Pengimbangan Rawak Berwajaran (Rawak Berwajaran) : Algoritma pengimbangan ini serupa dengan algoritma round-robin berwajaran, tetapi ia merupakan proses pemilihan rawak semasa memproses perkongsian permintaan.
5) Pengimbangan kelajuan tindak balas (Masa Tindak Balas) : Peranti pengimbangan beban menghantar permintaan pengesanan (seperti Ping) kepada setiap pelayan dalaman, dan kemudian menentukan masa tindak balas berdasarkan masa tindak balas terpantas bagi setiap pelayan dalaman kepada permintaan pengesanan. Tentukan pelayan yang akan bertindak balas kepada permintaan perkhidmatan pelanggan. Algoritma pengimbangan ini boleh mencerminkan dengan lebih baik status berjalan semasa pelayan, tetapi masa tindak balas terpantas hanya merujuk kepada masa tindak balas terpantas antara peranti pengimbangan beban dan pelayan, bukan masa tindak balas terpantas antara klien dan pelayan.
6) Sambungan Terkecil : Masa setiap perkhidmatan meminta pelanggan kekal pada pelayan mungkin mempunyai perbezaan yang besar Apabila masa bekerja meningkat, jika pusingan pusingan mudah digunakan, Menggunakan pengimbangan bulat atau rawak algoritma, proses sambungan pada setiap pelayan mungkin sangat berbeza, dan pengimbangan beban sebenar tidak tercapai. Bilangan minimum algoritma pengimbangan sambungan mempunyai rekod data untuk setiap pelayan yang perlu dimuatkan secara dalaman, merekodkan bilangan sambungan yang sedang diproses oleh pelayan Apabila terdapat permintaan sambungan perkhidmatan baharu, permintaan semasa akan diberikan kepada pelayan dengan bilangan sambungan yang paling sedikit. Pelayan menjadikan keseimbangan lebih konsisten dengan keadaan sebenar dan beban lebih seimbang. Algoritma pengimbangan ini sesuai untuk perkhidmatan permintaan pemprosesan jangka panjang, seperti FTP.
7) Memproses pengimbangan kapasiti : Algoritma pengimbangan ini akan memperuntukkan permintaan perkhidmatan kepada beban pemprosesan dalaman (ditukar berdasarkan model CPU pelayan, bilangan CPU, saiz memori, bilangan sambungan semasa, dsb. ) Untuk pelayan ringan, algoritma pengimbangan ini agak lebih tepat kerana ia mengambil kira kuasa pemprosesan pelayan dalaman dan keadaan operasi rangkaian semasa, terutamanya apabila digunakan pada pengimbangan beban lapisan 7 (lapisan aplikasi).
8) Pengimbangan respons DNS (DNS Flash) : Di Internet, sama ada HTTP, FTP atau permintaan perkhidmatan lain, pelanggan biasanya mencari alamat IP tepat pelayan melalui resolusi nama domain . Di bawah algoritma pengimbangan ini, peranti pengimbangan beban yang terletak di lokasi geografi yang berbeza menerima permintaan resolusi nama domain daripada klien yang sama dan menyelesaikan nama domain ke dalam alamat IP pelayan yang sepadan (iaitu, peranti pengimbangan beban) pada masa yang sama . Alamat IP pelayan di lokasi geografi yang sama) dan mengembalikannya kepada pelanggan, pelanggan akan terus meminta perkhidmatan dengan alamat IP resolusi nama domain yang pertama diterima, dan mengabaikan respons alamat IP lain. Apabila strategi pengimbangan ini sesuai untuk pengimbangan beban global, ia tidak bermakna untuk pengimbangan beban tempatan.
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci Terdapat beberapa jenis pengimbangan beban dalam linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!