gpmemwatcher
Утилита для мониторинга использования памяти процессами в кластере Greengage DB.
Синтаксис
gpmemwatcher [ -f <hostfile> | --host_file=<hostfile> ]
[ -d <work_dir> | --work_dir=<work_dir> ]
[ -r <results_dir> | --results_dir=<results_dir> ]
[ --daemon ]
gpmemwatcher --stop
[ -f <hostfile> | --host_file=<hostfile> ]
[ -d <work_dir> | --work_dir=<work_dir> ]
[ -r <results_dir> | --results_dir=<results_dir> ]
gpmemwatcher --version
gpmemwatcher -h | --help
Описание
Утилита gpmemwatcher представляет собой демон, запускаемый на всех хостах кластера Greengage DB.
Она отслеживает использование памяти каждым процессом, собирая вывод команды ps каждые 60 секунд.
Утилита оказывает минимальное влияние на систему и потребляет около 4 МБ памяти.
Объем генерируемых данных за 24 часа составляет примерно 30 МБ.
Используйте эту утилиту при возникновении ошибок Out of memory, приводящих к отказу сегментов или завершению запросов с ошибкой.
Соберите информацию об использовании памяти на одном или нескольких хостах кластера с помощью gpmemwatcher, после чего проанализируйте полученные данные с помощью gpmemreport.
Параметры
- -f | --host_file <hostfile>
-
Входной файл hostfile, содержащий список хостов, с которых необходимо собрать информацию об использовании памяти. В файле должны быть указаны имена хостов и рабочие каталоги, существующие на каждом хосте. Пример:
mdw:/home/gpadmin/gpmemwatcher_dir/working sdw1:/home/gpadmin/gpmemwatcher_dir/working sdw2:/home/gpadmin/gpmemwatcher_dir/working sdw3:/home/gpadmin/gpmemwatcher_dir/working sdw4:/home/gpadmin/gpmemwatcher_dir/working - -d | --work_dir <work_dir>
-
Задает рабочий каталог, используемый утилитой
gpmemwatcher. - -r | --results_dir <results_dir>
-
Задает каталог, в который
gpmemwatcherзаписывает собранные выходные файлы (например, файлы с расширением .gz, создаваемые при остановке утилиты). - --daemon
-
Запускает
gpmemwatcherкак фоновый процесс. - --stop
-
Останавливает все процессы
gpmemwatcher, создает архивы данных .gz в текущем каталоге и удаляет все рабочие файлы со всех хостов. - --version
-
Отображает версию утилиты.
- -h | --help
-
Выводит справочную информацию.
Примеры
Пример 1
Запуск утилиты с указанием списка хостов, с которых нужно собрать информацию. Создайте файл /home/gpadmin/hostmap.txt со следующим содержимым:
mdw:/home/gpadmin/gpmemwatcher_dir/working
sdw1:/home/gpadmin/gpmemwatcher_dir/working
sdw2:/home/gpadmin/gpmemwatcher_dir/working
sdw3:/home/gpadmin/gpmemwatcher_dir/working
sdw4:/home/gpadmin/gpmemwatcher_dir/working
Убедитесь, что путь /home/gpadmin/gpmemwatcher_dir/working существует на всех хостах.
Запустите утилиту:
$ gpmemwatcher -f /home/gpadmin/hostmap.txt
Пример 2
Остановка утилиты и сохранение результатов в .gz-файлы. Остановите утилиту, запущенную в примере 1:
$ gpmemwatcher -f /home/gpadmin/hostmap.txt --stop
Архивы .gz будут сохранены в каталоге, из которого запускается команда:
$ ls -thrl
Результат:
-rw-rw-r--. 1 gpadmin gpadmin 2.8K Nov 19 15:17 mdw.ps.out.gz -rw-rw-r--. 1 gpadmin gpadmin 2.8K Nov 19 15:17 sdw1.ps.out.gz -rw-rw-r--. 1 gpadmin gpadmin 2.8K Nov 19 15:17 sdw2.ps.out.gz -rw-rw-r--. 1 gpadmin gpadmin 2.8K Nov 19 15:17 sdw3.ps.out.gz -rw-rw-r--. 1 gpadmin gpadmin 2.8K Nov 19 15:17 sdw4.ps.out.gz