Extend storage disk space for staging environment
As the current storage [1] is running out of space, we have planned a workaround to recycle db1.staging as a new storage server.
The high level plan could be:
-
#5251 (closed): Recycle beaubourg (old proxmox hypervisor) as a kubernetes(archive-staging-rke2) compute node with "quite fast" ssd disks (in progress #5251 (closed)) -
swh/infra/puppet/puppet-swh-site!698 (merged): Add db1 as a kubernetes node in the staging cluster (like storage1) -
Deploy a r/w objstorage service on db1 and make r/o objstorage service on storage1 -
Prepare the objstorage volume on db1 -
db1: Add label swh/objstorage=true -
Adapt charts -
prepare plan -
db1: add r/o objstorage -
node: Deploy multiplexer objstorage to use db1 and storage1's r/o objstorage -
Check read-only clients (web, indexer) use the new read-only rpc with success -
db1: add r/w objstorage -
swh/infra/ci-cd/swh-charts!357 (merged): node: Deploy multiplexer objstorage to use db1 and storage1's r/w objstorage -
swh/infra/ci-cd/swh-charts!359 (merged): Make writer use the new multiplexer r/w objstorage -
Check contents are written in the db1 objstorage -
Ensure no one is writing on storage1 objstorage -
storage1: Decommission r/w objstorage
-
-
-
Migrate contents from storage1 objstorage to db1 objstorage (until the warning threshold alert from zfs disk usage in storage1 subside) -
swh/devel/snippets!22 (merged): Develop script -
Move contents from storage1 to db1 -
Space used down to 90%
-
-
swh/infra/puppet/puppet-swh-site!702 (merged): Adapt icinga alerts to the new threshold so current alert subside (we no longer write in that objstorage) -
#5311 (closed): Migrate the staging database to a kubernetes service managed by a postgresql operator (poc/validation/...) -
Rename db1 as storage2 (if poc is validated and the db is migrated from db1)
Several advantages:
- Add around 26To of disk space to staging objstorage
- Migrate the staging database to a faster server (no really important because cassandra is the main backend)
- Start to play with an operator managed postgresql
[1] #5150 (closed)
Edited by Antoine R. Dumont