Cacti: Command Line Scripts (Part 1)

Кактусы поддерживает ряд сценариев выполняемых из командной строки. Вы можете найти их в папке «cli». Подробное описание доступно в официальной документации cacti.

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

Получился следующий крон:

# cat /etc/cron.d/cacti
 
0 9,12,15,18,21 * * * root php /home/vhosts/cacti/cli/poller_reindex_hosts.php --id=All --qid=All > /dev/null 2>&1
30 9,12,15,18,21 * * * root php /home/vhosts/cacti/cli/poller_graphs_reapply_names.php -id=All > /dev/null 2>&1
40 9,12,15,18,21 * * * root php /home/vhosts/cacti/cli/rebuild_poller_cache.php -d > /dev/null 2>&1
50 9,12,15,18,21 * * * root php /home/vhosts/cacti/cli/poller_data_sources_reapply_names.php -id=All > /dev/null 2>&1
#


По-порядку о скриптах:

1: Re-Index Hosts

usage: poller_reindex_hosts.php --id=[host_id|All] [--qid=[ID|All]] [--host-descr=[description]]
                           [-d] [-h] [--help] [-v] [--version]
 
--id=host_id             - The host_id to have data queries reindexed or 'All' to reindex all hosts
--qid=query_id           - Only index on a specific data query id; defaults to 'All'
--host-descr=description - The host description to filter by (SQL filters acknowledged)
--debug                  - Display verbose output during execution
-v --version             - Display this help message
-h --help                - Display this help message

Скрипт производит индексацию SNMP и Script запросов, опрашивая «Data Queries» шаблоны на наличие изменений.

Подобное же делается из web интерфейса cacti при создании новых интерфейсов (зеленые кружки): Console -> Devices -> HostName (Edit)

Cacti Re-Index Hosts

Cacti Re-Index Hosts

 

2,4: Reapply Suggested Names to Graphs & Name Data Source

usage: poller_graphs_reapply_names.php -id=[host_id|All][host_id1|host_id2|...] [-s=[search_string] [-d] [-h] [--help] [-v] [--version]
 
-id=host_id   - The host_id or ′All′ or a pipe delimited list of host_id′s
-s=search_str - A graph template name or graph title to search for
-d            - Display verbose output during execution
-v --version  - Display this help message
-h --help     - Display this help message

и

usage: poller_data_sources_reapply_names.php --id=[host_id|All][host_id1|host_id2|...] [--filter=[search_string] [--debug] [-h] [--help] [-v] [--version]
 
--id=host_id        - The host_id or ′All′ or a pipe delimited list of host_id′s
--filter=search_str - A data template name or data source title to search for
--debug             - Display verbose output during execution
-v --version        - Display this help message
-h --help           - Display this help message

Сценарии для обновления текстового описание графиков «Graph Templates» , «Data Templates», согласно полю «Title (—title)» или «Name» шаблонов.

Например для «7 Interface — Traffic (bits/sec)» описание формируется согласно следующим мета правилам:
|host_description| — Trf — |query_ifName| |query_ifAlias|

Graph Templates

Graph Templates

Через web интерфейс обновление делается всегда по изменению «Title» шаблона графика.
Однако, в процессе эксплуатации, Cacti без участия оператора «не знает» об изменения, соответствующих полей  на реальном интерфейсе оборудования и после переиндексации может получиться так, что описание графика не будет соответствовать действительности.

Данный скрипт решает эту проблему.

 

3: Rebuild Poller Cache

usage: rebuild_poller_cache.php [-d] [-h] [--help] [-v] [--version]
 
-d            - Display verbose output during execution
-v --version  - Display this help message
-h --help     - Display this help message

Кэш пуллера содержит все команды, которые кактус выполняет во время сбора информации. Иногда необходимо данный кеш пересоздать.
Просмотреть результаты работы пуллера: Console -> Utilities -> View Poller Cache

Вы можете оставить комментарий ниже.