Hetzner Cloud + Volumes [TUTORIAL]

logifech

Active Member
Hallo,
da bei der Hetzner Cloud der SSD Speicher doch begrenzt ist, hatte ich überlegt an meinen bestehenden Cloud Server ein externes Volume einzuhängen über die Cloud Konsole. Mein jetziges System ist ein ISPConfig multiserver System, ist es möglich auf dem Webserver das Volume für /var/www einzuhängen und Websites darauf zu speichern? Die selbe Frage gillt ebenfalls für die Mailserver. Hat jemand ein System in dieser Konstellation am laufen?
Gruß
Patrick
 

Till

Administrator
ist es möglich auf dem Webserver das Volume für /var/www einzuhängen und Websites darauf zu speichern?

Ja.

Die selbe Frage gillt ebenfalls für die Mailserver.

Ja, geht auch.

Hat jemand ein System in dieser Konstellation am laufen?

Nicht persönlich, aber ich kenne Systeme die so aufgesetzt sind. Du musst Dir nur im klaren sein, dass ein netzwerk Volume immer eine höhere Latenz hat als eine lokale SSD. Also für /var/lib/mysql würde ich es nicht nutzen. /var/vmail/ ist unkritisch. bei /var/www muss man mal schauen ob und wieviel es beim speed ausmacht, sollte aber denke ich auch gehen.
 

Till

Administrator
Um das umzusetzen kannst Du ähnlich wie hier vorgehen, also mit BIND mount:


oder aber Du benennst /var/www und /var/vmail um (nach stoppen der Dienste, erstellst neues leeres /var/vmail und /var/www Verzeichnis, mountest die remote volumes darauf, und verschiebst dann die Inhalte der zuvor umbenannten Verzeichnisse zurück mit mv.
 

logifech

Active Member
Super werde die zweite Variante mal ausprobieren, hatte überlegt erst das Volume zu mounten und dann den Server aufzusetzen mit seinen Diensten, denke das dies eine saubere Lösung von Grund auf ist oder?
 

logifech

Active Member
Hab ich auch, aber da ich eh einige Sachen ändern will ist das im Prinzip nicht so schlimm, dass ich es einmal neu mache. Im Prinzip wäre es doch so, ich Mounte das Volume nach /var/www formatiere es mit ext4 und das war es? Wie müsste ich es anstellen das, dass Volume bei einem Neustart automatisch gemountet wird?

offtopic: Mittels volumes kann ich doch theoretisch auch Hochverfügbarkeits Websites betreiben mittels Load balancer und co?

werde bei Erfolg mal ein kleines Statement im Forum Posten mit tutorial.
 

Till

Administrator
Im Prinzip wäre es doch so, ich Mounte das Volume nach /var/www formatiere es mit ext4 und das war es?

ja

Wie müsste ich es anstellen das, dass Volume bei einem Neustart automatisch gemountet wird?

Du musst es in /etc/fstab eintragen

offtopic: Mittels volumes kann ich doch theoretisch auch Hochverfügbarkeits Websites betreiben mittels Load balancer und co?

Kann sein, bin mir aber nicht sicher ob ein Volume von hetzner auf 2 Systemen zugleich gemountet sein darf, müsstets Du mal suchen ob sie infos dazu bereitgestellt haben. Falls nicht, kannst Du trotzdem Hochverfügbarkeit bekommen, indem Du es im Fehlerfall automatisch auf dem 2. system mountest.
 

logifech

Active Member
dd if=/dev/zero of=/var/vmail/test bs=10M count=1000

1000+0 Datensätze ein

1000+0 Datensätze aus

10485760000 bytes (10 GB, 9,8 GiB) copied, 31,5482 s, 332 MB/s

Was hältst du von den Werten @Till ?
 

logifech

Active Member
Beim Perfect Server im Bereich PureFTPD muss ich die Quota variable in der /etc/fstab dann wahrscheinlich an das Volume packen wo die Websites drauf legen oder?
 

logifech

Active Member
Bei dem Test hast Du ja eine große Datei sequentiell geschrieben, da erhält man ganz passable werte. ich denke mal problematischer wird es im normalen web alltag wo auf viele kleine Dateien 'random' zugegriffen wird.
Das Stimmt wohl, bin mal gespannt ob Opcache, APCu und Memcache da Abhilfe schaffen könne. Bis her läuft alles hervorragend, werde gleich mal ein kurzes Tutorial dazu posten wie ich vor gegangen bin.
 

logifech

Active Member
So nun ein kleines Tutorial:

Dieses tutorial basiert auf einer Debian Installation mittels .iso Image

1. Cloudserver erstellen über die Cloud Console von Hetzner
2. Volume erstellen und dieses dem Server zu weisen, ich stelle beim erstellen des Volumes bei Formatieren den Haken auf manuell (da wir dieses über die Installation eh formatieren)
3. Iso mit Debian 9 oder 10 (Ich empfehle hier Debian 10, da dieses das aktuellste Stable release ist)
4. Wenn man an den Punkt kommt zwecks Festplatten formatieren, wählt man die Server interne platte aus und klickt dort auf geführte Patitionierung alles auf "/" schreiben.
5. Danach wählt man im Patitionieurngsmanager das Volume aus, klickt auf neue Patitionstabelle erstellen -> Primary und bestätigen, bei Dateisystem nimmt man "ext4", dann klickt man Mountpoint an und wählt hier manuelle eingäbe und gibt dort "/var/www oder halt /var/vmail an" ohne "".
6. Alles bestätigen und Debian ganz normal zu Ende installieren.
7. Nach erfolgreicher Installation kann man alles überprüfen ob alles gemutet ist, zum Schluss noch die "/etc/fstab" anpassen, damit alles automatisch gemundet wird beim Neustart. Und ergänzt bitte den Eintrag mit dem Volume mountpoint mit diesen angaben.

Code:
discard,nofail,defaults,jqfmt=vfsv0         0       0

Meine /etc/fstab sieht so aus
Code:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=4dd2f38f-5547-4b6e-82dc-a9c1a3837cee /               ext4    errors=remount-ro 0       1
# /var/www was on /dev/sdb1 during installation
UUID=953cc069-b94c-4552-be58-0113443915f4 /var/www        ext4    discard,nofail,defaults,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0         0       0
# swap was on /dev/sda5 during installation
UUID=32b527a6-d2cc-402c-b234-daf493445e2d none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0


/dev/sdb mit dem Mountpoint ist in diesem Falle das Cloud Volume. Ganz wichtig zum Schluss, wenn ihr Quota am laufen habt, dass ihr am Mountpoint für /var/www die entsprechenden Zeilen anhängt. Damit dies weiterhin funktioniert.
Code:
usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0

Hoffe ich konnte mit dem Beitrag helfen. Performance mäßig läuft alles wirklich sehr sehr gut und sehr flüssig und schnell. Vor allem wenn man mal mer Speicher braucht aufgrund von Wachstum etc. kann man die Volumes wunderbar anpassen und muss hinterher nur noch das Dateisystem reizen.
 

Werbung

Top