Що таке балансування навантаження між зонами?

Як зазначено в документації AWS:

За допомогою крос-зонного балансування навантаження кожен вузол балансувальника навантаження розподіляє запити рівномірно серед зареєстрованих екземплярів у всіх увімкнених зонах доступності. Якщо крос-зонне балансування вимкнене, кожен вузол балансувальника навантаження розподіляє запити рівномірно лише серед зареєстрованих екземплярів у своїй зоні доступності.

Простіше кажучи, в налаштуванні Multi-AZ, якщо крос-зонне балансування не ввімкнене, балансувальник навантаження передає трафік тільки до цілей у тій самій зоні доступності, з якої почався запит.

pic

Зображення: AWS Docs

На зображенні вище можна побачити:

  • Кожна ціль у зоні доступності A обробляє 25% трафіку, тоді як кожна ціль у зоні доступності B обробляє лише 6,25%.

Однак за допомогою крос-зонного балансування навантаження трафік розподіляється серед усіх зареєстрованих цілей, незалежно від зон доступності, в яких вони знаходяться.

Якщо розглянути таку ж саму конфігурацію цілей з увімкненим крос-зонним балансуванням, то можна побачити, що кожна з 10 цілей отримує 10% трафіку.

pic

Зображення: AWS Docs

Якщо ви використовуєте Application Load Balancer, крос-зонне балансування навантаження увімкнене за замовчуванням.

У разі використання Network Load Balancer, вам потрібно увімкнути крос-зонне балансування, оскільки воно за замовчуванням вимкнене.

Але чому потрібне крос-зонне балансування навантаження?

  • Це допомагає більш ефективно використовувати зареєстровані цілі.
  • Це покращує відмовостійкість: якщо одна зона зазнає збою, інша зона вже готова обслуговувати трафік.

Перекладено з: What is Cross-Zone Load Balancing?

Leave a Reply

Your email address will not be published. Required fields are marked *