Apigee Edge для частного облака включает apigee-monit
— инструмент, основанный на утилите monit с открытым исходным кодом. apigee-monit
периодически опрашивает службы Edge; если служба недоступна, то apigee-monit
пытается перезапустить ее.
Чтобы использовать apigee-monit
, его необходимо установить вручную . Он не входит в стандартную установку.
По умолчанию apigee-monit
проверяет состояние служб Edge каждые 60 секунд.
Быстрый старт
В этом разделе показано, как быстро приступить к работе с apigee-monit
.
Если вы используете Amazon Linux или Oracle-Linux-7.X, сначала установите monit через Fedora. В противном случае пропустите этот шаг.
sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm
Чтобы установить apigee-monit
, выполните следующие действия:
Установить apigee-monit | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install Это установит | |
Остановить мониторинг компонентов | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name /opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all | |
Начать мониторинг компонентов | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all | |
Получить сводную информацию о статусе | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report /opt/apigee/apigee-service/bin/apigee-service apigee-monit summary | |
Посмотрите файлы журнала apigee-monit | |
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log |
Каждая из этих и других тем подробно описана в следующих разделах.
О apigee-monit
apigee-monit
обеспечивает бесперебойную работу всех компонентов узла. Он делает это, предоставляя ряд сервисов, включая:
- Перезапуск неисправных служб
- Отображение сводной информации
- Статус мониторинга регистрации
- Отправка уведомлений
- Мониторинг не-Edge-сервисов
Apigee рекомендует отслеживать работу apigee-monit
. Подробнее см. в разделе «Мониторинг apigee-monit» .
архитектура apigee-monit
Во время установки и настройки Apigee Edge for Private Cloud вы можете (по желанию) установить отдельный экземпляр apigee-monit
на каждом узле кластера. Эти отдельные экземпляры apigee-monit
работают независимо друг от друга: они не передают информацию о состоянии своих компонентов другим узлам и не передают информацию об ошибках самой утилиты мониторинга в какую-либо центральную службу.
На следующем изображении показана архитектура apigee-monit
в кластере из 5 узлов:

apigee-monit
работает изолированно на каждом узле кластера. Конфигурации компонентов
apigee-monit
использует конфигурации компонентов , чтобы определить, какие компоненты следует отслеживать, какие аспекты компонента проверять и какие действия предпринимать в случае сбоя.
По умолчанию apigee-monit
отслеживает все компоненты Edge на узле, используя предопределённые конфигурации компонентов. Чтобы просмотреть настройки по умолчанию, обратитесь к файлам конфигурации компонентов apigee-monit
. Изменить конфигурации компонентов по умолчанию невозможно.
apigee-monit
проверяет различные аспекты компонента в зависимости от того, какой именно компонент он проверяет. В следующей таблице перечислены проверки apigee-monit
для каждого компонента и показано, где находится его конфигурация. Обратите внимание, что некоторые компоненты определены в одном файле конфигурации, а другие имеют собственные конфигурации.
Компонент | Расположение конфигурации | Что отслеживается |
---|---|---|
Сервер управления | /opt/apigee/edge-management-server/monit/default.conf | проверки apigee-monit :
Кроме того, для этих компонентов
|
Процессор сообщений | /opt/apigee/edge-message-processor/monit/default.conf | |
Сервер Postgres | /opt/apigee/edge-postgres-server/monit/default.conf | |
Qpid-сервер | /opt/apigee/edge-qpid-server/monit/default.conf | |
Маршрутизатор | /opt/apigee/edge-router/monit/default.conf | |
Кассандра Edge UI SymasLDAP Постгрес Qpid Смотритель зоопарка | /opt/apigee/data/apigee-monit/monit.conf | проверки apigee-monit :
|
В следующем примере показана конфигурация компонента по умолчанию для компонента edge-router
:
check host edge-router with address localhost restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart" if failed host 10.1.1.0 port 8081 and protocol http and request "/v1/servers/self/uuid" with timeout 15 seconds for 2 times within 3 cycles then restart if failed port 15999 and protocol http and request "/v1/servers/self" and status < 600 with timeout 15 seconds for 2 times within 3 cycles then restart
В следующем примере показана конфигурация по умолчанию для компонента Classic UI ( edge-ui
):
check process edge-ui with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"
Это относится к классическому пользовательскому интерфейсу, а не к новому Edge UI, имя компонента которого — edge-management-ui
.
Вы не можете изменить конфигурации компонентов Apigee Edge for Private Cloud по умолчанию. Однако вы можете добавить собственные конфигурации компонентов для внешних служб, таких как целевая конечная точка или служба httpd
. Подробнее см. в разделе «Конфигурации компонентов, не относящихся к Apigee» .
По умолчанию apigee-monit
отслеживает все компоненты на узле, на котором он запущен. Вы можете включить или отключить эту функцию для всех компонентов или для отдельных компонентов. Подробнее см.:
Установить apigee-monit
apigee-monit
не установлен по умолчанию; вы можете установить его вручную после обновления или установки версии 4.19.01 или более поздней версии Apigee Edge for Private Cloud.
В этом разделе описывается, как установить apigee-monit
.
Информацию об удалении apigee-monit
см. в разделе Удаление apigee-monit
.
Установить apigee-monit
В этом разделе описывается, как установить apigee-monit
.
Чтобы установить apigee-monit
:
- Установите
apigee-monit
с помощью следующей команды:/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
- Настройте
apigee-monit
с помощью следующей команды:/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
- Запустите
apigee-monit
с помощью следующей команды:/opt/apigee/apigee-service/bin/apigee-service apigee-monit start
- Повторите эту процедуру на каждом узле вашего кластера.
Компоненты мониторинга остановки и запуска
Если по какой-либо причине служба останавливается, apigee-monit
пытается перезапустить службу.
Это может вызвать проблему, если вы хотите намеренно остановить компонент. Например, вам может потребоваться остановить компонент, чтобы выполнить его резервное копирование или обновление. Если apigee-monit
перезапустит службу во время резервного копирования или обновления, процедура обслуживания может быть нарушена, что может привести к её сбою.
В следующих разделах показаны варианты остановки мониторинга компонентов.
Остановите компонент и прекратите его мониторинг
Чтобы остановить компонент и отменить его мониторинг, выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
apigee-cassandra
(Кассандра)-
apigee-openldap
(OpenLDAP) -
apigee-postgresql
(база данных PostgreSQL) -
apigee-qpidd
(Qpidd) -
apigee-sso
(Edge SSO) -
apigee-zookeeper
(ZooKeeper) -
edge-management-server
(Сервер управления) -
edge-management-ui
(новый пользовательский интерфейс Edge) -
edge-message-processor
(процессор сообщений) -
edge-postgres-server
(сервер Postgres) -
edge-qpid-server
(сервер Qpid) -
edge-router
(Edge Router) -
edge-ui
(классический пользовательский интерфейс)
Обратите внимание, что параметр «all» недопустим для stop-component
. С помощью stop-component
можно останавливать и отключать мониторинг только одного компонента одновременно.
Чтобы перезапустить компонент и возобновить мониторинг, выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name
Обратите внимание, что «all» не является допустимым параметром для start-component
.
Инструкции по остановке и отмене мониторинга всех компонентов см. в разделе Остановка всех компонентов и отмена мониторинга .
Отключить мониторинг компонента (но не останавливать его)
Чтобы отменить мониторинг компонента (но не остановить его), выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
apigee-cassandra
(Кассандра)-
apigee-openldap
(OpenLDAP) -
apigee-postgresql
(база данных PostgreSQL) -
apigee-qpidd
(Qpidd) -
apigee-sso
(Edge SSO) -
apigee-zookeeper
(ZooKeeper) -
edge-management-server
(Сервер управления) -
edge-management-ui
(новый пользовательский интерфейс Edge) -
edge-message-processor
(процессор сообщений) -
edge-postgres-server
(сервер Postgres) -
edge-qpid-server
(сервер Qpid) -
edge-router
(Edge Router) -
edge-ui
(классический пользовательский интерфейс)
Чтобы возобновить мониторинг компонента, выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
Отключить мониторинг всех компонентов (но не останавливать их)
Чтобы отменить мониторинг всех компонентов (но не остановить их), выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
Чтобы возобновить мониторинг всех компонентов, выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
Остановите все компоненты и прекратите их мониторинг
Чтобы остановить все компоненты и отменить их мониторинг, выполните следующие команды:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop
Чтобы перезапустить все компоненты и возобновить мониторинг, выполните следующие команды:
/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
Чтобы остановить мониторинг всех компонентов, вы также можете отключить apigee-monit
, как описано в разделе Остановка, запуск и отключение apigee-monit .
Остановка, запуск и отключение apigee-monit
Как и любую службу, apigee-monit
можно остановить и запустить с помощью команды apigee-service
. Кроме того, apigee-monit
поддерживает команду unmonitor
, которая позволяет временно приостанавливать мониторинг компонентов.
Остановить apigee-monit
Чтобы остановить apigee-monit
, используйте следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
Запустить apigee-monit
Чтобы запустить apigee-monit
, используйте следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start
Отключить apigee-monit
Вы можете приостановить мониторинг всех компонентов на узле, используя следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
Кроме того, вы можете навсегда отключить apigee-monit
, удалив его с узла, как описано в разделе Удаление apigee-monit
.
Удалить apigee-monit
Чтобы удалить apigee-monit
:
- Отредактируйте следующий файл:
/opt/apigee/customer/application/monit.properties
Если файл не существует, создайте его и установите в качестве владельца пользователя «apigee»:
chown apigee:apigee /opt/apigee/customer/application/monit.properties
Обратите внимание: если файл уже существует, в нём могут быть определены дополнительные свойства конфигурации, помимо перечисленных в таблице выше. Не следует изменять свойства, не перечисленные выше.
Установите или замените значения свойств новыми значениями.
Например, чтобы изменить местоположение файла журнала на
/tmp
, добавьте или отредактируйте следующее свойство:conf_monit_monit_logdir=/tmp/apigee-monit.log
- Сохраните изменения в файле
monit.properties
. - Перезагрузите
apigee-monit
с помощью следующей команды:/opt/apigee/apigee-service/bin/apigee-service apigee-monit reload
Если
apigee-monit
не перезапускается, проверьте файл журнала на наличие ошибок, как описано в разделе Доступ к файлам журналаapigee-monit
. - Повторите эту процедуру для каждого узла в кластере.
- Добавьте поддержку
cron
, скопировав каталогapigee-monit.cron
в каталог/etc/cron.d
, как показано в следующем примере:cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
- Откройте файл
apigee-monit.cron
для редактирования.Файл
apigee-monit.cron
определяетcron
задание для выполнения, а также частоту его выполнения. В следующем примере показаны значения по умолчанию:# Cron entry to check if monit process is running. If not start it */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
В этом файле используется следующий синтаксис, в котором первые пять полей определяют время, когда
apigee-monit
выполняет свое действие:min hour day_of_month month day_of_week task_to_execute
Например, время выполнения по умолчанию —
*/2 * * * *
, что указываетcron
проверять процессapigee-monit
каждые 2 минуты.Задание
cron
нельзя выполнять чаще, чем один раз в минуту.Дополнительную информацию об использовании
cron
смотрите в документации по ОС вашего сервера или на страницах руководства. - Измените настройки
cron
в соответствии с политикой вашей организации. Например, чтобы изменить частоту выполнения на каждые 5 минут, задайте следующее определение задания:*/5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
- Сохраните файл
apigee-monit.cron
. - Повторите эту процедуру для каждого узла в кластере.
- После определения
cron
-задания имеется пустая строка. - В файле определено только одно задание
cron
. (Комментированные строки не учитываются.) - Удалите файл
/etc/cron.d/apigee-monit.cron
:sudo rm /etc/cron.d/apigee-monit.cron
Вам придется скопировать его заново, если позже вы захотите снова включить
cron
для наблюденияapigee-monit
.ИЛИ
- Отредактируйте файл
/etc/cron.d/apigee-monit.cron
и закомментируйте определение задания, добавив «#» в начало строки, например:# 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
conf_monit_httpd_port
httpd
. apigee-monit
использует httpd
для своего приложения панели мониторинга и для включения отчётов/сводок. Значение по умолчанию — 2812.conf_monit_httpd_allow
httpd
. apigee-monit
использует httpd
для запуска своего приложения панели мониторинга и включения отчётов/сводок. Это значение должно указывать на локальный хост (хост, на котором запущен httpd
).Чтобы потребовать, чтобы запросы включали имя пользователя и пароль, используйте следующий синтаксис:
conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1
При добавлении имени пользователя и пароля вставляйте символ «\n» между каждым ограничением. Не добавляйте в значение символы переноса строки или возврата каретки.
conf_monit_monit_datadir
conf_monit_monit_delay_time
apigee-monit
после первой загрузки в память перед запуском. Влияет только на первую проверку процесса apigee-monit
.conf_monit_monit_logdir
apigee-monit
.conf_monit_monit_retry_time
apigee-monit
пытается проверить каждый процесс; значение по умолчанию — 60 секунд.conf_monit_monit_rundir
apigee-monit
использует для проверки процессов. Чтобы настроить параметры управления apigee-monit
по умолчанию:
Обратите внимание, что это относится только к компонентам, не относящимся к Edge. Для компонентов Edge настроить конфигурацию компонентов невозможно.
Доступ к файлам журнала apigee-monit
apigee-monit
регистрирует все действия, включая события, перезапуски, изменения конфигурации и оповещения в файле журнала.
Расположение файла журнала по умолчанию:
/opt/apigee/var/log/apigee-monit/apigee-monit.log
Вы можете изменить местоположение по умолчанию, настроив параметры управления apigee-monit
.
Записи файла журнала имеют следующий вид:
'edge-message-processor' trying to restart [UTC Dec 14 16:20:42] info : 'edge-message-processor' trying to restart 'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'
Вы не можете настраивать формат записей файла журнала apigee-monit
.
Просмотр агрегированного статуса с помощью apigee-monit
apigee-monit
включает следующие команды, которые предоставляют вам обобщенную информацию о состоянии компонентов на узле:
Команда | Использование |
---|---|
report | /opt/apigee/apigee-service/bin/apigee-service apigee-monit report |
summary | /opt/apigee/apigee-service/bin/apigee-service apigee-monit summary |
Каждая из этих команд более подробно объясняется в следующих разделах.
отчет
Команда report
выводит сводную информацию о количестве компонентов, которые работают, не работают, инициализируются или не отслеживаются на узле. В следующем примере команда report
вызывается:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
В следующем примере показан вывод report
для конфигурации AIO (все в одном):
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report up: 11 (100.0%) down: 0 (0.0%) initialising: 0 (0.0%) unmonitored: 1 (8.3%) total: 12 services
В этом примере apigee-monit
сообщает, что 11 из 12 служб работают. Одна служба в настоящее время не отслеживается.
При первом выполнении команды report
может возникнуть ошибка « Connection refused
. В этом случае дождитесь окончания действия свойства conf_monit_monit_delay_time
и повторите попытку.
краткое содержание
Команда summary
выводит список всех компонентов и отображает их статус. В следующем примере команда summary
вызывается:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
В следующем примере показаны summary
выходные данные для конфигурации AIO (все в одном):
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary Monit 5.25.1 uptime: 4h 20m Service Name Status Type host_name OK System apigee-zookeeper OK Process apigee-cassandra OK Process apigee-openldap OK Process apigee-qpidd OK Process apigee-postgresql OK Process edge-ui OK Process edge-qpid-server OK Remote Host edge-postgres-server OK Remote Host edge-management-server OK Remote Host edge-router OK Remote Host edge-message-processor OK Remote Host
Если при первом выполнении команды summary
вы получили ошибку Connection refused
, попробуйте подождать в течение времени, указанного в свойстве conf_monit_monit_delay_time
, а затем повторите попытку.
Монитор apigee-monit
Рекомендуется регулярно проверять, запущен ли apigee-monit
на каждом узле.
Чтобы проверить, запущен ли apigee-monit
, используйте следующую команду:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
Apigee рекомендует периодически выполнять эту команду на каждом узле, на котором запущен apigee-monit
. Один из способов сделать это — использовать утилиту, например cron
, которая выполняет запланированные задачи с заданными интервалами.
Чтобы использовать cron
для мониторинга apigee-monit
:
Если cron
не начинает следить apigee-monit
, проверьте следующее:
Если вы хотите остановить или временно отключить apigee-monit
, необходимо отключить и это задание cron
, в противном случае cron
перезапустит apigee-monit
.
Чтобы отключить cron
, выполните одно из следующих действий: