mw-parsoid
mw-parsoid is a MediaWiki On Kubernetes deployment in WikiKube, for ad-hoc Parsoid testing and round-trip testing.
Design
Each data center runs one mw-parsoid pod from a dedicated wikikube-worker node, shared with mw-experimental.
Unlike mw-experimental, mw-parsoid pods run the standard production mediawiki-multiversion images. Parsoid is loaded from the host's /srv/parsoid-testing directory gerrit:1239692 .
This service replaces the functionality previously provided by parsoidtest1001 (more info on task T386246).
Using the service
Upgrading PHP version
In https://gerrit.wikimedia.org/r/q/project:operations/deployment-charts (ie https://gerrit.wikimedia.org/r/plugins/gitiles/operations/deployment-charts/+/refs/heads/master/helmfile.d/services/mw-parsoid/) the values-*.yaml are the interesting files.
See gerrit commit TBD for the upgrade from php8.3 to php8.5. The upgrade process is to switch one of codfw/eqiad to the new version, and keep the old version around on the other data center.
Deploying
SSH to the Deployment server and redeploy the mw-parsoid deployment for your chosen data center. Scap skips redeploying mw-parsoid pods during deployments:
deploy:$ cd /srv/deployment-charts/helmfile.d/services/mw-parsoid
deploy:$ helmfile -e eqiad -i apply
or
deploy:$ helmfile -e codfw -i apply
Loading custom MediaWiki code
The /srv/mediawiki directory on the host can be mounted into the pod on demand by editing values.yaml and redeploying
# enabling experimental mounts /srv/mediawiki from the node
# via hostPath
mw:
experimental:
enabled: true
Please read mw-experimental for details about this directory.
Access via WikimediaDebug
You can route requests to mw-parsoid via WikimediaDebug by choosing k8s-mw-parsoid-eqiad or k8s-mw-parsoid-codfw.
Access via deploy host
Dashboards
Known limitations
- Tracing is disabled (sampling rate set to 0).
- Worker node home directories should not be relied upon for long-term storage; nodes may be recycled at any time.