Version 0.7.2
TSDB
Added
-
Expose recommendation count, recommendation tx/timestamp metrics
The following optimize live metrics are available via
/metrics
endpoint:optimize_live_recommendation_count
, which displays a count of the most recent number of recommendations receivedoptimize_live_recommendation_timestamp
, which displays a timestamp of when the last set of recommendations were madeoptimize_live_tsdb_series_timestamp
, which displays a timestamp for each top level metric we ingest (limits
,requests
,usage
, etc.)
Fixed
-
Limit Datadog query length when querying HPA metrics
We now ensure that queries sent via the Datadog API don’t exceed Datadog’s maximum query length of 8000 characters. Previously, this check was not in place when we added support for HPA recommendations.
Controller
Added
-
Support for pvc-less TSDB
You can now configure the TSDB to run without a PV/PVC by setting
TSDB_NO_PVC="true"
. Because this makes the TSDB data ephemeral, you should do it only in specific situations. TheTSDB_PVC_SIZE
setting can still be used to set a size limit when there is no PVC. -
Support for
limitRequestRatio
configuration parameterYou can now configure how much headroom to add to the request recommendation for the limit. As the name suggests, this is a ratio between the limit and request. By default, this ratio is set to
1.2
, which means that the limit recommendation is set to the requests recommendation plus 20%. -
Reducing the number of reconciliations via a feature flag
In large environments, you might choose to reduce the number of watches on the API server. To configure the controller to no longer watch components that it owns, set the
FF_NO_OWNS
environment variable. When this is set, the controller no longer watches for events from the TSDB, recommender, or applier resources. -
Add
diff
on tsdb and recommender ConfigMaps when debug mode is enabledWhen
DEBUG
is enabled, you’ll see a diff of the tsdb and recommender ConfigMaps in the logs, making it easier to discover what was changed during a reconcile.
Fixed
-
Sort discovered HPAs
When multiple HPAs are configured for a target, we now sort this list to prevent unnecessary configuration churn.
-
One lookup for CPU and Memory targets
We now do one lookup for both CPU and memory targets. Previously we did separate lookups for CPU and Memory targets, which created situations where we would have unequal targets matched for CPU and Memory recommendations.
Misc
-
Change the log level to
error
when no targets foundFor easier troubleshooting, we now set the log level to
error
when no targets are found. Previously, because we would query again, we would log this at theinfo
level. -
Use
Interval
instead of deprecatedUpdateInterval
We now use
Interval
only.