Page MenuHomePhabricator

decommission dbproxy1020.eqiad.wmnet
Closed, ResolvedPublicRequest

Description

This task will track the decommission-hardware of server dbproxy1020.eqiad.wmnet.

With the launch of updates to the decom cookbook, the majority of these steps can be handled by the service owners directly. The DC Ops team only gets involved once the system has been fully removed from service and powered down by the decommission cookbook.

dbproxy1020

Steps for service owner:

  • - all system services confirmed offline from production use
  • - Remove it from the report_users whitelist.
  • - set all icinga checks to maint mode/disabled while reclaim/decommmission takes place. (likely done by script)
  • - remove system from all lvs/pybal active configuration
  • - any service group puppet/hiera/dsh config removed
  • - remove site.pp, replace with role(spare::system) recommended to ensure services offline but not 100% required as long as the decom script is IMMEDIATELY run below.
  • - login to cumin host and run the decom cookbook: cookbook sre.hosts.decommission <host fqdn> -t <phab task>. This does: bootloader wipe, host power down, netbox update to decommissioning status, puppet node clean, puppet node deactivate, debmonitor removal, and run homer.
  • - remove all remaining puppet references and all host entries in the puppet repo
  • - Remove grants from m3
  • - reassign task from service owner to no owner and ensure the site project (ops-sitename depending on site of server) is assigned.

End service owner steps / Begin DC-Ops team steps:

  • - system disks removed (by onsite)
  • - determine system age, under 5 years are reclaimed to spare, over 5 years are decommissioned.
  • - IF DECOM: system unracked and decommissioned (by onsite), update netbox with result and set state to offline
  • - IF DECOM: mgmt dns entries removed.

Related Objects

StatusSubtypeAssignedTask
Resolvedjcrespo
Resolvedjcrespo
ResolvedJclark-ctr
ResolvedMarostegui
ResolvedMarostegui
ResolvedMarostegui
ResolvedMarostegui
ResolvedMarostegui
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJhancock.wm
ResolvedRequestJclark-ctr

Event Timeline

Marostegui added a parent task: Restricted Task.Jan 6 2025, 9:28 AM

This host is no longer the master, but let's wait 24h to make sure all the connections have moved smoothly to the other proxy.

Change #1108405 had a related patch set uploaded (by Marostegui; author: Marostegui):

[operations/puppet@production] dbproxy1020: Disable notifications

https://gerrit.wikimedia.org/r/1108405

Change #1108405 merged by Marostegui:

[operations/puppet@production] dbproxy1020: Disable notifications

https://gerrit.wikimedia.org/r/1108405

Still some long running queries active from this proxy:

32458669	phuser	10.64.32.179:53674	phabricator_repository	Query	2223318	Statistics	SELECT `r`.*, IF(`ft_rank`.termCorpus LIKE '% boxedcommand %', 2, 0) + IF(`ft_rank`.normalCorpus LIK	0.000
72674090	phabricatorphd	10.64.32.179:36740	phabricator_config	Sleep	8		NULL	0.000
72674130	phabricatorphd	10.64.32.179:37084	phabricator_repository	Sleep	0		NULL	0.000
93863437	phuser	10.64.32.179:42424	phabricator_repository	Query	1358041	Statistics	SELECT `commit`.*, COUNT(DISTINCT(COALESCE(IF(FIELD(`edgelogic_ancestor_41`.dst, 'PHID-PROJ-zeogtxwy	0.000
130773906	phuser	10.64.32.179:59882	phabricator_phame	Query	505875	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
136708215	phuser	10.64.32.179:40178	phabricator_phame	Query	354424	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
139914555	phuser	10.64.32.179:47708	phabricator_dashboard	Query	292303	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
139920682	phuser	10.64.32.179:54222	phabricator_dashboard	Query	292150	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
148490258	phabricatorphd	10.64.32.179:50920	phabricator_daemon	Sleep	5		NULL	0.000
root@cumin1002:~# db-mysql db1213 -e "show processlist" | grep "10.64.32.179"
32458669	phuser	10.64.32.179:53674	phabricator_repository	Query	2223326	Statistics	SELECT `r`.*, IF(`ft_rank`.termCorpus LIKE '% boxedcommand %', 2, 0) + IF(`ft_rank`.normalCorpus LIK	0.000
72674090	phabricatorphd	10.64.32.179:36740	phabricator_config	Sleep	6		NULL	0.000
72674130	phabricatorphd	10.64.32.179:37084	phabricator_repository	Sleep	0		NULL	0.000
93863437	phuser	10.64.32.179:42424	phabricator_repository	Query	1358048	Statistics	SELECT `commit`.*, COUNT(DISTINCT(COALESCE(IF(FIELD(`edgelogic_ancestor_41`.dst, 'PHID-PROJ-zeogtxwy	0.000
130773906	phuser	10.64.32.179:59882	phabricator_phame	Query	505882	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
136708215	phuser	10.64.32.179:40178	phabricator_phame	Query	354432	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
139914555	phuser	10.64.32.179:47708	phabricator_dashboard	Query	292310	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
139920682	phuser	10.64.32.179:54222	phabricator_dashboard	Query	292158	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
148490258	phabricatorphd	10.64.32.179:50920	phabricator_daemon	Sleep	13		NULL	0.000

Still some long running queries active from this proxy:

32458669	phuser	10.64.32.179:53674	phabricator_repository	Query	2223318	Statistics	SELECT `r`.*, IF(`ft_rank`.termCorpus LIKE '% boxedcommand %', 2, 0) + IF(`ft_rank`.normalCorpus LIK	0.000
72674090	phabricatorphd	10.64.32.179:36740	phabricator_config	Sleep	8		NULL	0.000
72674130	phabricatorphd	10.64.32.179:37084	phabricator_repository	Sleep	0		NULL	0.000
93863437	phuser	10.64.32.179:42424	phabricator_repository	Query	1358041	Statistics	SELECT `commit`.*, COUNT(DISTINCT(COALESCE(IF(FIELD(`edgelogic_ancestor_41`.dst, 'PHID-PROJ-zeogtxwy	0.000
130773906	phuser	10.64.32.179:59882	phabricator_phame	Query	505875	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
136708215	phuser	10.64.32.179:40178	phabricator_phame	Query	354424	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
139914555	phuser	10.64.32.179:47708	phabricator_dashboard	Query	292303	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
139920682	phuser	10.64.32.179:54222	phabricator_dashboard	Query	292150	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
148490258	phabricatorphd	10.64.32.179:50920	phabricator_daemon	Sleep	5		NULL	0.000
root@cumin1002:~# db-mysql db1213 -e "show processlist" | grep "10.64.32.179"
32458669	phuser	10.64.32.179:53674	phabricator_repository	Query	2223326	Statistics	SELECT `r`.*, IF(`ft_rank`.termCorpus LIKE '% boxedcommand %', 2, 0) + IF(`ft_rank`.normalCorpus LIK	0.000
72674090	phabricatorphd	10.64.32.179:36740	phabricator_config	Sleep	6		NULL	0.000
72674130	phabricatorphd	10.64.32.179:37084	phabricator_repository	Sleep	0		NULL	0.000
93863437	phuser	10.64.32.179:42424	phabricator_repository	Query	1358048	Statistics	SELECT `commit`.*, COUNT(DISTINCT(COALESCE(IF(FIELD(`edgelogic_ancestor_41`.dst, 'PHID-PROJ-zeogtxwy	0.000
130773906	phuser	10.64.32.179:59882	phabricator_phame	Query	505882	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
136708215	phuser	10.64.32.179:40178	phabricator_phame	Query	354432	Statistics	SELECT `p`.*, IF(`ft_rank`.termCorpus LIKE '% convert %', 2, 0) + IF(`ft_rank`.normalCorpus LIKE '% 	0.000
139914555	phuser	10.64.32.179:47708	phabricator_dashboard	Query	292310	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
139920682	phuser	10.64.32.179:54222	phabricator_dashboard	Query	292158	Statistics	SELECT `dashboard`.*, IF(`ft_rank`.termCorpus LIKE '% includes %', 2, 0) + IF(`ft_rank`.normalCorpus	0.000
148490258	phabricatorphd	10.64.32.179:50920	phabricator_daemon	Sleep	13		NULL	0.000

I've drained these connections which are coming from T383068

Change #1108706 had a related patch set uploaded (by Marostegui; author: Marostegui):

[operations/puppet@production] production-m3.sql.erb: Replace dbproxy1020 with dbproxy1028

https://gerrit.wikimedia.org/r/1108706

Change #1108706 merged by Marostegui:

[operations/puppet@production] production-m3.sql.erb: Replace dbproxy1020 with dbproxy1028

https://gerrit.wikimedia.org/r/1108706

Change #1108730 had a related patch set uploaded (by Marostegui; author: Marostegui):

[operations/puppet@production] mariadb: Remove dbproxy1020

https://gerrit.wikimedia.org/r/1108730

Change #1108730 merged by Marostegui:

[operations/puppet@production] mariadb: Remove dbproxy1020

https://gerrit.wikimedia.org/r/1108730

Change #1108731 had a related patch set uploaded (by Marostegui; author: Marostegui):

[operations/software@master] report_users.sh: Remove 10.64.32.179

https://gerrit.wikimedia.org/r/1108731

Change #1108731 merged by Marostegui:

[operations/software@master] report_users.sh: Remove 10.64.32.179

https://gerrit.wikimedia.org/r/1108731

cookbooks.sre.hosts.decommission executed by marostegui@cumin1002 for hosts: dbproxy1020.eqiad.wmnet

  • dbproxy1020.eqiad.wmnet (PASS)
    • Downtimed host on Icinga/Alertmanager
    • Found physical host
    • Downtimed management interface on Alertmanager
    • Wiped all swraid, partition-table and filesystem signatures
    • Powered off
    • [Netbox] Set status to Decommissioning, deleted all non-mgmt IPs, updated switch interfaces (disabled, removed vlans, etc)
    • Configured the linked switch interface(s)
    • Removed from DebMonitor
    • Removed from Puppet master and PuppetDB
Marostegui updated the task description. (Show Details)
Marostegui edited projects, added: ops-eqiad; removed: Patch-For-Review.
Jclark-ctr claimed this task.
Jclark-ctr updated the task description. (Show Details)