Ganglia

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

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

Написана на

Си, Perl, PHP и Python

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

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

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

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

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

3.7.1 (1 апреля 2015)[1]

Лицензия

лицензия BSD

Сайт

ganglia.info

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. http://ganglia.info/?p=615
  2. Материалы Девятой международной конференции-семинара. Высокопроизводительные параллельные вычисления на кластерных системах / С. М. Аракелян (ответственный редактор). — Владимир: Издательство Владимирского государственного университета, 2009. — С. 65. — 437 с. — 150 экз, экз. — ISBN 978-5-89368-958-7.
  3. 1 2 Ganglia Monitoring System (англ.). — официальный сайт. Проверено 17 мая 2011. Архивировано из первоисточника 7 июля 2012.
  4. Ganglia:: Wikimedia Wikimedia Cloud Report  (англ.)
  5. start [UC Berkeley Clustered Computing]
  6. Official TemplatePower Website
  7. Ganglia 3.1.x Installation and Configuration — ganglia
  8. Ubuntu — Подробная информация о пакете gmetad в natty
  9. ganglia_readme — ganglia
  10. Ganglia и Nagios: Часть 1. Мониторинг коммерческих кластеров с помощью Ganglia
  11. authd
  12. gexec

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

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