Die richtige Server-Hardware zu wählen ist entscheidend für Performance und Kosten. Dieser Artikel erklärt die wichtigsten Komponenten und hilft bei der Dimensionierung.
CPU (Prozessor)
Der Prozessor ist das Herzstück des Servers. Er führt alle Berechnungen aus.
Wichtige Begriffe
| Begriff | Bedeutung | |---------|-----------| | Kerne (Cores) | Unabhängige Recheneinheiten | | Threads | Virtuelle Kerne durch Hyperthreading | | Taktfrequenz | Geschwindigkeit in GHz | | Cache | Schneller Zwischenspeicher | | TDP | Stromverbrauch/Wärmeentwicklung |
Kerne vs. Threads
Physische Kerne: Echte Hardware-Einheiten
Threads (vCPU): Mit Hyperthreading verdoppelt
4-Kern-CPU ohne Hyperthreading: 4 Threads
4-Kern-CPU mit Hyperthreading: 8 ThreadsCPU-Typen für Server
Intel Xeon
- Entwickelt für Server
- Hohe Zuverlässigkeit
- ECC-RAM-Support
- Mehr Kerne verfügbar
AMD EPYC
- Sehr viele Kerne
- Gutes Preis-Leistungs-Verhältnis
- Hohe Speicherbandbreite
Desktop-CPUs (Intel Core, AMD Ryzen)
- Günstiger
- Weniger Kerne
- Für kleinere Server geeignet
CPU-Dimensionierung
| Anwendung | Empfehlung | |-----------|------------| | Statische Website | 1-2 vCPU | | WordPress | 2-4 vCPU | | E-Commerce | 4-8 vCPU | | Datenbank | 4-8+ vCPU | | Video-Encoding | 8-16+ vCPU | | Gameserver | 4-8 vCPU |
Single-Thread vs. Multi-Thread
Manche Anwendungen nutzen nur einen Kern:
Single-Thread-lastig:
- Viele PHP-Anwendungen
- Ältere Software
- Einige Datenbank-Abfragen
Multi-Thread-lastig:
- Video-Encoding
- Kompilierung
- Parallele AnfragenRAM (Arbeitsspeicher)
RAM ist der schnelle Zwischenspeicher für laufende Programme und Daten.
RAM-Typen
DDR4
- Aktueller Standard
- 2133-3200 MHz
- Gute Verfügbarkeit
DDR5
- Neueste Generation
- Höhere Bandbreite
- Noch teurer
ECC-RAM
- Error Correcting Code
- Erkennt und korrigiert Fehler
- Standard bei Server-Hardware
RAM-Dimensionierung
| Anwendung | Minimum | Empfohlen | |-----------|---------|-----------| | Minimales Linux | 512 MB | 1 GB | | Webserver | 1 GB | 2-4 GB | | WordPress | 2 GB | 4-8 GB | | Nextcloud | 2 GB | 4-8 GB | | MySQL/MariaDB | 2 GB | 4-16 GB | | Docker-Host | 2 GB | 8-16 GB | | Mail-Server | 2 GB | 4-8 GB | | E-Commerce | 4 GB | 8-16 GB | | ERP-System | 8 GB | 16-32 GB |
RAM-Verbrauch prüfen
# Übersicht
free -h
# Detailliert
cat /proc/meminfo
# Pro Prozess
ps aux --sort=-%mem | head -10Swap als Notfallpuffer
Swap erweitert RAM auf die Festplatte:
# Swap prüfen
swapon --show
# Swap sollte nicht ständig genutzt werden
# Hoher Swap = RAM zu knappSpeicher (SSD/HDD)
Der Massenspeicher für Betriebssystem, Anwendungen und Daten.
SSD-Typen
SATA-SSD
- Bis zu 550 MB/s
- Günstig
- Gut für die meisten Anwendungen
NVMe-SSD
- Bis zu 7000+ MB/s
- Teurer
- Für hohe I/O-Anforderungen
HDD (Festplatte)
- Günstiger pro GB
- Langsamer (100-200 MB/s)
- Für Archivdaten, Backups
Vergleich
| Eigenschaft | HDD | SATA-SSD | NVMe-SSD | |-------------|-----|----------|----------| | Lesen | 150 MB/s | 550 MB/s | 3500+ MB/s | | Schreiben | 150 MB/s | 500 MB/s | 3000+ MB/s | | IOPS | 100-200 | 50.000-100.000 | 500.000+ | | Preis/GB | € | €€ | €€€ | | Haltbarkeit | Mechanisch | Elektronisch | Elektronisch |
Speicher-Dimensionierung
| Anwendung | Minimum | Empfohlen | |-----------|---------|-----------| | Minimales System | 10 GB | 20 GB | | Webserver | 20 GB | 50 GB | | WordPress | 30 GB | 50-100 GB | | Mail-Server | 50 GB | 100+ GB | | Datenbank | 50 GB | Je nach Daten | | Nextcloud | 50 GB | Je nach Nutzung |
Speicherplatz prüfen
# Belegung
df -h
# Größte Verzeichnisse
du -sh /* | sort -hr | head -10Netzwerkanbindung
Oft übersehen, aber wichtig für Performance.
Bandbreite
| Anbindung | Geschwindigkeit | |-----------|-----------------| | 100 Mbit | ~12 MB/s | | 1 Gbit | ~125 MB/s | | 10 Gbit | ~1250 MB/s |
Traffic vs. Bandbreite
Bandbreite: Maximale Geschwindigkeit
Traffic: Übertragenes Datenvolumen
Beispiel:
1 Gbit Anbindung mit 10 TB Traffic/MonatDimensionierung nach Anwendung
Webserver (statisch)
CPU: 1-2 vCPU
RAM: 1-2 GB
SSD: 20 GBWordPress-Blog
CPU: 2-4 vCPU
RAM: 4 GB
SSD: 30-50 GBOnline-Shop (WooCommerce)
CPU: 4-8 vCPU
RAM: 8-16 GB
SSD: 50-100 GB NVMeDatenbank-Server
CPU: 4-8 vCPU
RAM: 16-32 GB (viel für Caching)
SSD: NVMe für PerformanceDocker-Host mit mehreren Containern
CPU: 4-8 vCPU
RAM: 8-16 GB
SSD: 100+ GBGameserver (z.B. Minecraft)
CPU: 4-6 vCPU (Single-Thread wichtig)
RAM: 8-16 GB
SSD: 50 GBSkalierungsstrategien
Vertikal (Scale Up)
Mehr Ressourcen für einen Server:
- Mehr RAM
- Mehr CPU-Kerne
- Schnellere SSD
Vorteile: Einfach, keine Architekturänderung Nachteile: Irgendwann Grenze erreicht
Horizontal (Scale Out)
Mehrere Server mit Lastverteilung:
- Load Balancer vor Webservern
- Datenbank-Replikation
- Cluster-Lösungen
Vorteile: Keine theoretische Grenze Nachteile: Komplexer, erfordert Anpassungen
Monitoring der Ressourcen
CPU-Auslastung
# Echtzeit
top
htop
# Durchschnitt
uptime # Load AverageRAM-Auslastung
free -h
vmstat 1Speicher-I/O
iostat -x 1
iotopNetzwerk
iftop
nloadWann aufrüsten?
CPU
- Load Average dauerhaft > Anzahl Kerne
- Hoher CPU-Wait
- Langsame Antwortzeiten
RAM
- Ständige Swap-Nutzung
- Out-of-Memory-Fehler
- Cache wird nicht genutzt
Speicher
- Weniger als 10% frei
- Hohe I/O-Wait-Zeiten
- Langsame Datenbankabfragen
Fazit
Die richtige Hardware-Dimensionierung ist ein Balanceakt zwischen Performance, Kosten und Zukunftssicherheit. Starten Sie mit einer konservativen Konfiguration und skalieren Sie bei Bedarf. Überwachen Sie regelmäßig CPU, RAM und Speicher. Lieber etwas Reserve einplanen als ständig am Limit zu arbeiten. Bei VPS-Servern können Sie meist einfach upgraden, bei Dedicated Servern ist die Planung wichtiger.