Skip to content

Render Database Load

Tom Hughes edited this page Sep 11, 2023 · 19 revisions
  • Chef up server using the tile role if necessary
  • Create a temporary directory for the planet file under /store/tmp
  • Download planet.pbf and check the md5sum
  • Stop chef-client, apache2, renderd and replicate services
  • Check the drive has space free with df -h /var/lib/postgresql/*/main
  • Load planet with sudo -u tile osm2pgsql --slim --database=gis --cache=0 --flat-nodes=/store/database/nodes --number-processes=16 --multi-geometry --hstore --style=/srv/tile.openstreetmap.org/styles/default/openstreetmap-carto.style --tag-transform-script=/srv/tile.openstreetmap.org/styles/default/openstreetmap-carto.lua planet-latest.osm.pbf
  • Create additional indexes using sudo -u tile psql -d gis -f /srv/tile.openstreetmap.org/styles/default/indexes.sql
  • Initialise replication - find a sequence number from before planet and set replicate with echo -n SEQUENCE_NUM| sudo tee /var/lib/replicate/sequence.txt then start the replicate service and let the replication catch up
  • Run chef-client which should fix the database permissions and start renderd and apache2
  • Render low zoom tiles with sudo -u tile render_list --all --force --tile-dir=/srv/tile.openstreetmap.org/tiles --socket=/var/run/renderd/renderd.sock --num-threads=N --max-load=70 --min-zoom=0 --max-zoom=12
Clone this wiki locally