Inferno OS Wiki
Регистрация
Advertisement

Вам, возможно, захочется запускать Venti из дисковых разделов, а не файлов из файловой системы. Хранилище Venti делится на журнал, хранящий данные и индексно-распределенный SHA1 хэш для перемещения по журналу. Журнал разделен на составляющие фиксированного размера (скажем, 500 MB), которые называются аренами. Для работы сервера Venti необходимо более одной арены. Соединение (конкатенация) арен составляет журнал. Индекс состоит из индивидуальных файлов индексной секции. Для индекса вам требуется около 5 % размера всех арен. Таким образом, если арены у вас занимают 100 GB, для индекса планируйте выделить 5 GB. Используйте disk/fdisk для создания раздела Plan 9 на дисках, которые вы хотите использовать для Venti. Далее используйте disk/prep для разбивки раздела Plan 9 на файлы арен или индексных секций, которые будут использоваться Venti. В остальной части документа предполагается, что вы назвали файлы арен /dev/sdC0/arenas{0,1}, а индексные секции /dev/sdC0/isect{0,1}. Отформатируйте арены:

venti/fmtarenas arenas0. /dev/sdC0/arenas0

venti/fmtarenas arenas1. /dev/sdC0/arenas1

Отформатируйте индексные секции:

venti/fmtisect isect0 /dev/sdC0/isect0

venti/fmtisect isect1 /dev/sdC0/isect1

Имейте в виду, что форматирование арен и индексных секций полностью обнуляет дисковые разделы, так что эта операция занимает достаточно времени. Создайте файл venti.conf, содержащий:

# имя индекса

index main

# индексные секции

isect /dev/sdC0/isect0

isect /dev/sdC0/isect

# арены

arenas /dev/sdC0/arenas0

arenas /dev/sdC0/arenas1

Отформатируйте индекс, выполнив:

venti/fmtindex venti.conf

Заметьте также, что отформатировав индекс и арены, вы не должны изменять порядок индексных секций и арен. Безопаснее добавить новые арены. Теперь, когда диски готовы вы можете запускать сервер Venti:

venti/venti -w

Файл venti.conf должен находится в текущем каталоге. Протестируйте сервер командами:

vac -f /tmp/x.vac /adm

vacfs /tmp/x.vac

ls -l /n/vac

Примите наши поздравления! Вы владеете Venti. Для получения большей информации смотрите venti.conf(6), venti(8) и ventiaux(8).

Производительность[]

Если вы беспокоитесь за производительность, начинайте подразделы со смещения сектора, множества 16, так что считанные 8 KB будут именно 8 KB, согласованными на диске. Или же используйте другой тип disk/fdisk для разделов, но в этом случае у вас не будет таких хороших имен разделов. Производительность Venti зависит от количества индексных секций. Если вы хотите получить высокую производительность, используйте большое количество (т.е. массу) небольших дисков для индекса, так, чтобы считывание выполнялось параллельно.

Безопасность[]

По-умолчанию Venti принимает соединения ото всех, из любого места. Если вы работаете во враждебной среде и не желаете сторонних подключений к вашему серверу Venti, то можете запускать его на устройстве loopback. Добавьте loopbackmedium в ядро (в ядрах pccpu и pcauth эта запись присутствует), а затем выполните

ip/ipconfig loopback /dev/null 127.1

для установки IP адреса для loopback. Теперь запустите Venti такой командой:

venti/venti -a tcp!127.1!venti -h tcp!127.1!http -w

после этого сервер будет принимать соединения только от адреса 127.1.


Copyright © 2003 Перевод Андрей С. Кухар. Последняя модификация 22.08.2003

Advertisement