Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add OSD metadata tags #14201

Merged
merged 6 commits into from
Jun 21, 2023
Merged

Add OSD metadata tags #14201

merged 6 commits into from
Jun 21, 2023

Conversation

mxmeinhold
Copy link
Contributor

What does this PR do?

Pull several values from osd metadata as tags. This separates metrics by device ID, class, objectstore, and ceph version

Motivation

We've been using these tags to track a couple of migrations in our ceph cluster, including hdd to ssd upgrades, filestore to bluestore, and version upgrades, as well as identifying problematic drives using device identifiers.

Additional Notes

This is based on my patch files, so I haven't yet gotten tests/integration into the repo cleanly. I haven't had luck getting a dev environment set up on my personal laptop in the past, so I'll need to give that another try

Review checklist (to be filled by reviewers)

  • Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
  • PR title must be written as a CHANGELOG entry (see why)
  • Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
  • PR must have changelog/ and integration/ labels attached
  • If the PR doesn't need to be tested during QA, please add a qa/skip-qa label.

@ghost ghost added the integration/ceph label Mar 21, 2023
at time of writing, objectstore is useful for tracking the status of the
filestore and bluestore migration
associating OSD metrics with the device ID allows more individual
tracking of disks

device class is useful for tracking a migration between hard disks and
solid state disks
@github-actions
Copy link

github-actions bot commented Jun 7, 2023

Test Results

  4 files    4 suites   3m 38s ⏱️
11 tests 11 ✔️ 0 💤 0
24 runs  22 ✔️ 2 💤 0

Results for commit f8e1864.

♻️ This comment has been updated with latest results.

@mxmeinhold mxmeinhold marked this pull request as ready for review June 7, 2023 15:04
@mxmeinhold mxmeinhold requested a review from a team as a code owner June 7, 2023 15:04
@mxmeinhold
Copy link
Contributor Author

Docs said to install python 3.8, but it looks like the tests are failing on f-strings in py 2.7.4?

We only need to iterate through the metadata once
@codecov
Copy link

codecov bot commented Jun 7, 2023

Codecov Report

Merging #14201 (f8e1864) into master (18c6a0c) will increase coverage by 0.00%.
The diff coverage is 100.00%.

Flag Coverage Δ
ceph 91.07% <100.00%> (+0.04%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Copy link
Contributor

@yzhan289 yzhan289 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this PR! Could you add a test? You should be able to spin up a ceph env using ddev, our CLI tool for making integrations. Once you set up ddev, you can run something like ddev env start ceph py3.8-5.0 (other versions can be found here).

@yzhan289 yzhan289 merged commit 2ae4029 into DataDog:master Jun 21, 2023
@yzhan289 yzhan289 changed the title [ceph] Add OSD metadata tags Add OSD metadata tags Jun 21, 2023
@mxmeinhold mxmeinhold deleted the ceph-osd-tags branch June 22, 2023 14:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants