OSM Tileserver
See mw:Wikimedia Maps for information about the Wikimedia Foundation's Maps project which runs a different tile server stack.
This page is for the Cloud VPS project to implement an OpenStreetMap TileServer to serve the same basic data as OSM themselves (synced from them). This is orthogonal to (or in some other sense, a prerequisite for) other OSM efforts going on in Cloud Services for related overlays and databases. Corrections to the information below are welcome, this is all to the best of my knowledge at this time...
Contents
1Resources
2Technology stack
3Tile refreshing
4DSN/Web proxies
5Questions
6Decisions
7See also
Resources
Technology stack
[Service] Type=exec PIDFile=/var/run/renderd/renderd.pid # Make sure apache and other processes have prio Nice=1 RemainAfterExit=no #It crashes a lot and needs restarts Restart=always RestartSec=2s # Restart it every hour, because it leaks memory RuntimeMaxSec=3600
Tile refreshing
mod_tile looks at the import statement for the planet to determine if tiles are old. This is import statement is basically the modification timestamp of the file /data/project/tilesplanet-import-complete​.
Normally this timestamp is left by the osm2pqsl import, but we keep it manually on this tiles server. touch -t 20210615 /data/project/tilesplanet-import-complete​. We set it via cron every day, assuming that WMF imports work :)
/etc/cron.d/importplanet 0 1 * * * sudo -u www-data touch /data/project/tiles/planet-import-complete
For an individual tile, it is possible to request the current status by appending /status to the url like so: a status url. You can also submit it to be rerendered by appending /dirty instead. All rerender requests are queued, so it might still be a considerable time before the tile is actually rerendered.
There is some more information on rerendering strategies here on OSM wiki. We currently do not use this.
DSN/Web proxies
This project does not contain any public IPs. Rather, the public IPs for the project are owned by the 'project-proxy' project, and assigned to proxy hosts that are specific to the maps project.
DNS settings in the 'maps' project refer to the proxy host in project-proxy, for example:
wma1.wmflabs.org. A - Address record 185.15.56.55 Active
There are two proxy hosts in project-proxy, and active and a passive node, named maps-proxy-01.project-proxy.eqiad1.wikimedia.cloud and maps-proxy-02.project-proxy.eqiad1.wikimedia.cloud. The list of proxies is configured with hiera and profile::wmcs::proxy::static::proxy_mappings:
profile::wmcs::proxy::static::proxy_mappings: 0.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 1.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 2.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 3.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 4.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 5.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 6.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud 7.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud a.tiles.wmflabs.org: maps-tiles1.maps.eqiad1.wikimedia.cloud b.tiles.wmflabs.org: maps-tiles1.maps.eqiad1.wikimedia.cloud c.tiles.wmflabs.org: maps-tiles1.maps.eqiad1.wikimedia.cloud label.wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud maps.wmflabs.org: maps-tiles1.maps.eqiad1.wikimedia.cloud tiles.wmflabs.org: maps-tiles1.maps.eqiad1.wikimedia.cloud warper.wmflabs.org: maps-warper3.maps.eqiad1.wikimedia.cloud wma.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma0.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma1.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma2.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma3.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma4.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma5.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma6.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud wma7.wmflabs.org: maps-wma.maps.eqiad1.wikimedia.cloud
To add or modify a proxy, first make the necessary DNS change within the Maps project (and point the new domain to the maps proxy IP, 185.15.56.55. Then ask a WMCS admin to adjust the hiera as needed. Hiera is located in the 'maps-proxy' puppet prefix.
Questions
Decisions
See also
Historic information about this project is on OSM Tileserver/Archive​.
Search
This page was last edited on 8 August 2021, at 02:15.
Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. See Terms of Use for details.
Privacy policy
About Wikitech
Disclaimers
Code of Conduct
Mobile view
Developers
Statistics
Cookie statement
Create accountLog in
PageDiscussion
ReadView sourceView history
Visit the main pageMain pageRecent changesServer admin log: ProdAdmin log: RelEngIncident statusDeploymentsSRE/Operations HelpCloud VPS portalToolforge portalRequest VPS projectAdmin log: Cloud VPSWhat links hereRelated changesSpecial pagesPermanent linkPage informationCite this pageCreate a bookDownload as PDFPrintable version