Ganglia () — масштабируемая распределённая система мониторинга кластеров параллельных и распределённых вычислений и облачных систем с иерархической структурой. Позволяет отслеживать статистику и историю (загруженность процессоров, сети) вычислений в реальном времени для каждого из наблюдаемых узловGanglia:: Wikimedia Wikimedia Cloud Report .
Проект создан в 1998 году в Калифорнийском университете в Беркли как продолжение проекта Millennium, который был инициирован Национальным научным фондом США.
Назначение и применение Система построена по иерархическому принципу для интеграции кластеров. Для мониторинга состояния кластеров и их объединения используется древовидная система основанная на P2P-соединениях и широковещательных протоколах. Использует такие технологии, как XML для представления данных, XDR для сжатия данных, RRDtool для хранения и визуализации данных. Для отображения страниц статистики используется шаблонизатор TemplatePower.
Система портирована на широкий спектр операционных систем и процессорных архитектур, известно об её использовании более чем 500 кластерах по всему миру. Существуют сборки для следующих операционных систем: Linux (i386, x86-64, SPARC, DEC Alpha, powerpc, m68k, MIPS, ARM, PA-RISC, S390), FreeBSD, NetBSD, OpenBSD, DragonflyBSD, Mac OS X, Solaris (SPARC), AIX, IRIX, Tru64, HP-UX и Windows NT/XP/2000/2003/2008Ganglia 3.1.x Installation and Configuration — ganglia . Используется для связи кластеров в университетских кампусах по всему миру и может масштабироваться для обработки кластеров имеющих до 2000 узлов в своем составе.
Необходимые пакеты для установки Ganglia присутствуют в большинстве репозиториев современных дистрибутивов Linux.
Демоны
Демон gmetad («Ganglia метадемон») используется для сбора информации и её отображения на стороне пользователя. По умолчанию для получения данных от других клиентов используется TCP-порт 8651.
Демон gmond («Ganglia monitoring daemon») запускается на всех узлах для которых необходимо собирать статистику.
Модули
Модуль gstat () — утилита командной строки, позволяющая импортировать информацию из Ganglia в другие приложенияganglia_readme — ganglia .
Для ввода данных из сторонних источников используется модуль gmetric
gexec (gexecd) — масштабируемая система удалённого выполнения задач (программ) в кластерах, которая может работать совместно с системой Ganglia. Для удалённого выполнения параллельных (распределённых) заданий используется RSA-аутентификация (демон authd). Система прозрачно перенаправляет программные потоки (stdin, stdout, stderr) и события между распределёнными процессами, что позволяет создавать распределённую среду переменных окружения и масштабировать систему до более чем 1000 узлов в составе без потери надёжности. Механизм работы основывается на создании древовидного массива всех TCP-сокетов между узлами и распространении управляющей информации по всему дереву. С помощью иерархической системы управления gexec распределяет как и вычислительные задания, так и ресурсы. Это позволяет устранить проблемы, связанные с ограничениями каждого из узлов, например, ограничение на количество открытых дескрипторов файлов. В gexec интегрирована возможность распределения нагрузки в кластере. Информация о загруженности узлов запрашивается у gmond.
Для хранения и визуализации данных в системе используется инструмент RRDtool.
Примечания
Литература Трёхуровневая система мониторинга расширенной функциональности Ganglia how-to
Ссылки Ganglia на sourceforge.net Уязвимости в Ganglia securitylab.ru, xakep.ru Ganglia на IBM developerworks Вычислительный кластер под FreeBSD
Категория:Распределённые вычисления Категория:Параллельные вычисления Категория:Свободное программное обеспечение, написанное на Си Категория:Свободное программное обеспечение, написанное на Perl Категория:Свободное программное обеспечение, написанное на Python