-
Notifications
You must be signed in to change notification settings - Fork 339
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
koordlet: change metric cache to tsdb #1228
Conversation
/hold |
/hold cancel |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #1228 +/- ##
==========================================
+ Coverage 64.90% 64.96% +0.06%
==========================================
Files 312 313 +1
Lines 32660 32938 +278
==========================================
+ Hits 21197 21398 +201
- Misses 9916 9981 +65
- Partials 1547 1559 +12
Flags with carried forward coverage won't be shown. Click here to find out more.
☔ View full report in Codecov by Sentry. |
/cc @LambdaHJ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
Signed-off-by: 佑祎 <[email protected]>
New changes are detected. LGTM label has been removed. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: hormes, LambdaHJ The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Ⅰ. Describe what this PR does
metric cache
is a module for metric data persistence in koordlet.Currently, it use
sqlite3
as the storage, which is an structured SQL-like database.sqlite3
shows poor performance for time-series data like resource metrics, consuming more space and slow on query.Besides, as an structured database, tables and interfaces must be added when adding new metrics on
metric cache
, which shows bad expansibility。We plan to replace
sqlite3
withtsdb
for better performance and extension.This PR finish two jobs:
cpu throttled metric
storage with tsdb and adapt the QoS plugincpu_burst
and Collectorpod throttled
with new interface.Ⅱ. Does this pull request fix one issue?
see #586
Ⅲ. Describe how to verify it
Resource Consumption Comparation: before & after pod & container throttled ratio saved to tsdb.
We deploy koordlet v1.2 and latest version with tsdb refactor on the same node and start 60 pods on it for data collecting.
In v1.2, only latest 30min metrics are saved in sqlite, in latest version the time range is extended to 24h by default.
Ⅳ. Special notes for reviews
V. Checklist
make test