Ein performanter Magento Stack benötigt sorgfältig abgestimmte Komponenten, um Shop-Anfragen effizient zu verarbeiten. Nginx dient als Reverse-Proxy und Webserver, Redis für Session- und Full-Page-Caching, und Varnish beschleunigt die Auslieferung von Seiten durch HTTP-Caching. Dieser Leitfaden zeigt Einsteigern, IT-Studierenden und Junior Network Engineers, wie ein Magento Performance-Setup unter Linux aufgebaut und optimiert wird.
Systemvoraussetzungen
- Linux-Distribution: Ubuntu 22.04 LTS oder CentOS 9
- Root- oder sudo-Zugriff
- PHP 8.x mit PHP-FPM
- MariaDB oder MySQL 8.x
- Nginx, Redis und Varnish
- Internetzugang für Pakete und Updates
Nginx als Reverse-Proxy für Magento
Nginx ist effizienter als Apache bei statischen Dateien und kann gleichzeitig als Reverse-Proxy vor Varnish agieren.
Installation
# Ubuntu
sudo apt update
sudo apt install nginx -y
CentOS
sudo dnf install nginx -y
sudo systemctl enable nginx
sudo systemctl start nginx
Serverblock konfigurieren
sudo nano /etc/nginx/sites-available/magento.conf
server {
listen 80;
server_name shop.example.com;
root /var/www/magento;
index index.php;
access_log /var/log/nginx/magento.access.log;
error_log /var/log/nginx/magento.error.log;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
location ~ /.ht {
deny all;
}
}
sudo ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Redis für Sessions und Full-Page-Cache
Redis speichert Sessions und kann Magento Full-Page-Cache beschleunigen, um Datenbanklast zu reduzieren.
Installation
# Ubuntu
sudo apt install redis-server -y
sudo systemctl enable redis-server
sudo systemctl start redis-server
CentOS
sudo dnf install redis -y
sudo systemctl enable redis
sudo systemctl start redis
Magento konfigurieren
bin/magento setup:config:set --cache-backend=redis --cache-backend-redis-server=127.0.0.1 --cache-backend-redis-db=0
bin/magento setup:config:set --session-save=redis --session-save-redis-host=127.0.0.1 --session-save-redis-db=1
Varnish als HTTP Accelerator
Varnish beschleunigt die Auslieferung von Seiten, indem HTTP-Responses zwischengespeichert werden.
Installation
# Ubuntu
sudo apt install varnish -y
sudo systemctl enable varnish
sudo systemctl start varnish
CentOS
sudo dnf install varnish -y
sudo systemctl enable varnish
sudo systemctl start varnish
Magento Varnish Konfiguration
bin/magento config:set system/full_page_cache/caching_application 2
bin/magento config:set system/full_page_cache/varnish/access_list 127.0.0.1
bin/magento cache:flush
PHP-FPM optimieren
PHP-FPM sollte für Magento-Pools passend konfiguriert werden, um Performance bei hohem Traffic zu sichern.
[www]
user = www-data
group = www-data
listen = /run/php/php8.1-fpm.sock
pm = dynamic
pm.max_children = 70
pm.start_servers = 10
pm.min_spare_servers = 10
pm.max_spare_servers = 20
php_admin_value[memory_limit] = 512M
sudo systemctl restart php8.1-fpm
Datenbankoptimierung (MariaDB)
MariaDB sollte auf hohe Anzahl gleichzeitiger Verbindungen und Cache-Größen optimiert werden.
[mysqld]
innodb_buffer_pool_size = 2G
innodb_log_file_size = 512M
max_connections = 500
query_cache_type = 0
query_cache_size = 0
tmp_table_size = 64M
max_heap_table_size = 64M
sudo systemctl restart mariadb
Netzwerk- und Subnetzplanung
Multi-Server-Setups für Magento profitieren von separaten Subnetzen für Webserver, Caching und Datenbank-Server.
IPv4 Subnetz
<math>
Web-Server-IP = 192.168.490.10/24
Redis-IP = 192.168.490.11/24
Varnish-IP = 192.168.490.12/24
Subnetzadresse = 192.168.490.0
Broadcastadresse = 192.168.490.255
</math>
IPv6 Subnetz
<math>
Web-Server-IP = 2001:db8:abcd:490::10/64
Redis-IP = 2001:db8:abcd:490::11/64
Varnish-IP = 2001:db8:abcd:490::12/64
Subnetzadresse = 2001:db8:abcd:490::0
Broadcastadresse = 2001:db8:abcd:490:ffff:ffff:ffff:ffff
</math>
Best Practices
- Dedizierte Benutzer für Nginx, PHP-FPM und Redis
- PHP-FPM Pools auf Traffic abstimmen
- Redis für Session- und Full-Page-Cache aktivieren
- Varnish als Frontend-Cache mit Nginx als Reverse Proxy
- MariaDB-Tuning für hohe Concurrency
- SSL/TLS aktivieren
- Firewall und Subnetzsegmentierung beachten
- Backups und Monitoring einrichten
- Logfiles regelmäßig prüfen und rotieren
- Testumgebung identisch zur Produktion betreiben
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

