Log-Management auf einem einzelnen Server
Ein kompletter ELK-Stack ist für einen einzelnen Server massiver Overkill. Aber 'Grep über /var/log und hoffen' ist auch keine Strategie. Es gibt einen sinnvollen Mittelweg.
Gedanken, Tutorials und praktische Notizen aus dem Sysadmin-Alltag.
Ein kompletter ELK-Stack ist für einen einzelnen Server massiver Overkill. Aber 'Grep über /var/log und hoffen' ist auch keine Strategie. Es gibt einen sinnvollen Mittelweg.
Prometheus und Grafana klingen wie Enterprise-Tools für ein dediziertes Ops-Team. Aber das Setup für einen einzelnen VPS ist so schlank, dass es sich definitiv lohnt. Und es skaliert perfekt, wenn ein zweiter Server dazukommt.
'Zero-Downtime-Migration' klingt immer so, als bräuchte man dafür Spezialwerkzeuge. Meistens braucht es nur einen vollständig getesteten Server vor der DNS-Änderung und eine TTL, die rechtzeitig gesenkt wurde.
Die Docker-vs-LXC-Debatte kocht jedes Jahr aufs Neue hoch. Hier zeige ich, wie ich Workloads auf meinen Proxmox-Hosts tatsächlich aufteile und warum Docker-in-LXC niemals infrage kommt.
Beide können vor eine Applikation geschaltet werden. Beide beherrschen TLS-Terminierung und Load Balancing. Der wahre Unterschied zeigt sich erst, wenn ein Backend ungesund wird.
systemd-Timer können mehr, aber ich schreibe trotzdem noch Cronjobs. Hier ist der wahre Grund, wie ich mich zwischen beiden entscheide.
Eine Nginx-Config, die nachts um 2 Uhr während eines Incidents live bearbeitet wurde, ist zwar korrekt, aber komplett undokumentiert. So halte ich Configs in der Versionskontrolle, ohne aus kleinen Setups gleich schwere IaC-Projekte zu machen.
Server-Hardening von Hand ist in Ordnung – bis man es zum zehnten Mal im Monat machen muss. Hier ist das Ansible-Playbook, das meine Baseline-Checkliste komplett automatisiert.
Die meisten kleinen Projekte brauchen keine monströse Pipeline. Sie brauchen eine grundlegende `.gitlab-ci.yml`, die zuverlässig baut, testet und deployt. Hier ist meine Vorlage.
Eine Handvoll kleiner Skripte landet auf jedem Server, den ich verwalte, bevor überhaupt irgendeine Applikation deployt wird. Keines davon ist sonderlich raffiniert – und genau deshalb sind sie auch nach Jahren noch nützlich.