All Ubuntu Trusty VMs need to be replaced with VMs running a supported operating system by the April 2019 upstream end of life date. On Nov 20, 2017 we disabled self-service creation of new Trusty VMs by most projects. We now need to begin the process of identifying the Trusty VMs which remain, notifying their owners of the need to replace these VMs with Debian Stretch VMs (or Debian Jessie in exceptional circumstances), and monitoring the results.
Description
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Resolved | None | T186029 Remove support for Ubuntu Trusty prior to upstream End Of Life for release | |||
| Resolved | • aborrero | T199003 Develop timeline for Cloud VPS wide deprecation of Trusty |
Event Timeline
Generating a list of physical servers by dist:
aborrero@neodymium:~ 3s 130 $ sudo cumin --force -m async -b 10 'P{lab* or cloud*}' "lsb_release -c" -o txt | awk 'x==1 { print $0 } /_____FORMATTED_OUTPUT_____/ { x=1 }' | grep trusty
78 hosts will be targeted:
cloudcontrol[1003-1004].wikimedia.org,cloudelastic[1001-1004].wikimedia.org,cloudnet[1003-1004].eqiad.wmnet,cloudservices[1003-1004].wikimedia.org,cloudvirt[1019-1022].eqiad.wmnet,labcontrol[1001-1002].wikimedia.org,labmon[1001-1002].eqiad.wmnet,labnet[1001-1002].eqiad.wmnet,labnodepool1001.eqiad.wmnet,labpuppetmaster[1001-1002].wikimedia.org,labsdb[1004-1007,1009-1011].eqiad.wmnet,labservices[1001-1002].wikimedia.org,labstore[2001-2004].codfw.wmnet,labstore[1001-1005].eqiad.wmnet,labstore[1006-1007].wikimedia.org,labtestcontrol[2001,2003].wikimedia.org,labtestmetal2001.codfw.wmnet,labtestnet[2002-2003].codfw.wmnet,labtestneutron[2001-2002].codfw.wmnet,labtestpuppetmaster2001.wikimedia.org,labtestservices[2001-2003].wikimedia.org,labtestvirt[2001-2003].codfw.wmnet,labtestweb2001.wikimedia.org,labvirt[1001-1018].eqiad.wmnet,labweb[1001-1002].wikimedia.org
[...]
labcontrol1001.wikimedia.org: Codename: trusty
labcontrol1002.wikimedia.org: Codename: trusty
labnet1001.eqiad.wmnet: Codename: trusty
labnet1002.eqiad.wmnet: Codename: trusty
labservices1001.wikimedia.org: Codename: trusty
labservices1002.wikimedia.org: Codename: trusty
labstore1003.eqiad.wmnet: Codename: trusty
labtestcontrol2001.wikimedia.org: Codename: trusty
labtestnet2002.codfw.wmnet: Codename: trusty
labtestnet2003.codfw.wmnet: Codename: trusty
labtestservices2001.wikimedia.org: Codename: trusty
labtestvirt2001.codfw.wmnet: Codename: trusty
labtestvirt2002.codfw.wmnet: Codename: trusty
labvirt1001.eqiad.wmnet: Codename: trusty
labvirt1002.eqiad.wmnet: Codename: trusty
labvirt1003.eqiad.wmnet: Codename: trusty
labvirt1004.eqiad.wmnet: Codename: trusty
labvirt1005.eqiad.wmnet: Codename: trusty
labvirt1006.eqiad.wmnet: Codename: trusty
labvirt1007.eqiad.wmnet: Codename: trusty
labvirt1008.eqiad.wmnet: Codename: trusty
labvirt1009.eqiad.wmnet: Codename: trusty
labvirt1010.eqiad.wmnet: Codename: trusty
labvirt1011.eqiad.wmnet: Codename: trusty
labvirt1012.eqiad.wmnet: Codename: trusty
labvirt1013.eqiad.wmnet: Codename: trusty
labvirt1014.eqiad.wmnet: Codename: trusty
labvirt1015.eqiad.wmnet: Codename: trusty
labvirt1017.eqiad.wmnet: Codename: trustyGenerating a list of VM by dist:
aborrero@labpuppetmaster1001:~$ sudo cumin --force -m async -b 10 -p 0 'O{power_state:1}' "lsb_release -c" -o txt | awk 'x==1 { print $0 } /_____FORMATTED_OUTPUT_____/ { x=1 }' | grep trusty
[...]
api-alpha.mw-api-testing.eqiad.wmflabs: Codename: trusty
bf-wmpageview.butterfly.eqiad.wmflabs: Codename: trusty
botbot.bots.eqiad.wmflabs: Codename: trusty
bugzilla.dumps.eqiad.wmflabs: Codename: trusty
butterfly-m4m.butterfly.eqiad.wmflabs: Codename: trusty
client.nonfreewiki.eqiad.wmflabs: Codename: trusty
commonsarchive-backup.commonsarchive.eqiad.wmflabs: Codename: trusty
commonsarchive-production.commonsarchive.eqiad.wmflabs: Codename: trusty
commonsarchive-varnish.commonsarchive.eqiad.wmflabs: Codename: trusty
danny-b.wildcat.eqiad.wmflabs: Codename: trusty
db.mwfileimport.eqiad.wmflabs: Codename: trusty
deployment-zotero01.deployment-prep.eqiad.wmflabs: Codename: trusty
design-lsg3.design.eqiad.wmflabs: Codename: trusty
df2.wikidata-page-banner.eqiad.wmflabs: Codename: trusty
discourse-wam.discourse-wam.eqiad.wmflabs: Codename: trusty
discovery-production.shiny-r.eqiad.wmflabs: Codename: trusty
discovery-testing.shiny-r.eqiad.wmflabs: Codename: trusty
drmf-beta.math.eqiad.wmflabs: Codename: trusty
drmf.math.eqiad.wmflabs: Codename: trusty
dumps-stats.dumps.eqiad.wmflabs: Codename: trusty
fastcci-master.fastcci.eqiad.wmflabs: Codename: trusty
fawp-tts.fa-wp.eqiad.wmflabs: Codename: trusty
fawp.fa-wp.eqiad.wmflabs: Codename: trusty
federation-wikis.wikidata-federation.eqiad.wmflabs: Codename: trusty
gadgets.social-tools.eqiad.wmflabs: Codename: trusty
huggle-pg.huggle.eqiad.wmflabs: Codename: trusty
ids-testing.mw-extension-ids.eqiad.wmflabs: Codename: trusty
images.nonfreewiki.eqiad.wmflabs: Codename: trusty
jupyter-mw-02.jupyter.eqiad.wmflabs: Codename: trusty
ldfclient.wikidata-query.eqiad.wmflabs: Codename: trusty
living-style-guide.design.eqiad.wmflabs: Codename: trusty
lsg-01.design.eqiad.wmflabs: Codename: trusty
maps-tiles2.maps.eqiad.wmflabs: Codename: trusty
maps-tiles3.maps.eqiad.wmflabs: Codename: trusty
maps-warper2.maps.eqiad.wmflabs: Codename: trusty
maps-wma1.maps.eqiad.wmflabs: Codename: trusty
math-ru.math.eqiad.wmflabs: Codename: trusty
mathoid2.math.eqiad.wmflabs: Codename: trusty
mediaviewer.multimedia.eqiad.wmflabs: Codename: trusty
multiwiki-wikibase.wikidata-federation.eqiad.wmflabs: Codename: trusty
mw-base.wikitextexp.eqiad.wmflabs: Codename: trusty
mw-expt.wikitextexp.eqiad.wmflabs: Codename: trusty
mwfuzz1.mwfuzz.eqiad.wmflabs: Codename: trusty
mwoffliner1.mwoffliner.eqiad.wmflabs: Codename: trusty
mwoffliner2.mwoffliner.eqiad.wmflabs: Codename: trusty
mwoffliner3.mwoffliner.eqiad.wmflabs: Codename: trusty
mwoffliner4.mwoffliner.eqiad.wmflabs: Codename: trusty
mwoffliner5.mwoffliner.eqiad.wmflabs: Codename: trusty
nomad.reading-web-staging.eqiad.wmflabs: Codename: trusty
osm-serv.osmit.eqiad.wmflabs: Codename: trusty
osmit-due.osmit.eqiad.wmflabs: Codename: trusty
osmit-tre.osmit.eqiad.wmflabs: Codename: trusty
pagemigration-vagrant.pagemigration.eqiad.wmflabs: Codename: trusty
petscan-dev2.petscan.eqiad.wmflabs: Codename: trusty
phlogiston-2.phlogiston.eqiad.wmflabs: Codename: trusty
phlogiston-3.phlogiston.eqiad.wmflabs: Codename: trusty
pole.wikidata-query.eqiad.wmflabs: Codename: trusty
puppet-mailman.puppet.eqiad.wmflabs: Codename: trusty
queryr-api-01.queryrapi.eqiad.wmflabs: Codename: trusty
queryr-db-01.queryrapi.eqiad.wmflabs: Codename: trusty
recommendations.reportcard.eqiad.wmflabs: Codename: trusty
rel.search.eqiad.wmflabs: Codename: trusty
relforge-search.search.eqiad.wmflabs: Codename: trusty
relic.toolserver-legacy.eqiad.wmflabs: Codename: trusty
sentry-testwiki.sentry.eqiad.wmflabs: Codename: trusty
shinken-01.shinken.eqiad.wmflabs: Codename: trusty
shinyserv-01.discovery-stats.eqiad.wmflabs: Codename: trusty
shinyserv-lb.discovery-stats.eqiad.wmflabs: Codename: trusty
signwriting-server.signwriting.eqiad.wmflabs: Codename: trusty
social-tools2.social-tools.eqiad.wmflabs: Codename: trusty
striker-deploy03.striker.eqiad.wmflabs: Codename: trusty
suggestbot-prod.suggestbot.eqiad.wmflabs: Codename: trusty
telnet2.telnet.eqiad.wmflabs: Codename: trusty
timeless1.social-tools.eqiad.wmflabs: Codename: trusty
tin.rcm.eqiad.wmflabs: Codename: trusty
tools-bastion-02.tools.eqiad.wmflabs: Codename: trusty
tools-bastion-03.tools.eqiad.wmflabs: Codename: trusty
tools-bastion-05.tools.eqiad.wmflabs: Codename: trusty
tools-checker-01.tools.eqiad.wmflabs: Codename: trusty
tools-checker-02.tools.eqiad.wmflabs: Codename: trusty
tools-cron-01.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1401.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1402.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1403.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1404.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1405.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1406.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1407.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1408.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1409.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1410.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1411.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1412.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1413.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1414.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1415.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1416.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1417.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1418.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1419.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1420.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1421.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1422.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1423.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1424.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1425.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1426.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1427.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1428.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1429.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1430.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1431.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1432.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1433.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1434.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1435.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1436.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1437.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1438.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1439.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1440.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1441.tools.eqiad.wmflabs: Codename: trusty
tools-exec-1442.tools.eqiad.wmflabs: Codename: trusty
tools-exec-gift-trusty-01.tools.eqiad.wmflabs: Codename: trusty
tools-grid-master.tools.eqiad.wmflabs: Codename: trusty
tools-grid-shadow.tools.eqiad.wmflabs: Codename: trusty
tools-mail.tools.eqiad.wmflabs: Codename: trusty
tools-services-01.tools.eqiad.wmflabs: Codename: trusty
tools-services-02.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-generic-1401.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-generic-1402.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-generic-1403.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-generic-1404.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1401.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1402.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1403.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1404.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1405.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1406.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1407.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1408.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1409.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1410.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1411.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1412.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1413.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1414.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1415.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1416.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1417.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1418.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1419.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1420.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1421.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1422.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1424.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1425.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1426.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1427.tools.eqiad.wmflabs: Codename: trusty
tools-webgrid-lighttpd-1428.tools.eqiad.wmflabs: Codename: trusty
toolsbeta-bastion-01.toolsbeta.eqiad.wmflabs: Codename: trusty
toolsbeta-exec-1401.toolsbeta.eqiad.wmflabs: Codename: trusty
toolsbeta-grid-master.toolsbeta.eqiad.wmflabs: Codename: trusty
toolsbeta-webgrid-generic-1401.toolsbeta.eqiad.wmflabs: Codename: trusty
toolsbeta-webgrid-lighttpd-1401.toolsbeta.eqiad.wmflabs: Codename: trusty
trusty-update.puppet.eqiad.wmflabs: Codename: trusty
utrs-database.utrs.eqiad.wmflabs: Codename: trusty
utrs-production.utrs.eqiad.wmflabs: Codename: trusty
vmbuilder-trusty.openstack.eqiad.wmflabs: Codename: trusty
vrt.getstarted.eqiad.wmflabs: Codename: trusty
wdsearch.search.eqiad.wmflabs: Codename: trusty
webservices.getstarted.eqiad.wmflabs: Codename: trusty
wigi.wikidumpparse.eqiad.wmflabs: Codename: trusty
wikibase-vue.wikidata-dev.eqiad.wmflabs: Codename: trusty
wikidataconcepts.wikidataconcepts.eqiad.wmflabs: Codename: trusty
xenon.rcm.eqiad.wmflabs: Codename: trustyIn the following days I will digest these lists and develop possible alternatives for them.
Physical hardware:
labstore1003.eqiad.wmnet --- needs specific plan labtestcontrol2001.wikimedia.org --- to be discontinued once we shutdown main deployment labtestnet2002.codfw.wmnet --- to be discontinued once we shutdown main deployment labtestnet2003.codfw.wmnet --- to be discontinued once we shutdown main deployment labtestservices2001.wikimedia.org --- to be discontinued once we shutdown main deployment labtestvirt2001.codfw.wmnet --- to be discontinued once we shutdown main deployment labtestvirt2002.codfw.wmnet --- to be discontinued once we shutdown main deployment labcontrol1001.wikimedia.org --- replaced by eqiad1 deployment labcontrol1002.wikimedia.org --- replaced by eqiad1 deployment labnet1001.eqiad.wmnet --- replaced by eqiad1 deployment labnet1002.eqiad.wmnet --- replaced by eqiad1 deployment labservices1001.wikimedia.org --- replaced by eqiad1 deployment labservices1002.wikimedia.org --- replaced by eqiad1 deployment labvirt1001.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1002.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1003.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1004.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1005.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1006.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1007.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1008.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1009.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1010.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1011.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1012.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1013.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1014.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1015.eqiad.wmnet --- replaced by eqiad1 deployment labvirt1017.eqiad.wmnet --- replaced by eqiad1 deployment
For VMs, this is my proposed timeline:
- Now: open phabricator tickets per affected project asking their administrators to move to Stretch (or jessie if there is a strong justification)
- In 1 month: monitor results of open tickets, ping administrators
- In 2 months: monitor result of open tickers, ping administrators
- In 3 months: evaluate if trusty VMs not migrated are actually in use. If not, just delete them? Help administrators with migration issues?
I guess the first step is mandatory anyway while other steps can be discussed, so I will start doing it now.
Also, I will add a warning here https://wikitech.wikimedia.org/wiki/Cloud_VPS_2018_Purge to projects that contain trusty VMs.
@Krenair asked me to look for instances running something other than Trusty, Jessie, or Stretch. Here's what I found:
outreachdashboard.globaleducation.eqiad.wmflabs: Codename: xenial wikidata-lexeme.wikidata-dev.eqiad.wmflabs: Codename: xenial
Additionally, these instances failed to allow the cumin user to connect which probably indicates broken Puppet config:
- cloudservices.getstarted.eqiad.wmflabs
- compiler.puppet.eqiad.wmflabs
If we are happy with the text, we should sent that by email to cloud-announce. @Harej would you like to do that? If not, I can send the email myself :-P
I will defer to you on the email since you're probably more knowledgeable in the particulars of the transition.
According to the timeline described here https://wikitech.wikimedia.org/wiki/News/Trusty_deprecation#Cloud_VPS_projects we should be sending pings to the deprecation subtasks starting today.
Needs discussion: the final deadline is approaching: 2018-12-18. How to handle remaining Trusty VMs?
We need to evaluate them VM by VM (or at least project by project). Anything that seems to be actively wiki facing, for example the maps project, deserves at least outreach to on-wiki communities that are likely to be effected by a shutdown give them a reasonable amount of time to find a replacement or at least remove the dependency gracefully. We know that we will be continuing to support Trusty for Toolforge for at least 2 more months, so a few more weeks for the other stragglers is not the end of the world.
Note that on T204695, the wikidataconcepts admin has asked for more time. It seems reasonable to give it to them but we should figure out what the adjusted deadline is and communicate it to them.
We agreed on giving a bit more time before shutting down instances (2019-01-18) from unresponsive projects.
The timeline was developed long time ago. We are in fact very close to the final cleanup stage. Closing task.