Jump to content

mw-experimental

From Wikitech

This page documents the new Kubernetes way providing the same functionality as Mwdebug. The mwdebug* hosts will be going away soon.

Please check task T276994 for more info.

mw-experimental is a MediaWiki On Kubernetes deployment in WikiKube, for Ad-hoc testing via WikimediaDebug.

Design

mw-experimental is yet another mediawiki deployment, with some twists. Each DC runs one mw-experimental pod on a dedicated wikikube-worker node, which mounts the mediawiki code from the host's /srv/mediawiki directory, rather than the code found in the mediawiki container. This deployment runs mediawiki-multiversion-debug images.

Using the service

  1. Make sure mw-experimental is deployed and up to date:
    deploy1003:$ cd /srv/deployment-charts/helmfile.d/services/mw-experimental
    deploy1003:$ helmfile -e eqiad -i apply
    
    or 
    
    deploy1003:$ helmfile -e codfw -i apply
    
  2. SSH to mw-experimental.eqiad.wmnet or mw-experimental.codfw.wmnet
  3. There is timer updating /srv/mediawiki every hour. You can check when it last ran:
    systemctl status mw-experimental-mediawiki-image-update.timer
    
  4. Despite this, if you want to update it again, you may run the timer on demand (takes ~3mins):
    wikikube-worker-exp1001:~$ sudo systemctl restart mw-experimental-mediawiki-image-update.service
    
  5. Make your changes in /srv/mediawiki as usual. Files are editable as any user in the deployment group; changes to PHP files should take effect immediately (no need to restart php-fpm or anything like that).
  6. Go to XWD and choose k8s-mw-experimental-eqiad or k8s-mw-experimental-codfw

Notes:

  • We have a timer updating /srv/mediawiki every hour
  • To prevent code refreshing, you may run
    wikikube-worker-exp1001:~$ /usr/local/sbin/mw-experimental-mediawiki-image-update --lock
     
    wikikube-worker-exp1001:~$ /usr/local/sbin/mw-experimental-mediawiki-image-update --unlock
    
  • If you would like to discard your changes quickly and start over, you don't need to run helmfile again, unless some breaking changes have been deployed in the meantime. Restarting mw-experimental-mediawiki-image-update.service should be enough.
  • Image versions used on mw-experimental can be found either on the experimental hosts themselves or the deployment server under /etc/helmfile-defaults/mediawiki/release/mw-experimental-pinkllama.yaml

Dashboards