OCFS2

Материал из Xgu.ru

Перейти к: навигация, поиск


Oracle Cluster Filesystem 2 (OCFS2) — файловая система, предназначенная для совместного использования двумя или более Linux-системами, одновременно работающими с одним и тем же разделяемым хранилищем (shared storage). Обладает высокой производительностью и надёжностью. Разрабатывается компанией Oracle. Является свободным программным обеспечением. Входит в состав ядра Linux, начиная с 2.6.16 (март 2006).

Файловая система обладает семантикой локальной файловой системы и не требует никакой специальной модификации программного обеспечения, использующего её.

В настоящий момент файловая система OCFS2 используется в продукте компании Oracle — Real Application Cluster. Кроме этого, её часто применяют при построении масштабируемых Web-серверов, файловых, почтовых систем, а также для хранения образов виртуальных машин.

Файловая система работает поверх разделяемого хранилища, доступ к которому может осуществляться при помощи таких протоколов как iSCSI, AoE или DRBD.

Содержание

[править] Возможности файловой системы OCFS2

  • Блоки переменного размера;
  • Гибкое выделение пространства (экстенты, разреженные файлы (с 2.6.22), незаписанные экстенты с возможностью создания дырок);
  • Журналирование (поддерживаются режимы ordered и writeback);
  • В системах различных аппаратных платформ работает одинаково (x86, x86_64, ia64 и ppc64);
  • Поддержка встроенного Clusterstack с распределённой системой управления блокировками (Distributed Lock Manager);
  • Поддержка буферизованного, прямого, асинхронного, splice() ввода/вывода, а также возможность отображения памяти на файловую систему (Memory Mapped I/Os);
  • Разнообразные утилиты, обеспечивающие всестороннюю поддержку файловой системы.

[править] Программы

stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.


  • mkfs.ocfs2 — создать файловую систему OCFS2;
  • mount.ocfs2 — примонтировать файловую систему OCFS2;
  • mounted.ocfs2 — найти все файловые системы OCFS2 на данном узле;
  • fsck.ocfs2 — проверить целостность файловой системы OCFS2;
  • o2cb — остановка, запуск, настройка кластера (стек OCFS2); включает в свой состав несколько компонентов (o2nm, o2hb, o2net, o2dlm).
  • ocfs2console — графичейский интерфейс для управления OCFS2.

Компоненты o2cb:

  • o2nm — менеджер узлов (node manager);
  • o2hb — heratbeat agent;
  • o2net — сетевой агент;
  • o2dlm — распределённый менеджер блокировок (distributed lock manager).

[править] Настройка

Конфигурационный файл:

 /etc/ocfs2/cluster.conf
 /etc/sysconfig/o2cb

Пример:

node:
        ip_port = 7777
        ip_address = 192.168.2.100
        number = 0
        name = linux1
        cluster = ocfs2

node:
        ip_port = 7777
        ip_address = 192.168.2.101
        number = 1
        name = linux2
        cluster = ocfs2

cluster:
        node_count = 2
        name = ocfs2

Конфигурационный файл описывает инсталляцию из двух узлов (linux1, linux2), их адреса и порты, на которых доступны служба.

Величины таймаутов описываются в файле /etc/sysconfig/o2cb. Сконфигурировать таймауты можно с помощью инициализационного скрипта o2cb.

После того как конфигурация кластера описана, можно создать файловую систему:

 mkfs.ocfs2 /dev/drbd1

Здесь мы предполагаем, что на узлах доступно разделяемое хранилище /dev/drbd1.

Прописать её в /etc/fstab:

/dev/drbd1  /ocfs2/vol1   ocfs2  defaults   0 0

Запуск:

 /etc/init.d/o2cb online CLUSTER-NAME

[править] Настройка квот

Квоты настраивались на Debian 6 2.6.32-5-686

[править] Информации о квотах ocfs2

Квоты в ocfs2 хранятся в мета данных и автоматически синхронизируются каждые 10 сек с мастер нодой, потому файлов aquota.group и aquota.user вы не увидите. quotacheck и repquota у вас так же не будет работать. Мастер нодой в данном контексте является любая нода которая добавляет квоту. ocfs не использует модуль ядра quota_v2.

Требования: ocfs2-tools >= 1.6, пакет можно скачать с нестабильной ветки дебиана. Прямые руки и немного мозга.

размонтируем ocfs2 на всех нодах. На мастере делаем

tunefs.ocfs2  --fs-features=usrquota /dev/sdb && tunefs.ocfs2  --fs-features=grpquota /dev/sdb

добавляем на всех нодах в /etc/fstab

 /dev/sdb /stor     ocfs2 defaults,usrquota,grpquota         0    0 

монтируем

mount /stor

Если по каким-то причинам вам не достаточно времени синхронизации раз в 10 сек. Вы это можете изменить

tunefs.ocfs2  --usrquota-sync-interval=5 /dev/sdb && tunefs.ocfs2  --grpquota-sync-interval=5 /dev/sdb

Пакет quota не обязательно должен стоять на всех нодах, достаточно на мастере и бекапном мастере. Добавляются квоты как обычно это делается edquota либо setquota. Просмотр так же как обычно quota -v -u имя

[править] Дополнительная информация

Xentaur
Дисковая подсистема
Linux | FreeBSD

Диски и разделы
Файлы устройств: Блочное устройство | Символьное устройство | Raw-устройство | loop-устройство
Диски: IDE | SATA (SATA hotplug) | SCSI | USB
RAID-массивы: Аппаратный RAID | Linux RAID | FreeBSD RAID
Дисковые разделы: Раздел | MBR | fdisk | parted | disklabel | GPT

Управление томами
Логический том | Физический том | Группа томов | Снимок | Клон
device-mapper | dm-ioband | dm-crypt | dm-userspace | multipath
Системы управления томами: LVM | CLVM | EVMS | Btrfs* | ZFS* | AdvFS* | Zumastor

Сетевые хранилища и репликация
Отказоустойчивость: DRBD | Xen + DRBD | ggate + gmirror | HAST
Сетевые хранилища: AoE | iSCSI | FCoE | GNBD

Файловые системы
Монтирование | Проверка целостности | Дефрагментация | Суперблок | inode | Журнал | Кэш | VFS | UUID | FUSE
Локальные: ext3 | ext3cow | ext4 | JFS | Reiser4 | XFS | ZFS | Btrfs | AdvFS | ISO | aufs
Сетевые: NFS | CIFS | AFS | POHMELFS
Кластерные: GFS | OCFS2 | CXFS | VMFS | GPFS
Распределенные: Lustre | PVFS | Ceph | Coda

* Btrfs, ZFS и AdvFS — это файловые системы с возможностями управления томами
Источник — «http://xgu.ru/wiki/OCFS2»