Beban Balancing kalawan AWS ELB

Halo sadayana! Kursus dimimitian dinten ieu "AWS pikeun pamekar", dina sambungan nu urang ngayakeun webinar tematik pakait dedicated ka review ELB. Kami ningal jinis pangimbang sareng nyiptakeun sababaraha instansi EC2 nganggo pangimbang. Urang ogé diajar conto séjén pamakéan.

Beban Balancing kalawan AWS ELB

Saatos ngadangukeun webinar, Anjeun bakal:

  • ngartos naon AWS Load Balancing;
  • terang jinis Elastic Load Balancer sareng komponenana;
  • nganggo AWS ELB dina prakték anjeun.

Naha anjeun kedah terang ieu sadayana?

  • kapaké upami anjeun badé nyandak ujian sertifikasi AWS;
  • Ieu cara basajan pikeun ngadistribusikaeun beban antara server;
  • Ieu mangrupikeun cara saderhana pikeun nambihan Lambda kana jasa anjeun (ALB).

Ngalaksanakeun palajaran terbuka Rishat Teregulov, Insinyur sistem di perusahaan pamasaran pikeun pamekaran halaman wéb sareng dukungan.

perkenalan

Naon Elastic Load Balancer tiasa ditingali dina diagram di handap ieu, anu nunjukkeun conto saderhana:

Beban Balancing kalawan AWS ELB

Load Balancer narima requests sarta distributes aranjeunna sakuliah instansi. Kami gaduh hiji conto anu misah, aya fungsi Lambda sareng aya grup AutoScaling (kelompok server).

Jenis AWS ELB

1. Hayu urang nempo jenis utama:

Balancer beban klasik. The balancer pisan munggaran ti AWS, jalan dina duanana lapisan OSI 4 jeung 7, HTTP, HTTPS, TCP jeung SSL dirojong. Éta nyayogikeun kasaimbangan beban dasar dina sababaraha instansi Amazon EC2 sareng tiasa dianggo dina tingkat paménta sareng sambungan. Hayu urang buka (disorot ku warna abu):

Beban Balancing kalawan AWS ELB

Balancer ieu dianggap tinggaleun jaman, ku kituna disarankeun ngan ukur dianggo dina sababaraha kasus. Contona, pikeun aplikasi anu diwangun dina jaringan EC2‑Classic. Sacara prinsip, teu aya anu ngahalangan urang nyiptakeunana:

Beban Balancing kalawan AWS ELB

2. Network Beban Balancer. Cocog jeung workloads beurat, beroperasi dina OSI Layer 4 (bisa dipaké dina EKS jeung ECS), TCP, UDP jeung TLS dirojong.

Network Load Balancer ngarutekeun lalu lintas ka target dina VPC Amazon sareng sanggup ngolah jutaan pamundut per detik kalayan latency ultra-rendah. Salaku tambahan, éta dioptimalkeun pikeun nanganan pola lalu lintas kalayan beban anu ngadadak sareng robih.

3. Aplikasi Beban Balancer. Gawéna dina lapisan 7, boga rojongan Lambda, ngarojong lulugu jeung aturan tingkat jalur, ngarojong HTTP na HTTPS.
Nyadiakeun routing pamundut canggih fokus kana delivering aplikasi diwangun dina arsitektur modern, kaasup microservices na peti. Ngarahkeun lalu lintas ka target dina Amazon VPC dumasar kana eusi pamundut.

Pikeun seueur pangguna, Application Load Balancer mangrupikeun pilihan anu munggaran pikeun ngagentos Balancer Beban Klasik, sabab TCP henteu biasa sapertos HTTP.

Hayu urang nyieun ogé, salaku hasilna urang geus boga dua load balancers:

Beban Balancing kalawan AWS ELB

Beban Balance komponén

Komponén Balance beban umum (umum pikeun sakabéh balancer):

  • Kawijakan Logging Aksés

- log aksés ELB anjeun. Pikeun nyieun setélan, anjeun tiasa angkat ka Katerangan sareng pilih tombol "Édit atribut":

Beban Balancing kalawan AWS ELB

Teras we tangtukeun S3Bucket - panyimpen objék Amazon:

Beban Balancing kalawan AWS ELB

  • Skéma

- kasaimbangan internal atanapi éksternal. Intina nyaéta naha LoadBalancer anjeun kedah nampi alamat éksternal supados tiasa diaksés ti luar, atanapi tiasa janten pangimbang beban internal anjeun;

  • Grup Kaamanan

- kontrol aksés ka balancer nu. Intina ieu mangrupikeun firewall tingkat luhur.

Beban Balancing kalawan AWS ELB

Beban Balancing kalawan AWS ELB

  • Sélakan

- subnet di jero VPC anjeun (sareng, sasuai, zona kasadiaan). Subnets ditangtukeun nalika nyiptakeun. Upami VPC diwatesan ku daérah, maka Subnet diwatesan ku zona kasadiaan. Nalika nyieun Load Balancer, leuwih sae pikeun nyieun sahenteuna dua subnets (ngabantosan upami aya masalah sareng hiji Zona Kasadiaan);

  • Listeners

- protokol balancer Anjeun. Sakumaha didadarkeun di saméméhna, pikeun beban Balancer Klasik tiasa HTTP, HTTPS, TCP sareng SSL, kanggo Network Load Balancer - TCP, UDP sareng TLS, pikeun Application Load Balancer - HTTP sareng HTTPS.

Conto pikeun Balancer Beban Klasik:

Beban Balancing kalawan AWS ELB

Tapi dina Application Load Balancer kami ningali antarmuka anu rada béda sareng logika umumna béda:

Beban Balancing kalawan AWS ELB

Komponén Load Balancer v2 (ALB sareng NLB)

Ayeuna hayu urang tingali langkung caket kana versi 2 balancers Application Load Balancer sareng Network Load Balancer. balancers ieu boga fitur komponén sorangan. Contona, konsép kayaning Grup Target mucunghul - instansi (jeung fungsi). Hatur nuhun kana komponén ieu, urang boga kasempetan pikeun nangtukeun mana tina Grup Target urang hoyong ngarahkeun lalulintas.

Beban Balancing kalawan AWS ELB

Beban Balancing kalawan AWS ELB

Dina istilah basajan, dina Target Grup urang tangtukeun instansi dimana lalulintas bakal datang. Upami dina Balancer Beban Klasik anu sami anjeun ngan saukur nyambungkeun inténsitas kana pangimbang, teras dina Balancer Beban Aplikasi anjeun mimiti:

  • nyieun Load Balancer;
  • nyieun grup Target;
  • langsung via palabuhan diperlukeun atawa aturan Load Balancer ka Grup Target diperlukeun;
  • dina Grup Target anjeun nangtukeun instansi.

Logika operasi ieu sigana langkung rumit, tapi kanyataanna langkung merenah.

Komponén salajengna nyaéta Aturan pangdéngé (aturan pikeun routing). Ieu ngan manglaku ka Application Load Balancer. Upami dina Network Load Balancer anjeun ngan saukur nyiptakeun Listener, sareng ngirimkeun lalu lintas ka grup Target khusus, maka dina Application Load Balancer sadayana. leuwih senang jeung merenah.

Beban Balancing kalawan AWS ELB

Ayeuna hayu urang nyebutkeun sababaraha kecap ngeunaan komponén salajengna - IP elastis (alamat statik pikeun NLB). Lamun aturan routing aturan Listener kapangaruhan ukur Aplikasi Beban Balancer, lajeng elastis IP ngan mangaruhan Network Beban Balancer.

Hayu urang ngadamel Network Load Balancer:

Beban Balancing kalawan AWS ELB

Beban Balancing kalawan AWS ELB

Sareng nalika prosés nyiptakeun urang bakal ningali yén urang dibéré kasempetan pikeun milih IP elastis:

Beban Balancing kalawan AWS ELB

IP elastis nyayogikeun alamat IP tunggal anu tiasa dikaitkeun sareng instansi EC2 anu béda dina waktosna. Upami instansi EC2 ngagaduhan alamat IP Elastis sareng instansi éta ditungtungan atanapi dihentikan, anjeun tiasa langsung ngahubungkeun instansi EC2 énggal sareng alamat IP Elastis. Nanging, aplikasi anjeun ayeuna moal eureun damel, sabab aplikasi masih ningali alamat IP anu sami, sanaos EC2 nyata parantos robih.

di dieu kasus pamakéan sejen dina topik naha IP elastis diperlukeun. Tingali, urang ningali 3 alamat IP, tapi aranjeunna moal cicing di dieu salamina:

Beban Balancing kalawan AWS ELB

Amazon robah aranjeunna kana waktu, meureun unggal 60 detik (tapi dina prakna, tangtosna, kirang sering). Ieu ngandung harti yén alamat IP bisa robah. Sareng dina kasus Network Load Balancer, anjeun ngan ukur tiasa ngabeungkeut alamat IP sareng nunjukkeun kana aturan, kawijakan, jsb.

Beban Balancing kalawan AWS ELB

Ngariksa kacindekan

ELB nyayogikeun panyebaran otomatis lalu lintas anu asup kana sababaraha target (wadah, instansi Amazon EC2, alamat IP, sareng fungsi Lambda). ELB sanggup ngadistribusikaeun lalu lintas kalayan beban anu béda-béda dina hiji Zona Kasadiaan tunggal sareng dina sababaraha Zona Kasadiaan. Pangguna tiasa milih tina tilu jinis pangimbang anu nyayogikeun kasadiaan anu luhur, autoscaling, sareng panyalindungan anu saé. Sadaya ieu penting pikeun mastikeun kasabaran kasalahan tina aplikasi anjeun.

Kauntungan utama:

  • kasadiaan tinggi. Perjangjian jasa nganggap 99,99% kasadiaan pikeun kasaimbangan beban. Contona, sababaraha Zona Kasadiaan mastikeun yén patalimarga ngan ukur diolah ku objék anu séhat. Kanyataanna, anjeun tiasa saimbang beban sakuliah wewengkon, Mindahkeun lalulintas keur target cageur dina zona kasadiaan béda;
  • kaamanan. ELB tiasa dianggo sareng Amazon VPC, nyayogikeun sagala rupa kamampuan kaamanan - manajemén sertipikat terpadu, auténtikasi pangguna, sareng dekripsi SSL/TLS. Sadayana nyayogikeun manajemén terpusat sareng fleksibel tina setélan TLS;
  • élastisitas. ELB tiasa ngadamel parobahan ngadadak dina lalu lintas jaringan. Sareng integrasi jero sareng Skala Otomatis masihan aplikasi sumber daya anu cekap upami bebanna robih, tanpa peryogi campur tangan manual;
  • kalenturan. Anjeun tiasa make alamat IP pikeun rute requests ka target aplikasi Anjeun. Ieu nyadiakeun kalenturan nalika virtualizing aplikasi target, sahingga méré kamampuhan pikeun host sababaraha aplikasi dina hiji conto. Kusabab aplikasi tiasa nganggo port jaringan tunggal sareng gaduh grup kaamanan anu misah, komunikasi antara aplikasi disederhanakeun nalika urang gaduh, sebutkeun, arsitéktur dumasar kana jasa mikro;
  • monitoring jeung audit. Anjeun tiasa ngawas aplikasi sacara real waktos nganggo fitur Amazon CloudWatch. Urang ngobrol ngeunaan metrics, log, tracking pamundut. Dina istilah basajan, anjeun bakal tiasa ngaidentipikasi masalah sareng pinpoint bottlenecks kinerja rada akurat;
  • kasaimbangan beban hibrid. Kamampuhan pikeun ngamuat kasaimbangan antara sumber daya di premis sareng AWS nganggo pangimbang beban anu sami ngagampangkeun migrasi atanapi ngalegaan aplikasi di premis ka awan. Penanganan gagalna ogé disederhanakeun nganggo awan.

Upami anjeun resep kana detil, ieu sababaraha tautan anu langkung mangpaat tina situs wéb Amazon resmi:

  1. Balancing beban elastis.
  2. Kamampuhan Balancing Beban elastis.

sumber: www.habr.com

Tambahkeun komentar