Core Platform Team/Initiatives/Eliminate Node 6

From mediawiki.org

Initiative Vision

< Initiatives

Vision:
  • Node version 6 is not installed on WMF cluster
  • All services run on modern nodejs
Stakeholder(s):
  • PETeam
  • SRE
  • Maps/Graphoid/other
Problem:
  • Node 6 has hit EOL several years ago; it does not receive even security updates
  • Most of the services were moved to node 10 as part of k8s migration
  • A few services like graphoid (being decommissioned) and RESTBase were left out of k8s, and are still running node 6 on bare metal
  • One service, kartotherian/tilerator, was left out of k8s but moved to node 10
  • Needing support for node 6 in shared libraries forces us to use very outdated, potentially insecure dependencies.
Solution:
  • Move the remaining services to node 10 and drop node 6 from production cluster
Aligned Goals:
  • Platform stability and security. Running outdated software that does not receive security updates, especially accessible via public internet is a huge security flaw.

Initiative Description

< Initiatives

Summary

All service need to be migrated to node 10 and node 6 eliminated from production

Significance and Motivation

Node 6 is EOL, so it's not supported and not even receiving security updates. Running outdates software is not secure.

Outcomes

Node 6 is removed from the cluster

Baseline Metrics

RESTBase, Kartotherian/Tilerator, Graphoid and possibly small others run node 6

Target Metrics

Nothing runs node 6, node 6 is uninstalled

Stakeholders

Platform Engineering, Reading Infrastructure, SRE

Known Dependencies/Blockers

None given


Time and Resource Estimates

< Initiatives

Estimated Start Date

None given

Actual Start Date

None given

Estimated Completion Date

None given

Actual Completion Date

None given

Resource Estimates

1 sprint 1 ENG/1 SRE

Collaborators

None given


Subpages


50% done

Poll

Team members are invited to voice support or opposition, and give their reasoning. Please use the polling templates, for example:

* {{support}} I like this example!  ~~~~
* {{weak oppose}} This is not a great example example... ~~~~