VK Cloud logo

Жүктеме теңгергіші

Жалпы мәліметтер

Жүктеме теңгергіші кіріс трафикті бірнеше виртуалды бэкенд-серверлер арасында бөлуге мүмкіндік береді және сол арқылы осы серверлер ұсынатын сервистер үшін жоғары қолжетімділікті қамтамасыз етеді. Бір немесе бірнеше сервер істен шыққан жағдайда, трафик қалған серверлерге қайта бағытталады. Сондай-ақ жеке түрі жүктеме теңгергіші VK Cloud басқа сервистерінің жұмысын қамтамасыз ету үшін пайдаланылады.

VK Cloud жүктеме теңгергіші OpenStack Octavia негізінде құрылған, оның негізінде HAProxy жатыр. OpenStack Octavia жүктеме теңгергішіне келесі мүмкіндіктерді береді:

  • HTTP-, HTTPS-, UDP- және TCP-қосылымдарын проксилеу және теңгеру (соңғылары — соның ішінде proxy protocol қолдауымен).

    TCP протоколын пайдаланғанда Proxy protocol серверге қосылымдар туралы ақпаратты (мысалы, клиенттің IP-мекенжайын) беруге мүмкіндік береді. Сервер мұндай ақпаратты өңдей алуы үшін, оның өзі де осы протоколды қолдауы керек. Proxy protocol NGINX, Apache, Envoy және басқа өнімдерде қолдау табады.

  • HTTP/1.1-ге қосымша HTTP/2-қосылымдарын проксилеу және теңгеру.

  • SSL-қосылымдарын жүктеме теңгергішінде терминациялау.

  • Тайм-ауттарды (time-outs) икемді баптау.

  • Әртүрлі теңгеру әдістері.

  • Бэкендтер үшін салмақтарды баптау.

Істен шығуға төзімділік үшін жүктеме теңгергішінің екі данасы қолданылады, олардың бірі active режимінде, ал екіншісі standby режимінде болады. Күйлерді синхрондау және осы теңгергіштер арасында трафикті ауыстыру VRRP протоколының көмегімен орындалады. Пайдаланушы тұрғысынан мұндай істен шығуға төзімді конфигурация бір жүктеме теңгергіші сияқты көрінеді.

Жүктеме теңгергішінің ең жоғары өнімділігін қамтамасыз ету үшін:

  • Бэкендтерге HTTP/1.1 протоколы бойынша keep-alive қолдауымен қосылуды қамтамасыз етіңіз.
  • Жүктеме теңгергішіне кіретін трафик үшін стандартты Ethernet MTU 1500 байт мәнін пайдаланыңыз.

Осы шарттар орындалған жағдайда, жүктеме теңгергіші секундына 1-ден 1,5 гигабитке дейін трафикті және секундына шамамен 10000 сұрауды өңдеп, шекті өнімділікті көрсете алады.

Жүктеме теңгергіштерінің түрлері

VK Cloud жүйесінде теңгергіштің екі түрі бар. Теңгергіш түрін жеке кабинетте көруге болады.

Теңгергіштердің әртүрлі түрлері әртүрлі тарифтеледі.

Мұндай теңгергішті пайдаланушы жасайды және қолданбалардың істен шығуға төзімділігін және икемді масштабталуын қамтамасыз ету үшін пайдаланылуы мүмкін:

Теңгеру әдістері

VK Cloud ішінде жүктемені теңгерудің үш әдісі қолданылады:

  • LEAST_CONNECTIONS — ең аз қосылым орнатылған бэкенд пайдаланылады.
  • ROUND_ROBIN — барлық бэкендтер ретімен кезектесіп таңдалады.
  • SOURCE_IP — бэкенд ерікті түрде таңдалып, клиенттің нақты IP-мекенжайы үшін сессияға бекітіледі.

Жүктемені теңгеру әдісі жеке кабинетте теңгеру ережесін қосу кезінде таңдалады.