Isilon. Ошибка. Превышена дисковая квота при записи файлов в кластер
Сводка: При записи файлов в кластер кластер может выдавать сообщение об ошибке «Disk Quota Exceeded».
Симптомы
При записи файлов в кластер появлялась ошибка «Disk Quota Exceeded» может появиться. Лимиты квот не установлены, а если и установлены, то не достигнуты.
Эта ошибка может быть вызвана несколькими причинами. В этой статье рассматриваются три возможные причины:
- Сообщение об ошибке вводит в заблуждение, так как оно появляется, когда достигнут процент резерва SnapshotIQ.
- С квотой связаны пользователи, в том числе пользователь root, и экспортируемый каталог сетевой файловой системы (NFS) монтируется в качестве клиента с правами root.
- Превышена квота для владельца каталога, в который выполняется запись, поэтому расширить каталог невозможно.
Причина
Причина #1:
Если для резерва SnapshotIQ установлено ненулевое значение (например, 1%, 5% или 10%), это снижает общую доступность хранилища. Соблюдайте осторожность при установке значений резерва, так как этот параметр напрямую влияет на общую емкость хранилища кластера.
Если эта ошибка возникает и дисковые квоты не были превышены, скорее всего, для SnapshotIQ был указан высокий резерв, ограничивающий операции записи.
Примечание. Эта проблема может возникать независимо от того, лицензирована ли в кластере функция SmartQuotas. Кроме того, это может происходить независимо от того, достигнуто ли ограничение квоты.
Причина #2:
Если создается квота каталога для всех пользователей и каталог экспортируется для доступа корневого клиента, корневой каталог для этого экспортируемого каталога будет доступен для клиентов с привилегированными правами. Они могут получить "Disk quota exceeded» независимо от использования квоты для конкретного пользователя. Один из способов увидеть это — попытаться сбросить состояние уведомления для каталога:
isilon-9# isi_classic quota modify --path=/ifs/storage/scratch01 --reset-notify-state
Pretending to modify:
user:root@snaps=no@/ifs/storage/scratch01 FAIL
!! Cannot modify/save linked domains without unlinking: Invalid argument
Вы можете увидеть, что квота превышена для пользователя root, запросив список квот:
isilon-9# isi quota quotas list --exceeded
Type AppliesTo Path Snap Hard Soft Adv Used
---------------------------------------------------------------------------------------------
user user1 /ifs/storage/scratch_overflow/scratch04 No 275.00G - - 275.000G
user root /ifs/storage/scratch01 No 500.00G - - 500.032G
user user2 /ifs/storage/scratch01 No 500.00G - - 500.005G
user user3 /ifs/storage/scratch01 No 655.00G - - 655.001G
Если просмотреть экспорты для этого каталога, можно увидеть, настроен ли он для «корневых клиентов»:
--------------------------------------------------------------------------------
ID: 2
Paths: /ifs/storage/scratch01
Description: scratch
Clients: -
Root Clients: user1,user2,user3
Read Only Clients: -
Read Write Clients: -
Unresolved Clients: -
All Dirs: Yes
Block Size: 8.0K
Can Set Time: Yes
Commit Asynchronous: No
Directory Transfer Size: 128.0K
Encoding: DEFAULT
Map Lookup UID: No
Map Retry: Yes
Map All
User : -
Groups : -
Map Root
User : root
Groups : nogroup
Map Full: Yes
Причина #3:
Если создается квота для всех пользователей и владелец каталога превысил свою квоту, пользователи не могут записывать новые файлы в каталог. Это связано с необходимостью увеличивать каталог при добавлении или создании новых файлов. Квоты взимаются с владельца объекта (файла или каталога). В этом случае у владельца каталога недостаточно квоты для увеличения каталога.
Владельца каталога можно найти с помощью команды ls или включить полный список контроля доступа (ACL), ls -led.
isilon-1# pwd
/ifs/data/smbsharebak
isilon-1# ls -led
drwxrwxrwx 2 admin wheel 532 Oct 6 15:26 .
OWNER: user:admin
GROUP: group:wheel
SYNTHETIC ACL
0: user:admin allow dir_gen_read,dir_gen_write,dir_gen_execute,std_write_dac,delete_child
1: group:wheel allow dir_gen_read,dir_gen_write,dir_gen_execute,delete_child
2: everyone allow dir_gen_read,dir_gen_write,dir_gen_execute,delete_child
Примечание. Этот владелец зависит от того, кто создал каталог, который, в свою очередь, часто зависит от способа переноса данных в кластер или путь. Это может быть любой пользователь, включая пользователя root, или даже группа DOMAIN\Domain Admins. Владелец группы может быть унаследован или применен благодаря семантике FreeBSD, установленной при создании каталога. Если для этого владельца превышена квота, емкость каталога будет невозможна, а значит, нельзя будет добавлять или создавать новые файлы.
Используйте --exceeded Возможность определить, превышает ли этот владелец квоту:
isilon-1# isi quota quotas list --exceeded
Type AppliesTo Path Snap Hard Soft Adv Used
---------------------------------------------------------------------------
directory DEFAULT /ifs/data/nfsexport No 30.00M - - 114.03M
user admin /ifs/data/smbsharebak No 80.00M - - 1000.00M
---------------------------------------------------------------------------
Total: 2Разрешение
Причина #1:
Чтобы решить эту проблему, установите для параметра «Процент резерва моментальных снимков» значение 0 (значение по умолчанию).
Примечание. Если необходимо создать резерв для SnapshotIQ, уменьшите сумму с текущего значения до параметра «Disk Quota Exceeded" Ошибка больше не появляется.
Используйте интерфейс командной строки.
- Выполните следующую команду, чтобы проверить значение процентного запаса для моментальных снимков:
isi snapshot settings view - Если процент резерва для моментальных снимков отличается от нуля, измените резерв, выполнив следующую команду:
isi snapshot settings modify --reserve 0
Используйте веб-интерфейс администрирования Isilon.
- Откройте веб-интерфейс администрирования Isilon.
- Нажмите File System > SnapshotIQ > Settings.
- Если в поле «Reserve » установлено значение, отличное от
zero, удалите это значение и введитеzero(0). - Нажмите кнопку Submit.
Причина #2:
Отсоедините пользователя root от квоты, а затем удалите квоту у этого пользователя, чтобы устранить проблему.
Для этого в веб-интерфейсе администрирования Isilon выполните следующие действия.
- Выберите File System > SmartQuotas > Quotas & Usage.
- Список «Квоты и использование» включает сведения о связанном пользователе в списке «Все пользователи» для квоты.
-
Нажмите ссылку Отменить связь справа от пользователя root, чтобы отменить связь квоты с пользователем root.
-
Просмотрите сведения для пользователя root и выберите Изменить ограничения использования.
Теперь вы сможете сохранять файлы в корневом каталоге экспорта.
Для Причины #3:
Для устранения проблемы выполните одно из следующих действий:
- Отмените или увеличьте ограничения квот для этого владельца.
- Если этот владелец является частью связанной квоты, отсоедините владельца и измените квоту для этого несвязанного пользователя
- Изменение владельца каталога
- Очистите ресурсы, используемые этим владельцем для этого пути.