Điểm:0

How to deal with dynamic drive name when device mounting hard drives to LXC on Proxmox?

lá cờ in

Question

Setup

On a Proxmox server I create an LXC container with:

pct create 101 local:vztmpl/centos-8-default_20201210_amd64.tar.xz --features mknod=1,nesting=1,fuse=1 --ostype centos --storage=CTVM --description "centos glusterfs" --hostname thorgluster --password "password" --onboot 1 --net0 name=eth0,bridge=vmbr0 --unprivileged=0

Then can device mount /dev/sdd into it with:

lxc-device add -n 101 /dev/sdd

and adding the following lines to /etc/pve/lxc/101.conf so it mounts on reboot (8:48 is from lsblk):

lxc.cgroup2.devices.allow = b 8:48 rwm
lxc.mount.entry = /dev/sdd /dev/sdd none bind,optional,create=file

Note, I need to device mount not bind mount because I need to be able to run LVM commands on the drives from within the container.

Actual Question

However in the future, /dev/sdd may change names to /dev/sd[a-z] according to this post. So how can I deal with this name changing?

Attempted Solutions

  • I tried using /dev/disk/by-id/ata-ST2000DM008-2FR102_ZFL1FYFF instead of /dev/sdd but it didn't work.
  • I considered creating a permanent device node before mounting with mknod following this post but I haven't seen this done anywhere else and don't know if there are any other considerations when using mknod like this.
  • This post says the device name is tied to the port it's plugged into. Which would mean all I have to do is put physical labels on the disks and ports themselves.
  • I saw somewhere I can mount a virtual hard drive into the container which would avoid this problem but I haven't seen any documentation on how to do this. (edit: I might be able to use a loop device. Looking into this.)
  • I tried adding lvm.external=true to /etc/pve/lxc/101.conf but got an error.
Nikita Kipriyanov avatar
lá cờ za
> tên thiết bị được gắn với cổng mà thiết bị được cắm vào. Điều đó có nghĩa là tất cả những gì tôi phải làm là dán nhãn vật lý lên đĩa và cổng. --- không, điều này là sai.Có thể có một số mối tương quan vì quá trình quét về cơ bản là một vòng lặp thử tất cả các cổng theo trình tự, nhưng nếu cổng thứ nhất có thiết bị chậm hơn mà cổng thứ 2 và cổng thứ 2 phản hồi nhanh hơn, thì các thiết bị có thể bị "đổi tên".
Nikita Kipriyanov avatar
lá cờ za
Quay lại câu hỏi: tại sao bạn không sử dụng khung lưu trữ proxmox đúng cách, như được mô tả trong tài liệu? Hoặc, nếu bạn muốn tránh LVM, chỉ cần gắn ổ đĩa vào máy chủ và tạo lại một thư mục liên kết gắn kết, như được mô tả trong tài liệu.
mikeLundquist avatar
lá cờ in
Tôi muốn sử dụng [glusterfs snapshots](https://rajeshjoseph.gitbooks.io/test-guide/content/features/chap-Managing_Snapshots.html) từ trong vùng chứa LXC. Ảnh chụp nhanh GlusterFS sử dụng LVM quản lý thiết bị trực tiếp. Tôi sẽ thử các bước sau: `gắn bộ lưu trữ vào LXC -> tạo thiết bị vòng lặp trong LXC -> chạy pvcreate trên thiết bị vòng lặp -> cài đặt glusterfs trên XFS trên thiết bị vòng lặp` hy vọng các thiết bị vòng lặp hoạt động trong bộ chứa LXC
Điểm:0
lá cờ in

Vấn đề tôi gặp phải là sử dụng /dev/sdd làm đối số thứ hai cho fstab. Nó nên đã được nhà phát triển/sdd mà proxmox sau đó sẽ nối vào. Dòng bây giờ trông như thế này

lxc.mount.entry = /dev/disk/by-id/ata-ST2000DM008-2FR102_ZFL1FYFF dev/sdd không ràng buộc, tùy chọn, tạo=tệp
Điểm:0
lá cờ cn

Lời khuyên của tôi là sử dụng LVM trên máy chủ. Tạo một nhóm âm lượng với đĩa bạn muốn sử dụng cho máy ảo của mình:

vgcreate VMdisks/dev/sdd/dev/sde

Sau đó, tạo một khối hợp lý sử dụng tất cả /dev/sdd:

lvcreate -n Centos01SystemDisk -l 100%PVS VMdisks /dev/sdd

Sau đó sử dụng /dev/VMdisks/Centos01SystemDisk như đĩa VM của bạn.

Bạn sẽ có lợi ích là không phải quan tâm đến đĩa nào, ngoài ra bạn sẽ có khả năng LVM (khả năng mở rộng LV, tạo ảnh chụp nhanh, v.v.).

Nikita Kipriyanov avatar
lá cờ za
Điều này cũng giống như việc tạo bộ lưu trữ kiểu `lvm` và gán một điểm gắn kết mới cho bộ chứa bằng PVE GUI đúng cách, mặc dù cái sau tốt hơn vì nó sạch hơn và hoàn toàn phù hợp với tài liệu. Chẳng hạn, nó sẽ cho phép sao lưu ổ đĩa đó.
lá cờ cn
@NikitaKipriyanov có nhưng rõ ràng OP muốn sử dụng trực tiếp các thiết bị chặn; anh ta có thể có lý do chính đáng cho điều đó (rõ ràng là sử dụng Gluster)

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.