Page MenuHomePhabricator

Migrate mwmaint server functionality to mw-on-k8s
Closed, ResolvedPublic

Related Objects

StatusSubtypeAssignedTask
Resolveddancy
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
InvalidClement_Goubert
InvalidClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
DuplicateClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
Resolvedhnowlan
OpenPRODUCTION ERRORNone
ResolvedPRODUCTION ERRORMichael
ResolvedClement_Goubert
ResolvedClement_Goubert
Resolvedhnowlan
ResolvedScott_French
ResolvedClement_Goubert
ResolvedClement_Goubert
Resolvedhnowlan
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedScott_French
ResolvedClement_Goubert
DuplicateClement_Goubert
DuplicateNone
ResolvedNone
ResolvedNone
ResolvedScott_French
ResolvedScott_French
Resolvedhnowlan
ResolvedClement_Goubert
ResolvedNone
Resolvedhnowlan
Resolvedhnowlan
Resolvedhnowlan
ResolvedClement_Goubert
ResolvedNone
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedScott_French
Resolvedjijiki
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
OpenNone
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
DeclinedNone
ResolvedRLazarus
ResolvedBUG REPORTRLazarus
ResolvedRLazarus
ResolvedRLazarus
Resolved Lucas_Werkmeister_WMDE
ResolvedArian_Bozorg
OpenNone
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
ResolvedRLazarus
OpenFeatureNone
OpenNone
ResolvedRLazarus
Resolvedtstarling
DuplicateNone
InvalidNone
DuplicateRLazarus
ResolvedJoe
Resolvedhashar
OpenNone
OpenRLazarus
ResolvedClement_Goubert
ResolvedScott_French
OpenNone
ResolvedRLazarus
ResolvedJoe
ResolvedJoe
ResolvedRLazarus
ResolvedClement_Goubert
Resolveddcausse
Resolveddcausse
OpenNone
OpenNone
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedClement_Goubert
ResolvedRequestVRiley-WMF
ResolvedMarostegui

Event Timeline

How can MW developers access the output of currently-runinng (or recently-completed) scheduled maintenance scripts that execute in Kubernetes?

Today this works via journalctl on mwmaint hosts. https://wikitech.wikimedia.org/wiki/Maintenance_server#Access_recent_runs

This question is related to T285896, which could potentially solve this by accessing it via Logstash. Ideally there'd still be a way to do it from the command-line as this would allow for real-time tailing, and easier grepping (Logstash is fairly hostile to simple search ops on small quantities of logs).

\cc @RLazarus

Script output is visible through kubectl logs, and mwscript-k8s can be invoked with -f to immediately start tailing the script output (under the hood, it just invokes that kubectl command). If you don't launch with -f it prints out the kubectl command so you can copy and paste it.

We'll eventually send it to logstash too, but that hasn't happened yet.

We'll eventually send it to logstash too, but that hasn't happened yet.

Everything a container produces on stdout and stderr should land in logstash automatically

I’m not sure if it should be a subtask of this or not, but if we’re planning to sunset the mwmaint servers, see also: T384764: mwgrep cannot be used from a deployment host

Clement_Goubert claimed this task.
Clement_Goubert subscribed.

All main use cases of mwmaint servers are now migrated to either mw-cron or mwscript-k8s. Resolving, the still-open tasks linked are not blocking.

I recently stumbled upon instructions on Wikitech mentioning mwmaint1002 and since this wasn't the first time, I decided to take some time to update a bunch of these instructions. The replacement isn't always obvious among deployment host, mwdebug, mw-experimental, and TBD.

TBD:

Thanks for the edits, but in the future, you can just flag them to us, and we'll coordinate rewriting the documentation to be up to date.
I've had a quick pass to replace some mwscript calls with mwscript-k8s, but some of these need an actual rewrite, some are redundant with already written documentation, some require consulting with other teams before rewrite, and I'm wary of having documentation that has been "updated" with outdated procedures (for instance using old-style mwscript from deployment servers in use-cases where mwscript-k8s works, which is everything but importImages.php)