mirror of
https://github.com/prometheus-operator/kube-prometheus.git
synced 2025-11-03 17:41:01 +01:00
Remove ksonnet from jsonnet/kube-prometheus/kube-prometheus-custom-metrics.libsonnet
Signed-off-by: Kemal Akkoyun <kakkoyun@gmail.com>
This commit is contained in:
parent
6d641706de
commit
7da6b04785
@ -1,5 +1,3 @@
|
|||||||
local k = import 'github.com/ksonnet/ksonnet-lib/ksonnet.beta.4/k.libsonnet';
|
|
||||||
|
|
||||||
// Custom metrics API allows the HPA v2 to scale based on arbirary metrics.
|
// Custom metrics API allows the HPA v2 to scale based on arbirary metrics.
|
||||||
// For more details on usage visit https://github.com/DirectXMan12/k8s-prometheus-adapter#quick-links
|
// For more details on usage visit https://github.com/DirectXMan12/k8s-prometheus-adapter#quick-links
|
||||||
|
|
||||||
@ -14,19 +12,12 @@ local k = import 'github.com/ksonnet/ksonnet-lib/ksonnet.beta.4/k.libsonnet';
|
|||||||
seriesFilters: [],
|
seriesFilters: [],
|
||||||
resources: {
|
resources: {
|
||||||
overrides: {
|
overrides: {
|
||||||
namespace: {
|
namespace: { resource: 'namespace' },
|
||||||
resource: 'namespace'
|
pod: { resource: 'pod' },
|
||||||
},
|
|
||||||
pod: {
|
|
||||||
resource: 'pod'
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
name: {
|
name: { matches: '^container_(.*)_seconds_total$', as: '' },
|
||||||
matches: '^container_(.*)_seconds_total$',
|
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>,container!="POD"}[1m])) by (<<.GroupBy>>)',
|
||||||
as: ""
|
|
||||||
},
|
|
||||||
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>,container!="POD"}[1m])) by (<<.GroupBy>>)'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
seriesQuery: '{__name__=~"^container_.*",container!="POD",namespace!="",pod!=""}',
|
seriesQuery: '{__name__=~"^container_.*",container!="POD",namespace!="",pod!=""}',
|
||||||
@ -35,19 +26,12 @@ local k = import 'github.com/ksonnet/ksonnet-lib/ksonnet.beta.4/k.libsonnet';
|
|||||||
],
|
],
|
||||||
resources: {
|
resources: {
|
||||||
overrides: {
|
overrides: {
|
||||||
namespace: {
|
namespace: { resource: 'namespace' },
|
||||||
resource: 'namespace'
|
pod: { resource: 'pod' },
|
||||||
},
|
|
||||||
pod: {
|
|
||||||
resource: 'pod'
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
name: {
|
name: { matches: '^container_(.*)_total$', as: '' },
|
||||||
matches: '^container_(.*)_total$',
|
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>,container!="POD"}[1m])) by (<<.GroupBy>>)',
|
||||||
as: ''
|
|
||||||
},
|
|
||||||
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>,container!="POD"}[1m])) by (<<.GroupBy>>)'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
seriesQuery: '{__name__=~"^container_.*",container!="POD",namespace!="",pod!=""}',
|
seriesQuery: '{__name__=~"^container_.*",container!="POD",namespace!="",pod!=""}',
|
||||||
@ -56,60 +40,38 @@ local k = import 'github.com/ksonnet/ksonnet-lib/ksonnet.beta.4/k.libsonnet';
|
|||||||
],
|
],
|
||||||
resources: {
|
resources: {
|
||||||
overrides: {
|
overrides: {
|
||||||
namespace: {
|
namespace: { resource: 'namespace' },
|
||||||
resource: 'namespace'
|
pod: { resource: 'pod' },
|
||||||
},
|
|
||||||
pod: {
|
|
||||||
resource: 'pod'
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
name: {
|
name: { matches: '^container_(.*)$', as: '' },
|
||||||
matches: '^container_(.*)$',
|
metricsQuery: 'sum(<<.Series>>{<<.LabelMatchers>>,container!="POD"}) by (<<.GroupBy>>)',
|
||||||
as: ''
|
|
||||||
},
|
|
||||||
metricsQuery: 'sum(<<.Series>>{<<.LabelMatchers>>,container!="POD"}) by (<<.GroupBy>>)'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
seriesQuery: '{namespace!="",__name__!~"^container_.*"}',
|
seriesQuery: '{namespace!="",__name__!~"^container_.*"}',
|
||||||
seriesFilters: [
|
seriesFilters: [
|
||||||
{ isNot: '.*_total$' },
|
{ isNot: '.*_total$' },
|
||||||
],
|
],
|
||||||
resources: {
|
resources: { template: '<<.Resource>>' },
|
||||||
template: '<<.Resource>>'
|
name: { matches: '', as: '' },
|
||||||
},
|
metricsQuery: 'sum(<<.Series>>{<<.LabelMatchers>>}) by (<<.GroupBy>>)',
|
||||||
name: {
|
|
||||||
matches: '',
|
|
||||||
as: ''
|
|
||||||
},
|
|
||||||
metricsQuery: 'sum(<<.Series>>{<<.LabelMatchers>>}) by (<<.GroupBy>>)'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
seriesQuery: '{namespace!="",__name__!~"^container_.*"}',
|
seriesQuery: '{namespace!="",__name__!~"^container_.*"}',
|
||||||
seriesFilters: [
|
seriesFilters: [
|
||||||
{ isNot: '.*_seconds_total' },
|
{ isNot: '.*_seconds_total' },
|
||||||
],
|
],
|
||||||
resources: {
|
resources: { template: '<<.Resource>>' },
|
||||||
template: '<<.Resource>>'
|
name: { matches: '^(.*)_total$', as: '' },
|
||||||
},
|
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>}[1m])) by (<<.GroupBy>>)',
|
||||||
name: {
|
|
||||||
matches: '^(.*)_total$',
|
|
||||||
as: ''
|
|
||||||
},
|
|
||||||
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>}[1m])) by (<<.GroupBy>>)'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
seriesQuery: '{namespace!="",__name__!~"^container_.*"}',
|
seriesQuery: '{namespace!="",__name__!~"^container_.*"}',
|
||||||
seriesFilters: [],
|
seriesFilters: [],
|
||||||
resources: {
|
resources: { template: '<<.Resource>>' },
|
||||||
template: '<<.Resource>>'
|
name: { matches: '^(.*)_seconds_total$', as: '' },
|
||||||
|
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>}[1m])) by (<<.GroupBy>>)',
|
||||||
},
|
},
|
||||||
name: {
|
|
||||||
matches: '^(.*)_seconds_total$',
|
|
||||||
as: ''
|
|
||||||
},
|
|
||||||
metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>}[1m])) by (<<.GroupBy>>)'
|
|
||||||
}
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -152,46 +114,53 @@ local k = import 'github.com/ksonnet/ksonnet-lib/ksonnet.beta.4/k.libsonnet';
|
|||||||
versionPriority: 200,
|
versionPriority: 200,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
customMetricsClusterRoleServerResources:
|
customMetricsClusterRoleServerResources: {
|
||||||
local clusterRole = k.rbac.v1.clusterRole;
|
apiVersion: 'rbac.authorization.k8s.io/v1',
|
||||||
local policyRule = clusterRole.rulesType;
|
kind: 'ClusterRole',
|
||||||
|
metadata: {
|
||||||
|
name: 'custom-metrics-server-resources',
|
||||||
|
},
|
||||||
|
rules: [{
|
||||||
|
apiGroups: ['custom.metrics.k8s.io'],
|
||||||
|
resources: ['*'],
|
||||||
|
verbs: ['*'],
|
||||||
|
}],
|
||||||
|
},
|
||||||
|
customMetricsClusterRoleBindingServerResources: {
|
||||||
|
apiVersion: 'rbac.authorization.k8s.io/v1',
|
||||||
|
kind: 'ClusterRoleBinding',
|
||||||
|
metadata: {
|
||||||
|
name: 'custom-metrics-server-resources',
|
||||||
|
},
|
||||||
|
|
||||||
local rules =
|
roleRef: {
|
||||||
policyRule.new() +
|
apiGroup: 'rbac.authorization.k8s.io',
|
||||||
policyRule.withApiGroups(['custom.metrics.k8s.io']) +
|
kind: 'ClusterRole',
|
||||||
policyRule.withResources(['*']) +
|
name: 'custom-metrics-server-resources',
|
||||||
policyRule.withVerbs(['*']);
|
},
|
||||||
|
subjects: [{
|
||||||
clusterRole.new() +
|
|
||||||
clusterRole.mixin.metadata.withName('custom-metrics-server-resources') +
|
|
||||||
clusterRole.withRules(rules),
|
|
||||||
|
|
||||||
customMetricsClusterRoleBindingServerResources:
|
|
||||||
local clusterRoleBinding = k.rbac.v1.clusterRoleBinding;
|
|
||||||
|
|
||||||
clusterRoleBinding.new() +
|
|
||||||
clusterRoleBinding.mixin.metadata.withName('custom-metrics-server-resources') +
|
|
||||||
clusterRoleBinding.mixin.roleRef.withApiGroup('rbac.authorization.k8s.io') +
|
|
||||||
clusterRoleBinding.mixin.roleRef.withName('custom-metrics-server-resources') +
|
|
||||||
clusterRoleBinding.mixin.roleRef.mixinInstance({ kind: 'ClusterRole' }) +
|
|
||||||
clusterRoleBinding.withSubjects([{
|
|
||||||
kind: 'ServiceAccount',
|
kind: 'ServiceAccount',
|
||||||
name: $.prometheusAdapter.serviceAccount.metadata.name,
|
name: $.prometheusAdapter.serviceAccount.metadata.name,
|
||||||
namespace: $._config.namespace,
|
namespace: $._config.namespace,
|
||||||
}]),
|
}],
|
||||||
|
},
|
||||||
|
customMetricsClusterRoleBindingHPA: {
|
||||||
|
apiVersion: 'rbac.authorization.k8s.io/v1',
|
||||||
|
kind: 'ClusterRoleBinding',
|
||||||
|
metadata: {
|
||||||
|
name: 'hpa-controller-custom-metrics',
|
||||||
|
},
|
||||||
|
|
||||||
customMetricsClusterRoleBindingHPA:
|
roleRef: {
|
||||||
local clusterRoleBinding = k.rbac.v1.clusterRoleBinding;
|
apiGroup: 'rbac.authorization.k8s.io',
|
||||||
|
kind: 'ClusterRole',
|
||||||
clusterRoleBinding.new() +
|
name: 'custom-metrics-server-resources',
|
||||||
clusterRoleBinding.mixin.metadata.withName('hpa-controller-custom-metrics') +
|
},
|
||||||
clusterRoleBinding.mixin.roleRef.withApiGroup('rbac.authorization.k8s.io') +
|
subjects: [{
|
||||||
clusterRoleBinding.mixin.roleRef.withName('custom-metrics-server-resources') +
|
|
||||||
clusterRoleBinding.mixin.roleRef.mixinInstance({ kind: 'ClusterRole' }) +
|
|
||||||
clusterRoleBinding.withSubjects([{
|
|
||||||
kind: 'ServiceAccount',
|
kind: 'ServiceAccount',
|
||||||
name: 'horizontal-pod-autoscaler',
|
name: 'horizontal-pod-autoscaler',
|
||||||
namespace: 'kube-system',
|
namespace: 'kube-system',
|
||||||
}]),
|
}],
|
||||||
}
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user