Подключение к серверу IBM MQ из рабочего процесса службы Azure Logic Apps

Соединитель MQ помогает подключить рабочие процессы приложения логики к серверу IBM MQ, который находится в локальной среде или в Azure. После этого рабочие процессы могут получать и отправлять сообщения, хранящиеся на сервере MQ. В этой статье содержится руководство по началу работы с соединителем MQ, в котором рассматривается подключение к серверу MQ и добавление в рабочий процесс действие MQ. Можно начать работу с просмотра отдельного сообщения в очереди, а затем попробовать другие действия.

Соединитель включает в себя клиент Microsoft MQ для взаимодействия с удаленным сервером IBM MQ по сети TCP/IP. Доступно подключение к следующим версиям IBM WebSphere MQ:

  • MQ 7.5
  • MQ 8.0
  • MQ 9.0, 9.1 и 9.2

Доступные операции

  • Служба Azure Logic Apps с несколькими клиентами. При создании ресурса приложения логики (потребление) можно подключиться к серверу MQ только с помощью управляемого соединителя MQ. Соединитель предоставляет только действия, а не триггеры.

  • Служба Azure Logic Apps с одним клиентом. При создании рабочего процесса приложения логики на основе одного клиента можно подключиться к серверу MQ с помощью управляемого соединителя MQ, содержащего только действия или встроенные операции MQ с триггерами действий и.

Дополнительные сведения о различиях между управляемым соединителем и встроенными операциями см. в разделе Ключевые термины службы Logic Apps.

В следующем списке описаны некоторые управляемые операции, доступные для MQ:

  • Просмотр отдельного сообщения или массива сообщений без удаления с сервера MQ. Для нескольких сообщений можно указать максимальное количество сообщений, возвращаемых в пакет. В противном случае возвращаются все сообщения.
  • Удаление отдельного сообщения или массива сообщений с сервера MQ.
  • Получение отдельного сообщения или массива сообщений с последующим удалением с сервера MQ.
  • отправка отдельного сообщения на сервер MQ.

Сведения обо всех операциях с управляемым соединителем и другую техническую информацию (например, свойства, ограничения и т. д.) можно найти на странице справочника по соединителю MQ.

встроенные;

В следующем списке представлены некоторые встроенные операции, доступные для MQ:

  • Если сообщение доступно в очереди, выполните определенное действие.
  • При получении одного или нескольких сообщений из очереди (автозавершение) выполните определенное действие.
  • При получении одного или нескольких сообщений из очереди (просмотр и блокировка) выполните определенное действие.
  • Получение отдельного сообщения или массива сообщений из очереди. Для нескольких сообщений можно указать максимальное количество сообщений, возвращаемых в пакет и максимальный размер пакета в КБ.
  • Отправка отдельного сообщения или массива сообщений на сервер MQ.

Эти встроенные операции MQ также обладают следующими возможностями и преимуществами других функций приложений логики в службе Logic Apps с одним клиентом:

  • Протокол TLS (шифрование данных при передаче)
  • Кодирование сообщений для операций отправки и получения
  • Поддержка интеграции виртуальной сети Azure, когда приложение логики использует план ценовой категории "Премиум" для Функций Azure

Ограничения

Соединитель MQ не использует поле Формат сообщения и не выполняет преобразования кодировки. Соединитель только помещает все данные, которые отображаются в поле сообщения, в сообщение JSON, а затем отправляет это сообщение.

Предварительные требования

  • Учетная запись и подписка Azure. Если у вас еще нет подписки Azure, зарегистрируйтесь для получения бесплатной учетной записи Azure.

  • Если используется локальный сервер MQ, установите локальный шлюз данных на сервере в пределах сети. Для работы соединителя MQ на сервере с локальным шлюзом данных требуется установка .NET Framework 4.6.

    После установки шлюза необходимо создать ресурс шлюза данных в Azure. Соединитель MQ использует этот ресурс для доступа к серверу MQ. Дополнительные сведения см. в разделе Настройка подключения к шлюзу данных.

    Примечание

    Шлюз не требуется в следующих сценариях:

    • Использование встроенных операций, а не управляемого соединителя.
    • Сервер MQ является общедоступным или доступным в Azure.
  • Рабочий процесс приложения логики, из которого необходимо получить доступ к серверу MQ. Ресурс приложения логики и ресурс шлюза в Azure должны иметь одинаковое расположение.

    Соединитель MQ не имеет триггеров, поэтому рабочий процесс уже должен начинаться с триггера, или необходимо добавить триггер в рабочий процесс. Например, можно использовать триггер повторения.

    Если вы не знакомы со службой Azure Logic Apps, воспользуйтесь кратким руководством, чтобы создать пример рабочего процесса приложения логики, выполняемого в службе Logic Apps с несколькими клиентами.

Создание подключения MQ

При первом добавлении действия MQ предлагается создать подключение к серверу MQ.

Примечание

Сейчас соединитель MQ поддерживает только проверку подлинности сервера, но не проверку подлинности клиента. Дополнительные сведения см. в разделе Проблемы при подключении и проверке подлинности.

  1. Если вы подключаетесь к локальному серверу MQ, выберите Подключаться с помощью локального шлюза данных.

  2. Укажите сведения для подключения к серверу MQ.

    Свойство Локальная среда или Azure Описание
    Шлюзы Только локальная среда Установите флажок Connect via on-premises data gateway (Подключение через локальный шлюз данных).
    Имя соединения Оба имя подключения;
    Server Оба Один из следующих значений:

    — Имя узла сервера MQ
    — IP-адрес, за которым следует двоеточие и номер порта

    Имя диспетчера очередей Оба Используемый диспетчер очередей
    Имя канала Оба Канал для подключения к диспетчеру очередей
    Имя очереди по умолчанию Оба Имя по умолчанию для очереди
    Подключиться как Оба Имя пользователя для подключения к серверу MQ
    Имя пользователя Оба Имя пользователя учетных данных
    Пароль Оба Пароль учетных данных
    Включить SSL? Только локальная среда Использование протоколов TLS и SSL
    Шлюз — подписка Только локальная среда Подписка Azure, связанная с ресурсом шлюза в Azure
    Шлюз — шлюз для подключения Только локальная среда Используемый ресурс шлюза

    Пример.

    Снимок экрана со сведениями о подключении управляемого MQ.

  3. Когда все будет готово, выберите Создать.

встроенные;

  1. Укажите сведения для подключения к серверу MQ.

    Свойство Локальная среда или Azure Описание
    Имя соединения Оба имя подключения;
    Имя сервера Оба Имя или IP-адрес сервера MQ
    Номер порта Оба Номер порта TCP для подключения к диспетчеру очередей на узле
    Канал Оба Канал для подключения к диспетчеру очередей
    Имя диспетчера очередей Оба Используемый диспетчер очередей
    Имя очереди по умолчанию Оба Имя по умолчанию для очереди
    Подключиться как Оба Имя пользователя для подключения к серверу MQ
    Имя пользователя Оба Имя пользователя учетных данных
    Пароль Оба Пароль учетных данных
    Использование TLS Оба Использование протокола TLS

    Пример.

    Снимок экрана со сведениями о подключении встроенного MQ.

  2. Когда все будет готово, выберите Создать.

Добавление действия MQ

В службе Azure Logic Apps действие следует за триггером или другим действием и выполняет определенную операцию рабочего процесса. Следующие этапы описывают общий способ добавления действия, например просмотра отдельного сообщения.

  1. Откройте рабочий процесс в конструкторе Logic Apps.

  2. В триггере или другом действии добавьте новый этап.

    Чтобы добавить этап между существующими этапами, наведите указатель мыши на стрелку. Нажмите появившийся знак "плюс" и выберите команду Добавить действие.

  3. В поле поиска операций введите mq. В списке действий выберите действие с именем Просмотр сообщения.

  4. Если будет предложено создать подключение к серверу MQ, укажите запрашиваемые сведения о подключении.

  5. В действии укажите значения свойств, необходимые для действия.

    Чтобы указать дополнительные свойства, откройте список Добавить новый параметр и выберите свойства, которые требуется добавить.

  6. По завершении нажмите кнопку Сохранить на панели инструментов конструктора.

  7. Чтобы протестировать рабочий процесс, на панели инструментов конструктора щелкните Запустить.

    После завершения выполнения конструктор отображает журнал выполнения рабочего процесса и состояние этапа.

  8. Чтобы проверить входные и выходные данные для каждого выполненного (не пропущенного) этапа, разверните или выберите этот этап.

    • Чтобы просмотреть дополнительные сведения о входных данных, выберите команду Показать необработанные входные данные.
    • Чтобы просмотреть дополнительные сведения о выходных данных, выберите команду Показать необработанные выходные данные. Если для параметра IncludeInfo задано значение true, отображаются дополнительные выходные данные.

Устранение неполадок

Сбои, связанные с действиями просмотра или получения

Если выполнить операцию просмотра или получения для пустой очереди, действие завершится ошибкой со следующими выходными данными заголовка:

Ошибка MQ при отсутствии сообщений

Проблемы при подключении и проверке подлинности

Когда рабочий процесс пытается подключиться к локальному серверу MQ, может появиться следующее сообщение об ошибке:

"MQ: Could not Connect the Queue Manager '<queue-manager-name>': The Server was expecting an SSL connection."

  • Если вы используете соединитель MQ непосредственно в Azure, сервер MQ должен использовать сертификат, выданный доверенным центром сертификации.

  • Для сервера MQ необходимо определить спецификацию шифра, которая будет использоваться для подключений по протоколу TLS. В целях обеспечения безопасности и использования лучших пакетов безопасности операционная система Windows отправляет набор поддерживаемых спецификаций шифров.

    Операционная система, в которой выполняется сервер MQ, производит выбор нужного набора. Чтобы обеспечить соответствие конфигурации, измените настройку сервера MQ, чтобы спецификация шифра соответствовала параметру, выбранному в согласовании TLS.

    При попытке подключения сервер MQ регистрирует сообщение о событии, указывающее на ошибку подключения, так как сервер MQ использовал неверную спецификацию шифра. Сообщение о событии содержит спецификацию шифра, выбранную из списка сервером MQ. Измените спецификацию шифра в конфигурации канала, чтобы она соответствовала спецификации шифра в сообщении о событии.

Справочник по соединителям

Сведения обо всех операциях с управляемым соединителем и другую техническую информацию (например, свойства, ограничения и т. д.) можно найти на странице справочника по соединителю MQ.

Дальнейшие действия