FreeBSD virtual environment management and repository

2020-10 upd: we reached the first fundraising goal and rented a server in Hetzner for development! Thank you for donating !

Внимание! Данные страницы описывают CBSD версии 13.0.x. Если вы используете более раннюю версию, рекомендуется сначала обновиться.

Обратите внимание! Данные команды поддерживают маску (wildcard) в качестве jname, например: jname='*', jname='ja*l*'

Работа с виртуальными дисками

Команда bconfig, bset, bhyve-dsk

			% cbsd bhyve-dsk mode=modify dsk_sectorsize=512/4096 jname='*'
		

Описание:

Для работы с виртуальными дисками bhyve служит команда cbsd bhyve-dsk, либо вы можете воспользоваться диалоговым интерфейсом cbsd bconfig с подменю bhyvedsk

список дисков

Для вывода списка виртуальных дисков используйте:

		% cbsd bhyve-dsk mode=list
		

Вы можете регулировать объем информации через аргументы header=0 и display=

добавление дисков

Для добавления нового виртуального диска используйте команду:

		% cbsd bhyve-dsk mode=attach dsk_controller=XXX dsk_size=YYY
		

, где:

  • XXX - тип контроллера: virtio-blk или ahci-hd
  • YYY - желаемый объем диска, например: 10g. Пример команды, которая создаст и подключит новый виртуальный диск к виртуальной машине freebsd1:
    				% cbsd bhyve-dsk mode=attach jname=freebsd1 dsk_controller=virtio-blk dsk_size=10g
    			

отключение и удаление дисков

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

		% cbsd bhyve-dsk mode=detach dsk_controller=XXX dsk_path=YYY
		

, где:

  • XXX - тип контроллера диска, который отключаете. Должен совпадать с тем, что вы видите по mode=list
  • YYY - имя диска, который отключаете. Должен совпадать с тем, что вы видите по mode=list

После отключения не потеряйте свой диск из виду, тк в CBSD он больше незарегистрирован.

Если же вы хотите отключить и при этом уничтожить виртуальный диск, используйте команду:

		% cbsd bhyve-dsk mode=remove dsk_controller=XXX dsk_path=YYY
		

, где:

  • XXX - тип контроллера диска, который удаляете. Должен совпадать с тем, что вы видите по mode=list
  • YYY - имя диска, который удаляете. Должен совпадать с тем, что вы видите по mode=list

модификация свойств/параметров виртуальных дисков

Для модификации параметров виртуальных дисков используйте команду:

		% cbsd bhyve-dsk mode=modify jname=ZZZ dsk_controller=XXX dsk_path_YYY [param=value]
		

, где:

  • ZZZ - имя виртуальной машины
  • XXX - тип контроллера диска, который модифицируете. Должен совпадать с тем, что вы видите по mode=list
  • YYY - имя диска, который модифицируете. Должен совпадать с тем, что вы видите по mode=list

В зависимости от версии CBSD, типа инсталляции и используемой файловой системы, набор параметров которыми вы можете оперировать может отличаться.

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

  • bootable - установить диск в качестве загрузочного, например: 1
  • dsk_sectorsize - изменить размер сектора диска, например: 512,512/4096,4096 [*]
  • dsk_size - увеличить объем виртуального диска, например: 30g (установить объем в 30Гб ),+10g (увеличить существующий объем диска на 10 Гб) [**]

___

[*]
- выбирайте корректный sectorsize до форматирования диска, поскольку данные, записанные при одном значении sectorsize будут недоступны при другом.
- если вы указываете значение через '/', цифра слева означает логический sectorsize, значение справа - физический. Наиболее предпочительное значение: 512/4096 или 4096.
- вы можете переназначить значение по-умолчанию в CBSD глобально через bhyve-default-default.conf или в индивидуальном профиле виртуальной машины.

[**]
- виртуальные машины, использующие cloud-init, выполнят resize/увеличение диска в госте автоматически. Если вы не используете cloud-init, помимо увеличения физического носителя, вам необходимо будет расширить файловую систему в госте самостоятельно через соответствующие утилиты.

кастомизация ZFS/zvol properties

Файловая система ZFS имеет богатый выбор возможностей по настройке и оптимизации. Поскольку CBSD интенсивно работает с автоматическим созданием ZFS файловых систем и ZVOL томов в большом количестве и самых различных инсталляциях, вы можете захотеть изменять настройки, которые будут использованы CBSD при этих операциях.

Вы можете изменять параметры по-умолчанию для ZFS датасетов и ZVOL томов через конфигурационный файл zfs.conf. Например, вы можете включить компрессию для GOLD-образов cloud-init, изменить recordsize, volblockmodesize и тд.