Archive for the ‘utilities’ Category.

Встроенный сниффер: pktt

В недрах OS Data ONTAP скрывается много удивительных гитик.
Вот, например, в каждой системе хранения NetApp, вернее в ее OS, имеется встроенный сниффер, запускаемый командой pktt, и собирающий дамп с интерфейса для последующей разборки, в формате стандартного юниксного tcpdump.

Использование:
pktt start {if | all} [-b bsize] [-d dir] [-s size] [-m pklen] [-v] [-i ipaddr] [-i ipaddr] …
pktt pause {if | all}
pktt dump {if | all} [-d dir]
pktt stop {if | all}
pktt status [{if | all}] [-v]
pktt delete [filename.trc]+
pktt list

Команда pktt управляет простым встроенным средством сбора ethernet-трафика. Пакеты захватываются с указаного интерфейса в специальный trace buffer, и после этого записываются в файл на диске. Данные записываются в формате “tcpdump”, который может быть прочитан разнообразными средствами, такими как tcpdump, ethereal (wireshark), и прочими программами-анализаторами и просмотрщиками. Вывод можно также конвертировать (утилитой editcap) в различные другие употребимые форматы, например для Sniffer, NetMon, и snoop.

pktt может захватывать пакеты для всех поддерживаемых типов медиа.

pktt start {if | all} [-b bsize] [-d dir] [-s size] [-m pklen] [-v] [-i ipaddr] [-i ipaddr] …

Команда start запускает трассировку, (или рестартует ее, если pktt находился в положении paused). Данные собираются в память, и пишутся в кольцеой буфер в памяти в формате “tcpdump”. Опции могут быть следующие:

-b размербуфера
Устанавливает размер буфера, который может быть определен в килобайтах или мегабайтах, при задании ‘k’ или ‘m’ после числа. Если не определен, то будет равен 128K, если вы не задали также опцию -d, что немного, но может быть достаточно в ряде случаев. Если задана опция -d, то значение буфера по умолчанию равно 1M. Значение может быть от 8K до 32M, то в очень редких случаях стоит устанавливать его большим 1-2M. Максимальный объем пространства, доступного pktt в памяти, равен 64M.

-d директория
Определяет путь к существующей директории, куда будет записан файл дампа. Файл будет иметь имя “if.trc” где”if” это имя интерфейса (например e0, fa3, и так далее.). Если опция не указана, то данные будут собиратся только в памяти, и после его заполнения, данные будут перезаписываться по кругу. Однак в любой момент можно сбросить содержимое буфера на диск с помощью команды pktt dump. Обратите внимание, что если система не будет успевать записывать все пакеты, то будет расти показатель счетчика “dropped” в выводе статуса pktt. Помните, что запись дампа всего трафика на диск может вызвать значительную нагрузку на запись для системы, и замедлить ее работу, поэтому, если это возможно, всегда ограничивайте область трассировки определенными IP-адресами и интерфейсами. Кроме этого, если вам не нужно сохранять содержимое всего пакета, то вы можете обрезать его командой -m.

Имейте ввиду, что любой существующий файл .trc будет молча перезаписан при выполнении этой команды.

-s размер
Эта опция позволяет вам задать максимальный размер файла дампа. Величина может быть задана с указанием “k”, “m”, или “g”. По умолчанию - 1G. Этот параметр всегда используется вместе с опцией -d. После достижения максимального лимита по размеру, пакеты продолжают собираться в буфер, но уже не пишутся на диск.

-m длинапакета
Этот параметр задает длину обрабатываемых пакетов (обрезая все что выходит за заданные пределы). По умолчанию - 1514 байт, что подходит для обычного ethernet, но может быть недостаточно для gigabit ethernet с использованием jumbo frames. Иногда может быть использован для ситуаций, когда не обязательно сохранять полное содержимое пакета. Однако, во многих случаях полезно сохранять полное содержимое всего пакета. В этом случае, если пакеты имеют размер свыше 1514 байт, вы можете задать желаемый максимум. Имейте виду, что некоторые декодеры (как пример - snoop) не обрабатывают пакеты более 1514 байт. Декодер ethereal/wireshark не имеет такой проблемы.

-i ipaddr [-i ipaddr] …
Эта опция включает простую возможность фильтрации. Можно задать до чтырех IP-адресов, для которых (на которые и с которых) будет записываться трафик. Это, кроме всего прочего, ограничит записываемый трафик только IP-пакетами, то есть в него не попадут пакеты, например arp/rarp, и прочие подобные.

pktt pause {if | all}
Команда “pause” приостанавливает сбор трафика с указаных интерфейсов. Незаписанные данные в буфере сбрасываются на диск. С помощью команды pktt start без других опций, можно возобновить сбор данных.

pktt dump {if | all} [-d dir]
Команда dump вызывает сброс содержимого кольцевого буфера в памяти в файл на диске. Если задана опция -d dir, то файл будет создан в указанной директории, в противном случае - в корневой директории root volume. Имя файла всегда равно if.trc (где if это название интерфейса), и содержимое записывается в формате “tcpdump”. Если файл уже существует, то он будет молча перезаписан.

pktt stop {if | all}
Эта команда выполнит остановку сбора дампа для всех заданных (или вообще всех) интерфейсов. Если вы пишете на диск, то все незаписанные на этот момент данные в буфере будут сброшен на диск. Если вы не задали файл записи дампа, то все данные в буфере будут потеряны. Это действие не требует подтверждения, так что будьте аккуратны.

pktt status [{if | all}] [-v]
Эта команда покажет вым состояние буфера и файла дампа для действующей трассировки. Используя “pktt status -v” вы получите полный статус всех интерфейсов.

pktt delete [filename.trc]+
Эта команда позволит вам удалить один или неколько файлов дампа в корневой директории. Длжен быть указан хотя бы один файл.

pktt list
Показывает список всех файлов трассировки в корневой директории.

Примеры:
pktt start e0
Эта команда начинает захват трафика с интерфейса “e0″. Весь трафик пищется в кольцевой буфер, размером 128K. Или же, если предыдущая команда приостановила сбор дампа, то она его возобновит.

pktt start fa3 -d / -s 100m -b 2m
Эта команда начинает захватывать дамп трафика на интерфейсе “fa3″, и писать в файл под названием “/fa3.trc” которому будеи позволено расти до максимальног размера в 100MB, с использованием буфера в 2MB.

pktt start el10 -d /home -m 10k -b 500k -i ehost1 -i ehost2
Эта команда начинает захватывать пакеты на и с определенных хостов, в данном примере “ehost1″ и “ehost2″ записывая их в файл “/home/el10.trc”. Пакеты размером до 10K записываются в буфер, размером 500K buffer. Отметьте, это будет работать только в том случае, если имена заданных хостов будут успешно резолвиться в DNS.

pktt start all -b 128k -i 172.20.4.1
Все интерфейсы начинают записыват дамп трафика на и с определенного IP-адреса. Это простой и быстрый способ посмотреть трафик, сли вы не уверены в том, какой интерфейс используется, но хотите увидеть пакеты с одного или более адресов IP.

Утилита сбора диагностических данных nSANity

Любопытую утилитку предлагает NetApp, на сайте NOW, в разделе инструментов (нужен логин в NOW!).

nSANity Diagnostic and Configuration Data Collector 1.1.14

Это сборщик диагностической и конфигурационной информации. Причем не только для NetApp.

# Data ONTAP Storage Controllers
# Windows 2003 and 2008 hosts
# VMware ESX hosts (excluding i variants)
# Linux hosts with kernel 2.6
# Solaris hosts
# AIX hosts
# HP-UX 11i hosts
# Brocade switches
# McData switches (EOS, EOSn)
# Cisco switches (IOS, NXOS and SANOS)
# QLogic switches

Работает по следующим протоколам:

# HTTP/HTTPS is used for communicating with Data ONTAP
# SSH is used for communicating with Cisco, Brocade, VMware ESX, Linux, Solaris, AIX and HP-UX.
# WMI is used for communicating with Windows hosts
# A telnet fallback is available for McData switches when SSH is not enabled

Запускается так:

c:\> nsanity ontap://root:*@storage1

при этом спросит пароль рута (звездочку можно заменить на собственно пароль, что, понятно, не рекомендуется)

Собранный пак инфы в gzip можно развалить на отдельные файлы так:

c:\> nsanity –x zipfilename.gz

Есть версия под Linux и Windows.

IOmeter file access patterns

Here a basic sample patterns for IOmeter testing evaluation.
Database and Fileserver patterns taken from Intel’s IOmeter distribution (prior it’s opensourse development), Workstation – from StorageReview.com website, Webserver – it’s an “empirical” pattern from some real webserver load.
Up-to-date IOmeter can be downloaded from SourceForge website (not from iometer.org, which still give you outdated “2006” version, latest (currently) is a 2008-rc2 for Windows32-64/IA64/Linux, with many improvements).

 

Database pattern (Intel/StorageReview.com)

Block size

% of size

% of read

% of random

8192b

100

67

100

 

Fileserver pattern (Intel)

Block size

% of size

% of read

% of random

512

10

80

100

1024

5

80

100

2048

5

80

100

4096

60

80

100

8192

2

80

100

16384

4

80

100

32768

4

80

100

65535

10

80

100

 

Workstation pattern (StorageReview.com)

Block size

% of size

% of read

% of random

8192

100

80

80

 

Webserver pattern

Block size

% of size

% of read

% of random

512

22

100

100

1024

15

100

100

2048

8

100

100

4096

23

100

100

8192

15

100

100

16384

2

100

100

32768

6

100

100

65535

7

100

100

131072

1

100

100

524288

1

100

100

Ready to use iometer settings file is here: iometer.icf

UPD: Slightly extended list of workloads in iometer settings file is here: iometer2.icf
Thanks to: Tony Voyellm, and http://vmind.ru/

(Моим русскоязычным читателям: пост сделан по просьбе некоторых “нерусскоязычных” людей, которые приходят сюда по ссылкам с поисковиков, на статью о тестировании с помощью IOmeter. К сожалению, параметры тестовых паттернов для IOmeter часто приходится искать по интернету отдельно, в существующем дистрибутиве они не включены, поэтому выложил их сюда).

SANscreen trial

Приобретенный с компанией Onaro в 2008 году продукт управления и анализа инфраструктуры SAN (не только стораджей NetApp), выпускаемый ныне NetApp под названием SANscreen можно попробовать получить с вебсайта Onaro по следующей ссылке: http://gate.onaro.com/files/SANscreen-x86-5.1.1-248.msi

login: webuser passwrd: 1ceHockey! (1094MB)

Полезные инструменты: Управление через PowerShell

Многие админы Windows Servers уже знают и используют новые возможности “коммандлайнового интерфейса Windows” - PowerShell.
Кто еще не вникал - самое время вникнуть: MS Official, Wikipedia, Blog.

Для уже знакомых с PowerShell укажу интересную разработку, позволяющую управлять системами хранения NetApp через PowerShell, с использованием ONTAP Management SDK.

Найдено тут: PoshOnTap
Просмотрите также и прочие темы этого автора в блоге, можно найти любопытного.

Полезные инструменты: NAGIOS

Аналогичный рассмотренному ранее UNNOC инструмент мониторинга - NAGIOS (http://www.nagios.org). Довольно популярная сама по себе штука.

К нему также существует модуль, специально разработанный для наблюдения систем NetApp
http://people.teamix.net/~svelt/check_netappfiler

В отличие от UNNOC, который обновлялся аж в 2007 году, этот модуль активно пишется, и автор приветствует feature requests и bug reports.

Смотри также: nagiosexchange.org

Полезные инструменты: UNNOC

Если вам приелся довольно таки спартанский и непритязательный вид штатного мониторинга FilerView, то по адресу unnoc.org находится опенсорсный пакет мониторинга с веб-мордой, для множества разного железа, включая специальные модули под NetApp, а также под множество другого разнообразного железа и софта.

Есть демо-сайт. http://unnoc.org/demo/

Так выглядит авторский FAS3020
http://unnoc.org/demo/display.php?host=slide

а так - сервера VMware (VCMS)
http://unnoc.org/demo/display.php?host=odysseus

или даже файрволл
http://unnoc.org/demo/display.php?host=skyhammer

Полезные инструменты: MRTG

Популярное среди сетевых админов средство визуализации SNMP-данных - MRTG (Multi Router Traffic Grapher) можно использовать и для наблюдения за системами хранения NetApp.
На NOW в ToolChest лежит filer-MRTG, пакет, настроенный под использование с системами NetApp.

Будет строить что-то похожее на такое:
MRTG for FAS

23/1.001