Light-industry-up.ru

Экосистема промышленности

Ganglia

07-09-2023

Ganglia

Страница статистики серверов Викимедиа, сформированная системой Ganglia
Тип

Мониторинг параллельных вычислений

Написана на

C, Perl, PHP, Python

Операционная система

Кроссплатформенное программное обеспечение

Языки интерфейса

Английский

Последняя версия

3.2.0 (2011.07.7)

Лицензия

Лицензия BSD

Сайт

www.ganglia.info

График системы Ganglia, отображающий количество правок статей в Википедии. Отчетливо виден интервал когда сервер Викимедиа перестал отвечать.

Ganglia (МФА: ˊgæŋglɪə) — масштабируемая распределенная система мониторинга кластеров[1] параллельных и распределенных (англ. grid) вычислений и облачных систем с иерархической структурой. Позволяет наблюдать статистику и историю (загруженность процессоров, сети) вычислений в реальном времени для каждой из наблюдаемых машин.[2][3]

Проект Ganglia был создан в 1998 году в Калифорнийском университете в Беркли как продолжение проекта Millennium, который был инициирован Национальным научным фондом США.[2][4]

Содержание

Назначение и применение

Система построена по иерархическому принципу для интеграции кластеров. Для мониторинга состояния кластеров и их объединения используется древовидная система основанная на P2P соединениях и широковещательных протоколах. Система использует широко известные технологии: XML для представления данных, XDR для сжатия данных, RRDtool для хранения и визуализации данных. Она построенна на базе тщательно спроектированных алгоритмов и структур данных, что обеспечивает надежность, позволяет свести к минимому накладные расходы на каждом из узлов и достичь высокой степени параллелизма. Для отображения страниц статистики используется шаблонизатор TemplatePower.[5]

Система была портирована на широкий спектр операционных систем и процессорных архитектур, и в настоящее время используется на более чем 500 кластеров по всему миру. Существует возможность установки Ganglia на следующие операционные системы: Linux (i386, ia64, sparc, alpha, powerpc, m68k, mips, arm, hppa, s390), FreeBSD, NetBSD, OpenBSD, DragonflyBSD, MacOS X, Solaris, AIX, IRIX, Tru64, HPUX и Windows NT/XP/2000/2003/2008.[6] Ganglia используется для связи кластеров в университетских кампусах по всему миру и может масштабироваться для обработки кластеров имеющих до 2000 узлов в своем составе.

Установка

gmetric

Используется для ввода данных из сторонних источников в Ganglia.[10]

/usr/bin/gmetric

gexec

gexec (gexecd) — это масштабируемая система удаленного выполнения задач (программ) в кластерах, которая может работать совместно с системой Ganglia. Для удаленного выполнения параллельных (распределенных) заданий используется RSA аутентификация (демон authd).[11] Система прозрачно перенаправляет программные потоки (stdin, stdout, stderr) и события между распределенными процессами, что позволяет создавать распределенную среду переменных окружения и масштабировать систему до более чем 1000 узлов в составе, без потери надежности. Механизм работы основывается на создании древовидного массива всех TCP сокетов между узлами и распространении управляющей информации по всему дереву. С помощью иерархической системы управления, gexec распределяет как и вычислительные задания, так и ресурсы. Это позволяет устранить проблемы, связанные с ограничениями каждого из узлов, например, ограничение на количество открытых дескрипторов файлов.[12]

Для получения списка хостов в кластере gexec опрашивает узел на котором установлен модуль gmond:

# export LD_ASSUME_KERNEL="2.2.5"
# export GEXEC_GMOND_SVRS="host1 host2"
# gexec -n 0 hostname
1 host1
4 host4
3 host3
0 host0
2 host2

Если узлы на которых запущен gmond недоступны, то список входящих в кластер узлов берется из переменой окружения GEXEC_SVRS.

В gexec интегрирована возможность распределения нагрузки в кластере. Информация о степени загружености узлов запрашивается у gmond. Для балансировки нагрузки задание запускается на наименее загруженных узлах:

gexec -n 5 program

т.е. вышеописанная команда запустит на исполнение программу program на пяти наименее загруженных узлах кластера.[9]

Для включения поддержки gexec в Ganglia необходимо установить соответствующую переменную в конфигурационном файле gmond.conf:

globals{
•••
gexec = yes
•••
}

этот параметр означает, что каждая машина на которой запущен демон gmond будет рассылать специальное сообщение о том, что на машине установлена gexec.

Если вы компилируете Ganglia из исходных кодов, то необходимо явно включить поддержку gexec на стадии конфигурирования:

% ./configure—enable-gexec

gexec можно использовать для выполнения параллельных задач:[13]

gexec -n 12 parprog -in indata.${GEXEC_MY_VNN} -out outdata.${GEXEC_MY_VNN}

каждая из программ parprog получит свою часть данных и сформирует свой результат.

RRDtool

Хранение и визуализация данных (графики) осуществляется в Ganglia с помощью инструментария RRDtool.

См. также


Примечания

  1. Материалы Девятой международной конференции-семинара ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ НА КЛАСТЕРНЫХ СИСТЕМАХ / С.М. Аракелян (ответственный редактор). — Владимир: Издательство Владимирского государственного университета, 2009. — С. 65. — 437 с. — 150 экз, экз. — ISBN 978-5-89368-958-7
  2. ↑ Ganglia Monitoring System (английский). — официальный сайт. Архивировано из первоисточника 7 июля 2012. Проверено 17 мая 2011.
  3. Ganglia:: Wikimedia Wikimedia Cloud Report  (англ.)
  4. start [UC Berkeley Clustered Computing]
  5. Official TemplatePower Website
  6. ↑ Ganglia 3.1.x Installation and Configuration – ganglia
  7. How to Install Altiris Agent on Ubuntu | Symantec Connect
  8. Ubuntu - Подробная информация о пакете gmetad в natty
  9. ↑ ganglia_readme – ganglia
  10. Ganglia и Nagios: Часть 1. Мониторинг коммерческих кластеров с помощью Ganglia
  11. authd
  12. gexec
  13. http://www.cecalc.ula.ve/HPCLC/slides/day_06/Monitoring/Exercises_Monitoring/Ganglia_Cluster_Toolkit.pdf

Литература

  • Трёхуровневая система мониторинга расширенной функциональности
  • Ganglia how-to  (англ.)

Ссылки

  • Ganglia на sourceforge.net
    • Ganglia wiki на sourceforge.net
  • Уязвимости в Ganglia securitylab.ru, xakep.ru
  • Ganglia на IBM developerworks
  • Вычислительный кластер под FreeBSD


Ganglia.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06