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

HDDS-11531. Collect iowait and system on the node. #7273

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

slfan1989
Copy link
Contributor

@slfan1989 slfan1989 commented Oct 5, 2024

What changes were proposed in this pull request?

This feature will periodically retrieve data from /proc/stat, parse the iowait and system information, and write it into metrics. In the future, we will report this metric to SCM so that it can skip high-load DNs when returning the pipeline DN list, decommison data transfers, creating pipelines, and balancing, thereby enhancing the system's access performance.

Parsing /proc/stat is a lightweight action that won't impose additional load on the system. This metric has good sensitivity to reflect the current IO performance of the DN.

  • High IOWait typically indicates conditions during high-frequency read/write operations or when using du for HDD/SSD access.
  • An increase in System time usually occurs during high-frequency read/write operations with NVMe.

When these situations arise, the DN is no longer in optimal condition for data access or writing (as responses will be very slow), so we should find ways to skip such DNs during data access.

This PR is the first step in collecting IOWait and System performance data for the DN.

What is the link to the Apache JIRA

JIRA: HDDS-11531. Collect iowait and system on the node.

How was this patch tested?

(Please explain how this patch was tested. Ex: unit tests, manual tests, workflow run on the fork git repo.)
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant