Class ThanosRulerSpec
- java.lang.Object
-
- io.fabric8.openshift.api.model.monitoring.v1.ThanosRulerSpec
-
- All Implemented Interfaces:
Editable<ThanosRulerSpecBuilder>,KubernetesResource,Serializable
@Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator") public class ThanosRulerSpec extends Object implements Editable<ThanosRulerSpecBuilder>, KubernetesResource
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ThanosRulerSpec()No args constructor for use in serializationThanosRulerSpec(List<Argument> additionalArgs, Affinity affinity, List<String> alertDropLabels, String alertQueryUrl, String alertRelabelConfigFile, SecretKeySelector alertRelabelConfigs, SecretKeySelector alertmanagersConfig, List<String> alertmanagersUrl, List<Container> containers, PodDNSConfig dnsConfig, String dnsPolicy, List<String> enableFeatures, Boolean enableServiceLinks, String enforcedNamespaceLabel, String evaluationInterval, List<ObjectReference> excludedFromEnforcement, String externalPrefix, GRPCServerTLSConfig grpcServerTlsConfig, List<HostAlias> hostAliases, Boolean hostUsers, String image, String imagePullPolicy, List<LocalObjectReference> imagePullSecrets, List<Container> initContainers, Map<String,String> labels, Boolean listenLocal, String logFormat, String logLevel, Integer minReadySeconds, Map<String,String> nodeSelector, SecretKeySelector objectStorageConfig, String objectStorageConfigFile, Boolean paused, String podManagementPolicy, EmbeddedObjectMetadata podMetadata, String portName, String priorityClassName, List<PrometheusRuleExcludeConfig> prometheusRulesExcludedFromEnforce, SecretKeySelector queryConfig, List<String> queryEndpoints, List<RemoteWriteSpec> remoteWrite, Integer replicas, String resendDelay, ResourceRequirements resources, String retention, String routePrefix, Integer ruleConcurrentEval, String ruleGracePeriod, LabelSelector ruleNamespaceSelector, String ruleOutageTolerance, String ruleQueryOffset, LabelSelector ruleSelector, String schedulerName, PodSecurityContext securityContext, String serviceAccountName, String serviceName, StorageSpec storage, Long terminationGracePeriodSeconds, List<Toleration> tolerations, List<TopologySpreadConstraint> topologySpreadConstraints, SecretKeySelector tracingConfig, String tracingConfigFile, StatefulSetUpdateStrategy updateStrategy, String version, List<VolumeMount> volumeMounts, List<Volume> volumes, ThanosRulerWebSpec web)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ThanosRulerSpecBuilderedit()List<Argument>getAdditionalArgs()additionalArgs defines how to add additional arguments for the ThanosRuler container.Map<String,Object>getAdditionalProperties()AffinitygetAffinity()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.List<String>getAlertDropLabels()alertDropLabels defines the label names which should be dropped in Thanos Ruler alerts.SecretKeySelectorgetAlertmanagersConfig()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.List<String>getAlertmanagersUrl()alertmanagersUrl defines the list of Alertmanager endpoints to send alerts to.StringgetAlertQueryUrl()alertQueryUrl defines how Thanos Ruler will set in the 'Source' field of all alerts.StringgetAlertRelabelConfigFile()alertRelabelConfigFile defines the path to the alert relabeling configuration file.SecretKeySelectorgetAlertRelabelConfigs()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.List<Container>getContainers()containers allows injecting additional containers or modifying operator generated containers.PodDNSConfiggetDnsConfig()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetDnsPolicy()dnsPolicy defines the DNS policy for the pods.List<String>getEnableFeatures()enableFeatures defines how to setup Thanos Ruler feature flags.BooleangetEnableServiceLinks()enableServiceLinks defines whether information about services should be injected into pod's environment variablesStringgetEnforcedNamespaceLabel()enforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created.StringgetEvaluationInterval()evaluationInterval defines the interval between consecutive evaluations.List<ObjectReference>getExcludedFromEnforcement()excludedFromEnforcement defines the list of references to PrometheusRule objects to be excluded from enforcing a namespace label of origin.StringgetExternalPrefix()externalPrefix defines the Thanos Ruler instances will be available under.GRPCServerTLSConfiggetGrpcServerTlsConfig()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.List<HostAlias>getHostAliases()hostAliases defines pods' hostAliases configurationBooleangetHostUsers()hostUsers supports the user space in Kubernetes.StringgetImage()image defines Thanos container image URL.StringgetImagePullPolicy()imagePullPolicy defines for the 'thanos', 'init-config-reloader' and 'config-reloader' containers.List<LocalObjectReference>getImagePullSecrets()imagePullSecrets defines an optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-podList<Container>getInitContainers()initContainers allows injecting initContainers to the Pod definition.Map<String,String>getLabels()labels defines the external label pairs of the ThanosRuler resource.BooleangetListenLocal()listenLocal defines the Thanos ruler listen on loopback, so that it does not bind against the Pod IP.StringgetLogFormat()logFormat for ThanosRuler to be configured with.StringgetLogLevel()logLevel for ThanosRuler to be configured with.IntegergetMinReadySeconds()minReadySeconds defines the minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available.Map<String,String>getNodeSelector()nodeSelector defines which Nodes the Pods are scheduled on.SecretKeySelectorgetObjectStorageConfig()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetObjectStorageConfigFile()objectStorageConfigFile defines the path of the object storage configuration file.BooleangetPaused()paused defines when a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects.StringgetPodManagementPolicy()podManagementPolicy defines the policy for creating/deleting pods when scaling up and down.EmbeddedObjectMetadatagetPodMetadata()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetPortName()portName defines the port name used for the pods and governing service.StringgetPriorityClassName()priorityClassName defines the priority class assigned to the PodsList<PrometheusRuleExcludeConfig>getPrometheusRulesExcludedFromEnforce()prometheusRulesExcludedFromEnforce defines a list of Prometheus rules to be excluded from enforcing of adding namespace labels.SecretKeySelectorgetQueryConfig()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.List<String>getQueryEndpoints()queryEndpoints defines the list of Thanos Query endpoints from which to query metrics.List<RemoteWriteSpec>getRemoteWrite()remoteWrite defines the list of remote write configurations.IntegergetReplicas()replicas defines the number of thanos ruler instances to deploy.StringgetResendDelay()resendDelay defines the minimum amount of time to wait before resending an alert to Alertmanager.ResourceRequirementsgetResources()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetRetention()retention defines the time duration ThanosRuler shall retain data for.StringgetRoutePrefix()routePrefix defines the route prefix ThanosRuler registers HTTP handlers for.IntegergetRuleConcurrentEval()ruleConcurrentEval defines how many rules can be evaluated concurrently.StringgetRuleGracePeriod()ruleGracePeriod defines the minimum duration between alert and restored "for" state.LabelSelectorgetRuleNamespaceSelector()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetRuleOutageTolerance()ruleOutageTolerance defines the max time to tolerate prometheus outage for restoring "for" state of alert.StringgetRuleQueryOffset()ruleQueryOffset defines the default rule group's query offset duration to use.LabelSelectorgetRuleSelector()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetSchedulerName()schedulerName defines the scheduler to use for Pod scheduling.PodSecurityContextgetSecurityContext()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetServiceAccountName()serviceAccountName defines the name of the ServiceAccount to use to run the Thanos Ruler Pods.StringgetServiceName()serviceName defines the name of the service name used by the underlying StatefulSet(s) as the governing service.StorageSpecgetStorage()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.LonggetTerminationGracePeriodSeconds()terminationGracePeriodSeconds defines the optional duration in seconds the pod needs to terminate gracefully.List<Toleration>getTolerations()tolerations defines when specified, the pod's tolerations.List<TopologySpreadConstraint>getTopologySpreadConstraints()topologySpreadConstraints defines the pod's topology spread constraints.SecretKeySelectorgetTracingConfig()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetTracingConfigFile()tracingConfigFile defines the path of the tracing configuration file.StatefulSetUpdateStrategygetUpdateStrategy()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.StringgetVersion()version of Thanos to be deployed.List<VolumeMount>getVolumeMounts()volumeMounts defines how the configuration of additional VolumeMounts on the output StatefulSet definition.List<Volume>getVolumes()volumes defines how configuration of additional volumes on the output StatefulSet definition.ThanosRulerWebSpecgetWeb()ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetAdditionalArgs(List<Argument> additionalArgs)additionalArgs defines how to add additional arguments for the ThanosRuler container.voidsetAdditionalProperties(Map<String,Object> additionalProperties)voidsetAdditionalProperty(String name, Object value)voidsetAffinity(Affinity affinity)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetAlertDropLabels(List<String> alertDropLabels)alertDropLabels defines the label names which should be dropped in Thanos Ruler alerts.voidsetAlertmanagersConfig(SecretKeySelector alertmanagersConfig)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetAlertmanagersUrl(List<String> alertmanagersUrl)alertmanagersUrl defines the list of Alertmanager endpoints to send alerts to.voidsetAlertQueryUrl(String alertQueryUrl)alertQueryUrl defines how Thanos Ruler will set in the 'Source' field of all alerts.voidsetAlertRelabelConfigFile(String alertRelabelConfigFile)alertRelabelConfigFile defines the path to the alert relabeling configuration file.voidsetAlertRelabelConfigs(SecretKeySelector alertRelabelConfigs)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetContainers(List<Container> containers)containers allows injecting additional containers or modifying operator generated containers.voidsetDnsConfig(PodDNSConfig dnsConfig)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetDnsPolicy(String dnsPolicy)dnsPolicy defines the DNS policy for the pods.voidsetEnableFeatures(List<String> enableFeatures)enableFeatures defines how to setup Thanos Ruler feature flags.voidsetEnableServiceLinks(Boolean enableServiceLinks)enableServiceLinks defines whether information about services should be injected into pod's environment variablesvoidsetEnforcedNamespaceLabel(String enforcedNamespaceLabel)enforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created.voidsetEvaluationInterval(String evaluationInterval)evaluationInterval defines the interval between consecutive evaluations.voidsetExcludedFromEnforcement(List<ObjectReference> excludedFromEnforcement)excludedFromEnforcement defines the list of references to PrometheusRule objects to be excluded from enforcing a namespace label of origin.voidsetExternalPrefix(String externalPrefix)externalPrefix defines the Thanos Ruler instances will be available under.voidsetGrpcServerTlsConfig(GRPCServerTLSConfig grpcServerTlsConfig)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetHostAliases(List<HostAlias> hostAliases)hostAliases defines pods' hostAliases configurationvoidsetHostUsers(Boolean hostUsers)hostUsers supports the user space in Kubernetes.voidsetImage(String image)image defines Thanos container image URL.voidsetImagePullPolicy(String imagePullPolicy)imagePullPolicy defines for the 'thanos', 'init-config-reloader' and 'config-reloader' containers.voidsetImagePullSecrets(List<LocalObjectReference> imagePullSecrets)imagePullSecrets defines an optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-podvoidsetInitContainers(List<Container> initContainers)initContainers allows injecting initContainers to the Pod definition.voidsetLabels(Map<String,String> labels)labels defines the external label pairs of the ThanosRuler resource.voidsetListenLocal(Boolean listenLocal)listenLocal defines the Thanos ruler listen on loopback, so that it does not bind against the Pod IP.voidsetLogFormat(String logFormat)logFormat for ThanosRuler to be configured with.voidsetLogLevel(String logLevel)logLevel for ThanosRuler to be configured with.voidsetMinReadySeconds(Integer minReadySeconds)minReadySeconds defines the minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available.voidsetNodeSelector(Map<String,String> nodeSelector)nodeSelector defines which Nodes the Pods are scheduled on.voidsetObjectStorageConfig(SecretKeySelector objectStorageConfig)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetObjectStorageConfigFile(String objectStorageConfigFile)objectStorageConfigFile defines the path of the object storage configuration file.voidsetPaused(Boolean paused)paused defines when a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects.voidsetPodManagementPolicy(String podManagementPolicy)podManagementPolicy defines the policy for creating/deleting pods when scaling up and down.voidsetPodMetadata(EmbeddedObjectMetadata podMetadata)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetPortName(String portName)portName defines the port name used for the pods and governing service.voidsetPriorityClassName(String priorityClassName)priorityClassName defines the priority class assigned to the PodsvoidsetPrometheusRulesExcludedFromEnforce(List<PrometheusRuleExcludeConfig> prometheusRulesExcludedFromEnforce)prometheusRulesExcludedFromEnforce defines a list of Prometheus rules to be excluded from enforcing of adding namespace labels.voidsetQueryConfig(SecretKeySelector queryConfig)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetQueryEndpoints(List<String> queryEndpoints)queryEndpoints defines the list of Thanos Query endpoints from which to query metrics.voidsetRemoteWrite(List<RemoteWriteSpec> remoteWrite)remoteWrite defines the list of remote write configurations.voidsetReplicas(Integer replicas)replicas defines the number of thanos ruler instances to deploy.voidsetResendDelay(String resendDelay)resendDelay defines the minimum amount of time to wait before resending an alert to Alertmanager.voidsetResources(ResourceRequirements resources)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetRetention(String retention)retention defines the time duration ThanosRuler shall retain data for.voidsetRoutePrefix(String routePrefix)routePrefix defines the route prefix ThanosRuler registers HTTP handlers for.voidsetRuleConcurrentEval(Integer ruleConcurrentEval)ruleConcurrentEval defines how many rules can be evaluated concurrently.voidsetRuleGracePeriod(String ruleGracePeriod)ruleGracePeriod defines the minimum duration between alert and restored "for" state.voidsetRuleNamespaceSelector(LabelSelector ruleNamespaceSelector)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetRuleOutageTolerance(String ruleOutageTolerance)ruleOutageTolerance defines the max time to tolerate prometheus outage for restoring "for" state of alert.voidsetRuleQueryOffset(String ruleQueryOffset)ruleQueryOffset defines the default rule group's query offset duration to use.voidsetRuleSelector(LabelSelector ruleSelector)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetSchedulerName(String schedulerName)schedulerName defines the scheduler to use for Pod scheduling.voidsetSecurityContext(PodSecurityContext securityContext)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetServiceAccountName(String serviceAccountName)serviceAccountName defines the name of the ServiceAccount to use to run the Thanos Ruler Pods.voidsetServiceName(String serviceName)serviceName defines the name of the service name used by the underlying StatefulSet(s) as the governing service.voidsetStorage(StorageSpec storage)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetTerminationGracePeriodSeconds(Long terminationGracePeriodSeconds)terminationGracePeriodSeconds defines the optional duration in seconds the pod needs to terminate gracefully.voidsetTolerations(List<Toleration> tolerations)tolerations defines when specified, the pod's tolerations.voidsetTopologySpreadConstraints(List<TopologySpreadConstraint> topologySpreadConstraints)topologySpreadConstraints defines the pod's topology spread constraints.voidsetTracingConfig(SecretKeySelector tracingConfig)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetTracingConfigFile(String tracingConfigFile)tracingConfigFile defines the path of the tracing configuration file.voidsetUpdateStrategy(StatefulSetUpdateStrategy updateStrategy)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.voidsetVersion(String version)version of Thanos to be deployed.voidsetVolumeMounts(List<VolumeMount> volumeMounts)volumeMounts defines how the configuration of additional VolumeMounts on the output StatefulSet definition.voidsetVolumes(List<Volume> volumes)volumes defines how configuration of additional volumes on the output StatefulSet definition.voidsetWeb(ThanosRulerWebSpec web)ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler.ThanosRulerSpecBuildertoBuilder()
-
-
-
Constructor Detail
-
ThanosRulerSpec
public ThanosRulerSpec()
No args constructor for use in serialization
-
ThanosRulerSpec
public ThanosRulerSpec(List<Argument> additionalArgs, Affinity affinity, List<String> alertDropLabels, String alertQueryUrl, String alertRelabelConfigFile, SecretKeySelector alertRelabelConfigs, SecretKeySelector alertmanagersConfig, List<String> alertmanagersUrl, List<Container> containers, PodDNSConfig dnsConfig, String dnsPolicy, List<String> enableFeatures, Boolean enableServiceLinks, String enforcedNamespaceLabel, String evaluationInterval, List<ObjectReference> excludedFromEnforcement, String externalPrefix, GRPCServerTLSConfig grpcServerTlsConfig, List<HostAlias> hostAliases, Boolean hostUsers, String image, String imagePullPolicy, List<LocalObjectReference> imagePullSecrets, List<Container> initContainers, Map<String,String> labels, Boolean listenLocal, String logFormat, String logLevel, Integer minReadySeconds, Map<String,String> nodeSelector, SecretKeySelector objectStorageConfig, String objectStorageConfigFile, Boolean paused, String podManagementPolicy, EmbeddedObjectMetadata podMetadata, String portName, String priorityClassName, List<PrometheusRuleExcludeConfig> prometheusRulesExcludedFromEnforce, SecretKeySelector queryConfig, List<String> queryEndpoints, List<RemoteWriteSpec> remoteWrite, Integer replicas, String resendDelay, ResourceRequirements resources, String retention, String routePrefix, Integer ruleConcurrentEval, String ruleGracePeriod, LabelSelector ruleNamespaceSelector, String ruleOutageTolerance, String ruleQueryOffset, LabelSelector ruleSelector, String schedulerName, PodSecurityContext securityContext, String serviceAccountName, String serviceName, StorageSpec storage, Long terminationGracePeriodSeconds, List<Toleration> tolerations, List<TopologySpreadConstraint> topologySpreadConstraints, SecretKeySelector tracingConfig, String tracingConfigFile, StatefulSetUpdateStrategy updateStrategy, String version, List<VolumeMount> volumeMounts, List<Volume> volumes, ThanosRulerWebSpec web)
-
-
Method Detail
-
getAdditionalArgs
public List<Argument> getAdditionalArgs()
additionalArgs defines how to add additional arguments for the ThanosRuler container. It is intended for e.g. activating hidden flags which are not supported by the dedicated configuration options yet. The arguments are passed as-is to the ThanosRuler container which may cause issues if they are invalid or not supported by the given ThanosRuler version. In case of an argument conflict (e.g. an argument which is already set by the operator itself) or when providing an invalid argument the reconciliation will fail and an error will be logged.
-
setAdditionalArgs
public void setAdditionalArgs(List<Argument> additionalArgs)
additionalArgs defines how to add additional arguments for the ThanosRuler container. It is intended for e.g. activating hidden flags which are not supported by the dedicated configuration options yet. The arguments are passed as-is to the ThanosRuler container which may cause issues if they are invalid or not supported by the given ThanosRuler version. In case of an argument conflict (e.g. an argument which is already set by the operator itself) or when providing an invalid argument the reconciliation will fail and an error will be logged.
-
getAffinity
public Affinity getAffinity()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setAffinity
public void setAffinity(Affinity affinity)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getAlertDropLabels
public List<String> getAlertDropLabels()
alertDropLabels defines the label names which should be dropped in Thanos Ruler alerts.The replica label `thanos_ruler_replica` will always be dropped from the alerts.
-
setAlertDropLabels
public void setAlertDropLabels(List<String> alertDropLabels)
alertDropLabels defines the label names which should be dropped in Thanos Ruler alerts.The replica label `thanos_ruler_replica` will always be dropped from the alerts.
-
getAlertQueryUrl
public String getAlertQueryUrl()
alertQueryUrl defines how Thanos Ruler will set in the 'Source' field of all alerts. Maps to the '--alert.query-url' CLI arg.
-
setAlertQueryUrl
public void setAlertQueryUrl(String alertQueryUrl)
alertQueryUrl defines how Thanos Ruler will set in the 'Source' field of all alerts. Maps to the '--alert.query-url' CLI arg.
-
getAlertRelabelConfigFile
public String getAlertRelabelConfigFile()
alertRelabelConfigFile defines the path to the alert relabeling configuration file.Alert relabel configuration must have the form as specified in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs
The operator performs no validation of the configuration file.
This field takes precedence over `alertRelabelConfig`.
-
setAlertRelabelConfigFile
public void setAlertRelabelConfigFile(String alertRelabelConfigFile)
alertRelabelConfigFile defines the path to the alert relabeling configuration file.Alert relabel configuration must have the form as specified in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs
The operator performs no validation of the configuration file.
This field takes precedence over `alertRelabelConfig`.
-
getAlertRelabelConfigs
public SecretKeySelector getAlertRelabelConfigs()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setAlertRelabelConfigs
public void setAlertRelabelConfigs(SecretKeySelector alertRelabelConfigs)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getAlertmanagersConfig
public SecretKeySelector getAlertmanagersConfig()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setAlertmanagersConfig
public void setAlertmanagersConfig(SecretKeySelector alertmanagersConfig)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getAlertmanagersUrl
public List<String> getAlertmanagersUrl()
alertmanagersUrl defines the list of Alertmanager endpoints to send alerts to.For Thanos >= v0.10.0, it is recommended to use `alertmanagersConfig` instead.
`alertmanagersConfig` takes precedence over this field.
-
setAlertmanagersUrl
public void setAlertmanagersUrl(List<String> alertmanagersUrl)
alertmanagersUrl defines the list of Alertmanager endpoints to send alerts to.For Thanos >= v0.10.0, it is recommended to use `alertmanagersConfig` instead.
`alertmanagersConfig` takes precedence over this field.
-
getContainers
public List<Container> getContainers()
containers allows injecting additional containers or modifying operator generated containers. This can be used to allow adding an authentication proxy to the Pods or to change the behavior of an operator generated container. Containers described here modify an operator generated container if they share the same name and modifications are done via a strategic merge patch.The names of containers managed by the operator are: * `thanos-ruler` * `config-reloader`
Overriding containers which are managed by the operator require careful testing, especially when upgrading to a new version of the operator.
-
setContainers
public void setContainers(List<Container> containers)
containers allows injecting additional containers or modifying operator generated containers. This can be used to allow adding an authentication proxy to the Pods or to change the behavior of an operator generated container. Containers described here modify an operator generated container if they share the same name and modifications are done via a strategic merge patch.The names of containers managed by the operator are: * `thanos-ruler` * `config-reloader`
Overriding containers which are managed by the operator require careful testing, especially when upgrading to a new version of the operator.
-
getDnsConfig
public PodDNSConfig getDnsConfig()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setDnsConfig
public void setDnsConfig(PodDNSConfig dnsConfig)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getDnsPolicy
public String getDnsPolicy()
dnsPolicy defines the DNS policy for the pods.
-
setDnsPolicy
public void setDnsPolicy(String dnsPolicy)
dnsPolicy defines the DNS policy for the pods.
-
getEnableFeatures
public List<String> getEnableFeatures()
enableFeatures defines how to setup Thanos Ruler feature flags. By default, no features are enabled.Enabling features which are disabled by default is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice.
For more information see https://thanos.io/tip/components/rule.md/
It requires Thanos >= 0.39.0.
-
setEnableFeatures
public void setEnableFeatures(List<String> enableFeatures)
enableFeatures defines how to setup Thanos Ruler feature flags. By default, no features are enabled.Enabling features which are disabled by default is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice.
For more information see https://thanos.io/tip/components/rule.md/
It requires Thanos >= 0.39.0.
-
getEnableServiceLinks
public Boolean getEnableServiceLinks()
enableServiceLinks defines whether information about services should be injected into pod's environment variables
-
setEnableServiceLinks
public void setEnableServiceLinks(Boolean enableServiceLinks)
enableServiceLinks defines whether information about services should be injected into pod's environment variables
-
getEnforcedNamespaceLabel
public String getEnforcedNamespaceLabel()
enforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created. The label value will always be the namespace of the object that is being created.
-
setEnforcedNamespaceLabel
public void setEnforcedNamespaceLabel(String enforcedNamespaceLabel)
enforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created. The label value will always be the namespace of the object that is being created.
-
getEvaluationInterval
public String getEvaluationInterval()
evaluationInterval defines the interval between consecutive evaluations.
-
setEvaluationInterval
public void setEvaluationInterval(String evaluationInterval)
evaluationInterval defines the interval between consecutive evaluations.
-
getExcludedFromEnforcement
public List<ObjectReference> getExcludedFromEnforcement()
excludedFromEnforcement defines the list of references to PrometheusRule objects to be excluded from enforcing a namespace label of origin. Applies only if enforcedNamespaceLabel set to true.
-
setExcludedFromEnforcement
public void setExcludedFromEnforcement(List<ObjectReference> excludedFromEnforcement)
excludedFromEnforcement defines the list of references to PrometheusRule objects to be excluded from enforcing a namespace label of origin. Applies only if enforcedNamespaceLabel set to true.
-
getExternalPrefix
public String getExternalPrefix()
externalPrefix defines the Thanos Ruler instances will be available under. This is necessary to generate correct URLs. This is necessary if Thanos Ruler is not served from root of a DNS name.
-
setExternalPrefix
public void setExternalPrefix(String externalPrefix)
externalPrefix defines the Thanos Ruler instances will be available under. This is necessary to generate correct URLs. This is necessary if Thanos Ruler is not served from root of a DNS name.
-
getGrpcServerTlsConfig
public GRPCServerTLSConfig getGrpcServerTlsConfig()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setGrpcServerTlsConfig
public void setGrpcServerTlsConfig(GRPCServerTLSConfig grpcServerTlsConfig)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getHostAliases
public List<HostAlias> getHostAliases()
hostAliases defines pods' hostAliases configuration
-
setHostAliases
public void setHostAliases(List<HostAlias> hostAliases)
hostAliases defines pods' hostAliases configuration
-
getHostUsers
public Boolean getHostUsers()
hostUsers supports the user space in Kubernetes.More info: https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/
The feature requires at least Kubernetes 1.28 with the `UserNamespacesSupport` feature gate enabled. Starting Kubernetes 1.33, the feature is enabled by default.
-
setHostUsers
public void setHostUsers(Boolean hostUsers)
hostUsers supports the user space in Kubernetes.More info: https://kubernetes.io/docs/tasks/configure-pod-container/user-namespaces/
The feature requires at least Kubernetes 1.28 with the `UserNamespacesSupport` feature gate enabled. Starting Kubernetes 1.33, the feature is enabled by default.
-
getImage
public String getImage()
image defines Thanos container image URL.
-
setImage
public void setImage(String image)
image defines Thanos container image URL.
-
getImagePullPolicy
public String getImagePullPolicy()
imagePullPolicy defines for the 'thanos', 'init-config-reloader' and 'config-reloader' containers. See https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy for more details.Possible enum values:
- `"Always"` means that kubelet always attempts to pull the latest image. Container will fail If the pull fails.
- `"IfNotPresent"` means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails.
- `"Never"` means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present
-
setImagePullPolicy
public void setImagePullPolicy(String imagePullPolicy)
imagePullPolicy defines for the 'thanos', 'init-config-reloader' and 'config-reloader' containers. See https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy for more details.Possible enum values:
- `"Always"` means that kubelet always attempts to pull the latest image. Container will fail If the pull fails.
- `"IfNotPresent"` means that kubelet pulls if the image isn't present on disk. Container will fail if the image isn't present and the pull fails.
- `"Never"` means that kubelet never pulls an image, but only uses a local image. Container will fail if the image isn't present
-
getImagePullSecrets
public List<LocalObjectReference> getImagePullSecrets()
imagePullSecrets defines an optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
-
setImagePullSecrets
public void setImagePullSecrets(List<LocalObjectReference> imagePullSecrets)
imagePullSecrets defines an optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod
-
getInitContainers
public List<Container> getInitContainers()
initContainers allows injecting initContainers to the Pod definition. Those can be used to e.g. fetch secrets for injection into the configuration from external sources. Any errors during the execution of an initContainer will lead to a restart of the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
-
setInitContainers
public void setInitContainers(List<Container> initContainers)
initContainers allows injecting initContainers to the Pod definition. Those can be used to e.g. fetch secrets for injection into the configuration from external sources. Any errors during the execution of an initContainer will lead to a restart of the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
-
getLabels
public Map<String,String> getLabels()
labels defines the external label pairs of the ThanosRuler resource.A default replica label `thanos_ruler_replica` will be always added as a label with the value of the pod's name.
-
setLabels
public void setLabels(Map<String,String> labels)
labels defines the external label pairs of the ThanosRuler resource.A default replica label `thanos_ruler_replica` will be always added as a label with the value of the pod's name.
-
getListenLocal
public Boolean getListenLocal()
listenLocal defines the Thanos ruler listen on loopback, so that it does not bind against the Pod IP.
-
setListenLocal
public void setListenLocal(Boolean listenLocal)
listenLocal defines the Thanos ruler listen on loopback, so that it does not bind against the Pod IP.
-
getLogFormat
public String getLogFormat()
logFormat for ThanosRuler to be configured with.
-
setLogFormat
public void setLogFormat(String logFormat)
logFormat for ThanosRuler to be configured with.
-
getLogLevel
public String getLogLevel()
logLevel for ThanosRuler to be configured with.
-
setLogLevel
public void setLogLevel(String logLevel)
logLevel for ThanosRuler to be configured with.
-
getMinReadySeconds
public Integer getMinReadySeconds()
minReadySeconds defines the minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available.If unset, pods will be considered available as soon as they are ready.
-
setMinReadySeconds
public void setMinReadySeconds(Integer minReadySeconds)
minReadySeconds defines the minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available.If unset, pods will be considered available as soon as they are ready.
-
getNodeSelector
public Map<String,String> getNodeSelector()
nodeSelector defines which Nodes the Pods are scheduled on.
-
setNodeSelector
public void setNodeSelector(Map<String,String> nodeSelector)
nodeSelector defines which Nodes the Pods are scheduled on.
-
getObjectStorageConfig
public SecretKeySelector getObjectStorageConfig()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setObjectStorageConfig
public void setObjectStorageConfig(SecretKeySelector objectStorageConfig)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getObjectStorageConfigFile
public String getObjectStorageConfigFile()
objectStorageConfigFile defines the path of the object storage configuration file.The configuration format is defined at https://thanos.io/tip/thanos/storage.md/#configuring-access-to-object-storage
The operator performs no validation of the configuration file.
This field takes precedence over `objectStorageConfig`.
-
setObjectStorageConfigFile
public void setObjectStorageConfigFile(String objectStorageConfigFile)
objectStorageConfigFile defines the path of the object storage configuration file.The configuration format is defined at https://thanos.io/tip/thanos/storage.md/#configuring-access-to-object-storage
The operator performs no validation of the configuration file.
This field takes precedence over `objectStorageConfig`.
-
getPaused
public Boolean getPaused()
paused defines when a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects.
-
setPaused
public void setPaused(Boolean paused)
paused defines when a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects.
-
getPodManagementPolicy
public String getPodManagementPolicy()
podManagementPolicy defines the policy for creating/deleting pods when scaling up and down.Unlike the default StatefulSet behavior, the default policy is `Parallel` to avoid manual intervention in case a pod gets stuck during a rollout.
Note that updating this value implies the recreation of the StatefulSet which incurs a service outage.
-
setPodManagementPolicy
public void setPodManagementPolicy(String podManagementPolicy)
podManagementPolicy defines the policy for creating/deleting pods when scaling up and down.Unlike the default StatefulSet behavior, the default policy is `Parallel` to avoid manual intervention in case a pod gets stuck during a rollout.
Note that updating this value implies the recreation of the StatefulSet which incurs a service outage.
-
getPodMetadata
public EmbeddedObjectMetadata getPodMetadata()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setPodMetadata
public void setPodMetadata(EmbeddedObjectMetadata podMetadata)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getPortName
public String getPortName()
portName defines the port name used for the pods and governing service. Defaults to `web`.
-
setPortName
public void setPortName(String portName)
portName defines the port name used for the pods and governing service. Defaults to `web`.
-
getPriorityClassName
public String getPriorityClassName()
priorityClassName defines the priority class assigned to the Pods
-
setPriorityClassName
public void setPriorityClassName(String priorityClassName)
priorityClassName defines the priority class assigned to the Pods
-
getPrometheusRulesExcludedFromEnforce
public List<PrometheusRuleExcludeConfig> getPrometheusRulesExcludedFromEnforce()
prometheusRulesExcludedFromEnforce defines a list of Prometheus rules to be excluded from enforcing of adding namespace labels. Works only if enforcedNamespaceLabel set to true. Make sure both ruleNamespace and ruleName are set for each pair Deprecated: use excludedFromEnforcement instead.
-
setPrometheusRulesExcludedFromEnforce
public void setPrometheusRulesExcludedFromEnforce(List<PrometheusRuleExcludeConfig> prometheusRulesExcludedFromEnforce)
prometheusRulesExcludedFromEnforce defines a list of Prometheus rules to be excluded from enforcing of adding namespace labels. Works only if enforcedNamespaceLabel set to true. Make sure both ruleNamespace and ruleName are set for each pair Deprecated: use excludedFromEnforcement instead.
-
getQueryConfig
public SecretKeySelector getQueryConfig()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setQueryConfig
public void setQueryConfig(SecretKeySelector queryConfig)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getQueryEndpoints
public List<String> getQueryEndpoints()
queryEndpoints defines the list of Thanos Query endpoints from which to query metrics.For Thanos >= v0.11.0, it is recommended to use `queryConfig` instead.
`queryConfig` takes precedence over this field.
-
setQueryEndpoints
public void setQueryEndpoints(List<String> queryEndpoints)
queryEndpoints defines the list of Thanos Query endpoints from which to query metrics.For Thanos >= v0.11.0, it is recommended to use `queryConfig` instead.
`queryConfig` takes precedence over this field.
-
getRemoteWrite
public List<RemoteWriteSpec> getRemoteWrite()
remoteWrite defines the list of remote write configurations.When the list isn't empty, the ruler is configured with stateless mode.
It requires Thanos >= 0.24.0.
-
setRemoteWrite
public void setRemoteWrite(List<RemoteWriteSpec> remoteWrite)
remoteWrite defines the list of remote write configurations.When the list isn't empty, the ruler is configured with stateless mode.
It requires Thanos >= 0.24.0.
-
getReplicas
public Integer getReplicas()
replicas defines the number of thanos ruler instances to deploy.
-
setReplicas
public void setReplicas(Integer replicas)
replicas defines the number of thanos ruler instances to deploy.
-
getResendDelay
public String getResendDelay()
resendDelay defines the minimum amount of time to wait before resending an alert to Alertmanager.
-
setResendDelay
public void setResendDelay(String resendDelay)
resendDelay defines the minimum amount of time to wait before resending an alert to Alertmanager.
-
getResources
public ResourceRequirements getResources()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setResources
public void setResources(ResourceRequirements resources)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getRetention
public String getRetention()
retention defines the time duration ThanosRuler shall retain data for. Default is '24h', and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)` (milliseconds seconds minutes hours days weeks years).The field has no effect when remote-write is configured since the Ruler operates in stateless mode.
-
setRetention
public void setRetention(String retention)
retention defines the time duration ThanosRuler shall retain data for. Default is '24h', and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)` (milliseconds seconds minutes hours days weeks years).The field has no effect when remote-write is configured since the Ruler operates in stateless mode.
-
getRoutePrefix
public String getRoutePrefix()
routePrefix defines the route prefix ThanosRuler registers HTTP handlers for. This allows thanos UI to be served on a sub-path.
-
setRoutePrefix
public void setRoutePrefix(String routePrefix)
routePrefix defines the route prefix ThanosRuler registers HTTP handlers for. This allows thanos UI to be served on a sub-path.
-
getRuleConcurrentEval
public Integer getRuleConcurrentEval()
ruleConcurrentEval defines how many rules can be evaluated concurrently. It requires Thanos >= v0.37.0.
-
setRuleConcurrentEval
public void setRuleConcurrentEval(Integer ruleConcurrentEval)
ruleConcurrentEval defines how many rules can be evaluated concurrently. It requires Thanos >= v0.37.0.
-
getRuleGracePeriod
public String getRuleGracePeriod()
ruleGracePeriod defines the minimum duration between alert and restored "for" state. This is maintained only for alerts with configured "for" time greater than grace period. It requires Thanos >= v0.30.0.
-
setRuleGracePeriod
public void setRuleGracePeriod(String ruleGracePeriod)
ruleGracePeriod defines the minimum duration between alert and restored "for" state. This is maintained only for alerts with configured "for" time greater than grace period. It requires Thanos >= v0.30.0.
-
getRuleNamespaceSelector
public LabelSelector getRuleNamespaceSelector()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setRuleNamespaceSelector
public void setRuleNamespaceSelector(LabelSelector ruleNamespaceSelector)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getRuleOutageTolerance
public String getRuleOutageTolerance()
ruleOutageTolerance defines the max time to tolerate prometheus outage for restoring "for" state of alert. It requires Thanos >= v0.30.0.
-
setRuleOutageTolerance
public void setRuleOutageTolerance(String ruleOutageTolerance)
ruleOutageTolerance defines the max time to tolerate prometheus outage for restoring "for" state of alert. It requires Thanos >= v0.30.0.
-
getRuleQueryOffset
public String getRuleQueryOffset()
ruleQueryOffset defines the default rule group's query offset duration to use. It requires Thanos >= v0.38.0.
-
setRuleQueryOffset
public void setRuleQueryOffset(String ruleQueryOffset)
ruleQueryOffset defines the default rule group's query offset duration to use. It requires Thanos >= v0.38.0.
-
getRuleSelector
public LabelSelector getRuleSelector()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setRuleSelector
public void setRuleSelector(LabelSelector ruleSelector)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getSchedulerName
public String getSchedulerName()
schedulerName defines the scheduler to use for Pod scheduling. If not specified, the default scheduler is used.
-
setSchedulerName
public void setSchedulerName(String schedulerName)
schedulerName defines the scheduler to use for Pod scheduling. If not specified, the default scheduler is used.
-
getSecurityContext
public PodSecurityContext getSecurityContext()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setSecurityContext
public void setSecurityContext(PodSecurityContext securityContext)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getServiceAccountName
public String getServiceAccountName()
serviceAccountName defines the name of the ServiceAccount to use to run the Thanos Ruler Pods.
-
setServiceAccountName
public void setServiceAccountName(String serviceAccountName)
serviceAccountName defines the name of the ServiceAccount to use to run the Thanos Ruler Pods.
-
getServiceName
public String getServiceName()
serviceName defines the name of the service name used by the underlying StatefulSet(s) as the governing service. If defined, the Service must be created before the ThanosRuler resource in the same namespace and it must define a selector that matches the pod labels. If empty, the operator will create and manage a headless service named `thanos-ruler-operated` for ThanosRuler resources. When deploying multiple ThanosRuler resources in the same namespace, it is recommended to specify a different value for each. See https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-network-id for more details.
-
setServiceName
public void setServiceName(String serviceName)
serviceName defines the name of the service name used by the underlying StatefulSet(s) as the governing service. If defined, the Service must be created before the ThanosRuler resource in the same namespace and it must define a selector that matches the pod labels. If empty, the operator will create and manage a headless service named `thanos-ruler-operated` for ThanosRuler resources. When deploying multiple ThanosRuler resources in the same namespace, it is recommended to specify a different value for each. See https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-network-id for more details.
-
getStorage
public StorageSpec getStorage()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setStorage
public void setStorage(StorageSpec storage)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getTerminationGracePeriodSeconds
public Long getTerminationGracePeriodSeconds()
terminationGracePeriodSeconds defines the optional duration in seconds the pod needs to terminate gracefully. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down) which may lead to data corruption.Defaults to 120 seconds.
-
setTerminationGracePeriodSeconds
public void setTerminationGracePeriodSeconds(Long terminationGracePeriodSeconds)
terminationGracePeriodSeconds defines the optional duration in seconds the pod needs to terminate gracefully. Value must be non-negative integer. The value zero indicates stop immediately via the kill signal (no opportunity to shut down) which may lead to data corruption.Defaults to 120 seconds.
-
getTolerations
public List<Toleration> getTolerations()
tolerations defines when specified, the pod's tolerations.
-
setTolerations
public void setTolerations(List<Toleration> tolerations)
tolerations defines when specified, the pod's tolerations.
-
getTopologySpreadConstraints
public List<TopologySpreadConstraint> getTopologySpreadConstraints()
topologySpreadConstraints defines the pod's topology spread constraints.
-
setTopologySpreadConstraints
public void setTopologySpreadConstraints(List<TopologySpreadConstraint> topologySpreadConstraints)
topologySpreadConstraints defines the pod's topology spread constraints.
-
getTracingConfig
public SecretKeySelector getTracingConfig()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setTracingConfig
public void setTracingConfig(SecretKeySelector tracingConfig)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getTracingConfigFile
public String getTracingConfigFile()
tracingConfigFile defines the path of the tracing configuration file.The configuration format is defined at https://thanos.io/tip/thanos/tracing.md/#configuration
This is an *experimental feature*, it may change in any upcoming release in a breaking way.
The operator performs no validation of the configuration file.
This field takes precedence over `tracingConfig`.
-
setTracingConfigFile
public void setTracingConfigFile(String tracingConfigFile)
tracingConfigFile defines the path of the tracing configuration file.The configuration format is defined at https://thanos.io/tip/thanos/tracing.md/#configuration
This is an *experimental feature*, it may change in any upcoming release in a breaking way.
The operator performs no validation of the configuration file.
This field takes precedence over `tracingConfig`.
-
getUpdateStrategy
public StatefulSetUpdateStrategy getUpdateStrategy()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setUpdateStrategy
public void setUpdateStrategy(StatefulSetUpdateStrategy updateStrategy)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
getVersion
public String getVersion()
version of Thanos to be deployed.
-
setVersion
public void setVersion(String version)
version of Thanos to be deployed.
-
getVolumeMounts
public List<VolumeMount> getVolumeMounts()
volumeMounts defines how the configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the ruler container, that are generated as a result of StorageSpec objects.
-
setVolumeMounts
public void setVolumeMounts(List<VolumeMount> volumeMounts)
volumeMounts defines how the configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the ruler container, that are generated as a result of StorageSpec objects.
-
getVolumes
public List<Volume> getVolumes()
volumes defines how configuration of additional volumes on the output StatefulSet definition. Volumes specified will be appended to other volumes that are generated as a result of StorageSpec objects.
-
setVolumes
public void setVolumes(List<Volume> volumes)
volumes defines how configuration of additional volumes on the output StatefulSet definition. Volumes specified will be appended to other volumes that are generated as a result of StorageSpec objects.
-
getWeb
public ThanosRulerWebSpec getWeb()
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
setWeb
public void setWeb(ThanosRulerWebSpec web)
ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
-
edit
public ThanosRulerSpecBuilder edit()
- Specified by:
editin interfaceEditable<ThanosRulerSpecBuilder>
-
toBuilder
public ThanosRulerSpecBuilder toBuilder()
-
-