Ganglia

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Ganglia
Image-scalers problems 2010-08-22.png
Страница статистики серверов Викимедиа, сформированная системой Ganglia
Тип

Система мониторинга

Написана на

Си, Perl, PHP и Python

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

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

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

английский язык

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

3.7.0 (24 февраля 2014)

Лицензия

лицензия BSD

Сайт

ganglia.info

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

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

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

Назначение и применение[править | править вики-текст]

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

Система портирована на широкий спектр операционных систем и процессорных архитектур, известно об её использовании более чем 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/2008[6]. Используется для связи кластеров в университетских кампусах по всему миру и может масштабироваться для обработки кластеров имеющих до 2000 узлов в своем составе.

Необходимые пакеты для установки Ganglia присутствуют в большинстве репозиториев современных дистрибутивов Linux.

Демоны[править | править вики-текст]

Загрузка серверов Викимедиа, октябрь 2010 года
Отказ европейских серверов Викимедиа, второе сентября 2010 года

Демон gmetad («Ganglia метадемон») используется для сбора информации и её отображения на стороне пользователя[7]. По умолчанию для получения данных от других клиентов используется TCP-порт 8651.

Демон gmond («Ganglia monitoring daemon») запускается на всех узлах для которых необходимо собирать статистику.

Модули[править | править вики-текст]

Модуль gstat (англ. Ganglia Cluster Status Tool) — утилита командной строки, позволяющая импортировать информацию из Ganglia в другие приложения[8].

Для ввода данных из сторонних источников используется модуль gmetric[9]

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

Для хранения и визуализации данных в системе используется инструмент RRDtool.

Примечания[править | править вики-текст]

  1. Материалы Девятой международной конференции-семинара Высокопроизводительные параллельные вычисления на кластерных системах / С. М. Аракелян (ответственный редактор). — Владимир: Издательство Владимирского государственного университета, 2009. — С. 65. — 437 с. — 150 экз, экз. — ISBN 978-5-89368-958-7.
  2. 1 2 Ganglia Monitoring System (англ.). — официальный сайт. Проверено 17 мая 2011. Архивировано из первоисточника 7 июля 2012.
  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. Ubuntu — Подробная информация о пакете gmetad в natty
  8. ganglia_readme — ganglia
  9. Ganglia и Nagios: Часть 1. Мониторинг коммерческих кластеров с помощью Ganglia
  10. authd
  11. gexec

Литература[править | править вики-текст]

Ссылки[править | править вики-текст]