IBM Cloud Application Performance Management

Мониторинг менеджеров очередей в контейнере Docker

Чтобы отслеживать менеджера очередей, работающего внутри контейнера Docker, используйте предоставляемый агентом файл docker и сценарии, чтобы подготовить среду Docker.

Прежде чем начать

  1. Установите Агент WebSphere MQ на хосте Docker.
    1. Скачайте файлы установки агента.
    2. Обойдите программу просмотра необходимых компонентов, для чего, прежде чем запускать сценарии установки агента, введите следующую команду на хосте назначения:
      export SKIP_PRECHECK=1
    3. Выполните сценарий установки для установки агента. Смотрите раздел Установка агентов.
  2. Скачайте файл docker с веб-сайта GitHub (https://github.com/dongcc/apmmq-docker/).

Об этой задаче

Чтобы отслеживать менеджера очередей в контейнере Docker, нужно использовать предоставляемый вместе с агентом файл docker, чтобы смонтировать указанные ниже каталоги на хосте Docker в контейнере Docker, где работает менеджер очередей:
  • Домашний каталог Агент WebSphere MQ
  • Путь данных IBM® MQ (WebSphere MQ)

Обновление образа IBM MQ с включенным мониторингом

Процедура

  1. Используйте сценарий оболочки patch.sh, чтобы скопировать сценарии в существующий контейнер при помощи следующей команды:
    ./patch.sh ${ID_контейнера}
    где ID_контейнера - это ID контейнера Docker, в котором работает менеджер очередей.
    Совет: ID контейнера можно получить с помощью команды Docker docker ps.
  2. Обновите и примите свой образ, используя следующую команду, где mqadvanced - это имя образа IBM MQ Advanced for Developers Docker, который есть в вашем репозитории:
    docker commit -m "enable APM monitoring" 
    -a "DCC" ${ID_контейнера} ibmimages/mqadvanced:v2
    В вашем репозитории будет создан новый образ ibmimages/mqadvanced:v2.
  3. Запустите образ при помощи следующей команды:
    docker run \
      --env LICENSE=accept \
      --env MQ_QMGR_NAME=имя_менеджера_очередей \
      --volume файловая_система_mq:var/mqm \
      --volume каталог_установки:/opt/ibm/apm/agent \
      --entrypoint=mqwithapm \
      --publish-all \
      --detach \
      ibmimages/mqadvanced:v2
    где:
    • LICENSE=accept указывает, что вы принимаете положения лицензии IBM MQ for Developers. Для просмотра условий лицензии надо задать значение view. Если вы не зададите переменную, контейнер завершится оператором использования. Лицензию на различных языках можно просмотреть, задав переменную среды LANG.
    • имя_менеджера_очередей - это имя менеджера очередей, который работает в контейнере Docker.
    • Строка, содержащая файловая_система_mq:var/mqm, должна смонтировать Канал передачи данных IBM MQ на хосте Docker в контейнере Docker. файловая_система_mq - это каталог, в котором находится файловая система IBM MQ на хосте Docker. Значение по умолчанию в системах Linux: /var/mqm. /var/mqm - это каталог данных контейнера Docker. Не изменяйте это значение.
    • Строка, содержащая каталог_установки:/opt/ibm/apm/agent, должна смонтировать корневой каталог агента на хосте Docker в контейнере Docker. каталог_установки - это каталог, где на вашем хосте Docker установлен Агент WebSphere MQ. Значение по умолчанию в системах Linux: /opt/ibm/apm/agent. /opt/ibm/apm/agent - это домашний каталог для Агент WebSphere MQ в вашем контейнере Docker. Не изменяйте это значение.
    • entrypoint=mqwithapm переопределяет существующее значение ENTRYPOINT для контейнера IBM MQ Docker. Учтите, что этот сценарий также содержит шаги для вызова ENTRYPOINT контейнера IBM MQ.
    • ibmimages/mqadvanced:v2 - это образ, который вы приняли в предыдущем шаге.
    Совет: Если у вас несколько контейнеров, вы можете совместно использовать установку Агент WebSphere MQ на хосте Docker.

Результаты

Путь данных IBM MQ и домашний каталог Агент WebSphere MQ на хосте Docker монтируются в контейнере Docker в целях мониторинга. Указанный менеджер очередей будет запущен, если он работает.

Построение образа IBM MQ с включенным мониторингом

Процедура

  1. Постройте образ Docker из представленного файла docker. Например, в локальном реестре Docker можно создать образ ibmcom/apm4mq с помощью следующей команды:
    docker build -t ibmcom/apm4mq
  2. Запустите образ при помощи следующей команды, чтобы создать менеджера очередей и смонтировать домашний каталог Агент WebSphere MQ и путь данных IBM MQ на хосте Docker в контейнере Docker:
    docker run \
      --env LICENSE=accept \
      --env MQ_QMGR_NAME=имя_менеджера_очередей \
      --volume файловая_система_mq:var/mqm \
      --volume каталог_установки:/opt/ibm/apm/agent \
      --publish-all \
      --detach \
      ibmcom/apm4mq
    • LICENSE=accept указывает, что вы принимаете положения лицензии IBM MQ for Developers. Для просмотра условий лицензии надо задать значение view. Если вы не зададите переменную, контейнер завершится оператором использования. Лицензию на различных языках можно просмотреть, задав переменную среды LANG.
    • имя_менеджера_очередей - это имя менеджера очередей, который будет создан и будет выполняться в контейнере Docker.
    • Строка, содержащая файловая_система_mq:var/mqm, должна смонтировать Канал передачи данных IBM MQ на хосте Docker в контейнере Docker. файловая_система_mq - это каталог, в котором находится файловая система IBM MQ на хосте Docker. Значение по умолчанию в системах Linux: /var/mqm. /var/mqm - это каталог данных контейнера Docker. Не изменяйте это значение.
    • Строка, содержащая каталог_установки:/opt/ibm/apm/agent, должна смонтировать корневой каталог агента на хосте Docker в контейнере Docker. каталог_установки - это каталог, где на вашем хосте Docker установлен Агент WebSphere MQ. Значение по умолчанию в системах Linux: /opt/ibm/apm/agent. /opt/ibm/apm/agent - это домашний каталог для Агент WebSphere MQ в вашем контейнере Docker. Не изменяйте это значение.
    • ibmcom/apm4mq - это образ, который вы приняли в предыдущем шаге.

Результаты

Указанный менеджер очередей создается и работает в контейнере Docker. Путь данных IBM MQ и домашний каталог Агент WebSphere MQ на хосте Docker монтируются в контейнере Docker в целях мониторинга.

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

  1. Убедитесь, что контейнер Docker работает правильно.
    1. Выполните контейнер. Убедитесь, что порт 1414 открыт для хоста, чтобы контейнер запустился без ошибок.
    2. Выполните следующую команду, чтобы увидеть состояние узла. Если узел указан как работающий, контейнер работает правильно.
      docker exec \
        ${ID_контейнера} \
        bash -c "/opt/ibm/apm/agent/bin/mq-agent.sh status"
  2. Выполните необходимые шаги по конфигурированию на хосте Docker. Инструкции смотрите в разделе Конфигурирование мониторинга WebSphere MQ.