xg-scale
diff aoe.tex @ 0:4730a0d07d88
Исходники курса после первого прочтения.
Правки (которых должно быть много),
ещё пока не вносились.
Правки (которых должно быть много),
ещё пока не вносились.
author | Igor Chubin <igor@chub.in> |
---|---|
date | Tue Jul 01 16:16:44 2008 +0300 (2008-07-01) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/aoe.tex Tue Jul 01 16:16:44 2008 +0300 1.3 @@ -0,0 +1,424 @@ 1.4 +\section{ATA over Ethernet} 1.5 + 1.6 +Описываемая технология построения хранилищ даёт возможность строить дисковые массивы 1.7 +для архивов, резервных копий или традиционного использования 1.8 +на базе обычных дисков ATA, которые дешевле даже чем лента. 1.9 +Эта технология может оказаться особенно интересной для тех, 1.10 +кто использует виртуализированные системы на базе Xen. 1.11 + 1.12 +Технология является альтернативой для iSCSI, но с более узким 1.13 +спектром задач, где она может использоваться. Подробнее об этом ниже, 1.14 +в разделе \textit{\dq{}Преимущества и недостатки AoE\dq{}}. 1.15 + 1.16 +\subsection{Введение} 1.17 +Данные некоторых видов огромны просто в силу своей природы. 1.18 +Видео, например, как правило занимает большой объём диска. 1.19 +В связи с широким распространением видеонаблюдения 1.20 +потребность в хранении видео-данных становится ещё более актуальной. 1.21 + 1.22 +Резервное копирование и избыточность данных 1.23 +имеет существенное значение для любого дела, 1.24 +в котором используются компьютеры. 1.25 +Похоже, не важно, какой объём хранилища -- всегда хочется иметь больше. 1.26 +Даже почта может вырасти за пределы контейнера, в котором она лежит. 1.27 +Это хорошо известно провайдерам Интернет-услуг. 1.28 + 1.29 +Хранилище неограниченного размера вполне имеет право на существование, 1.30 +если сделать так, чтобы диски можно было вынести за предел корпуса 1.31 +и отвязать хранилище от компьютера, которые его использует. 1.32 +Принцип развязки связанных компонент с целью достижения большей гибкости 1.33 +хорошо показал себя во множестве различных областей, 1.34 +не только при построении хранилищ. 1.35 +Модульный код обладает гибкостью, которая позволяет 1.36 +применять его в непредвиденных ситуациях или 1.37 +стерео-система, сделанная из компонентов, 1.38 +может использоваться в различных интересных конфигурациях, 1.39 +а не только как аудио-комбайн. 1.40 + 1.41 +Наиболее известный пример хранилищ, работающих из коробки это, наверное, SAN (storage area network). 1.42 +Когда SAN\rq{}ы только появились вокруг них был большой шум и переполох. 1.43 +Сложно было выяснить, что же это в действительности такое. 1.44 +А когда в итоге это всё-таки получилось, выяснилось что это нечто 1.45 +сложное, проприетарное и дорогое. 1.46 + 1.47 +Однако, поддерживая SAN\rq{}ы Linux-сообщество сделало несколько полезных изменений в ядре. 1.48 +Сегодня в ядрах Linux есть возможности, которых ещё несколько лет назад очень не хватало. 1.49 +Они могут использоваться как гигантские блочные устройства, выходящие далеко 1.50 +за старые пределы в два терабайта (именно терабайта! подробности, например, в \url{http://lkml.org/lkml/2002/5/9/217} и \url{http://kerneltrap.org/node/186}). Они поддерживают намного больше 1.51 +одновременно подключённых дисков. Также появились богатые возможности управления томами. 1.52 +В дополнение ко всему прочему, файловые системы могут теперь расширяться до огромных размеров, 1.53 +даже когда они смонтированы и используются. 1.54 + 1.55 +Здесь рассматриваются новые пути использования эти возможности ядра: 1.56 +диски выносятся из компьютера старые пределы ёмкости преодолеваются. 1.57 +Можно воспринимать ATA over Ethernet как способ заменить IDE-кабель 1.58 +сетью Ethernet. Когда хранилище и компьютер развязаны и между ними стоит такая гибкая вещь 1.59 +как Ethernet, возможности ограничены только воображением и желанием изучать новые вещи. 1.60 + 1.61 +\subsection{Что такое AoE} 1.62 +ATA over Ethernet (AoE) — это сетевой протокол, зарегистрированный IEEE как Ethernet-протокол 1.63 +номер 0x88a2. AoE это низкоуровневый протокол, намного более простой чем TCP/IP или даже просто IP. 1.64 +TCP/IP и IP нужны обязательно, если требуется организовать (надёжную) передачу данных через Интернет, 1.65 +но на компьютер в этом случае ложится намного большая нагрузка, для того чтобы 1.66 +обеспечить ту сложность, которая присуща этим протоколам. 1.67 + 1.68 +Особенно хорошо это известно пользователям iSCSI. 1.69 +iSCSI позволяет перенаправить ввод/вывод поверх TCP/IP, 1.70 +что в свою очередь даёт возможность заменить дорогое оборудование Fibre Channel на значительно 1.71 +более дешёвое Ethernet и IP. 1.72 +Зачастую iSCSI используется совместно с устройствами для разгрузки TCP (TCP offload engines, TOE). 1.73 +Эти устройства довольно дорогие, но они снимают часть нагрузки TCP/IP 1.74 +с центрального процессора машин, использующих iSCSI. 1.75 + 1.76 +Интересно, что в большинстве своём iSCSI не используется поверх собственно сети Интернет. 1.77 +Чаще всего пакеты просто передаются на машину, стоящую в соседней серверной стойке, 1.78 +и в этом случае вся мощь TCP/IP оказывается просто избыточной. 1.79 + 1.80 +Резонный вопрос, почему бы вместо того что разгружать TCP/IP вообще от него не избавиться? 1.81 +Протокол AoE именно это и делает. 1.82 +И вместо того чтобы полагаться на TCP/IP, он полагается на возможности современных коммутаторов, 1.83 +у которых не бывает коллизий, есть возможность управления потоком и 1.84 +постоянно растёт производительность. 1.85 +В локальной сети сохраняется последовательность пакетов 1.86 +и для каждого пакеты сетевым оборудованием вычисляется контрольная сумма. 1.87 + 1.88 +В каждом AoE пакете находится команда для ATA-диска или ответ от ATA-диска. 1.89 +Драйвер AoE в ядре Linux выполняется AoE и делает диск доступным как обычное 1.90 +блочное устройство, такое, например, как \texttt{/dev/etherd/e0.0} -- точно также 1.91 +как IDE-драйвер делает диск, подключённый к концу IDE-кабеля, доступным как \texttt{/dev/hda}. 1.92 +Драйвер, если нужно, ретранслирует пакеты, так что AoE-устройство выглядит для остального ядра как обычный диск. 1.93 + 1.94 +В дополнение к ATA командам, у AoE есть простая возможность идентификации 1.95 +доступных устройств с помощью конфигурационных опросных пакетов (query config packets). 1.96 +Это всё: ATA команды и конфигурационных опросные пакеты. 1.97 + 1.98 +Возникает вопрос: 1.99 +если все диски находятся в сети, тогда как я могу ограничить доступ к дискам? 1.100 +Как можно быть уверенным что, даже если машину А взломали, что диски машины B в безопасности? 1.101 + 1.102 +Ответ в том, что AoE немаршрутизируемый протокол. Можно легко определить какой компьютер 1.103 +будет видеть какие диски путём конфигурирования Ethernet-сети. 1.104 +Поскольку AoE-устройствам не нужны IP-адреса, создать изолированные 1.105 +Ethernet-сети несложно. 1.106 +Большинство современных коммутаторов имеют возможность организации 1.107 +VLAN\rq{}ов, что позволяет легко разделить коммутатор на несколько широковещательных доменов. 1.108 + 1.109 +Протокол AoE настолько легковесный, что его может использовать даже самое недорогое железо 1.110 +(существует как минимум один производитель оборудования, поддерживаеющего ATA over Ethernet — Coraid). 1.111 +Описание спецификаций AoE помещается на 8 страниц. Простота протокола выглядит контрастно 1.112 +по отношению к iSCSI, который описывается на сотнях страниц, 1.113 +включая спецификации по шифрованию, маршрутизации, контролю доступа 1.114 +и множеству других вопросов. 1.115 + 1.116 +Простые примитивы могут быть очень мощными. 1.117 + 1.118 +\subsection{Стэн-архиватор} 1.119 +Эта история основана на реальных событиях, случившихся с гражданином 1.120 +одного другого государства. 1.121 + 1.122 +Стэн — вымышленный админ, работающий на государственной службе. 1.123 +В соответствии с новым государственным законом той страны все официальные 1.124 +документы должны архивироваться. Любой гражданин государства 1.125 +может потребовать показать любой документ в любое время. 1.126 +Из-за этого Стэну понадобилось огромное хранилище, которое может расти 1.127 +без всяких ограничений. Производительность хранилища может не быть 1.128 +больше производительности локального диска. Любые данные из хранилища 1.129 +должны доставаться легко и мгновенно. 1.130 + 1.131 +Стэн уверенно чувствует себя в системном администрировании Linux и Ethernet сетях, 1.132 +и из-за этого он решает попробовать для своей задачи ATA over Ethernet. 1.133 +Он покупает кое-какое оборудование, потратив на это меньше \$6.5K: 1.134 +\begin{itemize} 1.135 +\item Одна двухпортовая гигабитная Ethernet-карта, вместо старой 100-мегабитной карты. 1.136 +\item Один 26-портовый коммутатор с двумя гигабитными портами. 1.137 +\item Одну полку Coraid EtherDrive и десять блэйдов EtherDrive. 1.138 +\item Десять 400GB ATA жестких дисков. 1.139 +\end{itemize} 1.140 + 1.141 +Оборудование может быть объединеное в программный RAID-10 — чередование поверх зеркалированных пар. 1.142 +Хотя этак конфигурация не даёт столько ёмкости как конфигурация RAID 5, 1.143 +она максимизирует отказоустойчивость, надёжность, снижает нагрузку 1.144 +на процессор и время реинициализации диска при замене. 1.145 + 1.146 +Имеет смысл поверх AoE-дисков использовать 1.147 +LVM и файловые системы с возможностью online-расширения, такие например, 1.148 +как ext3, XFS или JFS. 1.149 +Это даст возможность в дальнейшем, при необходимости купить новую заполненную 1.150 +полку, создать ещё один RAID 10, превратить его в физический том, 1.151 +и использовать этот том для расширения 1.152 +объёма логических томов с файловыми системами. 1.153 + 1.154 +Для старых систем нужно скомпилировать драйвер 1.155 +AoE с AOE\_PARTITIONS=1 (в частности, sarge не поддерживал большие минорные номера), 1.156 +поэтому он выключает поддержку разделов, для того чтобы использовать побольше дисков. 1.157 + 1.158 +\begin{verbatim} 1.159 +%# # Настройка хоста для работы с AOE 1.160 + 1.161 +%# # Сборка и инсталляция драйвера aoe 1.162 +%# tar xvfz aoe-2.6-5.tar.gz 1.163 +%# cd aoe-2.6-5 1.164 +%# make AOE_PARTITIONS=1 install 1.165 + 1.166 +%# # Настройка сети 1.167 +%# # Для AoE IP-адрес не нужен 1.168 +%# ifconfig eth1 up 1.169 + 1.170 +%# # Чтобы быть уверенным что интерфейс успел подняться, нужно подождать какое-то время 1.171 +%# # И после этого загрузить драйвер aoe 1.172 +%# sleep 5 1.173 +%# modprobe aoe 1.174 + 1.175 +%# # Теперь можно посмотреть какие AoE-устройства есть в сети 1.176 +%# aoe-stat 1.177 +\end{verbatim} 1.178 + 1.179 +\subsection{Минорные номера устройств} 1.180 +Программы, которые хотят использовать устройство, как правило, обращаются к нему 1.181 +через специальный файл, соответствующий ему. Типичный пример -- файл \texttt{/dev/hda}. 1.182 +Команда \texttt{ls -l} покажет для этого устройства, \texttt{/dev/hda}, номера 3 и 0. 1.183 +Мажорный номер 3 и минорный номер 0. А у устройства \texttt{/dev/hda1} минорный номер 1, 1.184 +в то время как мажорный номер тоже 3. 1.185 + 1.186 +До ядра 2.6 минорный номер был 8битный, ограничивая возможное количество номеров от 0 до 255. 1.187 +Ни у кого и не было столько устройств, поэтому ограничение не имело существенного значения. 1.188 +Теперь, когда диски могут быть отвязаны от серверов, ограничение стало важным -- 1.189 +в настоящее время ядро 2.6 использует до 20 бит для минорного номера устройства. 1.190 + 1.191 +Иметь 1048576 разных значений для минорного номера это большая помощь для систем, в которых 1.192 +много устройств, но не всякое программное обеспечение может с этим разобраться. 1.193 +Если glibc или другая программа всё ещё думает, что минорные номера 8-битные, 1.194 +будет проблематично заставить её использовать номера превышающие 255. 1.195 + 1.196 +Для облегчения перехода, драйвер AoE может быть скомипилирован 1.197 +без поддержки разделов. 1.198 +Это позволит вместо 16 номеров на диск использовать только один. 1.199 +Так что, даже на системах, которые до сих пор не поддерживают большие 1.200 +минорные номера как ядро 2.6, можно использовать до 256 AoE дисков. 1.201 + 1.202 +Команды для создания файловой системы и логических томов показаны на листинге 2. 1.203 +Стэн решил назвать группу ben и логический том franklin. 1.204 +После этого нужно сделать небольшие изменения в конфигурации LVM2. 1.205 +Во-первых, нужно добавить строку с типом = [\dq{}aoe\dq{}, 16], 1.206 +так чтобы LVM распознал AoE-диски. Во-вторых, нужно указать md\_component\_detection = 1, 1.207 +чтобы диски внутри RAID 10 игнорировались, как только весь RAID 10 1.208 +стал физическим томом. 1.209 + 1.210 +\begin{verbatim} 1.211 +%# # ускорить инициализацию массива 1.212 +%# for f in `find /proc | grep speed`; do echo 100000 > $f done 1.213 + 1.214 +%# создать массив (mdadm will manage hot spares) 1.215 +%# mdadm -C /dev/md1 -l 1 -n 2 /dev/etherd/e0.0 /dev/etherd/e0.1 1.216 +%# mdadm -C /dev/md2 -l 1 -n 2 /dev/etherd/e0.2 /dev/etherd/e0.3 1.217 +%# mdadm -C /dev/md3 -l 1 -n 2 /dev/etherd/e0.4 /dev/etherd/e0.5 1.218 +%# mdadm -C /dev/md4 -l 1 -n 2 -x 2 \ 1.219 + /dev/etherd/e0.6 /dev/etherd/e0.7 \ 1.220 + /dev/etherd/e0.8 /dev/etherd/e0.9 1.221 +%# sleep 1 1.222 + 1.223 +%# распределение по зеркалам 1.224 +%# mdadm -C /dev/md0 -l 0 -n 4 \ 1.225 + /dev/md1 /dev/md2 /dev/md3 /dev/md4 1.226 + 1.227 +%# # превращаем RAID10 в физический том, и добавляем его в группу 1.228 +%# pvcreate /dev/md0 1.229 +%# vgcreate TURBO /dev/md0 1.230 + 1.231 +%# # смотрим количество экстентов 1.232 +%# vgdisplay TURBO | grep -i 'free.*PE' 1.233 + 1.234 +%## создаём том, занимающий всё свободное пространство 1.235 +%# lvcreate --extents 88349 --name vol1 TURBO 1.236 +%# modprobe jfs 1.237 +%# mkfs -t jfs /dev/TURBO/vol1 1.238 +%# mkdir /vol1 1.239 +%# mount /dev/TURBO/vol1 /vol1 1.240 +\end{verbatim} 1.241 + 1.242 +На системе Debian Sarge с двумя процессорами 1.243 +Athlon MP, 1 GB памяти, сетевой картой Intel PRO/1000MT и 40GB дисками 1.244 +и коммутатором Netgear FS526T 1.245 +с RAID 10 работающим поверх 8 блэйдов EtherDrive в полке Coraid 1.246 +была зафиксирована произодвительность 23.58MB/s на чтение 1.247 +и 17.45MB/s на запись. 1.248 +Измерения делались 1.249 +путём копирования 1GB файла в /dev/null после сброса кэша. 1.250 +Во время копирования включена также команда sync. 1.251 + 1.252 +RAID 10 в данном случае состоит из четырёх stripe\rq{}ов, 1.253 +каждый из которых это пара зеркалированных дисков. 1.254 +Вообще, можно вычислить производительность 1.255 +набора блэйдов EtherDrive исходя только из количества stripe\rq{}ов в нём. 1.256 +Для RAID 10 stripe\rq{}ов будет в два раза меньше чем дисков, 1.257 +поскольку каждый диск зеркалируется на другой диск. 1.258 +Для RAID 5 один диск выделяется под чётность, оставляя остальные диски для stripe\rq{}ов. 1.259 + 1.260 +Ожидаемая пропускная способность чтения равна количеству stripe\rq{}ов умножить на 6MB/s. 1.261 +Это означает, что если Стэн изначальное купил бы две полки 1.262 +и собрал бы из них 18-блэйдный RAID 10 вместо своего 8-блэйдного, он мог ожидать 1.263 +прироста производительности более чем в два раза. 1.264 +Стэну не нужна такая большая производительность и он хочет начать с маленькой файловой системы, 1.265 +размером 1.6TB. 1.266 + 1.267 +Ниже показано как можно расширить файловую систему. 1.268 + 1.269 +На листинге не показан файл \#mdadm-aoe.conf\# и стартовые/стоповые скрипты. 1.270 +Конфигурационный файл mdadm указывает процессу mdadm, работающему в режиме монитора, 1.271 +как выполнять горячую замену, чтобы можно было заменить сбойный диск в зеркале. 1.272 +Подробности о группах резервирования (spare groups) можно прочитать на man-странице 1.273 +по mdadm. 1.274 + 1.275 +Увеличить файловую систему без размонтирования, установить массив RAID 10, добавить его в группу томов и затем увеличить файловую систему: 1.276 + 1.277 +\begin{verbatim} 1.278 +%# # когда для второй полки сделан RAID10, добавляем его в группу томов 1.279 +%# vgextend TURBO /dev/md5 1.280 +%# vgdisplay TURBO | grep -i 'free.*PE' 1.281 + 1.282 +%# # увеличиваем логический том и файловую систему 1.283 +%# lvextend --extents +88349 /dev/TURBO/vol1 1.284 +%# mount -o remount,resize /vol1 1.285 +\end{verbatim} 1.286 + 1.287 +Стартовый и стоповый скрипты легко создать. 1.288 +Стартовый скрипт просто собирает зеркалированные пары RAID 1, 1.289 +собирает все RAID 0 и запускает процесс мониторинга mdadm. 1.290 +Стоповый скрипт останавливает монитор mdadm, 1.291 +останавливает RAID 0 и, в последнюю очередь, 1.292 +останавливает RAID 1. 1.293 + 1.294 +\subsection{Совместный доступ к блочным хранилищам} 1.295 +Теперь, после того как мы увидели конкретный пример ATA over Ethernet в действии, 1.296 +может возникнуть вопрос: \dq{}А что произойдёт, если другой хост попытается получить 1.297 +доступ к данным, когда с ними уже работает какой-то хост в сети?\dq{} 1.298 +Сможет ли этот второй хост подмонтировать файловую систему JFS и получить доступ 1.299 +к тем же данным? Короткий ответ такой: \dq{}Да, но это не безопасно!\dq{}. 1.300 +JFS, как и ext3, как и многие другие файловые системы спроектированы 1.301 +для использования на отдельном хосте. И для таких файловых систем 1.302 +одновременный доступ с нескольких хостов приведёт к повреждениям. 1.303 +Причина -- в кэш-буфере, который унифицирован с кэшем страниц в ядре 2.6. 1.304 + 1.305 +Linux кэширует данные файловых систем в оперативной памяти 1.306 +везде, где это только возможно, дабы избежать использования 1.307 +медленного блочного устройства и добиться хорошего прироста производительности. 1.308 +Вы могли видеть результат наглядно, 1.309 +когда, например, запускали \textbf{find} дважды 1.310 +поверх одного и того же каталога. 1.311 + 1.312 +Некоторые файловые системы спроектированы так, что они могут использоваться одновременно 1.313 +несколькими хостами — такие файловые системы называют \textit{кластерными}. 1.314 +Они имеют механизмы для проверки, синхронизирован ли кэш на всех 1.315 +машинах с нижележащей файловой системой. 1.316 +Отличный пример такой системы с открытым кодом это GFS. 1.317 +GFS использует кластерное программное обеспечение 1.318 +для того чтобы отследить, кто из группы хостов 1.319 +работает с файловой системой. 1.320 +Для того чтобы убедиться, 1.321 +что разные хосты договариваются друг с другом 1.322 +при совместном доступе к файловой системе, 1.323 +в GFS используются блокировки. 1.324 + 1.325 +Когда используются кластерные файловые системы, такие как GFS, 1.326 +становится возможным совместный доступ множества хостов 1.327 +к одному и тому же блочному устройству по сети. 1.328 +Не нужно ничего типа NFS-сервера, поскольку 1.329 +каждый хост работает с хранилищем непосредственно. 1.330 + 1.331 +Но есть одна загвоздка. 1.332 +Чем больше дисков вы используете, тем выше шансы, 1.333 +что один из дисков засбоит. 1.334 +В этой ситуации обычно используется RAID, 1.335 +который добавляет избыточность. 1.336 +К сожалению, программный RAID Linux 1.337 +пока что не умеет работать с кластерными файловыми системами. 1.338 +Это означает, что каждый хост 1.339 +в сети не сможет запускать mdadm. 1.340 + 1.341 +Кластерное программное обеспечение для Linux развивается 1.342 +с большой скоростью. Есть надежда что рано или поздно RAID будет поддерживать кластерные файловые системы. 1.343 +До этого момента мало вариантов использования AoE в кластерных системах. 1.344 +Основная идея — централизовать функциональность RAID. 1.345 +Можно купить один или два Coraid RAIDblade 1.346 +и сделать чтобы кластерные узлы использовали их. 1.347 +RAIDblade\rq{}ы будут управлять EtherDrive\rq{}ами, 1.348 +которые должны подключаться за них. 1.349 +Или тоже самое можно сделать на обычной Linux-системе, 1.350 +которая подключит массивы, сделает на них RAID 1.351 +и с помощью ATA over Ethernet экспортирует его как готовое устройство. 1.352 +Это может сделать, например, программа [vblade]. 1.353 + 1.354 +\subsection{Резервное копирование} 1.355 +Поскольку AoE выводит недорогие диски в Ethernet-сеть, многие админы 1.356 +могут заинтересоваться в использовании AoE для создания резервных копий. 1.357 +Часто в стратегиях резервного копирования используются двухуровневые хранилища, 1.358 +которые не такие быстрые как on-line хранилища, но и не такие медленные для доступа как лента. 1.359 +ATA over Ethernet даёт возможность легко использовать дешёвые ATA-диски как хранилище второго уровня. 1.360 + 1.361 +Но вообще говоря, с такими дешёвыми жёсткими дисками и стабильным программным RAID, 1.362 +почему бы не использовать диски как носитель для хранения резервных копий? 1.363 +В такой системе резервного копирования, в отличие от ленточной, 1.364 +есть возможность непосредственного доступа к заархивированным файлам. 1.365 + 1.366 +В нескольких программах резервного копирования при создании резервных копий 1.367 +используются преимущества возможностей файловых систем. 1.368 +Например, используя жёсткие ссылки они могут делать полные бэкапы 1.369 +с эффективностью инкрементальных. Подробности 1.370 +здесь ([rsync Backups http://www.mikerubel.org/computers/rsync\_snapshots]) 1.371 +и здесь ([Backup PC http://backuppc.sourceforge.net/]). 1.372 + 1.373 +\subsection{Заключение} 1.374 +Размещение недорогих дисков в локальной сети это одна из тех идей, 1.375 +которая заставляет подумать \dq{}Почему это интересно раньше никто не сделал?\dq{}. 1.376 +С помощью простого сетевого протокола можно развязать хранилища 1.377 +и сервера, не используя при этом дорогого аппаратного обеспечения 1.378 +и сложной сетевой инфраструктуры. В простой Ethernet сети нет необходимости 1.379 +в сложном, развитом но требовательном к ресурсам стеке протоколов TCP/IP. 1.380 + 1.381 +Если вы используете хранилища в локальной сети, и если настройки 1.382 +доступа к хранилищу путём конфигурирование сети Ethernet достаточно, 1.383 +тогда ATA over Ethernet подойдёт вас лучше всего. 1.384 +Если вас интересуют такие вещи как шифрование, возможность маршрутизации 1.385 +и контроль доступа, посмотрите iSCSI. 1.386 + 1.387 +С AoE появляется простое альтернативное решение для организации хранилищ на Linux, 1.388 +которой ранее явно не хватало. С простотой появляются и возможности. 1.389 +AoE может использоваться как строительный блок в любом решении для хранения. 1.390 +Дальше уже ваша фантазия. 1.391 + 1.392 +\subsection{Преимущества и недостатки AoE} 1.393 +Преимущества и недостатки AoE в сравнении с iSCSI. 1.394 + 1.395 +Преимущества: 1.396 +\begin{itemize} 1.397 +\item Низкая стоимость 1.398 +\item Высокая производительность 1.399 +\item Простота 1.400 +\end{itemize} 1.401 + 1.402 +Недостатки: 1.403 +\begin{itemize} 1.404 +\item Низкая масштабируемость, возможность использования только в пределах одной Ethernet-сети 1.405 +\item Отсутствие механизмов обеспечения безопасности 1.406 +\item Отсутствие механизмов контроля ошибок передачи данных, за исключением тех, что есть у самой сети Ethernet (см, например \url{http://lists.xensource.com/archives/html/xen-devel/2005-05/msg00832.html}) 1.407 +\end{itemize} 1.408 + 1.409 +\subsection{Дополнительная информация} 1.410 +\begin{itemize} 1.411 +\item \htmladdnormallinkfoot{ATA over Ethernet}{http://xgu.ru/wiki/aoe} (рус.) 1.412 +\item \htmladdnormallinkfoot{ATA over Ethernet}{http://en.wikipedia.org/wiki/ATA\_over\_Ethernet}(англ.) в Wikipedia 1.413 +\item \htmladdnormallinkfoot{ATA Over Ethernet: Putting Hard Drives on the LAN}{http://www.linuxjournal.com/article/8149} — статья в Linux Journal 1.414 +\item \htmladdnormallinkfoot{Resources for "ATA Over Ethernet: Putting Hard Drives on the LAN"}{http://www.linuxjournal.com/article/8201} (англ.) 1.415 +\item \htmladdnormallinkfoot{Resources for "ATA Over Ethernet: Putting Hard Drives on the LAN"}{http://www.linuxjournal.com/article/8201} (англ.) — дополнительные ссылки в Linux Journal 1.416 +\item \htmladdnormallinkfoot{The ATA over Ethernet (AoE) Protocol}{http://www.linux-mag.com/index.php?option=com\_content\&task=view\&id=2069\&Itemid=2307} (англ.) — статья на Linux Magazine (требуется регистрация) 1.417 +\item \htmladdnormallinkfoot{Using AoE in FreeBSD}{http://www.coraid.com/support/freebsd/usingaoe.html} — Поддержка AoE в FreeBSD 1.418 +\item \htmladdnormallinkfoot{Протоколы сетей хранения данных. Часть I — ATA over Ethernet}{http://www.samag.ru/cgi-bin/go.pl?q=articles;n=09.2005;a=15} — статья в журнале Системный администратор 1.419 +\item \htmladdnormallinkfoot{The Coraid Linux NAS HOWTO}{http://www.coraid.com/support/cln/CLN-HOWTO.html} (англ.) — HOWTO по разворачиванию NAS на базе ATA over Ethernet 1.420 +\item \htmladdnormallinkfoot{(Xen-users) HOWTO: AOE in domU and boot from it.}{http://lists.xensource.com/archives/html/xen-users/2006-07/msg00595.html} (англ. 1.421 +\item \htmladdnormallinkfoot{Access over Ethernet Insecurities in AoE SLIDES}{http://www.slideshare.net/amiable\_indian/access-over-ethernet-insecurites-in-aoe/} (англ.) 1.422 +\item \htmladdnormallinkfoot{"iSCSI killer" Native in Linux}{http://hardware.slashdot.org/article.pl?sid=06/07/31/1143230} (англ.) — обсуждение AoE на Slashdot 1.423 +\item \htmladdnormallinkfoot{OpenNews: ATA over Ethernet в Linux}{http://www.opennet.ru/openforum/vsluhforumID3/36130.html} — обсуждение статьи на OpenNet 1.424 +\item \htmladdnormallinkfoot{OpenNews: Построение SAN для Xen на основе DRBD, LVM и GNBD" }{http://www.opennet.ru/openforum/vsluhforumID3/36804.html} — другое обсуждение на OpenNet, где затрагиваются вопросы сравнения AoE и iSCSI 1.425 +\end{itemize} 1.426 + 1.427 +