Page MenuHomePhabricator

Refactor swift credentials to be global rather than per-site
Closed, ResolvedPublic

Description

swiftrepl is now running puppetized and running in eqiad as a timer once a week per site.

Left to do is shipping swiftrepl.conf from puppet, which requires being able to access all sites credentials, which in turn requires a refactor in swift's puppetization to have credentials from all sites in the same place. Unless we can look up other sites' hiera, in which case less refactorization will be needed.

Event Timeline

Afaict we are not going to have to rely on swiftrepl anymore soon. Is that right? In that case, would this ticket be declined?

Change 536586 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] WIP swift: add swiftrepl

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

Change 539535 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] swift: open per-port object server ports

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

Change 539535 merged by Filippo Giunchedi:
[operations/puppet@production] swift: open per-port object server ports

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

Change 539535 merged by Filippo Giunchedi:
[operations/puppet@production] swift: open per-port object server ports

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

Punched in the wrong task, this change was meant for T222366: Test swift object server deployment with one disk per tcp port

Change 537613 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] site: turn on swiftrepl on swift frontends

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

Change 536586 merged by Filippo Giunchedi:
[operations/puppet@production] swift: add swiftrepl

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

Change 537613 merged by Filippo Giunchedi:
[operations/puppet@production] site: turn on swiftrepl on swift frontends

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

Change 544845 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] swift: use resurce for swiftrepl tidy

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

Change 544845 merged by Filippo Giunchedi:
[operations/puppet@production] swift: use resurce for swiftrepl tidy

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

Change 544863 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] swiftrepl: ensure system user and service runs as 'swiftrepl'

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

Change 544863 merged by Filippo Giunchedi:
[operations/puppet@production] swiftrepl: ensure system user and service runs as 'swiftrepl'

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

Change 544911 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] swift: use systemd::unit for swiftrepl-mw

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

Change 544912 had a related patch set uploaded (by Filippo Giunchedi; owner: Filippo Giunchedi):
[operations/puppet@production] swift: use systemd::timer::job for swiftrepl

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

Change 544911 abandoned by Filippo Giunchedi:
swift: use systemd::unit for swiftrepl-mw

Reason:
Not needed

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

Change 544912 merged by Filippo Giunchedi:
[operations/puppet@production] swift: use systemd::timer::job for swiftrepl

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

swiftrepl is now running puppetized on both codfw and eqiad and running as a timer once a week per site.

Left to do is shipping swiftrepl.conf from puppet, which requires being able to access all sites credentials, which in turn requires a refactor in swift's puppetization.

fgiunchedi renamed this task from Running swiftrepl is not puppetized to Refactor swift credentials to be global rather than per-site.Nov 5 2019, 11:10 AM
fgiunchedi lowered the priority of this task from High to Medium.
fgiunchedi updated the task description. (Show Details)

Mentioned in SAL (#wikimedia-operations) [2021-06-30T09:35:19Z] <godog> start swiftrepl-mw on ms-fe2005 post-switchover (credentials were missing) - T162123

Change 868718 had a related patch set uploaded (by MVernon; author: MVernon):

[labs/private@master] hiera: move swift accounts_keys into common

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

Change 868721 had a related patch set uploaded (by MVernon; author: MVernon):

[operations/puppet@production] swift: move accounts_keys to common hiera

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

I've put out two CRs; an equivalent change will also need doing to private-puppet. They'll all need co-ordinating.

[also review by a puppet expert :) ]

Change 870555 had a related patch set uploaded (by MVernon; author: MVernon):

[operations/puppet@production] swift: add swift::rclone

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

Change 868718 merged by MVernon:

[labs/private@master] hiera: move swift credentials into common

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

Change 868721 merged by MVernon:

[operations/puppet@production] swift: move accounts_keys to common hiera global_account_keys

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

Change 879283 had a related patch set uploaded (by MVernon; author: MVernon):

[labs/private@master] hiera: remove swift accounts_keys

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

Change 879283 merged by MVernon:

[labs/private@master] hiera: remove swift accounts_keys

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

MatthewVernon claimed this task.

Done - old site-specific profile::swift::accounts_keys removed in favour of new common hiera entry profile::swift::global_account_keys