Протоколы сетей хранения данных. Часть I – ATA over Ethernet (AoE)::Журнал СА 9.2005
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

Обычно соответствие программного продукта требованиям мы проверяем через скоуп вполне себе понятных

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

 Читать далее...

Книжная полка  

От создания сайтов до разработки и реализации API

В издательстве «БХВ» недавно вышли книги, которые будут интересны системным администраторам, создателям

 Читать далее...

Разбор полетов  

Ошибок опыт трудный

Как часто мы легко повторяем, что не надо бояться совершать ошибки, мол,

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6144
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 6857
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4140
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 2978
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3781
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3789
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6283
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3134
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3434
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7246
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10616
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12336
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 13969
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9100
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7053
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5362
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4594
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3402
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3129
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3379
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3000
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Протоколы сетей хранения данных. Часть I – ATA over Ethernet (AoE)

Архив номеров / 2005 / Выпуск №9 (34) / Протоколы сетей хранения данных. Часть I – ATA over Ethernet (AoE)

Рубрика: Сети /  Сети

АНТОН БОРИСОВ

Протоколы сетей хранения данных

Часть I – ATA over Ethernet (AoE)

Задача современных систем обработки информации – надежное хранение данных. Сегодня мы поговорим о SAN (Storage Area Networks), а если быть точнее, то о протоколах, которые обеспечивают их надежность и безопасность обрабатываемых данных.

В крупных компаниях SAN соединяет многочисленные сервера к централизованному пулу дисков хранения. По сравнению с администрированием сотни серверов, где каждый из них имеет собственное дисковое хранилище, сети SAN упрощают эксплуатацию и обслуживание. Однако есть недостаток в использовании SAN – каждое устройство (дисковый массив) «принадлежит» серверу, который инициировал соединение. В отличие от SAN этого недостатка нет у NAS (Network Attached Storage), где доступ от многих серверов к одному файлу не блокируется и информация от такого взаимодействия не теряется. Впрочем, превратить SAN в NAS просто – следует использовать кластерные файловые системы – GFS (Global File System) [2], OCFS2 (Oracle Cluster File System) [3] и аналогичные.

На каких технологиях строятся современные SAN-сети? Широкоизвестным видом является FiberChannel (оптический канал передачи данных). Название FiberChannel не должно вас пугать – этот тип соединения может быть реализован и на основе витой пары (см. Wikipedia [1]). Типичная сеть состоит из нескольких оптических коммутаторов, которые соединены между собой и посредством HBA (Host Bus Adapter) подключены к дискам. Передача данных основана на протоколе SCSI. Не стоит говорить, что это самое дорогое решение.                

Конкурентом технологии FiberChannel является iSCSI-протокол. Передача данных в этом случае производится не по оптическим каналам, а по витой паре (ethernet). Сеть в данном случае представлена ethernet-коммутатороми и UTP-кабелями категории 5e/6. Работа протокола iSCSI полагается на функционирование TCP/IP-протокола.

Следующим протоколом, который используется при разработке SAN-сетей, является AoE (ATA over Ethernet). ATA-протокол инкапсулируется в ethernet-кадры и в отличие от iSCSI не предусмотрен для маршрутизации. Однако AoE обладает интересной реализацией обнаружения AoE-устройств.

Наиболее перспективной и проработанной технологией можно считать протокол HyperSCSI, который в некоторой степени похож на iSCSI, но не использует TCP/IP в качестве своей основы. В заключительной части этого цикла статей я приведу результаты измерения скоростных характеристик, а сейчас немного вас заинтригую – как оказалось, AoE не самый быстрый протокол.

Сегодняшняя статья посвящена, пожалуй, самому молодому и амбициозно продвигаемому протоколу – AoE (ATA over Ethernet). Впервые о нем широко заговорили в 2004 году. Компания – разработчик протокола и на сегодняшний день единственный производитель устройств хранения информации, работающих с этим протоколом – Coraid Inc. [4]. Коротко охарактеризовать данный протокол можно фразой – «ATA-команды инкапсулируются в ethernet-кадры». Протокол уже получил свой номер в организации IANA, поэтому включение его поддержки в маршрутизаторы – дело ближайшего времени. Хотя было бы наивно думать, что сам по себе протокол будет поддержан всеми производителями коммуникационного оборудования. Впрочем, немало зависит и от настойчивости самой фирмы Coraid.

Краткий экскурс в основу протокола AoE

Рассмотрим заголовок ethernet-пакета для протокола AoE (см. рис. 1). Первые 14 байт в заголовке типичны для ethernet-пакета. Что же касается полей Ver, Flags, Error, то они детально расписаны в документации на протокол AoE [5].

Рисунок 1. Заголовок ethernet-пакета для протокола AoE

Рисунок 1. Заголовок ethernet-пакета для протокола AoE

Содержимое поля Arg зависит от того, какую команду передали в поле Command. Существует два варианта – «Выполнить ATA-команду» (Command 0) и «Запросить конфигурационную информацию» (Command 1). Первая команда передается на сторону сервера, и ATA-устройство сервера исполняет ATA-команды, которые скомпонованы в блоке Arg. Ethernet-пакет для протокола AoE запрещается разбивать на более мелкие фрагменты. Вторая команда предназначена для обнаружения и управления AoE-устройствами. Вот такой простой протокол получился.

Итак, на данный момент доступны GPL-драйвера для Linux 2.4, 2.6. В пакет ПО входят как модули (aoe-2.4.XX/aoe2.6.YY), так и утилиты (aoetools) с виртуальным наносервером (vblade). С января этого года AoE-драйверы включены в поставку Linux-ядер версии 2.6. Поэтому, в случае когда вы пересобираете Linux-ядро версии 2.6, можете смело выбрать компиляцию AoE – подсистемы. Также на сегодняшний день готовы порты для BSD-систем. В планах компании стоит выпуск драйверов и под Windows-платформу. Что касается остальных UNIX-систем, то для них готовых драйверов нет, по крайней мере сейчас.

Настройка модулей

Ядро дистрибутива, на котором будут проводиться сегодняшние испытания, – это Linux Kernel серии 2.4.

# wget aoe-2.4-3.tar.gz

# tar xzvf aoe-2.4-3.tar.gz

# cd aoe-2.4-3

# make && make install

Примерный вывод должен быть таким:

Found kernel version 2.4.26

Install directory is /lib/modules/2.4.26/kernel/net/aoe

mkdir -p /lib/modules/2.4.26/kernel/net/aoe

install -m 644 aoe.o /lib/modules/2.4.26/kernel/net/aoe

./mkdevs /dev/etherd

Directory /dev/etherd exists, skipping devnode installation.

./autoload

/sbin/depmod -a

Подготовка AoE-модулей завершена. В /etc/modules.conf прописаны параметры для устройств на основе AoE-протокола и созданы файлы устройств в директории /dev/etherd/.

alias block-major-152 aoe

alias char-major-152 aoe

Следующий наш шаг – это подготовка виртуального наносервера (vblade). Дело в том, что Coraid Inc., помимо раздачи под GPL-лицензией драйверов для AoE, является и единственным производителем устройств хранения информации EtherBlade, которые пока представлены только на рынке США и сопредельных государств. Однако, судя по информации с сайта компании, идет процесс создания дистрибьюторской сети.

Что из себя представляет EtherBlade?

EtherBlade сегодня представлен двумя продуктами – это шасси размеров 3U и 2U. В первом варианте «лезвия» хранятся 10 жестких дисков формата 3,5 дюйма. Во втором варианте уже используются 18 жестких дисков меньшего формата, а именно 2,5 дюйма. Если в самом начале карьеры EtherBlade использовались PATA-диски, то сегодня выпускаются модификации для SATA-дисков. Внутри отдельного лезвия находится контроллер памяти, процессор, ethernet-порт (см. рис. 2). Каждое такое лезвие потребляет около 12 Ватт, и гигабайт его стоимости начинается от 1,75 $. Для более тонкого варианта EtherBlade данные соответственно следующие: 5,5 Вт и 7,06 $. Лезвия подключаются во внешний 1-гигабитный свитч, который в свою очередь может быть подключен в более скоростной 10-гигабитный. Таким образом достигается масштабирование данного решения.

Рисунок 2. Структура единичного «лезвия»

Рисунок 2. Структура единичного «лезвия»

Рисунок 3. EtherBlade

Рисунок 3. EtherBlade

Чтобы не ждать поставки аппаратного «лезвия», можно воспользоваться его виртуальным аналогом – программным vblade.

Настройка наносервера vblade.

# wget vblade-5.tar.gz

# tar xzvf vblade-5.tar.gz

# cd vblade-5.tar.gz

# make && make install

Получились 2 исполняемых файла – vblade и vbladed. Последний является обычным скриптом, который запускает vblade. Его конструкция напоминает нижеследующий вариант (параметры изменены):

# vblade 9 0 eth0 /dev/hda

где «9» – номер шасси, «0» – номер слота (диска или лезвия), «eth0» – название интерфейса, по которому будет происходить обмен данными и «/dev/hda» – собственно устройство, которое в формате «AoE» делается доступным по ethernet.

С другой машины, запустив там предварительно процесс инсталляции драйвера AoE, мы увидим в /var/log/messages следующее:

aoe: aoe_init: AoE v2.4-3 initialised.

aoe: 000c6e784408 e9.0 v4000 has 80418240 sectors

То есть устройство распознано драйвером AoE. Здорово. Теперь запустив fdisk, мы увидим, что на нем находится:

# fdisk /dev/etherd/e9.0

Command (m for help): p

 

Disk /dev/etherd/e9.0: 41.1 GB, 41174138880 bytes

255 heads, 63 sectors/track, 5005 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

            Device Boot      Start         End      Blocks   Id  System

/dev/etherd/e9.0p1   *           1         924     7421998+   b  W95 FAT32

/dev/etherd/e9.0p2             925        1217     2353491    7  HPFS/NTFS

/dev/etherd/e9.0p3            1218        1439     1783183+   c  W95 FAT32 (LBA)

/dev/etherd/e9.0p4            2493        4865    19061122+   f  W95 Ext"d (LBA)

/dev/etherd/e9.0p5            2493        4865    19061091    b  W95 FAT32

Все так и обстоит на самом деле – это действительно структура удаленного хранилища, в нашем случае ATA-диска. Для получения статистики воспользуемся утилитой aoe-stat из пакета aoetools.

# /usr/sbin/aoe-stat

aoe-stat Error: sysfs is not mounted

И это правильно, т.к. sysfs разработан в ядрах серии 2.6. Однако данный факт не помешает нам вручную узнать состояние наносервера.

# cat /dev/etherd/stat

/dev/etherd/e9.0        eth0    up

Досадной мелочью (по крайней мере в драйверах 2.4) является невозможность использовать отдельные разделы в случае, когда наносервер предоставляет для целей хранения весь диск. Чтобы обойти это ограничение, создадим один раздел занимающий весь объем диска. Командная строка для vblade будет выглядеть, например, так:

# vblade 9 0 eth0 /dev/hda1

В этом случае монтирование «лезвия» на удаленной машине не отличается от монтирования локального диска.

# mount /dev/etherd/e9.0 /mnt/tmp

У данного решения есть и минусы. За счет простоты реализации протокола увеличивается нагрузка на подсистему ввода/вывода. Не проработана система шифрования трафика, передаваемого по сети. Как уже отмечалось выше, на рынке представлены только аппаратные продукты одной компании.

В следующей части мы познакомимся с протоколом iSCSI, узнаем, что такое «инициатор» и «iSCSI-target», попробуем подключить Windows- и Linux-клиенты к серверу с хранилищем данных по iSCSI-протоколу.

Приложение

SAN (Storage Area Network) – сеть, спроектированная для подключения устройств хранения (дисковых массивов и магнитных лент) к серверам. Характерно, что SAN отличается от других способов сетевого хранения информации за счет использования методики блочного доступа. Фактически сервер запрашивает информацию типа «блок X с диска Y». Передаваемая информация в SAN-сетях очень похожа на ту, что циркулирует по шине данных в дисках ATA и SCSI.

Ссылки:

  1. http://wikipedia.org.
  2. http://www.redhat.com/software/rha/gfs.
  3. http://oss.oracle.com/projects/ocfs2.
  4. http://www.coraid.com.
  5. http://www.coraid.com/documents/AoEr8.txt.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru