Создать коннектор для Message Queue
-
В консоли управления
перейдите в каталог, в котором хотите создать коннектор. -
Выберите сервис Serverless Integrations.
-
На панели слева нажмите
EventRouter. -
Выберите нужную шину.
-
Перейдите на вкладку
Коннекторы. -
В правом верхнем углу нажмите Создать коннектор. В открывшемся окне:
-
В поле Источник выберите
Yandex Message Queue
. -
В блоке Настройки сообщений Message Queue:
- Выберите каталог и очередь сообщений.
- Выберите сервисный аккаунт, у которого есть права на чтение из очереди сообщений.
-
(Опционально) Нажмите кнопку
Настройки группирования сообщений и укажите:-
Таймаут видимости — время в часах, на которое сообщения скрываются из очереди после того, как один из получателей принял сообщение. Допустимые значения от 0 до 12 часов, значение по умолчанию — 0.
-
Размер группы — максимальное количество сообщений, которые EventRouter группирует перед отправкой из источника в правило. Допустимые значения от 0 до 12, значение по умолчанию — 10.
-
Таймаут опроса — максимальное время в миллисекундах, в течение которого EventRouter группирует сообщения перед отправкой из источника в правило. Допустимые значения от 0 до 20 секунд, значение по умолчанию — 10 секунд.
Коннектор группирует сообщения не дольше указанного таймаута опроса и отправляет их в правило. Число сообщений при этом не превышает указанного размера группы.
-
-
Раскройте блок Дополнительные параметры:
-
Введите имя и описание коннектора. Требования к имени:
- Длина — от 3 до 63 символов.
- Может содержать строчные и заглавные буквы латинского и русского алфавита, цифры, дефисы, подчеркивания и пробелы.
- Первый символ должен быть буквой. Последний символ не может быть дефисом, подчеркиванием или пробелом.
-
(Опционально) Добавьте метки:
- Нажмите Добавить метку.
- Введите метку в формате
ключ: значение
. - Нажмите Enter.
-
(Опционально) Включите защиту от удаления. Пока опция включена, удалить коннектор невозможно.
-
-
Нажмите Создать.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для создания коннектора:
yc serverless eventrouter connector create message-queue --help
-
Создайте коннектор для Message Queue:
yc serverless eventrouter connector create message-queue \ --bus-id <идентификатор_шины> \ --queue-arn <ARN_очереди> \ --service-account-id <идентификатор_сервисного_аккаунта> \ --visibility-timeout <таймаут_видимости> \ --batch-size <размер_группы> \ --polling-timeout <таймаут_опроса> \ --name <имя_коннектора> \ --description "<описание_коннектора>" \ --labels <список_меток> \ --deletion-protection
Где:
-
--bus-id
— идентификатор шины EventRouter. -
--queue-arn
— ARN очереди Yandex Message Queue. -
--service-account-id
— идентификатор сервисного аккаунта, у которого есть права на чтение из очереди сообщений. -
--visibility-timeout
— время, на которое сообщения скрываются из очереди после того, как один из получателей принял сообщение. Допустимые значения от 0 до 12 часов, значение по умолчанию — 0. Необязательный параметр. -
--batch-size
— максимальное количество сообщений, которые EventRouter группирует перед отправкой из источника в правило. Допустимые значения от 0 до 12, значение по умолчанию — 10. Необязательный параметр. -
--polling-timeout
— максимальное время, в течение которого EventRouter группирует сообщения перед отправкой из источника в правило. Допустимые значения от 0 до 20 секунд, значение по умолчанию — 10 секунд. Необязательный параметр.Коннектор группирует сообщения не дольше указанного таймаута опроса и отправляет их в правило. Число сообщений при этом не превышает указанного размера группы.
-
--name
— имя коннектора. Требования к имени:- Длина — от 3 до 63 символов.
- Может содержать строчные и заглавные буквы латинского и русского алфавита, цифры, дефисы, подчеркивания и пробелы.
- Первый символ должен быть буквой. Последний символ не может быть дефисом, подчеркиванием или пробелом.
-
--description
— описание коннектора. Необязательный параметр. -
--labels
— список меток. Необязательный параметр.Можно указать одну или несколько меток через запятую в формате
<ключ1>=<значение1>,<ключ2>=<значение2>
. -
--deletion-protection
— защита от удаления коннектора. Пока опция включена, удалить коннектор невозможно. Чтобы отключить защиту от удаления, укажите параметр--no-deletion-protection
. Необязательный параметр.
Результат:
id: f66l8kgo20d8******** bus_id: f66qn4p7uk6p******** folder_id: b1g681qpemb4******** cloud_id: b1gia87mbaom******** created_at: "2025-02-21T09:04:33.248254Z" name: mq-via-cli description: created via cli labels: interface: yccli owner: admin source: message_queue: queue_arn: yrn:yc:ymq:ru-central1:b1g681qpemb4********:my-queue service_account_id: ajelprpohp7r******** visibility_timeout: 60s batch_size: "3" polling_timeout: 0.100s deletion_protection: true status: RUNNING
-
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы создать коннектор для Message Queue:
-
Опишите в конфигурационном файле параметры ресурсов, которые необходимо создать:
resource "yandex_serverless_eventrouter_connector" "example_connector" { bus_id = "<идентификатор_шины>" name = "<имя_коннектора>" description = "<описание_коннектора>" deletion_protection = <true|false> labels = { <ключ_1> = "<значение_1>" <ключ_2> = "<значение_2>" ... <ключ_n> = "<значение_n>" } ymq { queue_arn = "<ARN_очереди>" service_account_id = "<идентификатор_сервисного_аккаунта>" visibility_timeout = "1m" batch_size = "3" polling_timeout = "100ms" } }
Где:
-
bus_id
— идентификатор шины EventRouter. -
name
— имя коннектора. Требования к имени:- Длина — от 3 до 63 символов.
- Может содержать строчные и заглавные буквы латинского и русского алфавита, цифры, дефисы, подчеркивания и пробелы.
- Первый символ должен быть буквой. Последний символ не может быть дефисом, подчеркиванием или пробелом.
-
description
— описание коннектора. Необязательный параметр. -
deletion_protection
— защита от удаления коннектора:true
илиfalse
. Пока опция включена, удалить коннектор невозможно. Необязательный параметр. -
labels
— список меток. Метки задаются в формате<ключ> = "<значение>"
. Необязательный параметр. -
queue_arn
— ARN очереди Yandex Message Queue. -
service-account-id
— идентификатор сервисного аккаунта, у которого есть права на чтение из очереди сообщений. -
visibility_timeout
— время, на которое сообщения скрываются из очереди после того, как один из получателей принял сообщение. Допустимые значения от 0 до 12 часов, значение по умолчанию — 0. Необязательный параметр. -
batch_size
— максимальное количество сообщений, которые EventRouter группирует перед отправкой из источника в правило. Допустимые значения от 0 до 12, значение по умолчанию — 10. Необязательный параметр. -
polling_timeout
— максимальное время, в течение которого EventRouter группирует сообщения перед отправкой из источника в правило. Допустимые значения от 0 до 20 секунд, значение по умолчанию — 10 секунд. Необязательный параметр.Коннектор группирует сообщения не дольше указанного таймаута опроса и отправляет их в правило. Число сообщений при этом не превышает указанного размера группы.
Более подробную информацию о параметрах ресурса
yandex_serverless_eventrouter_connector
см. в документации провайдера . -
-
Создайте ресурсы:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления
или с помощью команды CLI:yc serverless eventrouter connector list
-
Чтобы создать коннектор для Message Queue, воспользуйтесь методом REST API Create для ресурса connector или вызовом gRPC API connector/Create.
По умолчанию коннектор создается запущенным. Чтобы коннектор перестал отправлять сообщения в шину, остановите его.