You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org
Maps
This page describes the technical aspects of deploying Maps service on Wikimedia Foundation infrastructure.
Monitoring
- Usage dashboard
- Ganglia - Maps Varnish cluster (eqiad)
- Ganglia - Maps cluster (codfw)
Kartotherian
To see the tiles without Varnish cache, connect to Kartotherian using an ssh tunnel, e.g. ssh -L 6533:localhost:6533 maps-test2001.codfw.wmnet
and browse to http://localhost:6533
Tilerator
Connect to Tilerator using an ssh tunnel, e.g. ssh -L 6534:localhost:6534 maps-test2001.codfw.wmnet
See full Tilerator documentation for all commands & parameters.
Command | URL |
---|---|
Jobs Status | http://localhost:6534/ |
Jobs Internal Status | http://localhost:6534/raw |
Get a list of variables | http://localhost:6534/variables |
Get source configuration | http://localhost:6534/sources |
Add new sources | POST text body in YAML to http://localhost:6534/sources |
For POST requests and responses in JSON, browser extensions such as Postman tend to work well.
Dynamic Tile Sources
Cassandra
To create a new Cassandra data source, post something like this to the /sources as a text body. Default table name is tiles
. If table or keyspace is not there, you have to use createIfMissing
parameter.
v2a:
uri: cassandra://
params:
keyspace: v2
table: tiles2a
cp: [maps-test2001.codfw.wmnet, maps-test2002.codfw.wmnet, maps-test2003.codfw.wmnet, maps-test2004.codfw.wmnet]
username: {var: cassandra-user}
password: {var: cassandra-pswd}
# repfactor: 4
# durablewrite: 0
# createIfMissing: true
Dynamic Layer Generator
To generate just a few layers from database, create a layer filter and a layer mixer:
gentmp:
uri: bridge://
xml:
npm: ["osm-bright-source", "data.xml"]
xmlSetDataSource:
if:
dbname: gis
host: ""
type: postgis
set:
host: localhost
user: {var: osmdb-user}
password: {var: osmdb-pswd}
xmlLayers: [admin, road]
mixtmp:
uri: layermixer://
params:
sources: [{ref: v2}, {ref: gentmp}]
Once set, POST a job to copy mixtmp
into the storage v2
e.g. http://localhost:6534/add?generatorId=mixtmp&storageId=v2&baseZoom=0&fromZoom=5&beforeZoom=6&parts=10
Generating Tiles
Generate all tiles for zooms 0..7
, using generator gen
, saving into v3
everything including the solid tiles, up to 4 jobs per zoom.
Generated tiles only if they already exist in v2
source, and save them into v3
, on zooms 8..15
, 60 jobs per zoom.
Bulk Copying
The fastest way to copy a large number of tiles from one source to another is to use a large number of parts and specify saveSolid=true
(skips solid tile detection). E.g. to copy all z16 tiles from v2 to v3, use
http://localhost:6534/add?generatorId=v2&storageId=v3&zoom=16&parts=60&saveSolid=true