Ressourcenabschätzung für eigenen Server

Hallo zusammen,

ich bitte mal um eine Meinung von den Profis :slight_smile:

Ich möchte für Feuerwehren einen Service anbieten um Erreichbarkeitsanalysen zu erzeugen. Vielleicht besser als Isochronenkarte bekannt. Dafür habe ich das Reachable-Script von Netzwolf https://www.netzwolf.info/osm/routing/reachable.html adaptiert und noch etwas ausgebaut, im Wesentlichen um den verschiedenen Straßenklassen unterschiedliche Fahrtgeschwindigkeiten zuweisen zu können. Mein Dienst ist jetzt zu 90% fertiggestellt, ich denke mal im Laufe des Wochenendes kann ich ihn soweit vollenden dass er lauffähig ist wenn mir nichts mehr dazwischen kommt.

Das ganze läuft auf einem virtualisierten Ubuntu Server (ohne grafische Oberfläche) bei einem Hosting-Dienst (also kein Homeserver-Projekt) mit 6 GB RAM (wobei im laufenden Betrieb derzeit ca. 4,5 GB ungenutzt sind) und 2x 2,1 GHz CPU sowie 100MBit-Internetanbindung. Momentan habe ich noch rund 390 GB auf der Festplatte (HDD, keine SSD!) frei.

Das ganze funktioniert dann so, dass der Nutzer in einem HTML-Formular einen Startpunkt auf einer Karte wählt, seine Fahrtgeschwindigkeiten für die unterschiedlichen Straßenklassen und ein paar feuerwehrspezifische Daten eingibt und das Formular dann abschickt. Der Datensatz wird dann in eine Warteschlange eingereiht und mittels eines Cronjobs wird alle x Minuten (da muss ich mal noch ein bisschen probieren wie oft) ein Datensatz abgearbeitet, sofern einer vorliegt. Die einzelnen Schritte die oben im Script von Netzwolf beschrieben sind werden durch ein Shell-Script nacheinander abgearbeitet und am Ende von der erzeugten Karte ein Screenshot erzeugt und dieser auf dem Webserver abgespeichert. Dann wird eine Email mit dem Downloadlink der Karte an den User geschickt. Als Ergebnis kommt dann sowas hier raus: https://nextcloud.christoph-ziehr.de/index.php/s/P2FdXqzCJTdwGQA (da will ich aber noch eine Leiste mit Stammdaten wie Startpunkt, gewählte Geschwindigkeiten, etc. und einen etwas prominenteren Hinweis auf das OSM-Copyright mit in die Grafik einbinden).

Grundsätzlich läuft das alles im Probebetrieb für mich selbst soweit ganz gut. Gedanken mache ich mir nur um die Ressourcen. Dabei habe ich auch gar nicht den Teil des Netzwolf-Scripts auf meinem Server im Kopf (da braucht der Script-Durchlauf nur ein paar Sekunden), sondern die extern eingebundenen Dienste. Für die Kartendaten wird eine quadratische Bounding Box mit 40 km Kantenlänge von der Overpass-Api heruntergeladen (die aber nur highqay=* abfragt). Die Kartendaten haben pro Anfrage dann ca. 35 MB Größe. In der Dokumentation der Overpass-Api habe ich gelesen, dass ein Download von 5 GB pro Tag in Ordnung geht, das wären also ca. 140 Anfragen pro Tag. Das Problem ist, dass ich momentan überhaupt gar nicht abschätzen kann wie intensiv der Dienst genutzt werden könnte. Vielleicht reichen diese 140 Anfragen dicke aus, vielleicht liegt es aber auch deutlich darüber. Deswegen überlege ich, auf dem Server lokal eine eigene Overpass-Api zu installieren die abgefragt werden kann.

Zweiter Knackpunkt sind die Tiles - momentan verwende ich die von openstreetmap.org. Der Screenshot bzw. die Karte die ich erzeuge hat 3.000 x 3.000 Pixel, das ganze spielt sich i.d.R. (je nachdem wie groß das Isochronen-Netz wird bzw. wie hoch die mögliche Fahrtzeit gewählt wird) auf Zoomlevel 13 bis 16 ab. Auch hier mache ich mir Gedanken, ob ich den OSM-Tileserver damit überlaste. Ich habe für ein anderes Projekt schonmal einen Tileserver für die Nutzung in einem LAN auf Ubuntu Server aufgesetzt, das ist aber schon ein paar Jahre her und damals habe ich nur etwa die Größe eines Landkreises abgedeckt.

Und nun zu meiner Frage:

Lässt sich mit den oben genannten Leistungsdaten gleichzeitig ein Tile-Server und ein Overpass-Api Dienst betreiben, ohne dass der Server völlig in die Knie geht? Beim Gebiet würde ich mich auf Deutschland beschränken. Auf dem Server laufen noch weitere Dienste wie ein persönlicher Mailserver, eine wenig genutzte Nextcloud und ein paar Wikis, aber der Leistungsbedarf dieser Dienste ist vernachlässigbar denke ich. Speicherplatz sollte auch nicht das Problem sein, notfalls kann ich die Tiles jeweils nach Erzeugung des Screenshots (oder meinetwegen nach 7 Tagen, falls der Nutzer mehrfach hintereinander ein ähnliches Gebiet anfragt) wieder löschen wenn es deswegen Speicherplatzprobleme gibt.

Die Alternative wäre der Umzug auf ein größeres Hosting-Paket mit ordentlicher Power. Ich liebäugele ja mit einem höherwertigen Paket mit 6 CPU-Kernen, 20 GB RAM, 1.400 GB Speicherplatz und 1-Gigabit-Anbindung, fürchte mich aber die gute Reputation die meine öffentliche IP im Zusammenhang mit dem Mailserver hat beim Umzug dann zu verlieren. Bei AOL hat es damals glaube ich 2 Jahre gedauert bis sie Emails von mir akzeptiert haben. Der Umzug der Webseiten und weiteren Dienste die darauf laufen wäre kein großes Problem. Notfalls würde ich daher in den sauren Apfel beißen und Umziehen.

Vielen Dank schonmal für Eure Antworten!

Viele Grüße,
Christoph