• Главная
  • DataScience
  • CloudServicesEngineer
  • Поиск
Data Science

BN. Yandex Network Load Balancer

Кратко:

  • Настройка сетевой балансировки в Yandex Network Load Balancer требует создания целевой группы и обработчика.
  • Целевая группа представляет собой список внутренних IP-адресов и подсетей, по которым распределяются запросы пользователей.
  • Обработчик принимает соединения от пользователей, распределяет их между IP-адресами целевой группы и передаёт обратный трафик клиентам.
  • Адресация трафика строится по принципу 5-tuple, учитывая адрес и порт отправителя, адрес и порт целевого ресурса, а также протокол передачи информации.
  • При создании сетевого балансировщика необязательно настраивать обработчик сразу, его можно добавить позднее.
  • Целевую группу можно подключить к нескольким балансировщикам, используя разные целевые порты.
  • После подключения целевой группы балансировщик начнёт проверять состояние целевых ресурсов и сможет распределять нагрузку между ними.

Yandex Network Load Balancer

Чтобы настроить сетевую балансировку в Yandex Network Load Balancer, разберёмся с двумя базовыми понятиями.
Первое — это целевая группа, т. е. набор серверов или других облачных ресурсов, по которым распределяются запросы пользователей. Целевая группа выглядит как список внутренних IP-адресов и подсетей, к которым эти IP-адреса относятся.
 
Допустим, вам нужно распределить трафик по пяти виртуальным машинам (ВМ). В этом случае целевая группа балансировщика может выглядеть так:
10.10.10.15, e9b7a3k9rqq3j0j36m9u
10.10.10.20, e9b7a3k9rqq3j0j36m9u
10.10.20.31, e2lgvksek5io187a48q5
10.10.20.10, e2lgvksek5io187a48q5
10.10.30.20, b0cnsvg8jfoe938ktqp4
 
Здесь перечислены пять внутренних IP-адресов, причём для каждого адреса указан идентификатор его подсети. Все адреса целевых ресурсов должны принадлежать одной облачной сети.
 
Чтобы посмотреть список подсетей и их идентификаторов, откройте в консоли управления раздел Virtual Private Cloud и перейдите на вкладку
 
Облачные сети.
Второе базовое понятие — обработчик. Это приложение принимает соединения от пользователей, распределяет их между IP-адресами целевой группы, а затем передаёт обратный трафик клиентам.
 
Адресация трафика строится по принципу 5-tuple: учитывается адрес и порт отправителя, адрес и порт целевого (принимающего) облачного ресурса, а также протокол передачи информации. Для приёма трафика обработчик использует порты от 1 до 32767.
При создании сетевого балансировщика необязательно сразу настраивать обработчик. Если хотите, добавьте его позднее.
Кроме того, вы можете задать несколько обработчиков. Это пригодится, если запущенный на ВМ сервис предполагает использование нескольких портов сразу. К примеру, вы используете надстройку над Git наподобие GitLab. Значит, одновременно должны быть доступны и веб-интерфейс, и сервер Git, работающие на разных портах.
Целевую группу можно подключить к нескольким балансировщикам — например, чтобы балансировщики на портах 80 и 443 смогли обрабатывать и HTTP-, и HTTPS-запросы. Однако в этом случае вам придётся использовать разные целевые порты. Если группа подключена к одному балансировщику на порту 8080, то к другому балансировщику вам придётся подключить её на порту 8081.
После подключения целевой группы балансировщик начнёт проверять состояние целевых ресурсов и сможет распределять нагрузку между ними.
 
Проверьте себя
Какие задачи решает Yandex Network Load Balancer?
 
Обеспечивает отказоустойчивость - Правильно
Распределяет веб-трафик - Правильно
 
Возможно ли создать балансировщик без обработчика?
 
Да - Правильно

 

Категория: Cloud Services Engineer
Просмотров: 896

BN. Балансировка нагрузки

Кратко:

  • Развёртывание копий сайта на нескольких ВМ помогает сделать сайт устойчивым к наплыву посетителей.
  • Сетевая балансировка распределяет нагрузку между ВМ, каждая из которых получает 20% запросов.
  • Балансировщик принимает запросы от пользователей, распределяет их по ВМ и передаёт ответы пользователям.
  • Абстрактность имён позволяет сервису, передающему трафик, не знать адреса и названия ВМ.
  • Балансировка защищает веб-приложение от выхода ВМ из строя и позволяет обновлять код сайта или веб-приложения.
  • Размещение ВМ в разных зонах доступности обеспечивает максимальную доступность сайта или приложения.

Балансировка нагрузки

Вы разрабатываете сайт интернет-магазина и хотите, чтобы он был готов к неожиданному наплыву посетителей и никогда не падал. Абсолютной стабильности, конечно, не добиться. Но в ваших силах сделать сайт устойчивым ко многим проблемам.
Пережить одновременный визит множества пользователей поможет развёртывание копий сайта на нескольких ВМ. В таком случае нагрузка равномерно распределится между ними. Если машин пять — то каждой достанется 20% запросов. Такой подход называется сетевой балансировкой.
Работает это так. Перед ВМ с сайтом ставят балансировщик — приложение, которое принимает запросы от пользователей и распределяет их по ВМ, а затем получает от ВМ ответы и передаёт (проксирует) их пользователям. При этом сервису, передающему трафик, не нужно знать адреса и названия ВМ: процедура разрешения имён делегируется балансировщику. Это называется абстрактностью имён.
Балансировка не только помогает распределить нагрузку между серверами, но и защищает веб-приложение от выхода ВМ из строя. Предположим, на одном из серверов возникли неполадки и он не может обрабатывать запросы. В этом случае балансировщик перераспределит нагрузку между другими серверами, и с этого момента недоступность сервиса для конечных пользователей прекратится.
image
Кроме того, балансировщик позволяет незаметно для пользователей обновлять код сайта или веб-приложения на серверах: вы просто поочередно убираете ВМ из-под балансировки, обновляете софт, после чего возвращаете их под балансировку.
Добиться максимальной доступности сайта или приложения можно, разместив ВМ в разных зонах доступности. Если в одной зоне произойдёт авария и все ВМ выйдут из строя — балансировщик начнёт распределять трафик по ВМ в других зонах, пока работа отключённой зоны не восстановится.
 
Проверьте себя
 
Преимущества балансировки — это:
 
Абстрактность имён - Правильно
Устойчивость к отказам - Правильно
Повышение производительности - Правильно
 
 
Категория: Cloud Services Engineer
Просмотров: 702

VS. Создаем группу безопасности и открываем доступ к серверу

Кратко:

  • Создание группы безопасности для доступа к серверу NGINX.
  • Использование вкладки "Группы безопасности" Virtual Private Network для создания группы.
  • Ввод имени группы (yc-security) и выбор сети (yc).
  • Добавление правил для исходящего трафика с портами 80, 443 и 22.
  • Создание правил для входящего трафика с портами 80 и 22.
  • Установка веб-сервера NGINX на виртуальной машине Ubuntu 22.04.
  • Открытие порта 80 для доступа к серверу из браузера.

Создаем группу безопасности и открываем доступ к серверу

Давайте попробуем создать группу безопасности и сделать доступными страницы, предоставляемые веб-сервером NGINX.
  1. Перейдите на вкладку Группы безопасности сервиса Virtual Private Network и нажмите кнопку Создать группу.
  1. Введите имя группы yc-security и выберите сеть yc (вы создали её на одном из предыдущих практических занятий).
  2. В блоке Правила добавьте правила для исходящего трафика. Опишите правило, укажите диапазон портов 80 (HTTP) и протокол TCP, выберите назначение "CIDR" 0.0.0.0/0 . Создайте аналогичные исходящие правила для портов 443 (HTTPS) и 22 (SSH). Для входящего трафика добавьте правила для 80 и 22 портов, чтобы подключаться к веб-серверу и управлять ВМ извне.
    Вы увидите созданную группу в списке групп безопасности.
    Если инициировано соединение по определенному порту и протоколу с ВМ и есть исходящее правило, то значит и на входящий трафик будет разрешена передача данных в эту же сеть, на этот же протокол и порт.
    Если назначить сетевому интерфейсу ВМ группу безопасности без правил, ВМ не сможет передавать и принимать трафик.
  1. Создайте виртуальную машину на базе Ubuntu 22.04, выберите сеть yc и вновь созданную группу безопасности yc-security в сетевых настройках создаваемой ВМ, дождитесь запуска машины, подключитесь к ВМ по SSH и установите веб-сервер NGINX (по умолчанию он отсутствует). Для этого выполните команду:
sudo apt-get install nginx
  1. Установка возможна, поскольку вы открыли порт 80: команда apt-get использует его для получения пакетов с ПО.
  2. После установки сервер автоматически запустится и будет доступен извне благодаря открытому порту 80. Проверьте это, зайдя через браузер на публичный IP-адрес ВМ, который найдёте на странице параметров машины в консоли управления.

👉 Поздравляем, вы завершили тему «Виртуальная сеть»!

В этой теме вы узнали, как создавать виртуальную облачную сеть и подсети, настраивать статическую маршрутизацию и группы безопасности. В следующей теме вы познакомитесь с инструментом балансировки сетевой нагрузки и научитесь настраивать проверку состояния ВМ, чтобы при сбое своевременно перенаправлять трафик на работающие ВМ.
 
 
 
Категория: Cloud Services Engineer
Просмотров: 645

VS. Группы безопасности

Кратко:

  • Группы безопасности выполняют функцию межсетевого экрана и контролируют входящий и исходящий трафик ВМ.
  • В консоли управления инструмент находится в разделе Virtual Private Cloud.
  • Если в облаке нет групп безопасности, нужно перейти по ссылке https://console.cloud.yandex.ru/link/vpc/security-groups.
  • Группа безопасности назначается сетевому интерфейсу ВМ и содержит правила получения и отправки трафика.
  • Правила определяют протоколы и IP-адреса для приема и отправки трафика.
  • Если на ВМ назначены несколько групп безопасности, учитываются правила из всех групп.
  • Если нет правил для исходящего трафика, ответный трафик будет поступать на ВМ, но не инициироваться.

Группы безопасности

Группы безопасности выполняют функцию межсетевого экрана и позволяют контролировать входящий и исходящий трафик ВМ.
В консоли управления этот инструмент находится в разделе Virtual Private Cloud. Чтобы переключиться на него, нужно нажать кнопку Группы безопасности (значок щита) в панели слева.
Если в вашем облаке групп безопасности ещё нет, эта кнопка может не отображаться в интерфейсе. В этом случае для создания группы перейдите по ссылке https://console.cloud.yandex.ru/link/vpc/security-groups. После того как первая группа безопасности будет создана, кнопка Группы безопасности появится на боковой панели каждой облачной сети.
Группа безопасности назначается сетевому интерфейсу при создании или изменении ВМ и содержит правила получения и отправки трафика.
 
👉 Главный принцип: запрещено всё, что не разрешено явно.
Поэтому, если назначить сетевому интерфейсу ВМ группу безопасности без правил, ВМ не сможет передавать и принимать трафик и у вас не получится зайти на неё по SSH.

Правила

Нажмите кнопку Создать группу и добавьте для неё правила: определите протоколы и IP-адреса для приёма и отправки трафика.
Если сетевому интерфейсу ВМ назначены несколько групп безопасности, то учитываются правила из всех групп. В этом случае на ВМ поступит трафик, который подпадает хотя бы под одно из правил в группах.
Правила также хранят состояния сессий. Группы безопасности отслеживают состояние соединений и сопоставляют трафик ответа с уже открытой сессией, чтобы разрешить его приём.
Например, правило позволяет ВМ создать исходящую сессию на 80-й порт какого-либо IP-адреса. Ответы от 80-го порта на порт источника, откуда отправлялся запрос, будут автоматически разрешены.

Виды правил

  • Для входящего трафика. Определяют диапазоны адресов и портов или другие группы безопасности, откуда ВМ могут принимать трафик.
  • Для исходящего трафика. Определяют диапазоны адресов и портов или другие группы безопасности, куда ВМ могут отправлять трафик.
Если в группе безопасности есть правила только для исходящего трафика, но нет для входящего — ответный трафик будет поступать на ВМ. А если есть правила только для входящего трафика, ВМ сможет лишь отвечать на запросы, но не инициировать их.
Если две ВМ находятся в одной группе безопасности без правил, они не смогут обмениваться трафиком. Выберите любое решение:
  • Используйте правило Self для всей группы. Оно разрешает любой трафик между ресурсами, которые относятся к одной и той же группе безопасности.
  • Точно укажите адреса и порты ресурсов в правилах.

IP-адреса и диапазоны адресов

В правилах вы можете разрешать прием и отправку трафика на IP-адреса или диапазоны адресов. Указывайте конкретный IP-адрес в правилах с помощью СIDR с маской /32.
Чтобы разрешить передачу трафика на любые адреса по любым протоколам, укажите CIDR 0.0.0.0 с маской /0 и в поле выбора протокола выберите Любой.
Группы безопасности не блокируют отправку трафика на адреса сервисов, необходимых для работы ВМ и виртуальной сети. Это:
  • Адрес сервера метаданных — 169.254.169.254.
  • Адрес DNS-сервера — второй по порядку внутренний IP-адрес (обычно x.x.x.2) в каждой подсети.
Чтобы сетевой балансировщик мог проверять состояние подключённых к нему ресурсов, разрешите передачу трафика между диапазонами адресов 198.18.235.0/24 и 198.18.248.0/24 и целевыми ресурсами.

Параметры по умолчанию

Если не указано иное, группа безопасности автоматически создаётся в новой сети и назначается ВМ при подключении к подсетям новой сети, если у них нет ни одной группы безопасности.
Группа безопасности по умолчанию имеет следующие свойства:
  • в новой сети разрешает весь сетевой трафик в обоих направлениях — исходящий (egress) и входящий (ingress);
  • действует для трафика, проходящего через все подсети в сети, где она создана;
  • работает лишь в том случае, если на объект еще явно не назначена группа безопасности;
  • её невозможно удалить, она автоматически удаляется вместе с удалением сети.
Вы создали группу безопасности с открытым портом 80. Как зайти на ВМ по SSH?
 
Открыть порт 22 - Правильно

 

Категория: Cloud Services Engineer
Просмотров: 740

VS. Статическая маршрутизация

Кратко:

  • Статическая маршрутизация позволяет направлять трафик из подсети на заданные диапазоны IP-адресов через ВМ, указанные в качестве шлюза.
  • Таблицы маршрутизации содержат статические маршруты, состоящие из префикса целевой подсети и внутреннего IP-адреса шлюза.
  • Таблица маршрутизации привязывается к подсети и не может содержать повторяющихся префиксов.
  • Префикс 0.0.0.0/0 в маршруте означает, что весь трафик будет направлен через указанный для этого префикса шлюз.
  • В Yandex Cloud поддерживаются только префиксы назначения вне виртуальной сети.
  • При создании маршрута в качестве шлюза можно указать свободный внутренний IP-адрес.
  • Статические маршруты используются для построения сетевых маршрутов и отказоустойчивых схем с маршрутами в нескольких зонах доступности.
  • Изменение маршрутов трафика в интернет может привести к потере доступа к публичным IP-адресам ВМ из подсетей с привязанными таблицами маршрутизации.

Статическая маршрутизация

С помощью статической маршрутизации вы можете направлять трафик из подсети на заданные диапазоны IP-адресов через ВМ, указанные в качестве шлюза (next hop). Для этого используются таблицы маршрутизации. Они содержат статические маршруты, состоящие из префикса целевой подсети в нотации CIDR и внутреннего IP-адреса шлюза.
Чтобы создать таблицу маршрутизации со статическим маршрутом, в консоли управления в разделе Virtual Private Cloud перейдите на страницу облачной сети, слева выберите вкладку Таблицы маршрутизации и нажмите кнопку Создать таблицу маршрутизации.
Укажите название таблицы, добавьте статический маршрут и нажмите кнопку Создать таблицу маршрутизации.
Таблица маршрутизации привязывается к подсети и не может содержать повторяющихся префиксов. Трафик из подсети с привязанной таблицей будет направляться к указанным в маршрутах префиксам через соответствующий адрес шлюза.
Префикс 0.0.0.0/0 в маршруте означает, что весь трафик, если он не направлен по другим маршрутам, будет направлен через указанный для этого префикса шлюз.
Например, к подсети с CIDR 10.1.0.0/24 привязана таблица маршрутизации с такими маршрутами:
 
Имя Префикс Шлюз
another-network 192.168.0.0/16 10.1.0.5
internet 0.0.0.0/0 10.1.0.10
 
 
 
В этом случае весь трафик в подсеть 192.168.0.0/16, которая находится в другой виртуальной сети, будет направляться через ВМ с адресом 10.1.0.5 — при условии, что у ВМ есть интерфейс в другой виртуальной сети. Весь остальной трафик — через ВМ 10.1.0.10. При этом переопределение маршрута для префикса 0.0.0.0/0 может повлиять на внешнюю доступность ВМ из подсети с таблицей, где есть такой маршрут.
В Yandex Cloud поддерживаются только префиксы назначения вне виртуальной сети (например, префиксы подсетей другой сети Yandex Cloud или вашей локальной сети).
При создании маршрута в качестве шлюза можно указать свободный внутренний IP-адрес, который не привязан ни к одной ВМ. В этом случае маршрут заработает, когда будет запущена ВМ с соответствующим IP-адресом.

Для чего используются статические маршруты

Есть две типичные схемы использования статических маршрутов в Yandex Cloud:
  1. Сетевой маршрут строится до нужного префикса через одну ВМ. В качестве шлюза используется внутренний IP-адрес NAT INSTANCE 1.
    image
  1. Отказоустойчивая схема с маршрутами в нескольких зонах доступности. Создайте ВМ в разных зонах доступности и проложите через них маршруты до одной подсети назначения. Если ВМ в одной зоне выйдет из строя — у ВМ из других зон сохранится связность с подсетью назначения.
    image

Изменение маршрутов трафика в интернет

Если в префиксе назначения у маршрута из таблицы маршрутизации указан префикс адресов из интернета, то доступ к таким адресам и с таких адресов станет невозможным через публичные IP-адреса ВМ из подсетей, к которым привязана эта таблица.
Допустим, есть машина vm-1 с публичным IP-адресом, подключенная к подсети my-subnet. Если к подсети my-subnet привязать таблицу my-route-table с маршрутом для префикса 0.0.0.0/0 (все адреса) через шлюз 10.0.0.5, то доступ через публичный адрес к vm-1 пропадёт. Это произойдёт потому, что весь трафик в подсеть my-subnet и из неё теперь будет направляться через адрес шлюза (см. первую схему).
Чтобы сохранить входящую связность с облачными ресурсами через публичный адрес, вы можете:
  • вынести ресурсы с публичными адресами в отдельную подсеть;
  • вместо настройки маршрута в интернет включить для подсети доступ в интернет через NAT (функция находится на стадии Preview и включается по запросу в техподдержку).

 

Категория: Cloud Services Engineer
Просмотров: 666
  1. VS. Публичные IP-адреса
  2. VS. Создание новой сети с подсетями и ВМ
  3. VS. Виртуальные сети, подсети, IP-адресация
  4. DSO. Что такое образы и публичные образы

Страница 17 из 19

  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
© Gantry Framework 2016 - 2026
Developed by RocketTheme exclusively
for Gantry 5.
  • Главная
  • Начало
  • Карта
Back to top