You are browsing a read-only backup copy of Wikitech. The primary site can be found at

Maps: Difference between revisions

From Wikitech-static
Jump to navigation Jump to search
m (Update number of servers)
Line 12: Line 12:
* [[Maps/Tile_storage|Tile storage]]
* [[Maps/Tile_storage|Tile storage]]
* [[Maps/Kartotherian|Kartotherian]]
* [[Maps/Kartotherian|Kartotherian]]
* [[Maps/Kartotherian|Tilerator]]
* [[Maps/Tilerator|Tilerator]]
* [[Maps/Maintenance|Maintenance]]

== Miscellaneous ==
== Miscellaneous ==

Revision as of 12:07, 17 December 2020

This page describes the technical aspects of deploying Maps service on Wikimedia Foundation infrastructure.


Maps service component diagram
Maps service deployment diagram
File:Maps @ PI@2x.png
Kartotherian internals focus

The maps service consists of Kartotherian - a nodejs service to serve map tiles, Tilerator - a non-public service to prepare vector tiles (data blobs) from OSM database into Cassandra storage, and TileratorUI - an interface to manage Tilerator jobs. There are 20 servers in the maps group: maps20[01-10].codfw.wmnet and maps10[01-10].eqiad.wmnet that run Kartotherian (port 6533, NCPU instances), Tilerator (port 6534, half of NCPU instance), TileratorUI (port 6535, 1 instance). Also, there are four Varnish servers per datacenter in the cache_maps group.

The infrastructure


Development processes

Puppetization and Automation


  • passwords and postgres replication configuration is set in Ops private repo (root@palladium:~/private/hieradata/role/(codfw|eqiad)/maps/server.yaml)
  • other configuration in puppet/hieradata/role/(codfw|common|eqiad)/maps/*.yaml
  • cassandra::rack is defined in puppet/hieradata/hosts/maps*.yaml
  • the role::maps::master / role::maps::slave roles are associated to the maps nodes (site.pp)