suche kleinen Server für eine simple Python-Operation

Registriert
Aug. 2009
Beiträge
226
Hallo Freunde der Sonne,
für ein Uni-Projekt muss ich mir wahrscheinlich einen kleinen Server einrichten. Da ich bisher überhaupt keine Erfahrungen in diesem Bereich besitze, bitte ich um eure Hilfe.
Was soll gemacht werden?
Wir machen eine Overpass-Abfrage (zb. alle Krankenhäuser in Berlin) und das Ergebnis - also die Koordinaten - wird an den Server geschickt. Der Server soll dann das Ergebnis mittels eines Python-Scripts in eine andere Form bringen (wahrscheinlich eine csv) und dann an eine andere Adresse weitergeschicken.
Das Ganze ist überhaupt nicht rechenaufwendig (es findet keine Koordinatentransformation statt) und kann eigentlich auch von einem übertakteten Toaster erledigt werden. Aber ich brauche halt etwas, was 24/7 erreichbar ist und loslegt wenn was reinkommt.

Aber was brauche ich denn dafür jetzt eigentlich?
würde sowas in der Art gehen oder schaue ich mich nach dem falschen Typ Server um?
https://www.strato.de/server/linux-vserver/mini-vserver/

Wichtig wäre mir, dass die Einrichtung (also das Einbinden des Python-Scripts) möglichst unkompliziert ist und die laufenden Kosten relativ gering sind. Da ich davon ausgehe, dass ich solche Dinge in Zukunft häufiger machen werde, würde ich den Server gleich auf längere Zeit mieten wollen ohne dafür meine Wohnung und Frau verkaufen zu müssen.
 
Hast du mal eure Uni-IT gefragt ob die dir einen vserver zur Verfügung stellen können? War bei mir kein Problem und kostenlos. Hatte praktisch mein gesamtes Studium Zugriff auf eine virtuelle Linux-Instanz die ich für diverse Data Science Untersuchungen mit Python verwenden konnte.

Viele Grüße
Tim

v
 
  • Gefällt mir
Reaktionen: Ebrithil, JeanLuc Bizarre, konkretor und eine weitere Person
Google Cloud Platform. Kann 12 Monate kostenlos genutzt werde. Darin enthalten ist ein Guthaben von 300 US-Dollar. Mit dem Guthaben kann man kleinere Instanzen 24/7 1 Jahr laufen lassen.
 
  • Gefällt mir
Reaktionen: JeanLuc Bizarre
Zu meiner Studienzeit stellte das Rechenzentrum vServer für studentische Projekte sehr unkompliziert bereit. Bei Fragen und speziellen Anforderungen wurde mir damals auch weitergeholfen. Für eine schnelle Kommunikation konnte man auch persönlich vorbei kommen.
 
  • Gefällt mir
Reaktionen: JeanLuc Bizarre
Auf unsere IT würde ich hier echt ungern bauen, das ist hier alles etwas rudimentär. Es wäre sicher möglich, würde aber recht lang dauern. Abgesehen davon, ist was eigenes ja auch nicht verkehrt. Vor allem wenn man in Zukunft und über die Studienzeit hinaus eh häufiger damit arbeiten möchte.
An einen Raspi hatte ich auch schon gedacht, aber da würde mich meine Frau für killen wenn ich noch ein technisches Gimmick anschleppe und das in der Wohnung verkabele. Irgendwann bekomm ich sie aber soweit...
Ich lag also mit einem vServer richtig. Spricht was gegen den von mir gewählen Strato-Server? 1-2 euro pro Monat bringen mich wirklich nicht um. Oder muss ich da noch auf irgendetwas spezielles achten wenn ich den bestelle? Und ist das kompliziert da ein python-script zu hinterlegen bzw haben die Anbieter da brauchbare Tutorials? Bin wie gesagt absoluter newbie auf diesem Gebiet.
Vielen Dank für den Tipp mit dem Google-Server. Das werde ich zuerst mal versuchen um auszuprobieren ob es überhaupt so klappt wie ich mir das vorstelle. Und falls es gut läuft kann man sich ja was "richtiges" holen.
 
Persönlich bin ich kein Fan von Strato, allerdings sind meine letzten Erfahrungen damit auch schon ein paar Jahre her.

Die Hetzner Cloud, die @Sykehouse bereits vorgeschlagen hat, kann ich dagegen wärmstens Empfehlen. Nutze ich selber seit gut einem halben Jahr und bin absolut zufrieden.
 
@Ebrithil Das mit Strato hab ich nur exemplarisch rausgesucht, weil es halt das Erste war, das mir unter den Mauszeiger gekommen ist. Wollte vor allem wissen, ob es die Art Server ist, die ich brauche..
Vielen Dank euch allen. Ich schau mir das heute Abend mal genauer an. Bin gerade auf der Arbeit.
 
JeanLuc Bizarre schrieb:
Vielen Dank für den Tipp mit dem Google-Server. Das werde ich zuerst mal versuchen um auszuprobieren ob es überhaupt so klappt wie ich mir das vorstelle. Und falls es gut läuft kann man sich ja was "richtiges" holen.
Das ist etwas richtiges oder anders gefragt: Was soll daran nicht ein "richtiger" Server sein?

Ansonsten: Hast du Ahnung vom Betrieb eines Servers? Sprich Absicherung und Härtung des Systems? Backup? Alerting bei Auffälligkeiten? Kontinuierliches pflegen des Systems sprich OS & Anwendungen aktualisieren, anpassen von Configs wenn Sicherheitslücken auftreten, etc?

Gerade wenn es nur um kleinere Funktionen geht würde ich mir als Entwickler den "Overhead" sparen und mir AWS Lambda/Google Functions/Azure Functions ansehen.

Du hast dann deinen beliebigen Client der deine Abfrage macht, gibt das Ergebnis der Abfrage an Lambda o.ä., dort wird per Python oder eine der anderen unterstützten Sprachen die Auswertung durch geführt und das Ergebnis zurück gegeben. Entweder per Mail oder an den Client oder an die nächste Lambda Funktion o.ä.
 
AWS ist nichts was ich einem Anfänger empfehlen würde, und insbesondere für private Projekte ist es recht problematisch das man durchaus Fehler machen kann die höhere Kosten verursachen. Bei einem einfache vServer sind die Kosten gedeckelt.

Mir ist nicht ganz klar wieso das Projekt so strukturiert ist das man einen öffentlich erreichbaren Server braucht, wäre deutlich unkomplizierter wenn es einfach auf einem lokalen Rechner läuft (oder einer VM auf einem lokalen Rechner).
 
@snaxilian Das war nicht so negativ gemeint wie es wahrscheinlich rüber kam. Hatte eh vor mir mal nen Server zuzulegen, schiebe das aber seit Jahren auf die lange Bank. Von daher war ich von der Idee angetan, sich sowas kostenloses mal anzuschauen und mit der Zeit (und mit mehr Kompetenz - denn im Moment habe ich absolut garkeine) was anderes anzumieten.

B2T: Ich glaub ich muss erläutern was wir (es ist eine Gruppenarbeit) eigentlich vorhaben.
Wir bauen eine Website auf denen man über eine Eingabemaske OSM-Orte suchen kann. Um diese Punkte (z.B. Feuerwachen) werden dann mit einer ArcGisOnline-App Isochronen gebildet, die den live-Traffic mit berücksichtigt. Wir erzeugen also von den aktuellen Verkehrsbedingungen abhängige Einzugsgebiete um die Punkte. Man kann dann sehr schön visualisieren, wieviel Stadtgebiet die Feuerwachen Münchens bei aktueller Verkehrslage in zB. 3 min abdecken (wir ignorieren jetzt einfach mal, dass für die Feuerwehr andere Verkehrsregeln gelten...)
Da wir nicht davon abhängig sein wollen nur das auswählen zu können was ESRI in ihre Karten packt (Feuerwehren haben die natürlich, aber den "Pizzalieferanten XY" eher nicht...), wollen wir die Auswahl der Punkte über die OSM-Tags machen. Diese Auswahl an Punkten sollen als Koordinaten an die ArcGisOnline-App geschickt werden damit diese sie dann weiterverarbeiten kann. Leider ist die ArcGisOnline-App ziemlich wählerisch was die Struktur der Daten betrifft. Wir müssen also unsere erhaltenen Koordinaten automatisch zerpflücken lassen, neu zusammensetzen und an die ArcGis-App schicken (die in unsere Website eingebunden ist).
Und genau für diesen Job brauche ich den kleinen Server, da ich im Moment keinen stromsparenden Mini-Computer habe, der die ganze Zeit Zuhause auf Daten warten kann.
Das Projekt komplett lokal zu machen ist leider keine Option, da prinzipiell jeder in der Lage sein sollte durch den Aufruf einer URL diesen Service zu nutzen.

Das Ganze ist eher ein Proof of Concept-Ding und soll auch nur bis zur Vorstellung des Projekts am Ende des Semesters laufen. Danach wird das Ganze einfach eingemottet.
 
Wenn du noch keine Erfahrung als Server Admin hast, nimm dir einen Dienst wo alles bereits vorkonfiguriert ist und du das eigentliche Produkt gleich nutzen kannst. Server absichern und richtig betreiben ist nicht so trivial. Vor allem weil du die volle Verantwortung trägst.

Fertige Dienste z.B.: https://shop.gandi.net/en/simplehosting/create?size=s+
 
  • Gefällt mir
Reaktionen: BeBur
Der Threaderöffner brauch nur ein Login auf einer x-beliebigen, durchlaufenden Kiste, auf der er dauerhaft laufende Prozesse (seinen "Server") laufen lassen darf. Sowas ist in wenigen Sekunden eingerichtet. Jede Uni stellt ihre Studis solche Accounts unkompliziert zur Verfügung.

Vorm Beantragen des Accounts auf paar Fragen gefasst machen, um sie GROB beantworten zu können. Üblich sind:
"Welches OS willst du? (Linux/Windows/Sonstwas)"
"Wieviele Ressourcen brauchst du? (Plattenplatz in MB, RAM in MB, Rechenzeit, ggf. Sonderwünsche wie öffentliche IP)"
"Welche Softwarepakete brauchst du?" Hier wäre "Python 3" eine passende Antwort.

Dann bekommst du dein Login+Passwort und Infos dazu, wie du auf den Rechner zugreifen kannst, um dein Projekt zu realisieren. Das wars. Ich würde mich noch schlau machen, ob/wie von dem Rechner Backups gemacht werden oder man sich da selbst drum kümmern muss. Nicht dass 3 Tage vorm Abgabetermin was in die Hose geht.

Physisch erledigt den Job irgendein Server in einem Rechenzentrum der Uni, auf dem auch hunderte andere Studis ihre Projekte erledigen. Diesen Rechner will/muss/wird man als Studi niemals zu Gesicht bekommen, sich niemals um ihn kümmern sondern einfach nur nutzen. Eine Uni hat Personal für den Betrieb solch grundlegender Infrastruktur. Ggf. ist auch direkt die Fakultät/der Lehrstuhl des Aufgabensteller eine gute Adresse, um sich einen passenden Account zu besorgen. Frag den Aufgabensteller! Der hat sich beim Ausknobeln der Aufgabe sicher was gedacht.
 
Zuletzt bearbeitet:
JeanLuc Bizarre schrieb:
Hatte eh vor mir mal nen Server zuzulegen, schiebe das aber seit Jahren auf die lange Bank
Gerade wenn du keine Zeit hast verabschiede dich bitte ganz ganz schnell von der Idee. Im Internet öffentlich erreichbar hat so eine Spiel- & Lernkiste nix aber auch gar nix zu suchen!
Kauf dir nen Raspi 4 für so etwas und lerne an diesem oder nutze dafür eine VM auf deinem PC/Laptop.
Damit kannst du genau so gut kleine lokale Projekte testen, realisieren und dich mit dem Betrieb vertraut machen. Ein Server ist keine einmal-aufsetzen-und-vergessen Angelegenheit. Also klar kannst du schon so machen wenn dir deine Daten egal sind, du keine personenbezogenen Daten Dritter verarbeitest und/oder speicherst und du kein Problem damit hast voll haftbar zu sein wenn Dritte dein System für ihre Zwecke missbrauchen (Bot in einem DDoS Netzwerk, Spamschleuder, C&C-Server, Tor Exitnode, etc. pp.).

Sehe es ansonsten auch so wie @mensch183 Die Uni/Auftraggeber möchte etwas von dir, also muss er für die passenden Rahmenbedingungen sorgen. Macht er dies nicht so muss das klar abgesprochen sein aber dann gehört es auch zum Projektumfang und erhöht den Aufwand.
Gerade anhand deiner Beschreibung, die verfl**ht noch einmal direkt in den Eingangspost gehört hätte damit man hier nicht nen halben Thread drum herum einern muss, bieten sich Dienste wie Lambda an. Die Auswahl der Tags/Koordinaten erledigst du im Browser auf eurer Webseite und das
JeanLuc Bizarre schrieb:
automatisch zerpflücken lassen, neu zusammensetzen und an die ArcGis-App schicken
schreibst du als in Python oder einer anderen kompatiblen Sprache.

Die im Browser gewählten Tags, Koordinaten, etc sendest du im Hintergrund an Lambda, der passt dies für dich an und kann das Ergebnis an euch oder irgendeine App weiter senden.
Wenn du Angst vor einer Kostenfalle hast: Du kannst problemlos Limits & Alertings definieren.

Vorteil: OS & Programminstallation, Backup, Härtung, etc entfällt alles. Aber anstatt das auf $server mit python alles aufzusetzen inkl. eines Serverdienstes der auf Anfragen lauscht und dann das Skript ausführt, wirfst deinen Code bei AWS rein. Da du dich um Themen wie Authentifizierung und Authorisierung nicht kümmern musst. Du legst einen IAM User an, berechtigst diesen auf AWS Lambda bzw. deine Funktion und rufst die dann von deiner Webseite aus per HTTP POST auf.
Ich bin bei weitem kein riesen Fan von Lambda aber es hat gerade für so kleine Anwendungsfälle mit einer Nutzung bei Aufruf seine Daseinsberechtigung. Vor allem wenn sonst Menschen mit geringer bis keiner Ahnung einen vollwertigen Server dafür mieten und sich in keinster Art und Weise Gedanken um den Betrieb machen.
 
@Woozi Der Preis? Der TE scheint ja keine riesigen Anforderungen zu haben. Kleinstes Droplet vs. CX11 bei Hetzner kostet 2€ mehr im Monat...
 
Zurück
Oben