Installation & Optimierung eines OpenStreetMap-Kachelservers unter Ubuntu 24.04 LTS

Evaluez cet article !
[Total: 0 Moyenne : 0]

Das Hosting eigener OSM-Kacheln garantiert Unabhängigkeit, Leistung und DSGVO-Konformität. Dieser kompakte Leitfaden geht über klassische Tutorials hinaus: Er behandelt die Installation, Leistungsanpassungen, Sicherheit, Echtzeit-Updates, Monitoring und führt zu Vektorkacheln.

1. Voraussetzungen & Hardware-Sizing

Warum? Eine korrekte Dimensionierung vermeidet Verzögerungen beim Import und garantiert eine flüssige Darstellung.

  • Aktuelles Ubuntu 24.04 LTS (Kernel 6.8).
  • Mindestens 16 GB RAM (Frankreich); 64 GB für Europa; 128 GB für den Planeten.
  • NVMe-SSD ≥ 1 TB für Import + Cache.
  • CPU mit 8 Threads oder mehr (osm2pgsql Multithread).

2. Schritt-für-Schritt Installation

2.1 Pakete installieren

Warum? Diese Pakete bilden den Rendering-Stack (Apache, mod_tile, renderd) und die räumliche Datenbank (PostgreSQL 16 + PostGIS 3.4).

sudo apt update && sudo apt upgrade -y
sudo apt install apache2 libapache2-mod-tile renderd git wget unzip bzip2 
  postgresql postgresql-16-postgis-3 postgresql-16-postgis-3-scripts 
  python3-mapnik mapnik-utils gdal-bin lua5.1 npm node-carto osm2pgsql

2.2 PostGIS-Datenbank erstellen

Warum? Die Datenbank gis speichert die OSM-Daten und dient Mapnik.

sudo -u postgres createuser _renderd
sudo -u postgres createdb -E UTF8 -O _renderd gis
sudo -u postgres psql -d gis -c "CREATE EXTENSION postgis; CREATE EXTENSION hstore;"

2.3 Den Stil openstreetmap-carto herunterladen

Warum? Es ist der „Standard“-OSM-Stil, geeignet für alle Regionen.

git clone https://github.com/gravitystorm/openstreetmap-carto ~/src/osm-carto
cd ~/src/osm-carto && npm install -g carto
carto project.mml > mapnik.xml

2.4 OSM-Daten importieren

Warum? Die Datenbank mit Ihren regionalen Daten füllen.

wget -P ~/data https://download.geofabrik.de/europe/france/alsace-latest.osm.pbf
sudo -u _renderd osm2pgsql -d gis --create --slim -G --hstore 
  --tag-transform-script ~/src/osm-carto/openstreetmap-carto.lua 
  -C 75% --number-processes $(nproc) 
  -S ~/src/osm-carto/openstreetmap-carto.style 
  ~/data/alsace-latest.osm.pbf

2.5 renderd & Apache konfigurieren

Warum? Die Rendering-Engine mit dem HTTP-Server verbinden.

sudo tee /etc/renderd.conf >/dev/null <<EOF

[renderd]

Lire aussi  Samsung erweitert die Erkennung von Schlafapnoe auf 34 europäische Länder und erweitert seine Gesundheitsfunktionen

num_threads=$(nproc) tile_dir=/var/lib/mod_tile stats_file=/run/renderd/stats

[default]

URI=/osm/ XML=/home/$USER/src/osm-carto/mapnik.xml HOST=localhost TILESIZE=256 EOF sudo systemctl enable –now renderd apache2

Test: http://IP/osm/0/0/0.png

3. Optimierungen

Warum? Die Renderzeit reduzieren und den Durchsatz erhöhen.

  • PostgreSQL: shared_buffers=RAM/4, work_mem=128MB.
  • Vorrendering der Zoomstufen 0-12: render_list -a -z 0 -Z 12.
  • HTTP-Cache über Cache-Control: max-age=31536000.

4. Sicherheit & Backups

Warum? Ihre Daten und den Dienst schützen.

  • UFW: Nur Ports 80/443 öffnen, 5432 einschränken.
  • fail2ban für Apache.
  • TLS Let’s Encrypt: sudo certbot --apache --hsts.
  • Sicherungen: pg_dump -Fc gis | rclone copy - s3://bucket/.

5. Automatische Updates

Warum? Die Datenbank mit OSM synchron halten.

sudo -u _renderd osm2pgsql-replication init -d gis 
  --osm-file ~/data/alsace-latest.osm.pbf
# systemd timer toutes les 5 min

6. Überwachung

Warum? Probleme frühzeitig erkennen.

  • Munin: Plugin renderd queue size.
  • Prometheus + Grafana für Metriken und Alarme.

7. Erweiterungen: Vektor-Kacheln, Docker, Ansible

  • Tegola oder TileServer-GL für Vektor-Kacheln.
  • Docker-Image overv/openstreetmap-tile-server einsatzbereit.
  • Ansible-Playbook für idempotente Bereitstellung.

Letztes Update: Juli 2025.

Evaluez cet article !
[Total: 0 Moyenne : 0]
Julie - auteure Com-Strategie.fr

Julie – Auteure & Fondatrice

Étudiante en journalisme et passionnée de technologie, Julie partage ses découvertes autour de l’IA, du SEO et du marketing digital. Sa mission : rendre la veille technologique accessible et proposer des tutoriels pratiques pour le quotidien numérique.

Schreibe einen Kommentar