How to set up the "perfect" Proxmox - Nexcloud configuration?

noxxci

New Member
Jan 11, 2020
10
0
1
43
Hi there,
i've tried to set up a small server with some vm and primary nextcloud with 4TB storages but it wont work really fine.
So my Questions is, how to set it up to work smoth?

My hardware i a personal computer:
2x 225GB SSD
2 x 4TB Western Digital RED
16GB DDR4 / 8GB for now for the VM Nextcloud

How to set it up perfectly?
Install the Proxmox and all VM on the first 225GB SSD?

VM1:
My plan: 2x4TB WD Red just as a datastorage for the Nextcloud files of all User. How to set up the "best" inhouse backup?
As a ZFS pool and mirror both hdds, but a i need the "easy" option to expand it everytime.
In it's case best at the same time storage and "backup" storage. so i can easily expand the datapool of 4TB and the 4TB backupool upset to another 2x4TB hdds.
I'm struggeling how to set the 8TB storage perfectly for this case.

And finally a backup of the VM every 2 days on another ssd.
The last time i've tried the VM backup, i modified the VM config like this: 1579362122931.png.
to exclude the nextcloud datastorage/directory.
The Server never mount the storage back to the VM and crashed till i comment out # the storage in the VM Nextcloud /etc/fstab/ becaus of the missing virtio1 storage.

I want to set up the VM like the hanssonit.se Nexcloud VM (https://github.com/nextcloud/vm/blob/master/nextcloud_install_production.sh/). i got it allready but want to restart this project of some issues.

I'm a little guy who wan to get a small cloud for his family and two local historical societies and try'd to understand some linux commands, but if you want to help me much more, get me a small how to please :)

Kind Regards :)
 

Attachments

  • 1579362119284.png
    1579362119284.png
    3.4 KB · Views: 136
1) make one SSD your Proxmox boot drive
2) make the other a general datastore -- this is what you will keep VM and container boot volumes on
3) RAID1 the two 4TB drives together into a single 4TB volume with ZFS, this will be the volume you keep your Nextcloud data on
4) set up the Nextcloud host container with its boot volume on that general datastore SSD drive
5) create another storage volume out of the 4TB volume and attach it to the Nextcloud container as a second drive; 500GB ought to do to start with
6) install Nextcloud and tell it to use the mount point for the second volume as its data directory
 
  • Like
Reactions: noxxci
Thank you for the reply!

That is what i'm also thought about, but why should i start with just 500GB not the full 4TB datastore?
Just add some datastore if needed to or is there a performance reason?
And how to add the other partitions of the 4TB to the same mountpoint ?
 
Thank you for the reply!

That is what i'm also thought about, but why should i start with just 500GB not the full 4TB datastore?
Just add some datastore if needed to or is there a performance reason?
And how to add the other partitions of the 4TB to the same mountpoint ?
No performance reason -- you may find yourself wanting to run services other than Nextcloud on this infrastructure and it'll be good to have another place to put bulk data.

You wouldn't add other partitions to the *same* mountpoint -- if you broke off another chunk (say, 100GB) for something else and attached it to the same container or VM, it would just show up as another disk attached via virtio or whatever -- /dev/vdc, if /dev/vda were your boot volume and /dev/vdb were your original data volume. How you mount that is up to you, but by default I think Ubuntu puts new volumes that weren't there at installation time somewhere in /media.
 
I don't want to crash the party but that proposal wasted 215GB on the bootdrive, probably another 200GB on the other small SSD, leaving both small SSDs without redundancy and ending up with nextcloud storage that is not scalable unless manually intervened.

My recommendation is to rethink this. Hint: Two ZFS Raids. Nextcloud Storage? Thin. Overprovisioning. Use the space, Luke.
https://docs.nextcloud.com/server/15/user_manual/files/quota.html *clickediclick*
 
Last edited:
I don't want to crash the party but that proposal wasted 215GB on the bootdrive, probably another 200GB on the other small SSD, leaving both small SSDs without redundancy and ending up with nextcloud storage that is not scalable unless manually intervened.

My recommendation is to rethink this.
I mean, I'm just telling him what to do with what he's got. That 215GB isn't "wasted," it shows up as another usable volume in LVM. And you don't really need redundancy for system drives in a deployment this small.

Like, what SHOULD he do if he has a budget? Make the two 256GB drives into a RAID1 with ZFS, devote that to the Proxmox system, make another RAID1 out of two more SSDs together to be his guest system volume, buy two more 4TB HDDs and a machine (RyZen 3 Pro 3200GE/32GB RAM/cheap little M.2 SSD) devoted to be a FreeNAS device, use FreeNAS to RAID10 them together into a nice quick 8TB volume and then network those two machines together, then set up cloud backup to Glacier for the data volume.

But I didn't get the impression he had a budget :p
 
No budged needed, there's enough stuff inside.

Use either Raid 1 or Raid 0 on the small SSDs, / with 10GB, /boot with 1GB, swap with 8GB, Thinpool for the entire rest. Profit.
Use 2x4GB with ZFS on that system? Slow, but safe. Use almost the entire space for Nextcloud data storage: thin volume with discard. Overprovisioning is not an issue, he's not planning to run another 20 VMs on the same storage. And if he ever does, Nextcloud Quota helps. ZFS without a massive ARK Cache is gonna be slow on that thing anyway, and so are the spinning disks. He's not gonna run an enterprise DB on that thing, so this would be a good way to make use of all he's got in a non-messy way. Both pools are scalable right from the beginning.

If there is no external backup solution then maybe ZFS is a good idea because of data integrity. Otherwise drop ZFS and go LVM-Thin all the way?

Bonus: Do not take your gf out for dinner. Buy one external 6TB HDD instead. That's where the backup goes. Cheap solution done.
 
Last edited:
Hi,

zfs mirror with 2 hdd + raid1/0 for ssd (pmx os + whatever) + 16 GB ram on a desktop sistem it sound for me very risky(I include in this risk the luck of linux experience of the @noxxci )

hanssonit.se

This script is also a problem because it will use postgresql, so you will need more ram.

Using desktop like ssd with pmx os on it it will reduce very fast your ssd life. Adding more load (backup, some ather vDisks, swap) will make things worse!


And you don't really need redundancy for system drives in a deployment this small.

And if this system drive will be broken, what will be happen? He will be able to boot his desktop or maybe not ? And if he is unlucky ... it is in vacancy on other country? What will do ?

Using 2 different zfs pools with 16 GB Ram will be also bad for performance (see also ssd life ...)


Mybe a solution that will be safe enough could be like this:

- put only 2 ssd in the desktop and install debian using plain mdraid(and then see wiki how to install pmx after debian), or make a bios raid1 if you can and install pmx using ext4

- add after upgrades in pmx this 2 x hdd and create a zfs mirror/raid1 from web interface

- install nextcloud using mysql/mariadb instead of postgresql using zfs pool(you will find good tutorials

- create a dataset/store for backup only and make 1 backup/day

- use a external usb-disk to copy your existing backup at 3-6 days


Nota Bene: You not must do something because You can do it ;)

Good luck / Bafta
 
  • Like
Reactions: noxxci
Thank you all so much for your input, finally i wll do it like a creation of @guletz input.

It's just a "fun" cloud for private and historical club societey but i want to hold the data safe, much as i can :)
I'll get tomorrow another 2x 500GBHDD for the DesktopSystem and will use the plain mdraid or the bios raid from the ASRock H370M Pro4, not sure about it.
My linux exprience isn't like my windows and i'm just a "expierence starter", but i'm able to use google and understand the sentence, most of the time with my broken english :D

I like the script hanssonit.se
, because the implementing things like Webmin and some security features i thought and do it by itself, i'm frighent to get some errors i can't handle and can't just "restore" it if i do it by myself.
Hopefully i'll get some help here again, nextcloud- and debian forum itself if struggling.

If you have some helpfull tutorials i allready want to search, please let me know. :)

Regards
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!