Page MenuHomePhabricator

Maps 2.0 roll-out plan
Closed, ResolvedPublic

Description

Background information

In order to have a safe roll-out strategy for the re-architecture of the Maps services, here is a proposal.

What

Define roll-out steps that are possible to roll back if needed.

It's important to note that this plan does not intend to decommission the old services immediately

How

Stick with status quo for a while but apply DB performance enhancements

  • Deploy DB schema changes and performance enhancements with the current stack without changing any piece other than configuration and Mapnik render queries. T276324
  • Continue Buster migration T269582 T264292

Prepare Tegola (new vector tile server) to be deployed integrated with PostgreSQL and Swift T274390

  • Tegola is deployed and is able to connect with maps clusters PostgreSQL instances and can generate tiles on the fly in the staging environment
  • Tegola is deployed and is able to connect with Swift to generate cached vector-tiles
  • Pre-generation of tiles is deployed
    • dequeue to generate tiles in Tegola
    • enqueue from OSM sync tile list
  • Tegola is deployed in eqiad and codfw
  • Execute pre-generation of tiles to match the current production environment

Prepare to flip the switch

  • Once Tegola is ready to receive traffic, duplicate incoming traffic towards the new maps tile server service and watch its health and logs. But keep the old services as the main output for clients.
  • If there isn't anything else to address in the new tile server, roll-out maps to different wikis to output tiles and static snapshots integrated with Tegola:
    • testwiki
    • roll-out to the 4 wikis with most request to maps
      • frwiki (4th)
      • ruwiki (3rd)
      • jawiki (2nd)
      • enwiki (1st)
    • finish roll-out to all wikis

Open questions

...

Acceptance criteria

  • Documentation is updated
  • Current stack is deployed with DB enhancements
  • Tegola is ready for production traffic
  • Tegola is fully integrated with Kartotherian and is receiving production traffic 🎉
  • All wikis are rolled-out to Tegola

Event Timeline

MSantos triaged this task as High priority.Sep 9 2021, 3:51 PM

Change 746869 had a related patch set uploaded (by Jgiannelos; author: Jgiannelos):

[operations/mediawiki-config@master] kartographer: Enable tegola on ruwiki

https://gerrit.wikimedia.org/r/746869

Change 746869 merged by jenkins-bot:

[operations/mediawiki-config@master] kartographer: Enable tegola on ruwiki

https://gerrit.wikimedia.org/r/746869

Mentioned in SAL (#wikimedia-operations) [2021-12-13T19:20:55Z] <urbanecm@deploy1002> Synchronized wmf-config/InitialiseSettings.php: fd325c55428b54a3c3e6a16bdd1b895d038dbecb: kartographer: Enable tegola on ruwiki (T280767) (duration: 00m 57s)

Change 747111 had a related patch set uploaded (by Jgiannelos; author: Jgiannelos):

[operations/mediawiki-config@master] kartographer: Enable tegola on jawiki

https://gerrit.wikimedia.org/r/747111

Change 747136 had a related patch set uploaded (by Jgiannelos; author: Jgiannelos):

[operations/deployment-charts@master] tegola-vector-tiles: Disable pregeneration on eqiad

https://gerrit.wikimedia.org/r/747136

Change 747136 merged by jenkins-bot:

[operations/deployment-charts@master] tegola-vector-tiles: Disable pregeneration on eqiad

https://gerrit.wikimedia.org/r/747136

Change 747111 merged by jenkins-bot:

[operations/mediawiki-config@master] kartographer: Enable tegola on jawiki

https://gerrit.wikimedia.org/r/747111

Mentioned in SAL (#wikimedia-operations) [2021-12-14T19:47:54Z] <urbanecm@deploy1002> Synchronized wmf-config/InitialiseSettings.php: 7f4ae4cc678aa64b0795be7bc4c9a6f1ba4c1929: kartographer: Enable tegola on jawiki (T280767) (duration: 00m 58s)

Change 747486 had a related patch set uploaded (by Jgiannelos; author: Jgiannelos):

[operations/mediawiki-config@master] Enable tegola on enwiki

https://gerrit.wikimedia.org/r/747486

@Jgiannelos question.. if we set wgKartographerDfltStyle to osm-tegola... shouldn't we be looking at modifying wgKartographerStyles as well ?? Also we have content with osm-intl hardcoded I presume. Whats the follow up plan for that ?

I think eventually when we finish rolling out tegola, osm-intl and osm will eventually point to tegola as a vector tile source in the chain of sources, but thats a good point @TheDJ

Change 747486 merged by jenkins-bot:

[operations/mediawiki-config@master] Enable tegola on enwiki

https://gerrit.wikimedia.org/r/747486

Change 772428 had a related patch set uploaded (by Jgiannelos; author: Jgiannelos):

[operations/mediawiki-config@master] Remove unused wgKartographerDfltStyle after tegola roll out

https://gerrit.wikimedia.org/r/772428

MSantos claimed this task.