Работа с файлами в Proxmox VE

При использовании LXC контейнеров и  виртуальных машин в Proxmox, часто бывает необходимо передавать файлы между контейнерами. Есть простой способ сделать доступной папку хоста внутри контейнера:

pct set 103 -mp0 /home,mp=/hohome

Команда очень простая. Для LXC контейнера с номером 103, мы делаем доступной (монтируем) папку /home как /hohome (HostHome). При монтировании, у нас есть 8 слотов, от mp0 до mp7.

Другой пример, флешка sda1 может быть смонтирована так:

pct set 103 -mp1 /mnt/sda1,mp=/hosda1

Добавление дискового массива в LXC

Рассмотрим пример добавления 4х вновь подключенных дисков в LXC контейнер с OMV

Работа с файлами в Proxmox VE

Как видно, OMV получил очень скромные ресурсы и всего 4 GB дискового пространства, при этом работает очень шустро.

Я подключил к системе 4 HDD по 2 TB и хочу сделать из них ZFS raid 5 (на рисунке это sda — sdd).

Работа с файлами в Proxmox VE

Для начала посмотрим инфо о дисках и уберем все заводские разбивки.

fdisk -l

 

Работа с файлами в Proxmox VE

Далее установим gparted и сбросим таблицу разделов

apt install parted -y

parted /dev/sda # запускаем для диска sda

(parted) print

Warning: Not all of the space available to /dev/sda appears to be used, you can fix
the GPT to use all of the space (an extra 195352752 blocks) or continue with the
current setting?
Fix/Ignore? f
parted) mklabel GPT # удаляем все разделы и выходим

В итоге получаем чистые диски:

Работа с файлами в Proxmox VE

Посмотрим с помощью fdisk

fdisk -l | grep ‘Disk /dev/sd’

Disk /dev/sdb: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk /dev/sdc: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk /dev/sda: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk /dev/sdd: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors

Итак, делаем 4 раза команду fdisk /dev/sda # для каждого из дисков a b c d

root@pve2:~# fdisk /dev/sdd

Welcome to fdisk (util-linux 2.38.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

### n — new
Command (m for help): n
Partition number (1-128, default 1):
First sector (34-3907029134, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-3907029134, default 3907028991):

Created a new partition 1 of type ‘Linux filesystem’ and of size 1.8 TiB.

### p — print

Command (m for help): p
Disk /dev/sdd: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: TOSHIBA DT01ACA2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: AB117175-80F0-493B-AF5A-A425D6E91A00

Device Start End Sectors Size Type
/dev/sdd1 2048 3907028991 3907026944 1.8T Linux filesystem

### w -write — самая важная команда, записывает изменения на диск!

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Далее форматируем разделы в ext4, для каждого sda1 sdb1 sdc1 sdd1:

mkfs.ext4 /dev/sda1

Контейнер OMV имеет номер 100, обязательно гасим контейнер, иначе ничего не получится.

 

После снова заходим в консоль pve и пишем :

root@pve2:~# pct set 100 -mp1 /mnt/sda1,mp=/hda1
root@pve2:~# pct set 100 -mp2 /mnt/sdb1,mp=/hdb1
root@pve2:~# pct set 100 -mp3 /mnt/sdc1,mp=/hdc1
root@pve2:~# pct set 100 -mp4 /mnt/sdd1,mp=/hdd1

У меня это не сработало, т.е. диски монтируются, но контейнер не может стартовать. После нескольких проверок, обнаружилась проблема именно в контейнере, т.к. к другим контейнерам диски подцеплялись без проблем.

В итоге через веб-интерфейс в разделе Datacenter я сделал новый zfs raidz из 4 дисков x 2 TB,  и назвал его sdz6 (raid5, поэтому емкость 6 TB).

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

pct set 100 -mp0 /mnt/sdz6,mp=/sdz6

 

BitoNator
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: