Для бедных: XSAN over iSCSI

Apple XSAN поверх iSCSI и линуксовый сервер хранения пока на гигабитной сети, в планах переход на 10GB Ethernet.

Серверная часть

Hardware:

Сервер хранения:

Подключение к Cisco Catalyst 3750 4x1GB etherchannel.

Mac mini – метадата-контроллер для нашей SAN и другие плюшки, достаточно самой дешевой версии.

Software:

CentOS 6.4 на сервере хранения, OS X Mountain Lion 10.8.4 Server на Mac mini.

Схема разделов:

  1. vg_milkyway: RAID 1 из 2х 600 GB SAS дисков.
  2. vg_perseus: RAID 6 из 11 4TB SATA.
  3. vg_sagittarius: RAID 5 из 6 3TB SATA.
[root@milkyway]~# lvscan
 ACTIVE '/dev/vg_perseus/lv_perseus' [32,74 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_mac' [7,00 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan' [4,54 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan_metadata' [100,00 GiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan_audio' [1,00 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan_other' [1,00 TiB] inherit
 ACTIVE '/dev/vg_milkyway/lv_home' [443,99 GiB] inherit
 ACTIVE '/dev/vg_milkyway/lv_root' [97,66 GiB] inherit
 ACTIVE '/dev/vg_milkyway/lv_swap' [15,73 GiB] inherit

Для чего именно так: понятно, системные разделы на «быстрых» SAS 15K в зеркале. RAID6 для большого и надежного хранения, нам скорость записи не сильно важна, важна сохранность данных. RAID5 – для видео монтажа с использованием нескольких одновременных монтажных станций с Final Cut Pro X , тут нам нужна и надежность и хорошая скорость записи.

Сетевое  хранилище экспортируем с помощью AFP/Samba, тут ничего военного. Сам сервер подключен к AD и авторизует пользователей из AD.

Теперь самое интересное. vg_sagittarius нарезан на 2 LV-тома, которые экспортируются по iSCSI (почему – объясню позже).

Примечание: реализация ext4 в текущей версии RHEL/CentOS не поддерживает размер тома больше 16 ТБ, поэтому  lv_perseus содержит XFS раздел, где данным хорошо и комфортно.

Клиентская часть

Клиентами выступают 3 Mac Pro с OS X Mountain Lion 10.8.4 в качестве станционарных монтажных станций, несколько MacBook Pro для монтажа «на ходу», то бишь дома.

Почему именно iSCSI ? Final Cut Pro X не умеет работать с сетевыми дисками, ни с smb, ни с afp, ни с nfs. Умеет только через SAN. Поэтому будем городить огород и поступать как взрослые: создадим SAN, только вместо fiber channel будем использовать iSCSI ввиду дешевизны. Понятно что скорость меньше, но когда будет 10GB Ethernet, тогда посмотрим – кто кого :).

OS X умеет подключаться по iSCSI с помощью globalSAN iSCSI Initiator. Стоит недорого – 89$ за лицензию. Есть триальная версия на 15 дней.

Если подключать одну рабочую станцию к iSCSI диску, то тут никаких проблем. Просто прописываем экспортированный диск и получаем у себя локальный большой сторадж. А если надо осуществить одновременный доступ к хранилищу с нескольких рабочих станций, да еще и с возможностью записи (как вы понимаете, когда 2 компьютера начнуть одновременно писать на блочное устройство, будет очень весело файловой системе 😉 ), то тут надо строить SAN.

Есть 2 способа: простой и средне дешевый и посложнее, но более дешевый.

1й способ

Чтобы не использовать выделенный метадата контроллер, можно воспользоваться софтиной SANmp от все тех же studionetworksolutions. Смысл тут простой: само ПО следит за тем, чтобы никто не поломал нам файловую систему, занимается разграничением доступа и тд.
Принцип работы можно посмотреть здесь: cost-efficient volume sharing with SANmp. SANmp client demo, SANmp admin demo.

Минусы этого способа:

  1. смонтировать на запись одновременно с двух рабочих станций нет никакой возможности.
  2. стоимость лицензии 499$ за рабочее место (итого 5×499$ = 2495$), плюс требуется USB HASP key, что в условиях России и ее почты совсем не вариант. Тут следует отметить, что iSANmp (работа только по iSCSI) дешевле, но я не нашел цифр.

Плюсы:

  1. не надо использовать дополнительное железо;
  2. простота в использовании и администрировании: домохозяйка сможет настроить посмотрев 2 ролика на youtube.

2й способ

Вспоминаем про существование продукта Apple Xsan.
Наверное есть какие-то другие решения, но я про них ничего не знаю и в жизни не встречал, плюс нам нужно создать сеть из монтажных постов именно на маках.

Раньше XSAN сервер стоил 999$ для сервера плюс надо было покупать лицензию на каждое клиентское место.
Сейчас, что самое важное, OS X начиная с версии 10.7 содержит XSAN внутри себя совершенно бесплатно. XSAN Admin появляется при покупке за дополнительные 19,99$ пакета OS X Server из Mac App Store.

Минусы:

  1. выделенный OS X Server в качестве метадата-контроллера
  2. более сложная настройка всех компонент, простым роликом тут уже не обойтись, надо прочитать Xsan administration guide.

Плюсы:

  1. общая стоимость решения – стоимость самой дешевой версии Mac mini и 19,99$ на OS X Server.

После прочтения мануала на Xsan собственно строим наш сторадж:

  1. Как показано на примере выше (lv_sagittarius_xsan[XXX]), нарезаем на RAID5 несколько томов, они у нас станут различными LUN. В моей конфигурации сразу понятно, какой LUN на какой affinity будет использоваться при создании Xsan Volume.
  2. Экспортируем один iSCSI target с 4-мя LUNами.
  3. Настраиваем globalSAN iSCSI Initiator на экспортированный target.
    globalSAN iSCSI target
    globalSAN iSCSI target

    Если открыть дисковую утилиту, у нас появятся несколько жетских дисков:

    Disk Utility with Xsan disks
    Disk Utility with Xsan disks
  4. В Системных Настройках появится новый пункт Xsan
    Xsan System Preference
    Xsan System Preference

    Включаем поддержку Xsan.

  5. Добавляем нового клиента в Xsan Admin Tool и вуа-ля:
    Mounted Xsan Volume
    Mounted Xsan Volume

    Особо внимательне могли заметить уже смонтированный Xsan том в Дисковой Утилите 🙂

В качестве примечания. В чем прелесть использования LVM ? А в том что можно расширять физическими дисками по мере заполнения и расширять том без каких-либо сложностей.

Скорость записи на гигабитной сети – 100-105 мегабайт в секунду, что нам и требовалось:

Activity monitor: network utilization
Activity monitor: network utilization

(скорость мерялась на MacBook Pro Retina с Apple Thunderbolt Display и подключенной к монитору гигабитной сети)

Milkyway

На какое-то время хватит (свободно еще 15 корзин):

[root@milkyway ~]# df -h
Файловая система      Разм  Исп  Дост  Исп% смонтирована на
/dev/mapper/vg_milkyway-lv_root
                       97G  2,2G   90G   3% /
tmpfs                  16G     0   16G   0% /dev/shm
/dev/sda1             485M   73M  387M  16% /boot
/dev/mapper/vg_milkyway-lv_home
                      438G  199M  415G   1% /home
/dev/mapper/vg_sagittarius-lv_sagittarius
                       14T  165M   13T   1% /media/sagittarius
/dev/mapper/vg_perseus-lv_perseus
                       33T  253G   33T   1% /media/perseus

Ну и конечно же etherchannel:

[root@milkyway ~]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

802.3ad info
LACP rate: fast
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
	Aggregator ID: 9
	Number of ports: 4
	Actor Key: 17
	Partner Key: 1
	Partner Mac Address: 00:1d:46:b0:2b:80

Index   Load   Port     EC state        No of bits
------+------+------+------------------+-----------
  0     00     Gi1/0/7  Passive            0
  0     00     Gi1/0/8  Passive            0
  0     00     Gi1/0/9  Passive            0
  0     00     Gi1/0/10 Passive            0

День рождения Linux

иконописикониЯдру Linux исполнилось 20 лет. Для желающих сделал epub версию книги «Just for fun».

Подробно история зарождения Linux изложена в первой части книги “Just for fun“. Сегодня подходящий день, для того чтобы перечитать данную книгу и проникнуться духом того времени.

Первоначально Линус задумал назвать ядро Freax, от слов “free”, “freak” и X (Unix). Но имя Linux ядро получило с легкой руки Ари Лемке (Ari Lemmke), который по просьбе Линуса разместил ядро на своем FTP-сервере, назвав директорию с архивом не “freax” как просил Торвальдс, а “linux”. Примечательно, что предприимчивый делец Вильям Делло Крок (William Della Croce) сумел зарегистрировать торговую марку Linux и хотел со временем собирать отчисления, но позднее передумал и передал все права на торговую марку Линусу. Официальный талисман Linux ядра, пингвин Tux, был выбран в результате соревнования, состоявшегося в 1996 году. Имя Tux расшифровывается как Torvalds UniX.

(отсюда)


 

Security guidelines от Агенства Национальной Безопасности

икониSecurity Configuration Guides” – подготовленные в Национальном агентстве безопасности США руководства по настройки безопасности в RHEL 5, Solaris, Cisco и других системах.

NSA has developed and distributed configuration guidance for operating systems. These guides are currently being used throughout the government and by numerous entities as a security baseline for their systems.

Apple Mac OS X 10.6 ‘Snow Leopard’

The recommendations in Apple’s Mac OS X Security Configuration for Version 10.6 ‘Snow Leopard’ tracks closely with the security level historically represented in NSA guidelines. It is our belief that this guide establishes the best practices for securing the product and recommends that traditional customers of our security recommendations use the Apple guide when securing Mac OS X 10.6 systems

Hardening Tips for MAC OS X 10.6 Snow Leopard
Apple’s Snow Leopard Security Config v10.6

Red Hat Enterprise Linux 5

NSA has developed and distributed configuration guidance for Red Hat Enterprise Linux 5 that is currently being used throughout the government and by numerous entities as a security baseline for their Red Hat Enterprise Linux 5 systems.

Hardening Tips for the Red Hat Enterprise Linux 5
Guide to the Secure Configuration of Red Hat Enterprise Linux 5