Black friday is almost upon us and I’m itching to get some good deals on missing hardware for my setup.

My boot drive will also be VM storage and reside on two 1TB NVMe drives in a ZFS mirror. I plan on adding another SATA SSD for data storage. I can’t add more storage right now, as my M90q can’t be expanded easily.

Now, how would I best setup my storage? I have two ideas and could use some guidance. I want some NAS storage for documents, files, videos, backups etc. I also need storage for my VMs, namely Nextcloud and Jellyfin. I don’t want to waste NVMe space, so this would go on the SATA SSD as well.

  1. Pass the SSD to a VM running some NAS OS (OpenMediaVault, TrueNas, simple Samba). I’d then set up different NFS/samba shares for my needs. Jellyfin or Nextcloud would rely on the NFS share for their storage needs. Is that even possible and if so, a good idea? I could easily access all files, if needed. I don’t now if there would be a problem with permissions or diminished read/write speeds, especially since there are a lot of small files on my nextcloud.

  2. I split the SSD, pass one partition to my NAS and the other will be used by Proxmox to store virtual disks for my VMs. This is probably the cleanest, but I can’t easily resize the partitions later.

What do you think? I’d love to hear your thoughts on this!

  • wittless@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    1 year ago

    I personally created the ZFS zpool within proxmox so I had all the space I could give to any of the containers I needed. Then when you create a container, you add a mount point and select the pool as the source and specify the size you want to start with. Then as your needs grow, you can add space to that mount point within proxmox.

    Say you have a 6 TB zpool and you create a dataset that is allocated 1 TB. Within that container, you will see a mount point with a size of 1 TB, but in proxmox, you will see that you still have 6TB free because that space isn’t used yet. Your containers are basically just quota’ed directories inside the Proxmox hosts’s filesystem when you use zpool. And you are free to go into that container’s settings and add space to that quota as your needs grow.

    • Pete90@feddit.deOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Ah, very good to know. Then it makes sense to use this approach. Now I only need to figure out, whether I can give my NAS access drives of other VMs, as I might want to download a copy of that data easily. I guess here might be a problem with permissions and file lock, but I’m not sure. I’ll look into this option, thanks!

      • wittless@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        11 months ago

        I have two containers pointing to the same bind mount. I just had to manually edit the config files in /etc/pve/lxc so that both pointed to the same dataset. I have not had any issues, but you do have to pay attention to file permissions etc. I have one container that writes and the other is read only for the most part, so I don’t worry about file lock there. I did it this way because if I recall, you can’t do NFS shares within a container without giving it privileged status, and I didn’t want to do that.

        • Pete90@feddit.deOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          11 months ago

          Excellent, I’ll probably do that then. If I think about it, only one container needs write access so I should be good to go. User/permissions will be the same, since it’s docker and I have one user for it. Awesome!