This is (almost) the final step!
Progressively forward the remaining 30% of external traffic to MW-on-K8s
What?
Wikikube cluster will be fully serving:
- External traffic (API, web, mobile)
- Internal traffic
- MediaWiki jobs (former jobrunners)
In MW-on-K8s terms, this translates to following deployments
- mw-web
- mw-api-int
- mw-api-ext
- mw-jobrunner
- mw-parsoid
- mw-wikifunctions
What we are not migrating to Wikikube yet
External traffic
- Commons T295007: Upload by URL should use the job queue, possibly chunked with range requests and T118887: Upload by URL doesn't work well for large files: HTTP request timed out.
- Votewiki, T209892: SecurePoll is not compatible with GPG 2.1+
- Wikitech T292707: Migrate Wikitech to Kubernetes
- Dumps
Jobs
- Media Videoscaling T355292: Port videoscaling to kubernetes
Internal traffic
- When Mediawiki calls itself - Commons work T295007: Upload by URL should use the job queue, possibly chunked with range requests and T118887: Upload by URL doesn't work well for large files: HTTP request timed out.
- Machine Learning ml-serve services T362316: Migrate ml-services to mw-api-int
- Possibly yet-unidentified stragglers (Unknowns Uknowns)
Progression
- 75%
- 80%
- 85%
- 90%
- 95%
- 100%
Notes
- For every 5% of external traffic we push, we will need a total of 22-23 additional replicas
- Bump mw-web by 12-13 replicas T351074: Move servers from the appserver/api cluster to kubernetes
- Bump mw-api-ext by 10 replicas T351074: Move servers from the appserver/api cluster to kubernetes
- Each MediaWiki pod requires 5.6 CPUs
- ~123 cores per traffic bump aka 3 physical 48 core servers
The above is per DC.