Добавить обработчик к сетевому балансировщику
Чтобы добавить обработчик к сетевому балансировщику:
-
В консоли управления выберите каталог, где требуется добавить обработчик к балансировщику.
-
В списке сервисов выберите Network Load Balancer.
-
В строке балансировщика, к которому нужно добавить обработчик, нажмите значок
-
В открывшемся окне:
- Укажите порт, на котором обработчик будет принимать входящий трафик, из диапазона от 1 до 32767.
- Укажите целевой порт, на который балансировщик будет направлять трафик, из диапазона от 1 до 32767.
- Нажмите Добавить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы добавить обработчик к сетевому балансировщику:
-
Получите список балансировщиков:
yc load-balancer network-load-balancer list +----------------------+--------------------+-------------+----------+----------------+------------------------+----------+ | ID | NAME | REGION ID | TYPE | LISTENER COUNT | ATTACHED TARGET GROUPS | STATUS | +----------------------+--------------------+-------------+----------+----------------+------------------------+----------+ | c58r8boim8qfkcqtuioj | test-load-balancer | ru-central1 | EXTERNAL | 0 | | INACTIVE | +----------------------+--------------------+-------------+----------+----------------+------------------------+----------+
-
Добавьте обработчик, указав его имя, порт и версию IP-адреса:
yc load-balancer network-load-balancer add-listener c580id04kvumgn7ssfh1 \ --listener name=test-listener,port=80,external-ip-version=ipv4 .....done id: c58r8boim8qfkcqtuioj folder_id: aoerb349v3h4bupphtaf created_at: "2019-04-01T09:29:25Z" name: test-load-balancer region_id: ru-central1 status: INACTIVE type: EXTERNAL listeners: - name: test-listener address: <IP-адрес обработчика> port: "80" protocol: TCP
Добавить обработчик можно с помощью метода API addListener.
Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). Terraform и его провайдеры распространяются под лицензией Mozilla Public License.
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.
При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.
Подробнее о Terraform читайте в документации.
-
Откройте файл конфигурации Terraform и добавьте блок
listener
в описании сетевого балансировщика:... resource "yandex_lb_network_load_balancer" "foo" { name = "my-network-load-balancer" listener { name = "my-listener" port = 9000 external_address_spec { ip_version = "ipv4" } } attached_target_group { target_group_id = "${yandex_lb_target_group.my-target-group.id}" healthcheck { name = "http" http_options { port = 9000 path = "/ping" } } } } ...
Где:
-
name
— имя сетевого балансировщика. Формат имени:- Длина — от 3 до 63 символов.
- Может содержать строчные буквы латинского алфавита, цифры и дефисы.
- Первый символ — буква. Последний символ — не дефис.
-
listener
— описание параметров обработчика для сетевого балансировщика:-
name
— имя обработчика. Формат имени:- Длина — от 3 до 63 символов.
- Может содержать строчные буквы латинского алфавита, цифры и дефисы.
- Первый символ — буква. Последний символ — не дефис.
-
port
— порт, на котором сетевой балансировщик будет принимать входящий трафик, из диапазона от 1 до 32767. -
external_address_spec
— описание внешнего IP-адреса. Укажите версию IP-адреса (ipv4 или ipv6). По умолчанию ipv4.
-
-
attached_target_group
— описание параметров целевой группы для сетевого балансировщика:target_group_id
— идентификатор целевой группы.healthcheck
— описание параметров проверки состояния. Укажите имя, порт из диапазона от 1 до 32767 и путь, по которому будут выполняться проверки.
Более подробную информацию о параметрах ресурса
yandex_lb_network_load_balancer
в Terraform, см. в документации провайдера. -
-
Проверьте конфигурацию командой:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминал слово
yes
и нажмите Enter.Проверить изменение сетевого балансировщика можно в консоли управления или с помощью команды CLI:
yc load-balancer network-load-balancer get <имя сетевого балансировщика>
Примеры
Добавление обработчика внутреннему сетевому балансировщику
Выполните команду, указав имя обработчика, порт, идентификатор подсети и внутренний адрес из диапазона адресов подсети:
yc load-balancer network-load-balancer add-listener b7rc2h753djb3a5dej1i \
--listener name=test-listener,port=80,internal-subnet-id=e9b81t3kjmi0auoi0vpj,internal-address=10.10.0.14
-
Откройте файл конфигурации Terraform и добавьте блок
listener
в описании внутреннего сетевого балансировщика:Пример добавление обработчика внутреннему сетевому балансировщику с помощью Terraformresource "yandex_lb_network_load_balancer" "internal-lb-test" { name = "internal-lb-test" type = "internal" listener { name = "my-listener" port = 9000 internal_address_spec { subnet_id = "b0cp4drld130kuprafls" ip_version = "ipv4" } } }
Более подробную информацию о ресурсах, которые вы можете создать с помощью Terraform, см. в документации провайдера.
-
Проверьте корректность конфигурационных файлов.
-
В командной строке перейдите в папку, где вы создали конфигурационный файл.
-
Выполните проверку с помощью команды:
terraform plan
Если конфигурация описана верно, в терминале отобразится список создаваемых ресурсов и их параметров. Если в конфигурации есть ошибки, Terraform на них укажет.
-
-
Разверните облачные ресурсы.
-
Если в конфигурации нет ошибок, выполните команду:
terraform apply
-
Подтвердите создание ресурсов: введите в терминал слово
yes
и нажмите Enter.После этого в указанном каталоге будут созданы все требуемые ресурсы. Проверить появление ресурсов и их настройки можно в консоли управления или с помощью команды CLI:
yc load-balancer network-load-balancer get <имя внутреннего сетевого балансировщика>
-