Merge pull request #638 from KingJ/sidecar-servicemonitor
Thanos Sidecar Exposure and Scraping via ServiceMonitor
This commit is contained in:
@@ -26,6 +26,15 @@ local servicePort = k.core.v1.service.mixin.spec.portsType;
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
// Create a new service that exposes both sidecar's HTTP metrics port and gRPC StoreAPI
|
||||||
|
serviceThanosSidecar:
|
||||||
|
local thanosGrpcSidecarPort = servicePort.newNamed('grpc', 10901, 10901);
|
||||||
|
local thanosHttpSidecarPort = servicePort.newNamed('http', 10902, 10902);
|
||||||
|
service.new('prometheus-' + $._config.prometheus.name + '-thanos-sidecar', { app: 'prometheus', prometheus: $._config.prometheus.name }) +
|
||||||
|
service.mixin.spec.withPorts([thanosGrpcSidecarPort, thanosHttpSidecarPort]) +
|
||||||
|
service.mixin.spec.withClusterIp('None') +
|
||||||
|
service.mixin.metadata.withLabels({'prometheus': $._config.prometheus.name, 'app': 'thanos-sidecar'}) +
|
||||||
|
service.mixin.metadata.withNamespace($._config.namespace),
|
||||||
prometheus+: {
|
prometheus+: {
|
||||||
spec+: {
|
spec+: {
|
||||||
thanos+: {
|
thanos+: {
|
||||||
@@ -35,5 +44,33 @@ local servicePort = k.core.v1.service.mixin.spec.portsType;
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
serviceMonitorThanosSidecar:
|
||||||
|
{
|
||||||
|
apiVersion: 'monitoring.coreos.com/v1',
|
||||||
|
kind: 'ServiceMonitor',
|
||||||
|
metadata: {
|
||||||
|
name: 'thanos-sidecar',
|
||||||
|
namespace: $._config.namespace,
|
||||||
|
labels: {
|
||||||
|
'k8s-app': 'prometheus',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
spec: {
|
||||||
|
// Use the service's app label (thanos-sidecar) as the value for the job label.
|
||||||
|
jobLabel: 'app',
|
||||||
|
selector: {
|
||||||
|
matchLabels: {
|
||||||
|
prometheus: $._config.prometheus.name,
|
||||||
|
app: 'thanos-sidecar',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
endpoints: [
|
||||||
|
{
|
||||||
|
port: 'http',
|
||||||
|
interval: '30s',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user