1
0
Fork 0
mirror of https://github.com/prometheus-operator/prometheus-operator.git synced 2025-04-21 11:48:53 +00:00

Use /-/healthy and /-/ready for probes

This commit is contained in:
Julian V. Modesto 2017-10-07 01:05:16 -04:00
parent c6c96796e1
commit 7db9b262f1
2 changed files with 36 additions and 10 deletions
Documentation
pkg/prometheus

View file

@ -29,4 +29,6 @@ The versions of Prometheus compatible to be run with the Prometheus Operator are
* v1.6.3
* v1.7.0
* v1.7.1
* v1.7.2
* v1.8.0
* v2.0.0-beta.4

View file

@ -64,6 +64,8 @@ var (
"v1.6.3",
"v1.7.0",
"v1.7.1",
"v1.7.2",
"v1.8.0",
"v2.0.0-beta.4",
}
)
@ -423,12 +425,36 @@ func makeStatefulSetSpec(p monitoringv1.Prometheus, c *Config, ruleConfigMaps []
"-rule-volume-dir=/etc/prometheus/rules",
}
probeHandler := v1.Handler{
HTTPGet: &v1.HTTPGetAction{
Path: path.Clean(webRoutePrefix + "/status"),
Port: intstr.FromString("web"),
},
var livenessProbeHandler v1.Handler
var readinessProbeHandler v1.Handler
var livenessProbeInitialDelaySeconds int32
if (version.Major == 1 && version.Minor >= 8) || version.Major == 2 {
livenessProbeHandler = v1.Handler{
HTTPGet: &v1.HTTPGetAction{
Path: path.Clean(webRoutePrefix + "/-/healthy"),
Port: intstr.FromString("web"),
},
}
readinessProbeHandler = v1.Handler{
HTTPGet: &v1.HTTPGetAction{
Path: path.Clean(webRoutePrefix + "/-/ready"),
Port: intstr.FromString("web"),
},
}
livenessProbeInitialDelaySeconds = 30
} else {
livenessProbeHandler = v1.Handler{
HTTPGet: &v1.HTTPGetAction{
Path: path.Clean(webRoutePrefix + "/status"),
Port: intstr.FromString("web"),
},
}
readinessProbeHandler = livenessProbeHandler
// For larger servers, restoring a checkpoint on startup may take quite a bit of time.
// Wait up to 5 minutes.
livenessProbeInitialDelaySeconds = 300
}
podAnnotations := map[string]string{}
podLabels := map[string]string{}
if p.Spec.PodMetadata != nil {
@ -472,16 +498,14 @@ func makeStatefulSetSpec(p monitoringv1.Prometheus, c *Config, ruleConfigMaps []
Args: promArgs,
VolumeMounts: promVolumeMounts,
LivenessProbe: &v1.Probe{
Handler: probeHandler,
// For larger servers, restoring a checkpoint on startup may take quite a bit of time.
// Wait up to 5 minutes.
InitialDelaySeconds: 300,
Handler: livenessProbeHandler,
InitialDelaySeconds: livenessProbeInitialDelaySeconds,
PeriodSeconds: 5,
TimeoutSeconds: probeTimeoutSeconds,
FailureThreshold: 10,
},
ReadinessProbe: &v1.Probe{
Handler: probeHandler,
Handler: readinessProbeHandler,
TimeoutSeconds: probeTimeoutSeconds,
PeriodSeconds: 5,
FailureThreshold: 6,