diff --git a/api/operator/v1beta1/common_scrapeparams.go b/api/operator/v1beta1/common_scrapeparams.go
index c2df7b7a..f0cbd54d 100644
--- a/api/operator/v1beta1/common_scrapeparams.go
+++ b/api/operator/v1beta1/common_scrapeparams.go
@@ -57,30 +57,67 @@ type ProxyAuth struct {
BasicAuth *BasicAuth `json:"basic_auth,omitempty"`
BearerToken *v1.SecretKeySelector `json:"bearer_token,omitempty"`
BearerTokenFile string `json:"bearer_token_file,omitempty"`
- TLSConfig *TLSConfig `json:"tls_config,omitempty"`
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
+ TLSConfig *TLSConfig `json:"tls_config,omitempty"`
}
// OAuth2 defines OAuth2 configuration
type OAuth2 struct {
// The secret or configmap containing the OAuth2 client id
// +required
- ClientID SecretOrConfigMap `json:"client_id" yaml:"client_id,omitempty"`
+ ClientID SecretOrConfigMap `json:"client_id,omitempty"`
+ // The secret or configmap containing the OAuth2 client id
+ // +required
+ ClientIDS *SecretOrConfigMap `json:"clientId,omitempty"`
+ // The secret containing the OAuth2 client secret
+ // +optional
+ ClientSecret *v1.SecretKeySelector `json:"client_secret,omitempty"`
// The secret containing the OAuth2 client secret
// +optional
- ClientSecret *v1.SecretKeySelector `json:"client_secret,omitempty" yaml:"client_secret,omitempty"`
+ ClientSecretS *v1.SecretKeySelector `json:"clientSecret,omitempty"`
// ClientSecretFile defines path for client secret file.
// +optional
- ClientSecretFile string `json:"client_secret_file,omitempty" yaml:"client_secret_file,omitempty"`
+ ClientSecretFile string `json:"client_secret_file,omitempty"`
// The URL to fetch the token from
- // +kubebuilder:validation:MinLength=1
- // +required
- TokenURL string `json:"token_url" yaml:"token_url"`
+ TokenURL string `json:"token_url,omitempty"`
+ // The URL to fetch the token from
+ TokenURLS string `json:"tokenUrl,omitempty"`
+
// OAuth2 scopes used for the token request
// +optional
Scopes []string `json:"scopes,omitempty"`
// Parameters to append to the token URL
// +optional
- EndpointParams map[string]string `json:"endpoint_params,omitempty" yaml:"endpoint_params"`
+ EndpointParams map[string]string `json:"endpoint_params,omitempty"`
+ // Parameters to append to the token URL
+ // +optional
+ EndpointParamsS map[string]string `json:"endpointParams,omitempty"`
+}
+
+// UnmarshalJSON implements json.Unmarshaller interface
+func (o *OAuth2) UnmarshalJSON(src []byte) error {
+ type tmp OAuth2
+ if err := json.Unmarshal(src, (*tmp)(o)); err != nil {
+ return fmt.Errorf("cannot parse OAuth2: %w", err)
+ }
+ if o.ClientIDS != nil {
+ o.ClientID = *o.ClientIDS
+ o.ClientIDS = nil
+ }
+ if o.ClientSecret == nil && o.ClientSecretS != nil {
+ o.ClientSecret = o.ClientSecretS
+ o.ClientSecretS = nil
+ }
+ if len(o.TokenURL) == 0 && len(o.TokenURLS) > 0 {
+ o.TokenURL = o.TokenURLS
+ o.TokenURLS = ""
+ }
+ if o.EndpointParams == nil && o.EndpointParamsS != nil {
+ o.EndpointParams = o.EndpointParamsS
+ o.EndpointParamsS = nil
+ }
+ return nil
}
func (o *OAuth2) validate() error {
@@ -110,7 +147,7 @@ type Authorization struct {
Credentials *v1.SecretKeySelector `json:"credentials,omitempty"`
// File with value for authorization
// +optional
- CredentialsFile string `json:"credentialsFile,omitempty" yaml:"credentials_file,omitempty"`
+ CredentialsFile string `json:"credentials_file,omitempty"`
}
func (ac *Authorization) validate() error {
@@ -197,16 +234,14 @@ func (rc *RelabelConfig) UnmarshalJSON(src []byte) error {
if len(rc.SourceLabels) == 0 && len(rc.UnderScoreSourceLabels) > 0 {
rc.SourceLabels = append(rc.SourceLabels, rc.UnderScoreSourceLabels...)
+ rc.UnderScoreSourceLabels = nil
}
- if len(rc.UnderScoreSourceLabels) == 0 && len(rc.SourceLabels) > 0 {
- rc.UnderScoreSourceLabels = append(rc.UnderScoreSourceLabels, rc.SourceLabels...)
- }
+
if rc.TargetLabel == "" && rc.UnderScoreTargetLabel != "" {
rc.TargetLabel = rc.UnderScoreTargetLabel
+ rc.UnderScoreTargetLabel = ""
}
- if rc.UnderScoreTargetLabel == "" && rc.TargetLabel != "" {
- rc.UnderScoreTargetLabel = rc.TargetLabel
- }
+
return nil
}
@@ -223,6 +258,14 @@ type EndpointScrapeParams struct {
// HTTP path to scrape for metrics.
// +optional
Path string `json:"path,omitempty"`
+ // HTTP path to scrape for metrics.
+ // alias for Path
+ // +optional
+ MetricsPath string `json:"metrics_path,omitempty"`
+ // MetricsPathS alias for Path
+ // +optional
+ MetricsPathS string `json:"metricsPath,omitempty"`
+
// HTTP scheme to use for scraping.
// +optional
// +kubebuilder:validation:Enum=http;https;HTTPS;HTTP
@@ -233,13 +276,26 @@ type EndpointScrapeParams struct {
// FollowRedirects controls redirects for scraping.
// +optional
FollowRedirects *bool `json:"follow_redirects,omitempty"`
+ // FollowRedirects controls redirects for scraping.
+ // +optional
+ ScoreFollowRedirectsS *bool `json:"followRedirects,omitempty"`
+
// SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.
// +optional
- SampleLimit uint64 `json:"sampleLimit,omitempty"`
+ SampleLimit uint64 `json:"sample_limit,omitempty"`
+ // SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.
+ // +optional
+ SampleLimitS uint64 `json:"sampleLimit,omitempty"`
+
+ // SeriesLimit defines per-scrape limit on number of unique time series
+ // a single target can expose during all the scrapes on the time window of 24h.
+ // +optional
+ SeriesLimit uint64 `json:"series_limit,omitempty"`
// SeriesLimit defines per-scrape limit on number of unique time series
// a single target can expose during all the scrapes on the time window of 24h.
// +optional
- SeriesLimit uint64 `json:"seriesLimit,omitempty"`
+ SeriesLimitS uint64 `json:"seriesLimit,omitempty"`
+
// Interval at which metrics should be scraped
// +optional
Interval string `json:"interval,omitempty"`
@@ -247,18 +303,38 @@ type EndpointScrapeParams struct {
// one of scrape_interval or interval can be used
// +optional
ScrapeInterval string `json:"scrape_interval,omitempty"`
+
+ // ScrapeIntervalS is the same as ScrapeInterval and has priority over it.
+ // +optional
+ ScrapeIntervalS string `json:"scrapeInterval,omitempty"`
// Timeout after which the scrape is ended
// +optional
- ScrapeTimeout string `json:"scrapeTimeout,omitempty"`
+ ScrapeTimeout string `json:"scrape_timeout,omitempty"`
+ // ScrapeTimeoutS after which the scrape is ended
+ // +optional
+ ScrapeTimeoutS string `json:"scrapeTimeout,omitempty"`
+
// ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.
// +optional
- ProxyURL *string `json:"proxyURL,omitempty"`
+ ProxyURL *string `json:"proxy_url,omitempty"`
+ // ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.
+ // +optional
+ ScoreProxyURLS *string `json:"proxyUrl,omitempty"`
+
// HonorLabels chooses the metric's labels on collisions with target labels.
// +optional
- HonorLabels bool `json:"honorLabels,omitempty"`
+ HonorLabels *bool `json:"honor_labels,omitempty"`
+ // HonorLabelsS chooses the metric's labels on collisions with target labels.
+ // +optional
+ HonorLabelsS *bool `json:"honorLabels,omitempty"`
+
+ // HonorTimestamps controls whether vmagent respects the timestamps present in scraped data.
+ // +optional
+ HonorTimestamps *bool `json:"honor_timestamps,omitempty"`
// HonorTimestamps controls whether vmagent respects the timestamps present in scraped data.
// +optional
- HonorTimestamps *bool `json:"honorTimestamps,omitempty"`
+ HonorTimestampsS *bool `json:"honorTimestamps,omitempty"`
+
// MaxScrapeSize defines a maximum size of scraped data for a job
// +optional
MaxScrapeSize string `json:"max_scrape_size,omitempty"`
@@ -267,37 +343,145 @@ type EndpointScrapeParams struct {
VMScrapeParams *VMScrapeParams `json:"vm_scrape_params,omitempty"`
}
+// handles cases for snakeCase and camel_case of json tags
+// on conflict snakeCase alwasys wins, camel_case erased to empty value
+func (esp *EndpointScrapeParams) applyTagsCase() error {
+
+ if len(esp.Path) == 0 && len(esp.MetricsPath) > 0 {
+ esp.Path = esp.MetricsPath
+ esp.MetricsPath = ""
+ }
+ if len(esp.Path) == 0 && len(esp.MetricsPathS) > 0 {
+ esp.Path = esp.MetricsPathS
+ esp.MetricsPathS = ""
+ }
+ if esp.SampleLimit == 0 && esp.SampleLimitS > 0 {
+ esp.SampleLimit = esp.SampleLimitS
+ esp.SampleLimitS = 0
+ }
+ if esp.FollowRedirects == nil && esp.ScoreFollowRedirectsS != nil {
+ esp.FollowRedirects = esp.ScoreFollowRedirectsS
+ esp.ScoreFollowRedirectsS = nil
+ }
+
+ if esp.HonorLabels == nil && esp.HonorLabelsS != nil {
+ esp.HonorLabels = esp.HonorLabelsS
+ esp.HonorLabelsS = nil
+ }
+ if esp.HonorTimestamps == nil && esp.HonorTimestampsS != nil {
+ esp.HonorTimestamps = esp.HonorTimestampsS
+ esp.HonorTimestampsS = nil
+ }
+ if len(esp.ScrapeTimeout) == 0 && len(esp.ScrapeTimeoutS) > 0 {
+ esp.ScrapeTimeout = esp.ScrapeTimeoutS
+ esp.ScrapeTimeoutS = ""
+ }
+ if len(esp.ScrapeInterval) == 0 && len(esp.ScrapeIntervalS) > 0 {
+ esp.ScrapeInterval = esp.ScrapeIntervalS
+ esp.ScrapeIntervalS = ""
+ }
+ if esp.SampleLimit == 0 && esp.SampleLimitS > 0 {
+ esp.SampleLimit = esp.SampleLimitS
+ esp.SampleLimitS = 0
+ }
+ if esp.SeriesLimit == 0 && esp.SeriesLimitS > 0 {
+ esp.SeriesLimit = esp.SeriesLimitS
+ esp.SeriesLimitS = 0
+ }
+ if esp.ProxyURL == nil && esp.ScoreProxyURLS != nil {
+ esp.ProxyURL = esp.ScoreProxyURLS
+ esp.ScoreProxyURLS = nil
+ }
+
+ return nil
+}
+
// EndpointAuth defines target endpoint authorization options for scrapping
type EndpointAuth struct {
// OAuth2 defines auth configuration
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
OAuth2 *OAuth2 `json:"oauth2,omitempty"`
// TLSConfig configuration to use when scraping the endpoint
// +optional
- TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
+ TLSConfig *TLSConfig `json:"tls_config,omitempty"`
+ // TLSConfigS alias for TLSConfig
+ // +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
+ TLSConfigS *TLSConfig `json:"tlsConfig,omitempty"`
// File to read bearer token for scraping targets.
// +optional
- BearerTokenFile string `json:"bearerTokenFile,omitempty"`
+ BearerTokenFile string `json:"bearer_token_file,omitempty"`
+ // BearerTokenFileS alias for BearerTokenFile
+ // +optional
+ BearerTokenFileS string `json:"bearerTokenFile,omitempty"`
// Secret to mount to read bearer token for scraping targets. The secret
// needs to be in the same namespace as the scrape object and accessible by
// the victoria-metrics operator.
// +optional
- // +nullable
- BearerTokenSecret *v1.SecretKeySelector `json:"bearerTokenSecret,omitempty"`
+ BearerTokenSecret *v1.SecretKeySelector `json:"bearer_token_secret,omitempty"`
+ // BearerTokenSecretS alias for BearerTokenSecret
+ // +optional
+ BearerTokenSecretS *v1.SecretKeySelector `json:"bearerTokenSecret,omitempty"`
// BasicAuth allow an endpoint to authenticate over basic authentication
// +optional
- BasicAuth *BasicAuth `json:"basicAuth,omitempty"`
+ BasicAuth *BasicAuth `json:"basic_auth,omitempty"`
+ // BasicAuthS alias for BasicAuth
+ // +optional
+ BasicAuthS *BasicAuth `json:"basicAuth,omitempty"`
// Authorization with http header Authorization
// +optional
Authorization *Authorization `json:"authorization,omitempty"`
}
+func (ea *EndpointAuth) applyTagsCase() {
+ if ea.TLSConfig == nil && ea.TLSConfigS != nil {
+ ea.TLSConfig = ea.TLSConfigS
+ ea.TLSConfigS = nil
+ }
+ if ea.BasicAuth == nil && ea.BasicAuthS != nil {
+ ea.BasicAuth = ea.BasicAuthS
+ ea.BasicAuthS = nil
+ }
+ if len(ea.BearerTokenFile) == 0 && len(ea.BearerTokenFileS) > 0 {
+ ea.BearerTokenFile = ea.BearerTokenFileS
+ ea.BearerTokenFileS = ""
+ }
+ if ea.BearerTokenSecret == nil && ea.BearerTokenSecretS != nil {
+ ea.BearerTokenSecret = ea.BearerTokenSecretS
+ ea.BearerTokenSecretS = nil
+ }
+}
+
// EndpointRelabelings defines service discovery and metrics relabeling configuration for endpoints
type EndpointRelabelings struct {
// MetricRelabelConfigs to apply to samples after scrapping.
// +optional
- MetricRelabelConfigs []*RelabelConfig `json:"metricRelabelConfigs,omitempty"`
+ MetricRelabelConfigs []*RelabelConfig `json:"metric_relabel_configs,omitempty"`
+ // MetricRelabelConfigsS alias for MetricRelabelConfigs
+ // +optional
+ MetricRelabelConfigsS []*RelabelConfig `json:"metricRelabelConfigs,omitempty"`
// RelabelConfigs to apply to samples during service discovery.
// +optional
- RelabelConfigs []*RelabelConfig `json:"relabelConfigs,omitempty"`
+ RelabelConfigs []*RelabelConfig `json:"relabel_configs,omitempty"`
+ // RelabelConfigsS alias ofr RelabelConfigs
+ // +optional
+ RelabelConfigsS []*RelabelConfig `json:"relabelConfigs,omitempty"`
+}
+
+// handles cases for snakeCase and camel_case of json tags
+// on conflict snakeCase alwasys wins, camel_case erased to empty value
+func (ers *EndpointRelabelings) applyTagsCase() {
+ if len(ers.MetricRelabelConfigs) == 0 && len(ers.MetricRelabelConfigsS) > 0 {
+ ers.MetricRelabelConfigs = ers.MetricRelabelConfigsS
+ ers.MetricRelabelConfigsS = nil
+ }
+ if len(ers.RelabelConfigs) == 0 && len(ers.RelabelConfigsS) > 0 {
+ ers.RelabelConfigs = ers.RelabelConfigsS
+ ers.RelabelConfigsS = nil
+ }
}
diff --git a/api/operator/v1beta1/vmagent_types.go b/api/operator/v1beta1/vmagent_types.go
index f61c5ef7..5924e21b 100644
--- a/api/operator/v1beta1/vmagent_types.go
+++ b/api/operator/v1beta1/vmagent_types.go
@@ -386,9 +386,13 @@ type VMAgentRemoteWriteSpec struct {
InlineUrlRelabelConfig []RelabelConfig `json:"inlineUrlRelabelConfig,omitempty"`
// OAuth2 defines auth configuration
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
OAuth2 *OAuth2 `json:"oauth2,omitempty"`
// TLSConfig describes tls configuration for remote write target
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
// Timeout for sending a single block of data to -remoteWrite.url (default 1m0s)
// +optional
@@ -770,6 +774,8 @@ type APIServerConfig struct {
BearerTokenFile string `json:"bearerTokenFile,omitempty"`
// TLSConfig Config to use for accessing apiserver.
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
// +optional
Authorization *Authorization `json:"authorization,omitempty"`
diff --git a/api/operator/v1beta1/vmalertmanagerconfig_types.go b/api/operator/v1beta1/vmalertmanagerconfig_types.go
index fd5e9aff..e932f28e 100644
--- a/api/operator/v1beta1/vmalertmanagerconfig_types.go
+++ b/api/operator/v1beta1/vmalertmanagerconfig_types.go
@@ -418,6 +418,8 @@ type EmailConfig struct {
RequireTLS *bool `json:"require_tls,omitempty" yaml:"require_tls,omitempty"`
// TLS configuration
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
TLSConfig *TLSConfig `json:"tls_config,omitempty" yaml:"tls_config,omitempty"`
}
@@ -892,6 +894,8 @@ type HTTPConfig struct {
BearerTokenFile string `json:"bearer_token_file,omitempty" yaml:"bearer_token_file,omitempty"`
// TLS configuration for the client.
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
TLSConfig *TLSConfig `json:"tls_config,omitempty" yaml:"tls_config,omitempty"`
// Optional proxy URL.
// +optional
@@ -902,6 +906,8 @@ type HTTPConfig struct {
Authorization *Authorization `json:"authorization,omitempty"`
// OAuth2 client credentials used to fetch a token for the targets.
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
OAuth2 *OAuth2 `json:"oauth2,omitempty"`
}
diff --git a/api/operator/v1beta1/vmauth_types.go b/api/operator/v1beta1/vmauth_types.go
index 4b117403..e45dba7a 100644
--- a/api/operator/v1beta1/vmauth_types.go
+++ b/api/operator/v1beta1/vmauth_types.go
@@ -157,6 +157,8 @@ type UserConfigOption struct {
DefaultURLs []string `json:"default_url,omitempty"`
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
// IPFilters defines per target src ip filters
diff --git a/api/operator/v1beta1/vmextra_types.go b/api/operator/v1beta1/vmextra_types.go
index c83d282b..ee9bc64f 100644
--- a/api/operator/v1beta1/vmextra_types.go
+++ b/api/operator/v1beta1/vmextra_types.go
@@ -280,12 +280,15 @@ type EmbeddedPersistentVolumeClaim struct {
}
// HTTPAuth generic auth used with http protocols
+// TODO: use EndpointAuth instead
type HTTPAuth struct {
// +optional
BasicAuth *BasicAuth `json:"basicAuth,omitempty"`
// +optional
OAuth2 *OAuth2 `json:"oauth2,omitempty"`
// +optional
+ // +kubebuilder:validation:Schemaless
+ // +kubebuilder:pruning:PreserveUnknownFields
TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
// +optional
*BearerAuth `json:",inline,omitempty"`
@@ -299,6 +302,7 @@ type HTTPAuth struct {
}
// BearerAuth defines auth with bearer token
+// TODO: use EndpointAuth instead
type BearerAuth struct {
// Path to bearer token file
// +optional
@@ -315,6 +319,9 @@ type BasicAuth struct {
// The secret needs to be in the same namespace as scrape object
// +optional
Username v1.SecretKeySelector `json:"username,omitempty"`
+ // UsernameFile defines path to username file at disk
+ // must be pre-mounted
+ UsernameFile string `json:"username_file,omitempty"`
// Password defines reference for secret with password value
// The secret needs to be in the same namespace as scrape object
// +optional
@@ -793,31 +800,84 @@ type SecretOrConfigMap struct {
type TLSConfig struct {
// Path to the CA cert in the container to use for the targets.
// +optional
- CAFile string `json:"caFile,omitempty" yaml:"ca_file,omitempty"`
+ CAFile string `json:"ca_file,omitempty"`
+ // Path to the CA cert in the container to use for the targets.
+ // +optional
+ CAFileS string `json:"caFile,omitempty"`
+
// Stuct containing the CA cert to use for the targets.
// +optional
CA SecretOrConfigMap `json:"ca,omitempty"`
// Path to the client cert file in the container for the targets.
// +optional
- CertFile string `json:"certFile,omitempty" yaml:"cert_file,omitempty"`
+ CertFile string `json:"cert_file,omitempty" `
+ // Path to the client cert file in the container for the targets.
+ // +optional
+ CertFileS string `json:"certFile,omitempty" `
// Struct containing the client cert file for the targets.
// +optional
Cert SecretOrConfigMap `json:"cert,omitempty"`
// Path to the client key file in the container for the targets.
// +optional
- KeyFile string `json:"keyFile,omitempty" yaml:"key_file,omitempty"`
+ KeyFile string `json:"key_file,omitempty" `
+ // Path to the client key file in the container for the targets.
+ // +optional
+ KeyFileS string `json:"keyFile,omitempty" `
// Secret containing the client key file for the targets.
// +optional
- KeySecret *v1.SecretKeySelector `json:"keySecret,omitempty" yaml:"key_secret,omitempty"`
+ KeySecret *v1.SecretKeySelector `json:"key_secret,omitempty" `
+ // Secret containing the client key file for the targets.
+ // +optional
+ KeySecretS *v1.SecretKeySelector `json:"keySecret,omitempty" `
// Used to verify the hostname for the targets.
// +optional
- ServerName string `json:"serverName,omitempty" yaml:"server_name,omitempty"`
+ ServerName string `json:"server_name,omitempty"`
+ // Used to verify the hostname for the targets.
+ // +optional
+ ServerNameS string `json:"serverName,omitempty"`
+
+ // Disable target certificate validation.
+ // +optional
+ InsecureSkipVerify bool `json:"insecure_skip_verify,omitempty"`
// Disable target certificate validation.
// +optional
- InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty" yaml:"insecure_skip_verify,omitempty"`
+ InsecureSkipVerifyS *bool `json:"insecureSkipVerify,omitempty"`
+}
+
+// UnmarshalJSON implements json.Unmarshaller interface
+func (c *TLSConfig) UnmarshalJSON(src []byte) error {
+ type tmp TLSConfig
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return fmt.Errorf("cannot parse TLSConfig: %w", err)
+ }
+ if len(c.CAFile) == 0 && len(c.CAFileS) > 0 {
+ c.CAFile = c.CAFileS
+ c.CAFileS = ""
+ }
+ if len(c.CertFile) == 0 && len(c.CertFileS) > 0 {
+ c.CertFile = c.CertFileS
+ c.CertFileS = ""
+ }
+ if len(c.KeyFile) == 0 && len(c.KeyFileS) > 0 {
+ c.KeyFile = c.KeyFileS
+ c.KeyFileS = ""
+ }
+ if c.KeySecret == nil && c.KeySecretS != nil {
+ c.KeySecret = c.KeySecretS
+ c.KeySecretS = nil
+ }
+ if len(c.ServerName) == 0 && len(c.ServerNameS) > 0 {
+ c.ServerName = c.ServerNameS
+ c.ServerNameS = ""
+ }
+ if !c.InsecureSkipVerify && c.InsecureSkipVerifyS != nil {
+ c.InsecureSkipVerify = *c.InsecureSkipVerifyS
+ c.InsecureSkipVerifyS = nil
+ }
+ return nil
}
func (c *TLSConfig) AsArgs(args []string, prefix, pathPrefix string) []string {
diff --git a/api/operator/v1beta1/vmnodescrape_types.go b/api/operator/v1beta1/vmnodescrape_types.go
index 2b245871..49ba372f 100644
--- a/api/operator/v1beta1/vmnodescrape_types.go
+++ b/api/operator/v1beta1/vmnodescrape_types.go
@@ -1,6 +1,7 @@
package v1beta1
import (
+ "encoding/json"
"fmt"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -29,6 +30,17 @@ type VMNodeScrapeSpec struct {
Selector metav1.LabelSelector `json:"selector,omitempty"`
}
+func (c *VMNodeScrapeSpec) UnmarshalJSON(src []byte) error {
+ type tmp VMNodeScrapeSpec
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return err
+ }
+ c.EndpointAuth.applyTagsCase()
+ c.EndpointRelabelings.applyTagsCase()
+ c.EndpointScrapeParams.applyTagsCase()
+ return nil
+}
+
// VMNodeScrape defines discovery for targets placed on kubernetes nodes,
// usually its node-exporters and other host services.
// InternalIP is used as __address__ for scraping.
diff --git a/api/operator/v1beta1/vmpodscrape_types.go b/api/operator/v1beta1/vmpodscrape_types.go
index c75c3e76..b935812a 100644
--- a/api/operator/v1beta1/vmpodscrape_types.go
+++ b/api/operator/v1beta1/vmpodscrape_types.go
@@ -1,6 +1,7 @@
package v1beta1
import (
+ "encoding/json"
"fmt"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -91,6 +92,17 @@ type PodMetricsEndpoint struct {
FilterRunning *bool `json:"filterRunning,omitempty"`
}
+func (c *PodMetricsEndpoint) UnmarshalJSON(src []byte) error {
+ type tmp PodMetricsEndpoint
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return err
+ }
+ c.EndpointAuth.applyTagsCase()
+ c.EndpointRelabelings.applyTagsCase()
+ c.EndpointScrapeParams.applyTagsCase()
+ return nil
+}
+
// ArbitraryFSAccessThroughSMsConfig enables users to configure, whether
// a service scrape selected by the vmagent instance is allowed to use
// arbitrary files on the file system of the vmagent container. This is the case
diff --git a/api/operator/v1beta1/vmprobe_types.go b/api/operator/v1beta1/vmprobe_types.go
index c79384af..c173f654 100644
--- a/api/operator/v1beta1/vmprobe_types.go
+++ b/api/operator/v1beta1/vmprobe_types.go
@@ -17,6 +17,7 @@ limitations under the License.
package v1beta1
import (
+ "encoding/json"
"fmt"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -38,12 +39,29 @@ type VMProbeSpec struct {
Targets VMProbeTargets `json:"targets,omitempty"`
// MetricRelabelConfigs to apply to samples after scrapping.
// +optional
- MetricRelabelConfigs []*RelabelConfig `json:"metricRelabelConfigs,omitempty"`
+ MetricRelabelConfigs []*RelabelConfig `json:"metric_relabel_configs,omitempty"`
+ // MetricRelabelConfigs to apply to samples after scrapping.
+ // +optional
+ MetricRelabelConfigsS []*RelabelConfig `json:"metricRelabelConfigs,omitempty"`
EndpointAuth `json:",inline"`
EndpointScrapeParams `json:",inline"`
}
+func (c *VMProbeSpec) UnmarshalJSON(src []byte) error {
+ type tmp VMProbeSpec
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return err
+ }
+ c.EndpointAuth.applyTagsCase()
+ c.EndpointScrapeParams.applyTagsCase()
+ if len(c.MetricRelabelConfigs) == 0 && len(c.MetricRelabelConfigsS) > 0 {
+ c.MetricRelabelConfigs = c.MetricRelabelConfigsS
+ c.MetricRelabelConfigsS = nil
+ }
+ return nil
+}
+
// VMProbeTargets defines a set of static and dynamically discovered targets for the prober.
// +k8s:openapi-gen=true
type VMProbeTargets struct {
@@ -61,7 +79,21 @@ type VMProbeTargetStaticConfig struct {
// Labels assigned to all metrics scraped from the targets.
Labels map[string]string `json:"labels,omitempty"`
// RelabelConfigs to apply to samples during service discovery.
- RelabelConfigs []*RelabelConfig `json:"relabelingConfigs,omitempty"`
+ RelabelConfigs []*RelabelConfig `json:"relabeling_configs,omitempty"`
+ // alias for RelabelConfigs
+ RelabelConfigsS []*RelabelConfig `json:"relabelingConfigs,omitempty"`
+}
+
+func (c *VMProbeTargetStaticConfig) UnmarshalJSON(src []byte) error {
+ type tmp VMProbeTargetStaticConfig
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return err
+ }
+ if len(c.RelabelConfigs) == 0 && len(c.RelabelConfigsS) > 0 {
+ c.RelabelConfigs = c.RelabelConfigsS
+ c.RelabelConfigsS = nil
+ }
+ return nil
}
// ProbeTargetIngress defines the set of Ingress objects considered for probing.
diff --git a/api/operator/v1beta1/vmscrapeconfig_types.go b/api/operator/v1beta1/vmscrapeconfig_types.go
index 6059f4ab..d7711fa9 100644
--- a/api/operator/v1beta1/vmscrapeconfig_types.go
+++ b/api/operator/v1beta1/vmscrapeconfig_types.go
@@ -16,6 +16,7 @@ limitations under the License.
package v1beta1
import (
+ "encoding/json"
"fmt"
corev1 "k8s.io/api/core/v1"
@@ -80,6 +81,17 @@ type VMScrapeConfigSpec struct {
EndpointAuth `json:",inline"`
}
+func (c *VMScrapeConfigSpec) UnmarshalJSON(src []byte) error {
+ type tmp VMScrapeConfigSpec
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return err
+ }
+ c.EndpointAuth.applyTagsCase()
+ c.EndpointRelabelings.applyTagsCase()
+ c.EndpointScrapeParams.applyTagsCase()
+ return nil
+}
+
// StaticConfig defines a static configuration.
// See [here](https://docs.victoriametrics.com/sd_configs#static_configs)
type StaticConfig struct {
diff --git a/api/operator/v1beta1/vmservicescrape_types.go b/api/operator/v1beta1/vmservicescrape_types.go
index 4c090328..c2d32bde 100644
--- a/api/operator/v1beta1/vmservicescrape_types.go
+++ b/api/operator/v1beta1/vmservicescrape_types.go
@@ -1,6 +1,7 @@
package v1beta1
import (
+ "encoding/json"
"fmt"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -130,6 +131,17 @@ type Endpoint struct {
AttachMetadata AttachMetadata `json:"attach_metadata,omitempty"`
}
+func (c *Endpoint) UnmarshalJSON(src []byte) error {
+ type tmp Endpoint
+ if err := json.Unmarshal(src, (*tmp)(c)); err != nil {
+ return err
+ }
+ c.EndpointAuth.applyTagsCase()
+ c.EndpointRelabelings.applyTagsCase()
+ c.EndpointScrapeParams.applyTagsCase()
+ return nil
+}
+
// AsProxyKey builds key for proxy cache maps
func (cr VMServiceScrape) AsProxyKey(i int) string {
return fmt.Sprintf("serviceScrapeProxy/%s/%s/%d", cr.Namespace, cr.Name, i)
diff --git a/api/operator/v1beta1/zz_generated.deepcopy.go b/api/operator/v1beta1/zz_generated.deepcopy.go
index c45e8e2f..6dd35891 100644
--- a/api/operator/v1beta1/zz_generated.deepcopy.go
+++ b/api/operator/v1beta1/zz_generated.deepcopy.go
@@ -1182,16 +1182,31 @@ func (in *EndpointAuth) DeepCopyInto(out *EndpointAuth) {
*out = new(TLSConfig)
(*in).DeepCopyInto(*out)
}
+ if in.TLSConfigS != nil {
+ in, out := &in.TLSConfigS, &out.TLSConfigS
+ *out = new(TLSConfig)
+ (*in).DeepCopyInto(*out)
+ }
if in.BearerTokenSecret != nil {
in, out := &in.BearerTokenSecret, &out.BearerTokenSecret
*out = new(v1.SecretKeySelector)
(*in).DeepCopyInto(*out)
}
+ if in.BearerTokenSecretS != nil {
+ in, out := &in.BearerTokenSecretS, &out.BearerTokenSecretS
+ *out = new(v1.SecretKeySelector)
+ (*in).DeepCopyInto(*out)
+ }
if in.BasicAuth != nil {
in, out := &in.BasicAuth, &out.BasicAuth
*out = new(BasicAuth)
(*in).DeepCopyInto(*out)
}
+ if in.BasicAuthS != nil {
+ in, out := &in.BasicAuthS, &out.BasicAuthS
+ *out = new(BasicAuth)
+ (*in).DeepCopyInto(*out)
+ }
if in.Authorization != nil {
in, out := &in.Authorization, &out.Authorization
*out = new(Authorization)
@@ -1223,6 +1238,17 @@ func (in *EndpointRelabelings) DeepCopyInto(out *EndpointRelabelings) {
}
}
}
+ if in.MetricRelabelConfigsS != nil {
+ in, out := &in.MetricRelabelConfigsS, &out.MetricRelabelConfigsS
+ *out = make([]*RelabelConfig, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(RelabelConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ }
+ }
if in.RelabelConfigs != nil {
in, out := &in.RelabelConfigs, &out.RelabelConfigs
*out = make([]*RelabelConfig, len(*in))
@@ -1234,6 +1260,17 @@ func (in *EndpointRelabelings) DeepCopyInto(out *EndpointRelabelings) {
}
}
}
+ if in.RelabelConfigsS != nil {
+ in, out := &in.RelabelConfigsS, &out.RelabelConfigsS
+ *out = make([]*RelabelConfig, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(RelabelConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ }
+ }
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointRelabelings.
@@ -1270,16 +1307,41 @@ func (in *EndpointScrapeParams) DeepCopyInto(out *EndpointScrapeParams) {
*out = new(bool)
**out = **in
}
+ if in.ScoreFollowRedirectsS != nil {
+ in, out := &in.ScoreFollowRedirectsS, &out.ScoreFollowRedirectsS
+ *out = new(bool)
+ **out = **in
+ }
if in.ProxyURL != nil {
in, out := &in.ProxyURL, &out.ProxyURL
*out = new(string)
**out = **in
}
+ if in.ScoreProxyURLS != nil {
+ in, out := &in.ScoreProxyURLS, &out.ScoreProxyURLS
+ *out = new(string)
+ **out = **in
+ }
+ if in.HonorLabels != nil {
+ in, out := &in.HonorLabels, &out.HonorLabels
+ *out = new(bool)
+ **out = **in
+ }
+ if in.HonorLabelsS != nil {
+ in, out := &in.HonorLabelsS, &out.HonorLabelsS
+ *out = new(bool)
+ **out = **in
+ }
if in.HonorTimestamps != nil {
in, out := &in.HonorTimestamps, &out.HonorTimestamps
*out = new(bool)
**out = **in
}
+ if in.HonorTimestampsS != nil {
+ in, out := &in.HonorTimestampsS, &out.HonorTimestampsS
+ *out = new(bool)
+ **out = **in
+ }
if in.VMScrapeParams != nil {
in, out := &in.VMScrapeParams, &out.VMScrapeParams
*out = new(VMScrapeParams)
@@ -1767,11 +1829,21 @@ func (in *NamespaceSelector) DeepCopy() *NamespaceSelector {
func (in *OAuth2) DeepCopyInto(out *OAuth2) {
*out = *in
in.ClientID.DeepCopyInto(&out.ClientID)
+ if in.ClientIDS != nil {
+ in, out := &in.ClientIDS, &out.ClientIDS
+ *out = new(SecretOrConfigMap)
+ (*in).DeepCopyInto(*out)
+ }
if in.ClientSecret != nil {
in, out := &in.ClientSecret, &out.ClientSecret
*out = new(v1.SecretKeySelector)
(*in).DeepCopyInto(*out)
}
+ if in.ClientSecretS != nil {
+ in, out := &in.ClientSecretS, &out.ClientSecretS
+ *out = new(v1.SecretKeySelector)
+ (*in).DeepCopyInto(*out)
+ }
if in.Scopes != nil {
in, out := &in.Scopes, &out.Scopes
*out = make([]string, len(*in))
@@ -1784,6 +1856,13 @@ func (in *OAuth2) DeepCopyInto(out *OAuth2) {
(*out)[key] = val
}
}
+ if in.EndpointParamsS != nil {
+ in, out := &in.EndpointParamsS, &out.EndpointParamsS
+ *out = make(map[string]string, len(*in))
+ for key, val := range *in {
+ (*out)[key] = val
+ }
+ }
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OAuth2.
@@ -2951,6 +3030,16 @@ func (in *TLSConfig) DeepCopyInto(out *TLSConfig) {
*out = new(v1.SecretKeySelector)
(*in).DeepCopyInto(*out)
}
+ if in.KeySecretS != nil {
+ in, out := &in.KeySecretS, &out.KeySecretS
+ *out = new(v1.SecretKeySelector)
+ (*in).DeepCopyInto(*out)
+ }
+ if in.InsecureSkipVerifyS != nil {
+ in, out := &in.InsecureSkipVerifyS, &out.InsecureSkipVerifyS
+ *out = new(bool)
+ **out = **in
+ }
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
@@ -5261,6 +5350,17 @@ func (in *VMProbeSpec) DeepCopyInto(out *VMProbeSpec) {
}
}
}
+ if in.MetricRelabelConfigsS != nil {
+ in, out := &in.MetricRelabelConfigsS, &out.MetricRelabelConfigsS
+ *out = make([]*RelabelConfig, len(*in))
+ for i := range *in {
+ if (*in)[i] != nil {
+ in, out := &(*in)[i], &(*out)[i]
+ *out = new(RelabelConfig)
+ (*in).DeepCopyInto(*out)
+ }
+ }
+ }
in.EndpointAuth.DeepCopyInto(&out.EndpointAuth)
in.EndpointScrapeParams.DeepCopyInto(&out.EndpointScrapeParams)
}
diff --git a/config/crd/overlay/crd.yaml b/config/crd/overlay/crd.yaml
index 45d26e4b..12cac289 100644
--- a/config/crd/overlay/crd.yaml
+++ b/config/crd/overlay/crd.yaml
@@ -1059,7 +1059,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -1127,6 +1127,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerToken:
description: Bearer token for accessing apiserver.
@@ -1141,156 +1146,7 @@ spec:
type: string
tlsConfig:
description: TLSConfig Config to use for accessing apiserver.
- properties:
- ca:
- description: Stuct containing the CA cert to use for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use for
- the targets.
- type: string
- cert:
- description: Struct containing the client cert file for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
required:
- host
type: object
@@ -2967,6 +2823,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerTokenSecret:
description: Optional bearer auth token to use for -remoteWrite.url
@@ -3089,106 +2950,7 @@ spec:
type: string
oauth2:
description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2
- client id
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret
- file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
sendTimeout:
description: Timeout for sending a single block of data to -remoteWrite.url
(default 1m0s)
@@ -3515,163 +3277,13 @@ spec:
tlsConfig:
description: TLSConfig describes tls configuration for remote
write target
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
- url:
- description: URL of the endpoint to send samples to.
- type: string
- urlRelabelConfig:
- description: ConfigMap with relabeling config which is applied
- to metrics before sending them to the corresponding -remoteWrite.url
+ x-kubernetes-preserve-unknown-fields: true
+ url:
+ description: URL of the endpoint to send samples to.
+ type: string
+ urlRelabelConfig:
+ description: ConfigMap with relabeling config which is applied
+ to metrics before sending them to the corresponding -remoteWrite.url
properties:
key:
description: The key to select.
@@ -5647,7 +5259,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -5715,6 +5327,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token_file:
description: BearerTokenFile defines filename for
@@ -5749,272 +5366,13 @@ spec:
oauth2:
description: OAuth2 client credentials used to fetch
a token for the targets.
- properties:
- client_id:
- description: The secret or configmap containing
- the OAuth2 client id
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2
- client secret
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for
- client secret file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token
- URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token
- request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
proxyURL:
description: Optional proxy URL.
type: string
tls_config:
description: TLS configuration for the client.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert
- file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key
- file for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
message:
description: The message body template
@@ -6159,159 +5517,7 @@ spec:
type: string
tls_config:
description: TLS configuration
- properties:
- ca:
- description: Stuct containing the CA cert to use for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file
- for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
to:
description: The email address to send notifications to.
type: string
@@ -6353,7 +5559,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -6421,6 +5627,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token_file:
description: BearerTokenFile defines filename for
@@ -6455,272 +5666,13 @@ spec:
oauth2:
description: OAuth2 client credentials used to fetch
a token for the targets.
- properties:
- client_id:
- description: The secret or configmap containing
- the OAuth2 client id
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2
- client secret
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for
- client secret file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token
- URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token
- request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
proxyURL:
description: Optional proxy URL.
type: string
tls_config:
description: TLS configuration for the client.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert
- file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key
- file for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
send_resolved:
description: SendResolved controls notify about resolved
@@ -7321,7 +6273,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -7389,6 +6341,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token_file:
description: BearerTokenFile defines filename for
@@ -7423,272 +6380,13 @@ spec:
oauth2:
description: OAuth2 client credentials used to fetch
a token for the targets.
- properties:
- client_id:
- description: The secret or configmap containing
- the OAuth2 client id
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2
- client secret
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for
- client secret file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token
- URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token
- request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
proxyURL:
description: Optional proxy URL.
type: string
tls_config:
description: TLS configuration for the client.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert
- file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key
- file for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
message:
description: The message content of the SNS notification.
@@ -7932,7 +6630,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -8000,6 +6698,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token_file:
description: BearerTokenFile defines filename for
@@ -8034,272 +6737,13 @@ spec:
oauth2:
description: OAuth2 client credentials used to fetch
a token for the targets.
- properties:
- client_id:
- description: The secret or configmap containing
- the OAuth2 client id
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2
- client secret
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for
- client secret file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token
- URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token
- request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
proxyURL:
description: Optional proxy URL.
type: string
tls_config:
description: TLS configuration for the client.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert
- file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key
- file for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
message_type:
description: Describes the behavior of the alert (CRITICAL,
@@ -8365,7 +6809,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -8433,6 +6877,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token_file:
description: BearerTokenFile defines filename for
@@ -8467,272 +6916,13 @@ spec:
oauth2:
description: OAuth2 client credentials used to fetch
a token for the targets.
- properties:
- client_id:
- description: The secret or configmap containing
- the OAuth2 client id
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2
- client secret
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for
- client secret file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token
- URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token
- request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
proxyURL:
description: Optional proxy URL.
type: string
tls_config:
description: TLS configuration for the client.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert
- file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key
- file for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
message:
description: The message body template
@@ -8883,7 +7073,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -8951,6 +7141,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token_file:
description: BearerTokenFile defines filename for
@@ -8985,272 +7180,13 @@ spec:
oauth2:
description: OAuth2 client credentials used to fetch
a token for the targets.
- properties:
- client_id:
- description: The secret or configmap containing
- the OAuth2 client id
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2
- client secret
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for
- client secret file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token
- URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token
- request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ x-kubernetes-preserve-unknown-fields: true
proxyURL:
description: Optional proxy URL.
type: string
tls_config:
description: TLS configuration for the client.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert
- file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to
- use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use
- for the targets.
- properties:
- key:
- description: The key of the secret to
- select from. Must be a valid secret
- key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key
- file for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
message:
description: API request data as defined by the WeChat
@@ -11978,6 +9914,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerTokenFile:
description: Path to bearer token file
@@ -12018,44 +9959,222 @@ spec:
type: array
oauth2:
description: OAuth2 defines OAuth2 configuration
- required:
- - client_id
- - token_url
- type: object
- x-kubernetes-preserve-unknown-fields: true
- tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- type: object
- x-kubernetes-preserve-unknown-fields: true
- url:
- description: Victoria Metrics or VMSelect url. Required parameter.
- E.g. http://127.0.0.1:8428
- type: string
- required:
- - url
- type: object
- disableSelfServiceScrape:
- description: |-
- DisableSelfServiceScrape controls creation of VMServiceScrape by operator
- for the application.
- Has priority over `VM_DISABLESELFSERVICESCRAPECREATION` operator env variable
- type: boolean
- dnsConfig:
- description: |-
- Specifies the DNS parameters of a pod.
- Parameters specified here will be merged to the generated DNS
- configuration based on DNSPolicy.
- items:
- x-kubernetes-preserve-unknown-fields: true
- properties:
- nameservers:
- description: |-
- A list of DNS name server IP addresses.
- This will be appended to the base nameservers generated from DNSPolicy.
- Duplicated nameservers will be removed.
- items:
- type: string
- type: array
+ properties:
+ client_id:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ client_secret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ client_secret_file:
+ description: ClientSecretFile defines path for client secret
+ file.
+ type: string
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ x-kubernetes-preserve-unknown-fields: true
+ url:
+ description: Victoria Metrics or VMSelect url. Required parameter.
+ E.g. http://127.0.0.1:8428
+ type: string
+ required:
+ - url
+ type: object
+ disableSelfServiceScrape:
+ description: |-
+ DisableSelfServiceScrape controls creation of VMServiceScrape by operator
+ for the application.
+ Has priority over `VM_DISABLESELFSERVICESCRAPECREATION` operator env variable
+ type: boolean
+ dnsConfig:
+ description: |-
+ Specifies the DNS parameters of a pod.
+ Parameters specified here will be merged to the generated DNS
+ configuration based on DNSPolicy.
+ items:
+ x-kubernetes-preserve-unknown-fields: true
+ properties:
+ nameservers:
+ description: |-
+ A list of DNS name server IP addresses.
+ This will be appended to the base nameservers generated from DNSPolicy.
+ Duplicated nameservers will be removed.
+ items:
+ type: string
+ type: array
x-kubernetes-list-type: atomic
options:
description: |-
@@ -12378,6 +10497,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerTokenFile:
description: Path to bearer token file
@@ -12418,70 +10542,249 @@ spec:
type: array
oauth2:
description: OAuth2 defines OAuth2 configuration
- required:
- - client_id
- - token_url
- type: object
- x-kubernetes-preserve-unknown-fields: true
- selector:
- description: |-
- Selector allows service discovery for alertmanager
- in this case all matched vmalertmanager replicas will be added into vmalert notifier.url
- as statefulset pod.fqdn
properties:
- labelSelector:
- description: |-
- A label selector is a label query over a set of resources. The result of matchLabels and
- matchExpressions are ANDed. An empty label selector matches all objects. A null
- label selector matches no objects.
+ client_id:
+ description: The secret or configmap containing the OAuth2
+ client id
properties:
- matchExpressions:
- description: matchExpressions is a list of label selector
- requirements. The requirements are ANDed.
- items:
- description: |-
- A label selector requirement is a selector that contains values, a key, and an operator that
- relates the key and values.
- properties:
- key:
- description: key is the label key that the selector
- applies to.
- type: string
- operator:
- description: |-
- operator represents a key's relationship to a set of values.
- Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
- description: |-
- values is an array of string values. If the operator is In or NotIn,
- the values array must be non-empty. If the operator is Exists or DoesNotExist,
- the values array must be empty. This array is replaced during a strategic
- merge patch.
- items:
- type: string
- type: array
- x-kubernetes-list-type: atomic
- required:
- - key
- - operator
- type: object
- type: array
- x-kubernetes-list-type: atomic
- matchLabels:
- additionalProperties:
- type: string
- description: |-
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
- map is equivalent to an element of matchExpressions, whose key field is "key", the
- operator is "In", and the values array contains only "value". The requirements are ANDed.
- type: object
- type: object
- x-kubernetes-map-type: atomic
- namespaceSelector:
- description: |-
- NamespaceSelector is a selector for selecting either all namespaces or a
- list of namespaces.
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ client_secret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ client_secret_file:
+ description: ClientSecretFile defines path for client secret
+ file.
+ type: string
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ selector:
+ description: |-
+ Selector allows service discovery for alertmanager
+ in this case all matched vmalertmanager replicas will be added into vmalert notifier.url
+ as statefulset pod.fqdn
+ properties:
+ labelSelector:
+ description: |-
+ A label selector is a label query over a set of resources. The result of matchLabels and
+ matchExpressions are ANDed. An empty label selector matches all objects. A null
+ label selector matches no objects.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector
+ requirements. The requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
+ description: |-
+ values is an array of string values. If the operator is In or NotIn,
+ the values array must be non-empty. If the operator is Exists or DoesNotExist,
+ the values array must be empty. This array is replaced during a strategic
+ merge patch.
+ items:
+ type: string
+ type: array
+ x-kubernetes-list-type: atomic
+ required:
+ - key
+ - operator
+ type: object
+ type: array
+ x-kubernetes-list-type: atomic
+ matchLabels:
+ additionalProperties:
+ type: string
+ description: |-
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+ map is equivalent to an element of matchExpressions, whose key field is "key", the
+ operator is "In", and the values array contains only "value". The requirements are ANDed.
+ type: object
+ type: object
+ x-kubernetes-map-type: atomic
+ namespaceSelector:
+ description: |-
+ NamespaceSelector is a selector for selecting either all namespaces or a
+ list of namespaces.
properties:
any:
description: |-
@@ -12496,8 +10799,6 @@ spec:
type: object
type: object
tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- type: object
x-kubernetes-preserve-unknown-fields: true
url:
description: AlertManager url. E.g. http://127.0.0.1:9093
@@ -12598,6 +10899,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerTokenFile:
description: Path to bearer token file
@@ -12638,41 +10944,220 @@ spec:
type: array
oauth2:
description: OAuth2 defines OAuth2 configuration
- required:
- - client_id
- - token_url
- type: object
- x-kubernetes-preserve-unknown-fields: true
- selector:
- description: |-
- Selector allows service discovery for alertmanager
- in this case all matched vmalertmanager replicas will be added into vmalert notifier.url
- as statefulset pod.fqdn
properties:
- labelSelector:
- description: |-
- A label selector is a label query over a set of resources. The result of matchLabels and
- matchExpressions are ANDed. An empty label selector matches all objects. A null
- label selector matches no objects.
+ client_id:
+ description: The secret or configmap containing the OAuth2
+ client id
properties:
- matchExpressions:
- description: matchExpressions is a list of label selector
- requirements. The requirements are ANDed.
- items:
- description: |-
- A label selector requirement is a selector that contains values, a key, and an operator that
- relates the key and values.
- properties:
- key:
- description: key is the label key that the selector
- applies to.
- type: string
- operator:
- description: |-
- operator represents a key's relationship to a set of values.
- Valid operators are In, NotIn, Exists and DoesNotExist.
- type: string
- values:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ client_secret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ client_secret_file:
+ description: ClientSecretFile defines path for client secret
+ file.
+ type: string
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ selector:
+ description: |-
+ Selector allows service discovery for alertmanager
+ in this case all matched vmalertmanager replicas will be added into vmalert notifier.url
+ as statefulset pod.fqdn
+ properties:
+ labelSelector:
+ description: |-
+ A label selector is a label query over a set of resources. The result of matchLabels and
+ matchExpressions are ANDed. An empty label selector matches all objects. A null
+ label selector matches no objects.
+ properties:
+ matchExpressions:
+ description: matchExpressions is a list of label selector
+ requirements. The requirements are ANDed.
+ items:
+ description: |-
+ A label selector requirement is a selector that contains values, a key, and an operator that
+ relates the key and values.
+ properties:
+ key:
+ description: key is the label key that the selector
+ applies to.
+ type: string
+ operator:
+ description: |-
+ operator represents a key's relationship to a set of values.
+ Valid operators are In, NotIn, Exists and DoesNotExist.
+ type: string
+ values:
description: |-
values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
@@ -12716,8 +11201,6 @@ spec:
type: object
type: object
tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- type: object
x-kubernetes-preserve-unknown-fields: true
url:
description: AlertManager url. E.g. http://127.0.0.1:9093
@@ -12884,6 +11367,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerTokenFile:
description: Path to bearer token file
@@ -12929,58 +11417,235 @@ spec:
type: string
oauth2:
description: OAuth2 defines OAuth2 configuration
- required:
- - client_id
- - token_url
- type: object
- x-kubernetes-preserve-unknown-fields: true
- tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- type: object
- x-kubernetes-preserve-unknown-fields: true
- url:
- description: URL of the endpoint to send samples to.
- type: string
- required:
- - url
- type: object
- remoteWrite:
- description: |-
- RemoteWrite Optional URL to remote-write compatible storage to persist
- vmalert state and rule results to.
- Rule results will be persisted according to each rule.
- Alerts state will be persisted in the form of time series named ALERTS and ALERTS_FOR_STATE
- see -remoteWrite.url docs in vmalerts for details.
- E.g. http://127.0.0.1:8428
- properties:
- basicAuth:
- description: BasicAuth allow an endpoint to authenticate over
- basic authentication
properties:
- password:
- description: |-
- Password defines reference for secret with password value
- The secret needs to be in the same namespace as scrape object
+ client_id:
+ description: The secret or configmap containing the OAuth2
+ client id
properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ client_secret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ client_secret_file:
+ description: ClientSecretFile defines path for client secret
+ file.
+ type: string
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ tlsConfig:
+ x-kubernetes-preserve-unknown-fields: true
+ url:
+ description: URL of the endpoint to send samples to.
+ type: string
+ required:
+ - url
+ type: object
+ remoteWrite:
+ description: |-
+ RemoteWrite Optional URL to remote-write compatible storage to persist
+ vmalert state and rule results to.
+ Rule results will be persisted according to each rule.
+ Alerts state will be persisted in the form of time series named ALERTS and ALERTS_FOR_STATE
+ see -remoteWrite.url docs in vmalerts for details.
+ E.g. http://127.0.0.1:8428
+ properties:
+ basicAuth:
+ description: BasicAuth allow an endpoint to authenticate over
+ basic authentication
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
type: object
x-kubernetes-map-type: atomic
password_file:
@@ -13014,6 +11679,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearerTokenFile:
description: Path to bearer token file
@@ -13074,58 +11744,235 @@ spec:
type: integer
oauth2:
description: OAuth2 defines OAuth2 configuration
- required:
- - client_id
- - token_url
- type: object
- x-kubernetes-preserve-unknown-fields: true
- tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- type: object
- x-kubernetes-preserve-unknown-fields: true
- url:
- description: URL of the endpoint to send samples to.
- type: string
- required:
- - url
- type: object
- replicaCount:
- description: ReplicaCount is the expected size of the Application.
- format: int32
- type: integer
- resources:
- description: |-
- Resources container resource request and limits, https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- if not defined default resources from operator config will be used
- properties:
- claims:
- description: |-
- Claims lists the names of resources, defined in spec.resourceClaims,
- that are used by this container.
-
- This is an alpha field and requires enabling the
- DynamicResourceAllocation feature gate.
-
- This field is immutable. It can only be set for containers.
- items:
- description: ResourceClaim references one entry in PodSpec.ResourceClaims.
- properties:
- name:
- description: |-
- Name must match the name of one entry in pod.spec.resourceClaims of
- the Pod where this field is used. It makes that resource available
- inside a container.
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
- limits:
- additionalProperties:
- anyOf:
+ properties:
+ client_id:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ client_secret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ client_secret_file:
+ description: ClientSecretFile defines path for client secret
+ file.
+ type: string
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ tlsConfig:
+ x-kubernetes-preserve-unknown-fields: true
+ url:
+ description: URL of the endpoint to send samples to.
+ type: string
+ required:
+ - url
+ type: object
+ replicaCount:
+ description: ReplicaCount is the expected size of the Application.
+ format: int32
+ type: integer
+ resources:
+ description: |-
+ Resources container resource request and limits, https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
+ if not defined default resources from operator config will be used
+ properties:
+ claims:
+ description: |-
+ Claims lists the names of resources, defined in spec.resourceClaims,
+ that are used by this container.
+
+ This is an alpha field and requires enabling the
+ DynamicResourceAllocation feature gate.
+
+ This field is immutable. It can only be set for containers.
+ items:
+ description: ResourceClaim references one entry in PodSpec.ResourceClaims.
+ properties:
+ name:
+ description: |-
+ Name must match the name of one entry in pod.spec.resourceClaims of
+ the Pod where this field is used. It makes that resource available
+ inside a container.
+ type: string
+ required:
+ - name
+ type: object
+ type: array
+ x-kubernetes-list-map-keys:
+ - name
+ x-kubernetes-list-type: map
+ limits:
+ additionalProperties:
+ anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
@@ -14611,153 +13458,7 @@ spec:
format: int64
type: integer
tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use for the
- targets.
- type: string
- cert:
- description: Struct containing the client cert file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container for
- the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container for
- the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
tolerations:
description: Tolerations If specified, the pod's tolerations.
items:
@@ -19243,14 +17944,14 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
description: Type of authorization, default to bearer
type: string
type: object
- basicAuth:
+ basic_auth:
description: BasicAuth allow an endpoint to authenticate over basic
authentication
properties:
@@ -19311,16 +18012,112 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
- bearerTokenFile:
+ basicAuth:
+ description: BasicAuthS alias for BasicAuth
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must be
+ a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be
+ defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
+ type: string
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must be
+ a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be
+ defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token_file:
description: File to read bearer token for scraping targets.
type: string
- bearerTokenSecret:
+ bearer_token_secret:
description: |-
Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator.
- nullable: true
+ properties:
+ key:
+ description: The key of the secret to select from. Must be a
+ valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ bearerTokenFile:
+ description: BearerTokenFileS alias for BearerTokenFile
+ type: string
+ bearerTokenSecret:
+ description: BearerTokenSecretS alias for BearerTokenSecret
properties:
key:
description: The key of the secret to select from. Must be a
@@ -19345,10 +18142,21 @@ spec:
follow_redirects:
description: FollowRedirects controls redirects for scraping.
type: boolean
- honorLabels:
+ followRedirects:
+ description: FollowRedirects controls redirects for scraping.
+ type: boolean
+ honor_labels:
description: HonorLabels chooses the metric's labels on collisions
with target labels.
type: boolean
+ honor_timestamps:
+ description: HonorTimestamps controls whether vmagent respects the
+ timestamps present in scraped data.
+ type: boolean
+ honorLabels:
+ description: HonorLabelsS chooses the metric's labels on collisions
+ with target labels.
+ type: boolean
honorTimestamps:
description: HonorTimestamps controls whether vmagent respects the
timestamps present in scraped data.
@@ -19363,7 +18171,7 @@ spec:
description: MaxScrapeSize defines a maximum size of scraped data
for a job
type: string
- metricRelabelConfigs:
+ metric_relabel_configs:
description: MetricRelabelConfigs to apply to samples after scrapping.
items:
description: |-
@@ -19439,106 +18247,93 @@ spec:
type: string
type: object
type: array
- oauth2:
- description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2 client
- id
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ metricRelabelConfigs:
+ description: MetricRelabelConfigsS alias for MetricRelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching. Default
+ is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression (or list
+ of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret file.
- type: string
- endpoint_params:
- additionalProperties:
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
+ modulus:
+ description: Modulus to take of the hash of the source label
+ values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ separator:
+ description: Separator placed between concatenated source label
+ values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ metrics_path:
+ description: |-
+ HTTP path to scrape for metrics.
+ alias for Path
+ type: string
+ metricsPath:
+ description: MetricsPathS alias for Path
+ type: string
+ oauth2:
+ description: OAuth2 defines auth configuration
+ x-kubernetes-preserve-unknown-fields: true
params:
additionalProperties:
items:
@@ -19552,11 +18347,15 @@ spec:
port:
description: Name of the port exposed at Node.
type: string
- proxyURL:
+ proxy_url:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes to
proxy through this endpoint.
type: string
- relabelConfigs:
+ proxyUrl:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes to
+ proxy through this endpoint.
+ type: string
+ relabel_configs:
description: RelabelConfigs to apply to samples during service discovery.
items:
description: |-
@@ -19632,6 +18431,87 @@ spec:
type: string
type: object
type: array
+ relabelConfigs:
+ description: RelabelConfigsS alias ofr RelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching. Default
+ is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression (or list
+ of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
+ type: string
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source label
+ values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source label
+ values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ sample_limit:
+ description: SampleLimit defines per-scrape limit on number of scraped
+ samples that will be accepted.
+ format: int64
+ type: integer
sampleLimit:
description: SampleLimit defines per-scrape limit on number of scraped
samples that will be accepted.
@@ -19642,15 +18522,24 @@ spec:
enum:
- http
- https
+ - HTTPS
+ - HTTP
type: string
scrape_interval:
description: |-
ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used
type: string
- scrapeTimeout:
+ scrape_timeout:
description: Timeout after which the scrape is ended
type: string
+ scrapeInterval:
+ description: ScrapeIntervalS is the same as ScrapeInterval and has
+ priority over it.
+ type: string
+ scrapeTimeout:
+ description: ScrapeTimeoutS after which the scrape is ended
+ type: string
selector:
description: Selector to select kubernetes Nodes.
properties:
@@ -19697,6 +18586,12 @@ spec:
type: object
type: object
x-kubernetes-map-type: atomic
+ series_limit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
seriesLimit:
description: |-
SeriesLimit defines per-scrape limit on number of unique time series
@@ -19709,192 +18604,81 @@ spec:
items:
type: string
type: array
- tlsConfig:
+ tls_config:
description: TLSConfig configuration to use when scraping the endpoint
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ description: TLSConfigS alias for TLSConfig
+ x-kubernetes-preserve-unknown-fields: true
+ vm_scrape_params:
+ description: VMScrapeParams defines VictoriaMetrics specific scrape
+ parameters
properties:
- ca:
- description: Stuct containing the CA cert to use for the targets.
+ disable_compression:
+ description: DisableCompression
+ type: boolean
+ disable_keep_alive:
+ description: |-
+ disable_keepalive allows disabling HTTP keep-alive when scraping targets.
+ By default, HTTP keep-alive is enabled, so TCP connections to scrape targets
+ could be re-used.
+ See https://docs.victoriametrics.com/vmagent#scrape_config-enhancements
+ type: boolean
+ headers:
+ description: |-
+ Headers allows sending custom headers to scrape targets
+ must be in of semicolon separated header with it's value
+ eg:
+ headerName: headerValue
+ vmagent supports since 1.79.0 version
+ items:
+ type: string
+ type: array
+ no_stale_markers:
+ type: boolean
+ proxy_client_config:
+ description: |-
+ ProxyClientConfig configures proxy auth settings for scraping
+ See feature description https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy
properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
+ basic_auth:
+ description: BasicAuth allow an endpoint to authenticate over
+ basic authentication
properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
+ password:
description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ password_file:
description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use for the
- targets.
- type: string
- cert:
- description: Struct containing the client cert file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container for
- the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container for
- the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
- vm_scrape_params:
- description: VMScrapeParams defines VictoriaMetrics specific scrape
- parameters
- properties:
- disable_compression:
- description: DisableCompression
- type: boolean
- disable_keep_alive:
- description: |-
- disable_keepalive allows disabling HTTP keep-alive when scraping targets.
- By default, HTTP keep-alive is enabled, so TCP connections to scrape targets
- could be re-used.
- See https://docs.victoriametrics.com/vmagent#scrape_config-enhancements
- type: boolean
- headers:
- description: |-
- Headers allows sending custom headers to scrape targets
- must be in of semicolon separated header with it's value
- eg:
- headerName: headerValue
- vmagent supports since 1.79.0 version
- items:
- type: string
- type: array
- no_stale_markers:
- type: boolean
- proxy_client_config:
- description: |-
- ProxyClientConfig configures proxy auth settings for scraping
- See feature description https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy
- properties:
- basic_auth:
- description: BasicAuth allow an endpoint to authenticate over
- basic authentication
- properties:
- password:
+ username:
description: |-
- Password defines reference for secret with password value
+ Username defines reference for secret with username value
The secret needs to be in the same namespace as scrape object
properties:
key:
@@ -19918,37 +18702,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- password_file:
+ username_file:
description: |-
- PasswordFile defines path to password file at disk
+ UsernameFile defines path to username file at disk
must be pre-mounted
type: string
- username:
- description: |-
- Username defines reference for secret with username value
- The secret needs to be in the same namespace as scrape object
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
type: object
bearer_token:
description: SecretKeySelector selects a key of a Secret.
@@ -19977,160 +18735,7 @@ spec:
bearer_token_file:
type: string
tls_config:
- description: TLSConfig specifies TLSConfig configuration parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
scrape_align_interval:
type: string
@@ -20281,14 +18886,14 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
description: Type of authorization, default to bearer
type: string
type: object
- basicAuth:
+ basic_auth:
description: BasicAuth allow an endpoint to authenticate over
basic authentication
properties:
@@ -20349,16 +18954,113 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
- bearerTokenFile:
+ basicAuth:
+ description: BasicAuthS alias for BasicAuth
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
+ type: string
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token_file:
description: File to read bearer token for scraping targets.
type: string
- bearerTokenSecret:
+ bearer_token_secret:
description: |-
Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator.
- nullable: true
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ bearerTokenFile:
+ description: BearerTokenFileS alias for BearerTokenFile
+ type: string
+ bearerTokenSecret:
+ description: BearerTokenSecretS alias for BearerTokenSecret
properties:
key:
description: The key of the secret to select from. Must
@@ -20390,10 +19092,21 @@ spec:
follow_redirects:
description: FollowRedirects controls redirects for scraping.
type: boolean
- honorLabels:
+ followRedirects:
+ description: FollowRedirects controls redirects for scraping.
+ type: boolean
+ honor_labels:
description: HonorLabels chooses the metric's labels on collisions
with target labels.
type: boolean
+ honor_timestamps:
+ description: HonorTimestamps controls whether vmagent respects
+ the timestamps present in scraped data.
+ type: boolean
+ honorLabels:
+ description: HonorLabelsS chooses the metric's labels on collisions
+ with target labels.
+ type: boolean
honorTimestamps:
description: HonorTimestamps controls whether vmagent respects
the timestamps present in scraped data.
@@ -20405,7 +19118,7 @@ spec:
description: MaxScrapeSize defines a maximum size of scraped
data for a job
type: string
- metricRelabelConfigs:
+ metric_relabel_configs:
description: MetricRelabelConfigs to apply to samples after
scrapping.
items:
@@ -20482,128 +19195,8 @@ spec:
type: string
type: object
type: array
- oauth2:
- description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2
- client id
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret
- file.
- type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
- params:
- additionalProperties:
- items:
- type: string
- type: array
- description: Optional HTTP URL parameters
- type: object
- path:
- description: HTTP path to scrape for metrics.
- type: string
- port:
- description: Name of the port exposed at Pod.
- type: string
- proxyURL:
- description: ProxyURL eg http://proxyserver:2195 Directs scrapes
- to proxy through this endpoint.
- type: string
- relabelConfigs:
- description: RelabelConfigs to apply to samples during service
- discovery.
+ metricRelabelConfigs:
+ description: MetricRelabelConfigsS alias for MetricRelabelConfigs
items:
description: |-
RelabelConfig allows dynamic rewriting of the label set
@@ -20678,193 +19271,251 @@ spec:
type: string
type: object
type: array
- sampleLimit:
- description: SampleLimit defines per-scrape limit on number
- of scraped samples that will be accepted.
- format: int64
- type: integer
- scheme:
- description: HTTP scheme to use for scraping.
- enum:
- - http
- - https
- type: string
- scrape_interval:
+ metrics_path:
description: |-
- ScrapeInterval is the same as Interval and has priority over it.
- one of scrape_interval or interval can be used
+ HTTP path to scrape for metrics.
+ alias for Path
type: string
- scrapeTimeout:
- description: Timeout after which the scrape is ended
+ metricsPath:
+ description: MetricsPathS alias for Path
type: string
- seriesLimit:
- description: |-
- SeriesLimit defines per-scrape limit on number of unique time series
- a single target can expose during all the scrapes on the time window of 24h.
- format: int64
- type: integer
- targetPort:
- anyOf:
- - type: integer
- - type: string
- description: |-
- TargetPort
- Name or number of the pod port this endpoint refers to. Mutually exclusive with port.
- x-kubernetes-int-or-string: true
- tlsConfig:
- description: TLSConfig configuration to use when scraping the
- endpoint
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
+ oauth2:
+ description: OAuth2 defines auth configuration
+ x-kubernetes-preserve-unknown-fields: true
+ params:
+ additionalProperties:
+ items:
type: string
- keySecret:
- description: Secret containing the client key file for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
+ type: array
+ description: Optional HTTP URL parameters
+ type: object
+ path:
+ description: HTTP path to scrape for metrics.
+ type: string
+ port:
+ description: Name of the port exposed at Pod.
+ type: string
+ proxy_url:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes
+ to proxy through this endpoint.
+ type: string
+ proxyUrl:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes
+ to proxy through this endpoint.
+ type: string
+ relabel_configs:
+ description: RelabelConfigs to apply to samples during service
+ discovery.
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching.
+ Default is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ relabelConfigs:
+ description: RelabelConfigsS alias ofr RelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching.
+ Default is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
+ type: string
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ sample_limit:
+ description: SampleLimit defines per-scrape limit on number
+ of scraped samples that will be accepted.
+ format: int64
+ type: integer
+ sampleLimit:
+ description: SampleLimit defines per-scrape limit on number
+ of scraped samples that will be accepted.
+ format: int64
+ type: integer
+ scheme:
+ description: HTTP scheme to use for scraping.
+ enum:
+ - http
+ - https
+ - HTTPS
+ - HTTP
+ type: string
+ scrape_interval:
+ description: |-
+ ScrapeInterval is the same as Interval and has priority over it.
+ one of scrape_interval or interval can be used
+ type: string
+ scrape_timeout:
+ description: Timeout after which the scrape is ended
+ type: string
+ scrapeInterval:
+ description: ScrapeIntervalS is the same as ScrapeInterval and
+ has priority over it.
+ type: string
+ scrapeTimeout:
+ description: ScrapeTimeoutS after which the scrape is ended
+ type: string
+ series_limit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
+ seriesLimit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
+ targetPort:
+ anyOf:
+ - type: integer
+ - type: string
+ description: |-
+ TargetPort
+ Name or number of the pod port this endpoint refers to. Mutually exclusive with port.
+ x-kubernetes-int-or-string: true
+ tls_config:
+ description: TLSConfig configuration to use when scraping the
+ endpoint
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ description: TLSConfigS alias for TLSConfig
+ x-kubernetes-preserve-unknown-fields: true
vm_scrape_params:
description: VMScrapeParams defines VictoriaMetrics specific
scrape parameters
@@ -20919,201 +19570,22 @@ spec:
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- password_file:
- description: |-
- PasswordFile defines path to password file at disk
- must be pre-mounted
- type: string
- username:
- description: |-
- Username defines reference for secret with username value
- The secret needs to be in the same namespace as scrape object
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- bearer_token:
- description: SecretKeySelector selects a key of a Secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- bearer_token_file:
- type: string
- tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
+ description: Specify whether the Secret or its
+ key must be defined
+ type: boolean
+ required:
+ - key
type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
type: string
- keySecret:
- description: Secret containing the client key file
- for the targets.
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
properties:
key:
description: The key of the secret to select
@@ -21136,11 +19608,40 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token:
+ description: SecretKeySelector selects a key of a Secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
type: object
+ x-kubernetes-map-type: atomic
+ bearer_token_file:
+ type: string
+ tls_config:
+ x-kubernetes-preserve-unknown-fields: true
type: object
scrape_align_interval:
type: string
@@ -21314,14 +19815,14 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
description: Type of authorization, default to bearer
type: string
type: object
- basicAuth:
+ basic_auth:
description: BasicAuth allow an endpoint to authenticate over basic
authentication
properties:
@@ -21382,16 +19883,112 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
- bearerTokenFile:
+ basicAuth:
+ description: BasicAuthS alias for BasicAuth
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must be
+ a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be
+ defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
+ type: string
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must be
+ a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be
+ defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token_file:
description: File to read bearer token for scraping targets.
type: string
- bearerTokenSecret:
+ bearer_token_secret:
description: |-
Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator.
- nullable: true
+ properties:
+ key:
+ description: The key of the secret to select from. Must be a
+ valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ bearerTokenFile:
+ description: BearerTokenFileS alias for BearerTokenFile
+ type: string
+ bearerTokenSecret:
+ description: BearerTokenSecretS alias for BearerTokenSecret
properties:
key:
description: The key of the secret to select from. Must be a
@@ -21416,10 +20013,21 @@ spec:
follow_redirects:
description: FollowRedirects controls redirects for scraping.
type: boolean
- honorLabels:
+ followRedirects:
+ description: FollowRedirects controls redirects for scraping.
+ type: boolean
+ honor_labels:
description: HonorLabels chooses the metric's labels on collisions
with target labels.
type: boolean
+ honor_timestamps:
+ description: HonorTimestamps controls whether vmagent respects the
+ timestamps present in scraped data.
+ type: boolean
+ honorLabels:
+ description: HonorLabelsS chooses the metric's labels on collisions
+ with target labels.
+ type: boolean
honorTimestamps:
description: HonorTimestamps controls whether vmagent respects the
timestamps present in scraped data.
@@ -21434,7 +20042,7 @@ spec:
description: MaxScrapeSize defines a maximum size of scraped data
for a job
type: string
- metricRelabelConfigs:
+ metric_relabel_configs:
description: MetricRelabelConfigs to apply to samples after scrapping.
items:
description: |-
@@ -21510,112 +20118,99 @@ spec:
type: string
type: object
type: array
- module:
- description: |-
- The module to use for probing specifying how to probe the target.
- Example module configuring in the blackbox exporter:
- https://github.com/prometheus/blackbox_exporter/blob/master/example.yml
- type: string
- oauth2:
- description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2 client
- id
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
+ metricRelabelConfigs:
+ description: MetricRelabelConfigs to apply to samples after scrapping.
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching. Default
+ is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression (or list
+ of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
+ type: string
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source label
+ values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source label
+ values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret file.
- type: string
- endpoint_params:
- additionalProperties:
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ type: object
+ type: array
+ metrics_path:
+ description: |-
+ HTTP path to scrape for metrics.
+ alias for Path
+ type: string
+ metricsPath:
+ description: MetricsPathS alias for Path
+ type: string
+ module:
+ description: |-
+ The module to use for probing specifying how to probe the target.
+ Example module configuring in the blackbox exporter:
+ https://github.com/prometheus/blackbox_exporter/blob/master/example.yml
+ type: string
+ oauth2:
+ description: OAuth2 defines auth configuration
+ x-kubernetes-preserve-unknown-fields: true
params:
additionalProperties:
items:
@@ -21626,10 +20221,19 @@ spec:
path:
description: HTTP path to scrape for metrics.
type: string
- proxyURL:
+ proxy_url:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes to
proxy through this endpoint.
type: string
+ proxyUrl:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes to
+ proxy through this endpoint.
+ type: string
+ sample_limit:
+ description: SampleLimit defines per-scrape limit on number of scraped
+ samples that will be accepted.
+ format: int64
+ type: integer
sampleLimit:
description: SampleLimit defines per-scrape limit on number of scraped
samples that will be accepted.
@@ -21640,15 +20244,30 @@ spec:
enum:
- http
- https
+ - HTTPS
+ - HTTP
type: string
scrape_interval:
description: |-
ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used
type: string
- scrapeTimeout:
+ scrape_timeout:
description: Timeout after which the scrape is ended
type: string
+ scrapeInterval:
+ description: ScrapeIntervalS is the same as ScrapeInterval and has
+ priority over it.
+ type: string
+ scrapeTimeout:
+ description: ScrapeTimeoutS after which the scrape is ended
+ type: string
+ series_limit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
seriesLimit:
description: |-
SeriesLimit defines per-scrape limit on number of unique time series
@@ -21824,228 +20443,86 @@ spec:
Default is 'replace'
type: string
if:
- description: 'If represents metricsQL match expression
- (or list of expressions): ''{__name__=~"foo_.*"}'''
- x-kubernetes-preserve-unknown-fields: true
- labels:
- additionalProperties:
- type: string
- description: 'Labels is used together with Match for
- `action: graphite`'
- type: object
- match:
- description: 'Match is used together with Labels for
- `action: graphite`'
- type: string
- modulus:
- description: Modulus to take of the hash of the source
- label values.
- format: int64
- type: integer
- regex:
- description: |-
- Regular expression against which the extracted value is matched. Default is '(.*)'
- victoriaMetrics supports multiline regex joined with |
- https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
- x-kubernetes-preserve-unknown-fields: true
- replacement:
- description: |-
- Replacement value against which a regex replace is performed if the
- regular expression matches. Regex capture groups are available. Default is '$1'
- type: string
- separator:
- description: Separator placed between concatenated source
- label values. default is ';'.
- type: string
- source_labels:
- description: |-
- UnderScoreSourceLabels - additional form of source labels source_labels
- for compatibility with original relabel config.
- if set both sourceLabels and source_labels, sourceLabels has priority.
- for details https://github.com/VictoriaMetrics/operator/issues/131
- items:
- type: string
- type: array
- sourceLabels:
- description: |-
- The source labels select values from existing labels. Their content is concatenated
- using the configured separator and matched against the configured regular expression
- for the replace, keep, and drop actions.
- items:
- type: string
- type: array
- target_label:
- description: |-
- UnderScoreTargetLabel - additional form of target label - target_label
- for compatibility with original relabel config.
- if set both targetLabel and target_label, targetLabel has priority.
- for details https://github.com/VictoriaMetrics/operator/issues/131
- type: string
- targetLabel:
- description: |-
- Label to which the resulting value is written in a replace action.
- It is mandatory for replace actions. Regex capture groups are available.
- type: string
- type: object
- type: array
- targets:
- description: Targets is a list of URLs to probe using the
- configured prober.
- items:
- type: string
- type: array
- required:
- - targets
- type: object
- type: object
- tlsConfig:
- description: TLSConfig configuration to use when scraping the endpoint
- properties:
- ca:
- description: Stuct containing the CA cert to use for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use for the
- targets.
- type: string
- cert:
- description: Struct containing the client cert file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container for
- the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container for
- the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
+ type: string
+ description: 'Labels is used together with Match for
+ `action: graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for
+ `action: graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ targets:
+ description: Targets is a list of URLs to probe using the
+ configured prober.
+ items:
+ type: string
+ type: array
required:
- - key
+ - targets
type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
type: object
+ tls_config:
+ description: TLSConfig configuration to use when scraping the endpoint
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ description: TLSConfigS alias for TLSConfig
+ x-kubernetes-preserve-unknown-fields: true
vm_scrape_params:
description: VMScrapeParams defines VictoriaMetrics specific scrape
parameters
@@ -22138,6 +20615,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token:
description: SecretKeySelector selects a key of a Secret.
@@ -22166,160 +20648,7 @@ spec:
bearer_token_file:
type: string
tls_config:
- description: TLSConfig specifies TLSConfig configuration parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
scrape_align_interval:
type: string
@@ -22577,7 +20906,7 @@ spec:
type:
description: |-
Type defines datasource type for enterprise version of vmalert
- possible values - prometheus,graphite
+ possible values - prometheus,graphite,vlogs
type: string
required:
- name
@@ -22684,7 +21013,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -22760,9 +21089,75 @@ spec:
- subscriptionID
type: object
type: array
+ basic_auth:
+ description: BasicAuth allow an endpoint to authenticate over basic
+ authentication
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must be
+ a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be
+ defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
+ type: string
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must be
+ a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be
+ defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
basicAuth:
- description: BasicAuth allow an endpoint to authenticate over basic
- authentication
+ description: BasicAuthS alias for BasicAuth
properties:
password:
description: |-
@@ -22821,16 +21216,46 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
- bearerTokenFile:
+ bearer_token_file:
description: File to read bearer token for scraping targets.
type: string
- bearerTokenSecret:
+ bearer_token_secret:
description: |-
Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator.
- nullable: true
+ properties:
+ key:
+ description: The key of the secret to select from. Must be a
+ valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ bearerTokenFile:
+ description: BearerTokenFileS alias for BearerTokenFile
+ type: string
+ bearerTokenSecret:
+ description: BearerTokenSecretS alias for BearerTokenSecret
properties:
key:
description: The key of the secret to select from. Must be a
@@ -22892,7 +21317,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -22959,6 +21384,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
datacenter:
description: Consul Datacenter name, if not provided it will
@@ -23063,11 +21493,93 @@ spec:
description: ClientSecretFile defines path for client secret
file.
type: string
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
+ properties:
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
+ properties:
+ key:
+ description: The key to select.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the ConfigMap or its
+ key must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ secret:
+ description: Secret containing data to use for the targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ type: object
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
endpoint_params:
additionalProperties:
type: string
description: Parameters to append to the token URL
type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
scopes:
description: OAuth2 scopes used for the token request
items:
@@ -23075,11 +21587,13 @@ spec:
type: array
token_url:
description: The URL to fetch the token from
- minLength: 1
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
type: string
required:
+ - clientId
- client_id
- - token_url
type: object
partition:
description: Admin Partitions are only supported in Consul Enterprise.
@@ -23150,6 +21664,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token:
description: SecretKeySelector selects a key of a Secret.
@@ -23161,178 +21680,24 @@ spec:
name:
default: ""
description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- bearer_token_file:
- type: string
- tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to
- use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
type: object
+ x-kubernetes-map-type: atomic
+ bearer_token_file:
+ type: string
+ tls_config:
+ x-kubernetes-preserve-unknown-fields: true
type: object
proxyURL:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
@@ -23424,6 +21789,10 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ ca_file:
+ description: Path to the CA cert in the container to use
+ for the targets.
+ type: string
caFile:
description: Path to the CA cert in the container to use
for the targets.
@@ -23481,13 +21850,49 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ cert_file:
+ description: Path to the client cert file in the container
+ for the targets.
+ type: string
certFile:
description: Path to the client cert file in the container
for the targets.
type: string
+ insecure_skip_verify:
+ description: Disable target certificate validation.
+ type: boolean
insecureSkipVerify:
description: Disable target certificate validation.
type: boolean
+ key_file:
+ description: Path to the client key file in the container
+ for the targets.
+ type: string
+ key_secret:
+ description: Secret containing the client key file for the
+ targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
keyFile:
description: Path to the client key file in the container
for the targets.
@@ -23517,6 +21922,9 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ server_name:
+ description: Used to verify the hostname for the targets.
+ type: string
serverName:
description: Used to verify the hostname for the targets.
type: string
@@ -23586,7 +21994,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -23681,44 +22089,16 @@ spec:
description: ClientSecretFile defines path for client secret
file.
type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
- port:
- description: The port to scrape metrics from.
- type: integer
- proxy_client_config:
- description: |-
- ProxyClientConfig configures proxy auth settings for scraping
- See [feature description](https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy)
- properties:
- basic_auth:
- description: BasicAuth allow an endpoint to authenticate
- over basic authentication
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
properties:
- password:
- description: |-
- Password defines reference for secret with password value
- The secret needs to be in the same namespace as scrape object
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
properties:
key:
- description: The key of the secret to select from. Must
- be a valid secret key.
+ description: The key to select.
type: string
name:
default: ""
@@ -23730,22 +22110,15 @@ spec:
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
optional:
- description: Specify whether the Secret or its key
- must be defined
+ description: Specify whether the ConfigMap or its
+ key must be defined
type: boolean
required:
- key
type: object
x-kubernetes-map-type: atomic
- password_file:
- description: |-
- PasswordFile defines path to password file at disk
- must be pre-mounted
- type: string
- username:
- description: |-
- Username defines reference for secret with username value
- The secret needs to be in the same namespace as scrape object
+ secret:
+ description: Secret containing data to use for the targets.
properties:
key:
description: The key of the secret to select from. Must
@@ -23769,8 +22142,8 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
- bearer_token:
- description: SecretKeySelector selects a key of a Secret.
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
properties:
key:
description: The key of the secret to select from. Must
@@ -23793,138 +22166,78 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- bearer_token_file:
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
type: string
- tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ port:
+ description: The port to scrape metrics from.
+ type: integer
+ proxy_client_config:
+ description: |-
+ ProxyClientConfig configures proxy auth settings for scraping
+ See [feature description](https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy)
+ properties:
+ basic_auth:
+ description: BasicAuth allow an endpoint to authenticate
+ over basic authentication
properties:
- ca:
- description: Stuct containing the CA cert to use for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to
- use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
properties:
key:
description: The key of the secret to select from. Must
@@ -23947,10 +22260,40 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token:
+ description: SecretKeySelector selects a key of a Secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
type: object
+ x-kubernetes-map-type: atomic
+ bearer_token_file:
+ type: string
+ tls_config:
+ x-kubernetes-preserve-unknown-fields: true
type: object
proxyURL:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
@@ -24012,6 +22355,10 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ ca_file:
+ description: Path to the CA cert in the container to use
+ for the targets.
+ type: string
caFile:
description: Path to the CA cert in the container to use
for the targets.
@@ -24069,13 +22416,49 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ cert_file:
+ description: Path to the client cert file in the container
+ for the targets.
+ type: string
certFile:
description: Path to the client cert file in the container
for the targets.
type: string
+ insecure_skip_verify:
+ description: Disable target certificate validation.
+ type: boolean
insecureSkipVerify:
description: Disable target certificate validation.
type: boolean
+ key_file:
+ description: Path to the client key file in the container
+ for the targets.
+ type: string
+ key_secret:
+ description: Secret containing the client key file for the
+ targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
keyFile:
description: Path to the client key file in the container
for the targets.
@@ -24105,6 +22488,9 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ server_name:
+ description: Used to verify the hostname for the targets.
+ type: string
serverName:
description: Used to verify the hostname for the targets.
type: string
@@ -24255,6 +22641,9 @@ spec:
follow_redirects:
description: FollowRedirects controls redirects for scraping.
type: boolean
+ followRedirects:
+ description: FollowRedirects controls redirects for scraping.
+ type: boolean
gceSDConfigs:
description: GCESDConfigs defines a list of GCE service discovery
configurations.
@@ -24298,10 +22687,18 @@ spec:
- zone
type: object
type: array
- honorLabels:
+ honor_labels:
description: HonorLabels chooses the metric's labels on collisions
with target labels.
type: boolean
+ honor_timestamps:
+ description: HonorTimestamps controls whether vmagent respects the
+ timestamps present in scraped data.
+ type: boolean
+ honorLabels:
+ description: HonorLabelsS chooses the metric's labels on collisions
+ with target labels.
+ type: boolean
honorTimestamps:
description: HonorTimestamps controls whether vmagent respects the
timestamps present in scraped data.
@@ -24341,7 +22738,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -24408,6 +22805,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
proxy_client_config:
description: |-
@@ -24428,210 +22830,31 @@ spec:
be a valid secret key.
type: string
name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- password_file:
- description: |-
- PasswordFile defines path to password file at disk
- must be pre-mounted
- type: string
- username:
- description: |-
- Username defines reference for secret with username value
- The secret needs to be in the same namespace as scrape object
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- bearer_token:
- description: SecretKeySelector selects a key of a Secret.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- bearer_token_file:
- type: string
- tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to
- use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
properties:
key:
description: The key of the secret to select from. Must
@@ -24654,10 +22877,40 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token:
+ description: SecretKeySelector selects a key of a Secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
type: object
+ x-kubernetes-map-type: atomic
+ bearer_token_file:
+ type: string
+ tls_config:
+ x-kubernetes-preserve-unknown-fields: true
type: object
proxyURL:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
@@ -24719,6 +22972,10 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ ca_file:
+ description: Path to the CA cert in the container to use
+ for the targets.
+ type: string
caFile:
description: Path to the CA cert in the container to use
for the targets.
@@ -24776,13 +23033,49 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ cert_file:
+ description: Path to the client cert file in the container
+ for the targets.
+ type: string
certFile:
description: Path to the client cert file in the container
for the targets.
type: string
+ insecure_skip_verify:
+ description: Disable target certificate validation.
+ type: boolean
insecureSkipVerify:
description: Disable target certificate validation.
type: boolean
+ key_file:
+ description: Path to the client key file in the container
+ for the targets.
+ type: string
+ key_secret:
+ description: Secret containing the client key file for the
+ targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
keyFile:
description: Path to the client key file in the container
for the targets.
@@ -24812,6 +23105,9 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ server_name:
+ description: Used to verify the hostname for the targets.
+ type: string
serverName:
description: Used to verify the hostname for the targets.
type: string
@@ -24881,7 +23177,7 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
@@ -24948,6 +23244,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
followRedirects:
description: Configure whether HTTP requests follow HTTP 3xx
@@ -25053,41 +23354,16 @@ spec:
description: ClientSecretFile defines path for client secret
file.
type: string
- endpoint_params:
- additionalProperties:
- type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
- type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
- proxy_client_config:
- description: |-
- ProxyClientConfig configures proxy auth settings for scraping
- See [feature description](https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy)
- properties:
- basic_auth:
- description: BasicAuth allow an endpoint to authenticate
- over basic authentication
+ clientId:
+ description: The secret or configmap containing the OAuth2
+ client id
properties:
- password:
- description: |-
- Password defines reference for secret with password value
- The secret needs to be in the same namespace as scrape object
+ configMap:
+ description: ConfigMap containing data to use for the
+ targets.
properties:
key:
- description: The key of the secret to select from. Must
- be a valid secret key.
+ description: The key to select.
type: string
name:
default: ""
@@ -25099,22 +23375,15 @@ spec:
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
optional:
- description: Specify whether the Secret or its key
- must be defined
+ description: Specify whether the ConfigMap or its
+ key must be defined
type: boolean
required:
- key
type: object
x-kubernetes-map-type: atomic
- password_file:
- description: |-
- PasswordFile defines path to password file at disk
- must be pre-mounted
- type: string
- username:
- description: |-
- Username defines reference for secret with username value
- The secret needs to be in the same namespace as scrape object
+ secret:
+ description: Secret containing data to use for the targets.
properties:
key:
description: The key of the secret to select from. Must
@@ -25138,8 +23407,8 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
- bearer_token:
- description: SecretKeySelector selects a key of a Secret.
+ clientSecret:
+ description: The secret containing the OAuth2 client secret
properties:
key:
description: The key of the secret to select from. Must
@@ -25162,138 +23431,75 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- bearer_token_file:
- type: string
- tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to
- use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
+ endpoint_params:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ endpointParams:
+ additionalProperties:
+ type: string
+ description: Parameters to append to the token URL
+ type: object
+ scopes:
+ description: OAuth2 scopes used for the token request
+ items:
+ type: string
+ type: array
+ token_url:
+ description: The URL to fetch the token from
+ type: string
+ tokenUrl:
+ description: The URL to fetch the token from
+ type: string
+ required:
+ - clientId
+ - client_id
+ type: object
+ proxy_client_config:
+ description: |-
+ ProxyClientConfig configures proxy auth settings for scraping
+ See [feature description](https://docs.victoriametrics.com/vmagent#scraping-targets-via-a-proxy)
+ properties:
+ basic_auth:
+ description: BasicAuth allow an endpoint to authenticate
+ over basic authentication
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key
+ must be defined
+ type: boolean
+ required:
+ - key
type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
properties:
key:
description: The key of the secret to select from. Must
@@ -25316,10 +23522,40 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token:
+ description: SecretKeySelector selects a key of a Secret.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
type: object
+ x-kubernetes-map-type: atomic
+ bearer_token_file:
+ type: string
+ tls_config:
+ x-kubernetes-preserve-unknown-fields: true
type: object
proxyURL:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
@@ -25403,6 +23639,10 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ ca_file:
+ description: Path to the CA cert in the container to use
+ for the targets.
+ type: string
caFile:
description: Path to the CA cert in the container to use
for the targets.
@@ -25460,13 +23700,49 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ cert_file:
+ description: Path to the client cert file in the container
+ for the targets.
+ type: string
certFile:
description: Path to the client cert file in the container
for the targets.
type: string
+ insecure_skip_verify:
+ description: Disable target certificate validation.
+ type: boolean
insecureSkipVerify:
description: Disable target certificate validation.
type: boolean
+ key_file:
+ description: Path to the client key file in the container
+ for the targets.
+ type: string
+ key_secret:
+ description: Secret containing the client key file for the
+ targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
keyFile:
description: Path to the client key file in the container
for the targets.
@@ -25496,6 +23772,9 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ server_name:
+ description: Used to verify the hostname for the targets.
+ type: string
serverName:
description: Used to verify the hostname for the targets.
type: string
@@ -25508,7 +23787,7 @@ spec:
description: MaxScrapeSize defines a maximum size of scraped data
for a job
type: string
- metricRelabelConfigs:
+ metric_relabel_configs:
description: MetricRelabelConfigs to apply to samples after scrapping.
items:
description: |-
@@ -25584,106 +23863,93 @@ spec:
type: string
type: object
type: array
- oauth2:
- description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2 client
- id
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
+ metricRelabelConfigs:
+ description: MetricRelabelConfigsS alias for MetricRelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching. Default
+ is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression (or list
+ of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source label
+ values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source label
+ values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret file.
- type: string
- endpoint_params:
- additionalProperties:
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ type: object
+ type: array
+ metrics_path:
+ description: |-
+ HTTP path to scrape for metrics.
+ alias for Path
+ type: string
+ metricsPath:
+ description: MetricsPathS alias for Path
+ type: string
+ oauth2:
+ description: OAuth2 defines auth configuration
+ x-kubernetes-preserve-unknown-fields: true
openstackSDConfigs:
description: OpenStackSDConfigs defines a list of OpenStack service
discovery configurations.
@@ -25865,6 +24131,10 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ ca_file:
+ description: Path to the CA cert in the container to use
+ for the targets.
+ type: string
caFile:
description: Path to the CA cert in the container to use
for the targets.
@@ -25922,13 +24192,49 @@ spec:
type: object
x-kubernetes-map-type: atomic
type: object
+ cert_file:
+ description: Path to the client cert file in the container
+ for the targets.
+ type: string
certFile:
description: Path to the client cert file in the container
for the targets.
type: string
+ insecure_skip_verify:
+ description: Disable target certificate validation.
+ type: boolean
insecureSkipVerify:
description: Disable target certificate validation.
type: boolean
+ key_file:
+ description: Path to the client key file in the container
+ for the targets.
+ type: string
+ key_secret:
+ description: Secret containing the client key file for the
+ targets.
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
keyFile:
description: Path to the client key file in the container
for the targets.
@@ -25958,6 +24264,9 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ server_name:
+ description: Used to verify the hostname for the targets.
+ type: string
serverName:
description: Used to verify the hostname for the targets.
type: string
@@ -25987,11 +24296,15 @@ spec:
path:
description: HTTP path to scrape for metrics.
type: string
- proxyURL:
+ proxy_url:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes to
proxy through this endpoint.
type: string
- relabelConfigs:
+ proxyUrl:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes to
+ proxy through this endpoint.
+ type: string
+ relabel_configs:
description: RelabelConfigs to apply to samples during service discovery.
items:
description: |-
@@ -26067,6 +24380,87 @@ spec:
type: string
type: object
type: array
+ relabelConfigs:
+ description: RelabelConfigsS alias ofr RelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching. Default
+ is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression (or list
+ of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
+ type: string
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source label
+ values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source label
+ values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ sample_limit:
+ description: SampleLimit defines per-scrape limit on number of scraped
+ samples that will be accepted.
+ format: int64
+ type: integer
sampleLimit:
description: SampleLimit defines per-scrape limit on number of scraped
samples that will be accepted.
@@ -26077,15 +24471,30 @@ spec:
enum:
- http
- https
+ - HTTPS
+ - HTTP
type: string
scrape_interval:
description: |-
ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used
type: string
- scrapeTimeout:
+ scrape_timeout:
description: Timeout after which the scrape is ended
type: string
+ scrapeInterval:
+ description: ScrapeIntervalS is the same as ScrapeInterval and has
+ priority over it.
+ type: string
+ scrapeTimeout:
+ description: ScrapeTimeoutS after which the scrape is ended
+ type: string
+ series_limit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
seriesLimit:
description: |-
SeriesLimit defines per-scrape limit on number of unique time series
@@ -26098,170 +24507,28 @@ spec:
items:
description: |-
StaticConfig defines a static configuration.
- See [here](https://docs.victoriametrics.com/sd_configs#static_configs)
- properties:
- labels:
- additionalProperties:
- type: string
- description: Labels assigned to all metrics scraped from the
- targets.
- type: object
- x-kubernetes-map-type: atomic
- targets:
- description: List of targets for this static configuration.
- items:
- type: string
- type: array
- type: object
- type: array
- tlsConfig:
- description: TLSConfig configuration to use when scraping the endpoint
- properties:
- ca:
- description: Stuct containing the CA cert to use for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use for the
- targets.
- type: string
- cert:
- description: Struct containing the client cert file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container for
- the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container for
- the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
+ See [here](https://docs.victoriametrics.com/sd_configs#static_configs)
+ properties:
+ labels:
+ additionalProperties:
type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ description: Labels assigned to all metrics scraped from the
+ targets.
+ type: object
+ x-kubernetes-map-type: atomic
+ targets:
+ description: List of targets for this static configuration.
+ items:
type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ type: array
+ type: object
+ type: array
+ tls_config:
+ description: TLSConfig configuration to use when scraping the endpoint
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ description: TLSConfigS alias for TLSConfig
+ x-kubernetes-preserve-unknown-fields: true
vm_scrape_params:
description: VMScrapeParams defines VictoriaMetrics specific scrape
parameters
@@ -26354,6 +24621,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token:
description: SecretKeySelector selects a key of a Secret.
@@ -26382,160 +24654,7 @@ spec:
bearer_token_file:
type: string
tls_config:
- description: TLSConfig specifies TLSConfig configuration parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for
- the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or
- its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for
- the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
scrape_align_interval:
type: string
@@ -26680,14 +24799,14 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
+ credentials_file:
description: File with value for authorization
type: string
type:
description: Type of authorization, default to bearer
type: string
type: object
- basicAuth:
+ basic_auth:
description: BasicAuth allow an endpoint to authenticate over
basic authentication
properties:
@@ -26748,16 +24867,113 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
- bearerTokenFile:
+ basicAuth:
+ description: BasicAuthS alias for BasicAuth
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
+ type: string
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
+ type: object
+ bearer_token_file:
description: File to read bearer token for scraping targets.
type: string
- bearerTokenSecret:
+ bearer_token_secret:
description: |-
Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator.
- nullable: true
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ bearerTokenFile:
+ description: BearerTokenFileS alias for BearerTokenFile
+ type: string
+ bearerTokenSecret:
+ description: BearerTokenSecretS alias for BearerTokenSecret
properties:
key:
description: The key of the secret to select from. Must
@@ -26783,8 +24999,19 @@ spec:
follow_redirects:
description: FollowRedirects controls redirects for scraping.
type: boolean
+ followRedirects:
+ description: FollowRedirects controls redirects for scraping.
+ type: boolean
+ honor_labels:
+ description: HonorLabels chooses the metric's labels on collisions
+ with target labels.
+ type: boolean
+ honor_timestamps:
+ description: HonorTimestamps controls whether vmagent respects
+ the timestamps present in scraped data.
+ type: boolean
honorLabels:
- description: HonorLabels chooses the metric's labels on collisions
+ description: HonorLabelsS chooses the metric's labels on collisions
with target labels.
type: boolean
honorTimestamps:
@@ -26798,7 +25025,7 @@ spec:
description: MaxScrapeSize defines a maximum size of scraped
data for a job
type: string
- metricRelabelConfigs:
+ metric_relabel_configs:
description: MetricRelabelConfigs to apply to samples after
scrapping.
items:
@@ -26875,108 +25102,93 @@ spec:
type: string
type: object
type: array
- oauth2:
- description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2
- client id
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
+ metricRelabelConfigs:
+ description: MetricRelabelConfigsS alias for MetricRelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching.
+ Default is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret
- file.
- type: string
- endpoint_params:
- additionalProperties:
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ type: object
+ type: array
+ metrics_path:
+ description: |-
+ HTTP path to scrape for metrics.
+ alias for Path
+ type: string
+ metricsPath:
+ description: MetricsPathS alias for Path
+ type: string
+ oauth2:
+ description: OAuth2 defines auth configuration
+ x-kubernetes-preserve-unknown-fields: true
params:
additionalProperties:
items:
@@ -26990,13 +25202,93 @@ spec:
port:
description: Name of the port exposed at Service.
type: string
- proxyURL:
+ proxy_url:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes
+ to proxy through this endpoint.
+ type: string
+ proxyUrl:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
to proxy through this endpoint.
type: string
+ relabel_configs:
+ description: RelabelConfigs to apply to samples during service
+ discovery.
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching.
+ Default is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
+ type: string
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
relabelConfigs:
- description: RelabelConfigs to apply to samples during service
- discovery.
+ description: RelabelConfigsS alias ofr RelabelConfigs
items:
description: |-
RelabelConfig allows dynamic rewriting of the label set
@@ -27071,6 +25363,11 @@ spec:
type: string
type: object
type: array
+ sample_limit:
+ description: SampleLimit defines per-scrape limit on number
+ of scraped samples that will be accepted.
+ format: int64
+ type: integer
sampleLimit:
description: SampleLimit defines per-scrape limit on number
of scraped samples that will be accepted.
@@ -27081,15 +25378,30 @@ spec:
enum:
- http
- https
+ - HTTPS
+ - HTTP
type: string
scrape_interval:
description: |-
ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used
type: string
- scrapeTimeout:
+ scrape_timeout:
description: Timeout after which the scrape is ended
type: string
+ scrapeInterval:
+ description: ScrapeIntervalS is the same as ScrapeInterval and
+ has priority over it.
+ type: string
+ scrapeTimeout:
+ description: ScrapeTimeoutS after which the scrape is ended
+ type: string
+ series_limit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
seriesLimit:
description: |-
SeriesLimit defines per-scrape limit on number of unique time series
@@ -27104,160 +25416,13 @@ spec:
TargetPort
Name or number of the pod port this endpoint refers to. Mutually exclusive with port.
x-kubernetes-int-or-string: true
- tlsConfig:
+ tls_config:
description: TLSConfig configuration to use when scraping the
endpoint
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ description: TLSConfigS alias for TLSConfig
+ x-kubernetes-preserve-unknown-fields: true
vm_scrape_params:
description: VMScrapeParams defines VictoriaMetrics specific
scrape parameters
@@ -27350,6 +25515,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token:
description: SecretKeySelector selects a key of a Secret.
@@ -27378,162 +25548,7 @@ spec:
bearer_token_file:
type: string
tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file
- for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
scrape_align_interval:
type: string
@@ -29411,8 +27426,45 @@ spec:
authorization:
description: Authorization with http header Authorization
properties:
- credentials:
- description: Reference to the secret with value for authorization
+ credentials:
+ description: Reference to the secret with value for authorization
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ credentials_file:
+ description: File with value for authorization
+ type: string
+ type:
+ description: Type of authorization, default to bearer
+ type: string
+ type: object
+ basic_auth:
+ description: BasicAuth allow an endpoint to authenticate over
+ basic authentication
+ properties:
+ password:
+ description: |-
+ Password defines reference for secret with password value
+ The secret needs to be in the same namespace as scrape object
properties:
key:
description: The key of the secret to select from. Must
@@ -29435,16 +27487,45 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
- credentialsFile:
- description: File with value for authorization
+ password_file:
+ description: |-
+ PasswordFile defines path to password file at disk
+ must be pre-mounted
type: string
- type:
- description: Type of authorization, default to bearer
+ username:
+ description: |-
+ Username defines reference for secret with username value
+ The secret needs to be in the same namespace as scrape object
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
type: string
type: object
basicAuth:
- description: BasicAuth allow an endpoint to authenticate over
- basic authentication
+ description: BasicAuthS alias for BasicAuth
properties:
password:
description: |-
@@ -29503,16 +27584,47 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
- bearerTokenFile:
+ bearer_token_file:
description: File to read bearer token for scraping targets.
type: string
- bearerTokenSecret:
+ bearer_token_secret:
description: |-
Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator.
- nullable: true
+ properties:
+ key:
+ description: The key of the secret to select from. Must
+ be a valid secret key.
+ type: string
+ name:
+ default: ""
+ description: |-
+ Name of the referent.
+ This field is effectively required, but due to backwards compatibility is
+ allowed to be empty. Instances of this type with an empty value here are
+ almost certainly wrong.
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ type: string
+ optional:
+ description: Specify whether the Secret or its key must
+ be defined
+ type: boolean
+ required:
+ - key
+ type: object
+ x-kubernetes-map-type: atomic
+ bearerTokenFile:
+ description: BearerTokenFileS alias for BearerTokenFile
+ type: string
+ bearerTokenSecret:
+ description: BearerTokenSecretS alias for BearerTokenSecret
properties:
key:
description: The key of the secret to select from. Must
@@ -29538,10 +27650,21 @@ spec:
follow_redirects:
description: FollowRedirects controls redirects for scraping.
type: boolean
- honorLabels:
+ followRedirects:
+ description: FollowRedirects controls redirects for scraping.
+ type: boolean
+ honor_labels:
description: HonorLabels chooses the metric's labels on collisions
with target labels.
type: boolean
+ honor_timestamps:
+ description: HonorTimestamps controls whether vmagent respects
+ the timestamps present in scraped data.
+ type: boolean
+ honorLabels:
+ description: HonorLabelsS chooses the metric's labels on collisions
+ with target labels.
+ type: boolean
honorTimestamps:
description: HonorTimestamps controls whether vmagent respects
the timestamps present in scraped data.
@@ -29558,7 +27681,7 @@ spec:
description: MaxScrapeSize defines a maximum size of scraped
data for a job
type: string
- metricRelabelConfigs:
+ metric_relabel_configs:
description: MetricRelabelConfigs to apply to samples after
scrapping.
items:
@@ -29635,108 +27758,93 @@ spec:
type: string
type: object
type: array
- oauth2:
- description: OAuth2 defines auth configuration
- properties:
- client_id:
- description: The secret or configmap containing the OAuth2
- client id
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- client_secret:
- description: The secret containing the OAuth2 client secret
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
+ metricRelabelConfigs:
+ description: MetricRelabelConfigsS alias for MetricRelabelConfigs
+ items:
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching.
+ Default is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- client_secret_file:
- description: ClientSecretFile defines path for client secret
- file.
- type: string
- endpoint_params:
- additionalProperties:
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
type: string
- description: Parameters to append to the token URL
- type: object
- scopes:
- description: OAuth2 scopes used for the token request
- items:
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
type: string
- type: array
- token_url:
- description: The URL to fetch the token from
- minLength: 1
- type: string
- required:
- - client_id
- - token_url
- type: object
+ type: object
+ type: array
+ metrics_path:
+ description: |-
+ HTTP path to scrape for metrics.
+ alias for Path
+ type: string
+ metricsPath:
+ description: MetricsPathS alias for Path
+ type: string
+ oauth2:
+ description: OAuth2 defines auth configuration
+ x-kubernetes-preserve-unknown-fields: true
params:
additionalProperties:
items:
@@ -29747,11 +27855,15 @@ spec:
path:
description: HTTP path to scrape for metrics.
type: string
- proxyURL:
+ proxy_url:
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
to proxy through this endpoint.
type: string
- relabelConfigs:
+ proxyUrl:
+ description: ProxyURL eg http://proxyserver:2195 Directs scrapes
+ to proxy through this endpoint.
+ type: string
+ relabel_configs:
description: RelabelConfigs to apply to samples during service
discovery.
items:
@@ -29828,191 +27940,140 @@ spec:
type: string
type: object
type: array
- sampleLimit:
- description: SampleLimit defines per-scrape limit on number
- of scraped samples that will be accepted.
- format: int64
- type: integer
- scheme:
- description: HTTP scheme to use for scraping.
- enum:
- - http
- - https
- type: string
- scrape_interval:
- description: |-
- ScrapeInterval is the same as Interval and has priority over it.
- one of scrape_interval or interval can be used
- type: string
- scrapeTimeout:
- description: Timeout after which the scrape is ended
- type: string
- seriesLimit:
- description: |-
- SeriesLimit defines per-scrape limit on number of unique time series
- a single target can expose during all the scrapes on the time window of 24h.
- format: int64
- type: integer
- targets:
- description: Targets static targets addresses in form of ["192.122.55.55:9100","some-name:9100"].
+ relabelConfigs:
+ description: RelabelConfigsS alias ofr RelabelConfigs
items:
- type: string
- minItems: 1
- type: array
- tlsConfig:
- description: TLSConfig configuration to use when scraping the
- endpoint
- properties:
- ca:
- description: Stuct containing the CA cert to use for the
- targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use
- for the targets.
- type: string
- cert:
- description: Struct containing the client cert file for
- the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the
- targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container
- for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container
- for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the
- targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+ description: |-
+ RelabelConfig allows dynamic rewriting of the label set
+ More info: https://docs.victoriametrics.com/#relabeling
+ properties:
+ action:
+ description: Action to perform based on regex matching.
+ Default is 'replace'
+ type: string
+ if:
+ description: 'If represents metricsQL match expression
+ (or list of expressions): ''{__name__=~"foo_.*"}'''
+ x-kubernetes-preserve-unknown-fields: true
+ labels:
+ additionalProperties:
type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ description: 'Labels is used together with Match for `action:
+ graphite`'
+ type: object
+ match:
+ description: 'Match is used together with Labels for `action:
+ graphite`'
+ type: string
+ modulus:
+ description: Modulus to take of the hash of the source
+ label values.
+ format: int64
+ type: integer
+ regex:
+ description: |-
+ Regular expression against which the extracted value is matched. Default is '(.*)'
+ victoriaMetrics supports multiline regex joined with |
+ https://docs.victoriametrics.com/vmagent/#relabeling-enhancements
+ x-kubernetes-preserve-unknown-fields: true
+ replacement:
+ description: |-
+ Replacement value against which a regex replace is performed if the
+ regular expression matches. Regex capture groups are available. Default is '$1'
+ type: string
+ separator:
+ description: Separator placed between concatenated source
+ label values. default is ';'.
+ type: string
+ source_labels:
+ description: |-
+ UnderScoreSourceLabels - additional form of source labels source_labels
+ for compatibility with original relabel config.
+ if set both sourceLabels and source_labels, sourceLabels has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ items:
+ type: string
+ type: array
+ sourceLabels:
+ description: |-
+ The source labels select values from existing labels. Their content is concatenated
+ using the configured separator and matched against the configured regular expression
+ for the replace, keep, and drop actions.
+ items:
+ type: string
+ type: array
+ target_label:
+ description: |-
+ UnderScoreTargetLabel - additional form of target label - target_label
+ for compatibility with original relabel config.
+ if set both targetLabel and target_label, targetLabel has priority.
+ for details https://github.com/VictoriaMetrics/operator/issues/131
+ type: string
+ targetLabel:
+ description: |-
+ Label to which the resulting value is written in a replace action.
+ It is mandatory for replace actions. Regex capture groups are available.
+ type: string
+ type: object
+ type: array
+ sample_limit:
+ description: SampleLimit defines per-scrape limit on number
+ of scraped samples that will be accepted.
+ format: int64
+ type: integer
+ sampleLimit:
+ description: SampleLimit defines per-scrape limit on number
+ of scraped samples that will be accepted.
+ format: int64
+ type: integer
+ scheme:
+ description: HTTP scheme to use for scraping.
+ enum:
+ - http
+ - https
+ - HTTPS
+ - HTTP
+ type: string
+ scrape_interval:
+ description: |-
+ ScrapeInterval is the same as Interval and has priority over it.
+ one of scrape_interval or interval can be used
+ type: string
+ scrape_timeout:
+ description: Timeout after which the scrape is ended
+ type: string
+ scrapeInterval:
+ description: ScrapeIntervalS is the same as ScrapeInterval and
+ has priority over it.
+ type: string
+ scrapeTimeout:
+ description: ScrapeTimeoutS after which the scrape is ended
+ type: string
+ series_limit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
+ seriesLimit:
+ description: |-
+ SeriesLimit defines per-scrape limit on number of unique time series
+ a single target can expose during all the scrapes on the time window of 24h.
+ format: int64
+ type: integer
+ targets:
+ description: Targets static targets addresses in form of ["192.122.55.55:9100","some-name:9100"].
+ items:
+ type: string
+ minItems: 1
+ type: array
+ tls_config:
+ description: TLSConfig configuration to use when scraping the
+ endpoint
+ x-kubernetes-preserve-unknown-fields: true
+ tlsConfig:
+ description: TLSConfigS alias for TLSConfig
+ x-kubernetes-preserve-unknown-fields: true
vm_scrape_params:
description: VMScrapeParams defines VictoriaMetrics specific
scrape parameters
@@ -30105,6 +28166,11 @@ spec:
- key
type: object
x-kubernetes-map-type: atomic
+ username_file:
+ description: |-
+ UsernameFile defines path to username file at disk
+ must be pre-mounted
+ type: string
type: object
bearer_token:
description: SecretKeySelector selects a key of a Secret.
@@ -30133,162 +28199,7 @@ spec:
bearer_token_file:
type: string
tls_config:
- description: TLSConfig specifies TLSConfig configuration
- parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container
- to use for the targets.
- type: string
- cert:
- description: Struct containing the client cert file
- for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use
- for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for
- the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret
- or its key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the
- container for the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the
- container for the targets.
- type: string
- keySecret:
- description: Secret containing the client key file
- for the targets.
- properties:
- key:
- description: The key of the secret to select
- from. Must be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its
- key must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the
- targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
type: object
scrape_align_interval:
type: string
@@ -30694,153 +28605,7 @@ spec:
type: object
type: array
tlsConfig:
- description: TLSConfig specifies TLSConfig configuration parameters.
- properties:
- ca:
- description: Stuct containing the CA cert to use for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- caFile:
- description: Path to the CA cert in the container to use for the
- targets.
- type: string
- cert:
- description: Struct containing the client cert file for the targets.
- properties:
- configMap:
- description: ConfigMap containing data to use for the targets.
- properties:
- key:
- description: The key to select.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the ConfigMap or its key
- must be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- secret:
- description: Secret containing data to use for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must
- be a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must
- be defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- type: object
- certFile:
- description: Path to the client cert file in the container for
- the targets.
- type: string
- insecureSkipVerify:
- description: Disable target certificate validation.
- type: boolean
- keyFile:
- description: Path to the client key file in the container for
- the targets.
- type: string
- keySecret:
- description: Secret containing the client key file for the targets.
- properties:
- key:
- description: The key of the secret to select from. Must be
- a valid secret key.
- type: string
- name:
- default: ""
- description: |-
- Name of the referent.
- This field is effectively required, but due to backwards compatibility is
- allowed to be empty. Instances of this type with an empty value here are
- almost certainly wrong.
- More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
- type: string
- optional:
- description: Specify whether the Secret or its key must be
- defined
- type: boolean
- required:
- - key
- type: object
- x-kubernetes-map-type: atomic
- serverName:
- description: Used to verify the hostname for the targets.
- type: string
- type: object
+ x-kubernetes-preserve-unknown-fields: true
tokenRef:
description: TokenRef allows fetching token from user-created secrets
by its name and key.
diff --git a/config/crd/patches/operator.victoriametrics.com_vmalerts.yaml b/config/crd/patches/operator.victoriametrics.com_vmalerts.yaml
index 748d5d0b..0b00f713 100644
--- a/config/crd/patches/operator.victoriametrics.com_vmalerts.yaml
+++ b/config/crd/patches/operator.victoriametrics.com_vmalerts.yaml
@@ -65,50 +65,3 @@
- op: add
path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/datasource/properties/oauth2/x-kubernetes-preserve-unknown-fields
value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/datasource/properties/oauth2/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/datasource/properties/tlsConfig/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/datasource/properties/tlsConfig/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteRead/properties/oauth2/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteRead/properties/oauth2/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteRead/properties/tlsConfig/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteRead/properties/tlsConfig/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteWrite/properties/oauth2/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteWrite/properties/oauth2/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteWrite/properties/tlsConfig/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/remoteWrite/properties/tlsConfig/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifier/properties/oauth2/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifier/properties/oauth2/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifier/properties/tlsConfig/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifier/properties/tlsConfig/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifiers/items/properties/oauth2/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifiers/items/properties/oauth2/properties
-- op: add
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifiers/items/properties/tlsConfig/x-kubernetes-preserve-unknown-fields
- value: true
-- op: remove
- path: /spec/versions/0/schema/openAPIV3Schema/properties/spec/properties/notifiers/items/properties/tlsConfig/properties
diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md
index b3f4c8ae..4c739b32 100644
--- a/docs/CHANGELOG.md
+++ b/docs/CHANGELOG.md
@@ -15,6 +15,7 @@ aliases:
- [vmrule](https://docs.victoriametrics.com/operator/resources/vmrule/): properly validate rules for [vlogs](https://docs.victoriametrics.com/victorialogs/vmalert/) group `type`.
- [operator](https://docs.victoriametrics.com/operator/): properly apply changes to the [converted](https://docs.victoriametrics.com/operator/migration/#objects-conversion) `VMScrapeConfig` during operator start-up.
+- [operator](https://docs.victoriametrics.com/operator/): allow `HTTP` and `HTTPS` values for `scheme` param at scrape configurations. It fixes compatibility with prometheus-operator objects. See [this issue](https://github.com/VictoriaMetrics/operator/issues/1148) for details.
## [v0.49.0](https://github.com/VictoriaMetrics/operator/releases/tag/v0.49.0) - 15 Oct 2024
diff --git a/docs/api.md b/docs/api.md
index 2f60fe5d..798a7598 100644
--- a/docs/api.md
+++ b/docs/api.md
@@ -214,7 +214,7 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
| `credentials` | Reference to the secret with value for authorization | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | true |
-| `credentialsFile` | File with value for authorization | _string_ | false |
+| `credentials_file` | File with value for authorization | _string_ | false |
| `type` | Type of authorization, default to bearer | _string_ | false |
@@ -276,6 +276,7 @@ _Appears in:_
| `password` | Password defines reference for secret with password value
The secret needs to be in the same namespace as scrape object | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `password_file` | PasswordFile defines path to password file at disk
must be pre-mounted | _string_ | false |
| `username` | Username defines reference for secret with username value
The secret needs to be in the same namespace as scrape object | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `username_file` | UsernameFile defines path to username file at disk
must be pre-mounted | _string_ | true |
#### BearerAuth
@@ -831,28 +832,44 @@ _Appears in:_
| --- | --- | --- | --- |
| `attach_metadata` | AttachMetadata configures metadata attaching from service discovery | _[AttachMetadata](#attachmetadata)_ | false |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
-| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricRelabelConfigs` | MetricRelabelConfigsS alias for MetricRelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metric_relabel_configs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
| `port` | Name of the port exposed at Service. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
-| `relabelConfigs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `relabelConfigs` | RelabelConfigsS alias ofr RelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabel_configs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `targetPort` | TargetPort
Name or number of the pod port this endpoint refers to. Mutually exclusive with port. | _[IntOrString](#intorstring)_ | false |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
@@ -875,11 +892,15 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
#### EndpointRelabelings
@@ -899,8 +920,10 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
-| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
-| `relabelConfigs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricRelabelConfigs` | MetricRelabelConfigsS alias for MetricRelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metric_relabel_configs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabelConfigs` | RelabelConfigsS alias ofr RelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabel_configs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
#### EndpointScrapeParams
@@ -921,19 +944,29 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
@@ -1347,11 +1380,15 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
+| `clientId` | The secret or configmap containing the OAuth2 client id | _[SecretOrConfigMap](#secretorconfigmap)_ | true |
+| `clientSecret` | The secret containing the OAuth2 client secret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `client_id` | The secret or configmap containing the OAuth2 client id | _[SecretOrConfigMap](#secretorconfigmap)_ | true |
| `client_secret` | The secret containing the OAuth2 client secret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `client_secret_file` | ClientSecretFile defines path for client secret file. | _string_ | false |
+| `endpointParams` | Parameters to append to the token URL | _object (keys:string, values:string)_ | false |
| `endpoint_params` | Parameters to append to the token URL | _object (keys:string, values:string)_ | false |
| `scopes` | OAuth2 scopes used for the token request | _string array_ | false |
+| `tokenUrl` | The URL to fetch the token from | _string_ | true |
| `token_url` | The URL to fetch the token from | _string_ | true |
@@ -1485,29 +1522,45 @@ _Appears in:_
| --- | --- | --- | --- |
| `attach_metadata` | AttachMetadata configures metadata attaching from service discovery | _[AttachMetadata](#attachmetadata)_ | false |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `filterRunning` | FilterRunning applies filter with pod status == running
it prevents from scrapping metrics at failed or succeed state pods.
enabled by default | _boolean_ | false |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
-| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricRelabelConfigs` | MetricRelabelConfigsS alias for MetricRelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metric_relabel_configs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
| `port` | Name of the port exposed at Pod. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
-| `relabelConfigs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `relabelConfigs` | RelabelConfigsS alias ofr RelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabel_configs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `targetPort` | TargetPort
Name or number of the pod port this endpoint refers to. Mutually exclusive with port. | _[IntOrString](#intorstring)_ | false |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
@@ -1728,7 +1781,7 @@ _Appears in:_
| `params` | Params optional HTTP URL parameters added to each rule request | _[Values](#values)_ | false |
| `rules` | Rules list of alert rules | _[Rule](#rule) array_ | true |
| `tenant` | Tenant id for group, can be used only with enterprise version of vmalert.
See more details [here](https://docs.victoriametrics.com/vmalert#multitenancy). | _string_ | false |
-| `type` | Type defines datasource type for enterprise version of vmalert
possible values - prometheus,graphite | _string_ | false |
+| `type` | Type defines datasource type for enterprise version of vmalert
possible values - prometheus,graphite,vlogs | _string_ | false |
@@ -2118,12 +2171,18 @@ _Appears in:_
| --- | --- | --- | --- |
| `ca` | Stuct containing the CA cert to use for the targets. | _[SecretOrConfigMap](#secretorconfigmap)_ | false |
| `caFile` | Path to the CA cert in the container to use for the targets. | _string_ | false |
+| `ca_file` | Path to the CA cert in the container to use for the targets. | _string_ | false |
| `cert` | Struct containing the client cert file for the targets. | _[SecretOrConfigMap](#secretorconfigmap)_ | false |
| `certFile` | Path to the client cert file in the container for the targets. | _string_ | false |
+| `cert_file` | Path to the client cert file in the container for the targets. | _string_ | false |
| `insecureSkipVerify` | Disable target certificate validation. | _boolean_ | false |
+| `insecure_skip_verify` | Disable target certificate validation. | _boolean_ | false |
| `keyFile` | Path to the client key file in the container for the targets. | _string_ | false |
| `keySecret` | Secret containing the client key file for the targets. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `key_file` | Path to the client key file in the container for the targets. | _string_ | false |
+| `key_secret` | Secret containing the client key file for the targets. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `serverName` | Used to verify the hostname for the targets. | _string_ | false |
+| `server_name` | Used to verify the hostname for the targets. | _string_ | false |
@@ -2170,28 +2229,44 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `labels` | Labels static labels for targets. | _object (keys:string, values:string)_ | false |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
-| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricRelabelConfigs` | MetricRelabelConfigsS alias for MetricRelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metric_relabel_configs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
-| `relabelConfigs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `relabelConfigs` | RelabelConfigsS alias ofr RelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabel_configs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `targets` | Targets static targets addresses in form of ["192.122.55.55:9100","some-name:9100"]. | _string array_ | true |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
@@ -3364,30 +3439,46 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `jobLabel` | The label to use to retrieve the job name from. | _string_ | false |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
-| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricRelabelConfigs` | MetricRelabelConfigsS alias for MetricRelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metric_relabel_configs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
| `port` | Name of the port exposed at Node. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
-| `relabelConfigs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `relabelConfigs` | RelabelConfigsS alias ofr RelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabel_configs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `selector` | Selector to select kubernetes Nodes. | _[LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#labelselector-v1-meta)_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `targetLabels` | TargetLabels transfers labels on the Kubernetes Node onto the target. | _string array_ | false |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
@@ -3468,28 +3559,42 @@ _Appears in:_
| Field | Description | Scheme | Required |
| --- | --- | --- | --- |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `jobName` | The job name assigned to scraped metrics by default. | _string_ | true |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `module` | The module to use for probing specifying how to probe the target.
Example module configuring in the blackbox exporter:
https://github.com/prometheus/blackbox_exporter/blob/master/example.yml | _string_ | true |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `targets` | Targets defines a set of static and/or dynamically discovered targets to be probed using the prober. | _[VMProbeTargets](#vmprobetargets)_ | true |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
| `vmProberSpec` | Specification for the prober to use for probing targets.
The prober.URL parameter is required. Targets cannot be probed if left empty. | _[VMProberSpec](#vmproberspec)_ | true |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
@@ -3648,36 +3753,52 @@ _Appears in:_
| --- | --- | --- | --- |
| `authorization` | Authorization with http header Authorization | _[Authorization](#authorization)_ | false |
| `azureSDConfigs` | AzureSDConfigs defines a list of Azure service discovery configurations. | _[AzureSDConfig](#azuresdconfig) array_ | false |
-| `basicAuth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
-| `bearerTokenFile` | File to read bearer token for scraping targets. | _string_ | false |
-| `bearerTokenSecret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `basicAuth` | BasicAuthS alias for BasicAuth | _[BasicAuth](#basicauth)_ | false |
+| `basic_auth` | BasicAuth allow an endpoint to authenticate over basic authentication | _[BasicAuth](#basicauth)_ | false |
+| `bearerTokenFile` | BearerTokenFileS alias for BearerTokenFile | _string_ | false |
+| `bearerTokenSecret` | BearerTokenSecretS alias for BearerTokenSecret | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
+| `bearer_token_file` | File to read bearer token for scraping targets. | _string_ | false |
+| `bearer_token_secret` | Secret to mount to read bearer token for scraping targets. The secret
needs to be in the same namespace as the scrape object and accessible by
the victoria-metrics operator. | _[SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#secretkeyselector-v1-core)_ | false |
| `consulSDConfigs` | ConsulSDConfigs defines a list of Consul service discovery configurations. | _[ConsulSDConfig](#consulsdconfig) array_ | false |
| `digitalOceanSDConfigs` | DigitalOceanSDConfigs defines a list of DigitalOcean service discovery configurations. | _[DigitalOceanSDConfig](#digitaloceansdconfig) array_ | false |
| `dnsSDConfigs` | DNSSDConfigs defines a list of DNS service discovery configurations. | _[DNSSDConfig](#dnssdconfig) array_ | false |
| `ec2SDConfigs` | EC2SDConfigs defines a list of EC2 service discovery configurations. | _[EC2SDConfig](#ec2sdconfig) array_ | false |
| `fileSDConfigs` | FileSDConfigs defines a list of file service discovery configurations. | _[FileSDConfig](#filesdconfig) array_ | false |
+| `followRedirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `follow_redirects` | FollowRedirects controls redirects for scraping. | _boolean_ | false |
| `gceSDConfigs` | GCESDConfigs defines a list of GCE service discovery configurations. | _[GCESDConfig](#gcesdconfig) array_ | false |
-| `honorLabels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honorLabels` | HonorLabelsS chooses the metric's labels on collisions with target labels. | _boolean_ | false |
| `honorTimestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
+| `honor_labels` | HonorLabels chooses the metric's labels on collisions with target labels. | _boolean_ | false |
+| `honor_timestamps` | HonorTimestamps controls whether vmagent respects the timestamps present in scraped data. | _boolean_ | false |
| `httpSDConfigs` | HTTPSDConfigs defines a list of HTTP service discovery configurations. | _[HTTPSDConfig](#httpsdconfig) array_ | false |
| `interval` | Interval at which metrics should be scraped | _string_ | false |
| `kubernetesSDConfigs` | KubernetesSDConfigs defines a list of Kubernetes service discovery configurations. | _[KubernetesSDConfig](#kubernetessdconfig) array_ | false |
| `max_scrape_size` | MaxScrapeSize defines a maximum size of scraped data for a job | _string_ | false |
-| `metricRelabelConfigs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricRelabelConfigs` | MetricRelabelConfigsS alias for MetricRelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metric_relabel_configs` | MetricRelabelConfigs to apply to samples after scrapping. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `metricsPath` | MetricsPathS alias for Path | _string_ | false |
+| `metrics_path` | HTTP path to scrape for metrics.
alias for Path | _string_ | false |
| `oauth2` | OAuth2 defines auth configuration | _[OAuth2](#oauth2)_ | false |
| `openstackSDConfigs` | OpenStackSDConfigs defines a list of OpenStack service discovery configurations. | _[OpenStackSDConfig](#openstacksdconfig) array_ | false |
| `params` | Optional HTTP URL parameters | _object (keys:string, values:string array)_ | false |
| `path` | HTTP path to scrape for metrics. | _string_ | false |
-| `proxyURL` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
-| `relabelConfigs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
+| `proxyUrl` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `proxy_url` | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | _string_ | false |
+| `relabelConfigs` | RelabelConfigsS alias ofr RelabelConfigs | _[RelabelConfig](#relabelconfig) array_ | false |
+| `relabel_configs` | RelabelConfigs to apply to samples during service discovery. | _[RelabelConfig](#relabelconfig) array_ | false |
| `sampleLimit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
+| `sample_limit` | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | _integer_ | false |
| `scheme` | HTTP scheme to use for scraping. | _string_ | false |
-| `scrapeTimeout` | Timeout after which the scrape is ended | _string_ | false |
+| `scrapeInterval` | ScrapeIntervalS is the same as ScrapeInterval and has priority over it. | _string_ | false |
+| `scrapeTimeout` | ScrapeTimeoutS after which the scrape is ended | _string_ | false |
| `scrape_interval` | ScrapeInterval is the same as Interval and has priority over it.
one of scrape_interval or interval can be used | _string_ | false |
+| `scrape_timeout` | Timeout after which the scrape is ended | _string_ | false |
| `seriesLimit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
+| `series_limit` | SeriesLimit defines per-scrape limit on number of unique time series
a single target can expose during all the scrapes on the time window of 24h. | _integer_ | false |
| `staticConfigs` | StaticConfigs defines a list of static targets with a common label set. | _[StaticConfig](#staticconfig) array_ | false |
-| `tlsConfig` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
+| `tlsConfig` | TLSConfigS alias for TLSConfig | _[TLSConfig](#tlsconfig)_ | false |
+| `tls_config` | TLSConfig configuration to use when scraping the endpoint | _[TLSConfig](#tlsconfig)_ | false |
| `vm_scrape_params` | VMScrapeParams defines VictoriaMetrics specific scrape parameters | _[VMScrapeParams](#vmscrapeparams)_ | false |
diff --git a/internal/controller/operator/converter/apis.go b/internal/controller/operator/converter/apis.go
index 1e5a35a9..cc3b0f5a 100644
--- a/internal/controller/operator/converter/apis.go
+++ b/internal/controller/operator/converter/apis.go
@@ -197,7 +197,7 @@ func convertEndpoint(promEndpoint []promv1.Endpoint) []vmv1beta1.Endpoint {
Params: endpoint.Params,
Interval: string(endpoint.Interval),
ScrapeTimeout: string(endpoint.ScrapeTimeout),
- HonorLabels: endpoint.HonorLabels,
+ HonorLabels: &endpoint.HonorLabels,
HonorTimestamps: endpoint.HonorTimestamps,
ProxyURL: endpoint.ProxyURL,
FollowRedirects: endpoint.FollowRedirects,
@@ -349,7 +349,7 @@ func convertPodEndpoints(promPodEnpoints []promv1.PodMetricsEndpoint) []vmv1beta
Scheme: promEndPoint.Scheme,
Params: promEndPoint.Params,
ScrapeTimeout: string(promEndPoint.ScrapeTimeout),
- HonorLabels: promEndPoint.HonorLabels,
+ HonorLabels: &promEndPoint.HonorLabels,
HonorTimestamps: promEndPoint.HonorTimestamps,
ProxyURL: promEndPoint.ProxyURL,
FollowRedirects: promEndPoint.FollowRedirects,
diff --git a/internal/controller/operator/converter/v1alpha1/apis.go b/internal/controller/operator/converter/v1alpha1/apis.go
index 5b443dae..c815b081 100644
--- a/internal/controller/operator/converter/v1alpha1/apis.go
+++ b/internal/controller/operator/converter/v1alpha1/apis.go
@@ -143,7 +143,6 @@ func ConvertScrapeConfig(promscrapeConfig *promv1alpha1.ScrapeConfig, conf *conf
cs.Annotations = converter.FilterPrefixes(promscrapeConfig.Annotations, conf.FilterPrometheusConverterAnnotationPrefixes)
cs.Spec.RelabelConfigs = converter.ConvertRelabelConfig(promscrapeConfig.Spec.RelabelConfigs)
cs.Spec.MetricRelabelConfigs = converter.ConvertRelabelConfig(promscrapeConfig.Spec.MetricRelabelConfigs)
- cs.Spec.Path = ptr.Deref(promscrapeConfig.Spec.MetricsPath, "")
if promscrapeConfig.Spec.EnableCompression != nil {
cs.Spec.VMScrapeParams = &vmv1beta1.VMScrapeParams{
diff --git a/internal/controller/operator/converter/v1alpha1/apis_test.go b/internal/controller/operator/converter/v1alpha1/apis_test.go
index b9eb578b..bbff8505 100644
--- a/internal/controller/operator/converter/v1alpha1/apis_test.go
+++ b/internal/controller/operator/converter/v1alpha1/apis_test.go
@@ -9,6 +9,7 @@ import (
"github.com/google/go-cmp/cmp"
promv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1"
promv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1"
+ "github.com/stretchr/testify/assert"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/utils/ptr"
@@ -203,6 +204,7 @@ func TestConvertScrapeConfig(t *testing.T) {
Spec: promv1alpha1.ScrapeConfigSpec{
KubernetesSDConfigs: []promv1alpha1.KubernetesSDConfig{
{
+
APIServer: ptr.To("http://1.2.3.4"),
Role: promv1alpha1.Role("pod"),
Selectors: []promv1alpha1.K8SSelectorConfig{
@@ -332,10 +334,177 @@ func TestConvertScrapeConfig(t *testing.T) {
Spec: vmv1beta1.VMScrapeConfigSpec{},
},
},
+ {
+ name: "with oauth2",
+ args: args{
+ scrapeConfig: &promv1alpha1.ScrapeConfig{
+ ObjectMeta: metav1.ObjectMeta{
+ Name: "test",
+ Namespace: "test-ns",
+ UID: "42",
+ },
+ Spec: promv1alpha1.ScrapeConfigSpec{
+ KubernetesSDConfigs: []promv1alpha1.KubernetesSDConfig{
+ {
+ OAuth2: &promv1.OAuth2{
+ ClientID: promv1.SecretOrConfigMap{
+ Secret: &corev1.SecretKeySelector{
+ Key: "some-key",
+ },
+ },
+ ClientSecret: corev1.SecretKeySelector{
+ Key: "secret-key",
+ },
+ },
+ Role: promv1alpha1.Role("endpointslices"),
+ Namespaces: &promv1alpha1.NamespaceDiscovery{
+ Names: []string{"default"},
+ },
+ },
+ },
+ StaticConfigs: []promv1alpha1.StaticConfig{
+ {Targets: []promv1alpha1.Target{"localhost"}},
+ },
+ JobName: ptr.To("some-job"),
+ ScrapeInterval: ptr.To(promv1.Duration("10s")),
+ ScrapeTimeout: ptr.To(promv1.Duration("20s")),
+ MetricsPath: ptr.To("/metrics/v1"),
+ HonorTimestamps: ptr.To(true),
+ HonorLabels: ptr.To(true),
+ SampleLimit: ptr.To(uint64(10)),
+ Scheme: ptr.To("http"),
+ Authorization: &promv1.SafeAuthorization{},
+ ProxyConfig: promv1.ProxyConfig{
+ ProxyURL: ptr.To("http://some-url"),
+ },
+ },
+ },
+ ownerRef: true,
+ },
+ want: vmv1beta1.VMScrapeConfig{
+ ObjectMeta: metav1.ObjectMeta{
+ Name: "test",
+ Namespace: "test-ns",
+ OwnerReferences: []metav1.OwnerReference{
+ {
+ APIVersion: "monitoring.coreos.com/v1alpha1",
+ Kind: "ScrapeConfig",
+ Name: "test",
+ UID: "42",
+ Controller: ptr.To(true),
+ BlockOwnerDeletion: ptr.To(true),
+ },
+ },
+ },
+ Spec: vmv1beta1.VMScrapeConfigSpec{
+ KubernetesSDConfigs: []vmv1beta1.KubernetesSDConfig{
+ {
+ OAuth2: &vmv1beta1.OAuth2{
+ ClientID: vmv1beta1.SecretOrConfigMap{
+ Secret: &corev1.SecretKeySelector{
+ Key: "some-key",
+ },
+ },
+ ClientSecret: &corev1.SecretKeySelector{
+ Key: "secret-key",
+ },
+ },
+ Role: "endpointslices",
+ Namespaces: &vmv1beta1.NamespaceDiscovery{
+ Names: []string{"default"},
+ },
+ },
+ },
+ StaticConfigs: []vmv1beta1.StaticConfig{
+ {
+ Targets: []string{"localhost"},
+ },
+ },
+ EndpointAuth: vmv1beta1.EndpointAuth{
+ Authorization: &vmv1beta1.Authorization{},
+ },
+ EndpointScrapeParams: vmv1beta1.EndpointScrapeParams{
+ ScrapeInterval: "10s",
+ ScrapeTimeout: "20s",
+ Path: "/metrics/v1",
+ HonorTimestamps: ptr.To(true),
+ HonorLabels: ptr.To(true),
+ SampleLimit: 10,
+ Scheme: "http",
+ ProxyURL: ptr.To("http://some-url"),
+ },
+ },
+ },
+ },
+ {
+ name: "with common scrape params",
+ args: args{
+ scrapeConfig: &promv1alpha1.ScrapeConfig{
+ ObjectMeta: metav1.ObjectMeta{
+ Name: "test",
+ Namespace: "test-ns",
+ UID: "42",
+ },
+ Spec: promv1alpha1.ScrapeConfigSpec{
+ StaticConfigs: []promv1alpha1.StaticConfig{
+ {Targets: []promv1alpha1.Target{"localhost"}},
+ },
+ JobName: ptr.To("some-job"),
+ ScrapeInterval: ptr.To(promv1.Duration("10s")),
+ ScrapeTimeout: ptr.To(promv1.Duration("20s")),
+ MetricsPath: ptr.To("/metrics/v1"),
+ HonorTimestamps: ptr.To(true),
+ HonorLabels: ptr.To(true),
+ SampleLimit: ptr.To(uint64(10)),
+ Scheme: ptr.To("http"),
+ ProxyConfig: promv1.ProxyConfig{
+ ProxyURL: ptr.To("http://some-url"),
+ },
+ },
+ },
+ ownerRef: true,
+ },
+ want: vmv1beta1.VMScrapeConfig{
+ ObjectMeta: metav1.ObjectMeta{
+ Name: "test",
+ Namespace: "test-ns",
+ OwnerReferences: []metav1.OwnerReference{
+ {
+ APIVersion: "monitoring.coreos.com/v1alpha1",
+ Kind: "ScrapeConfig",
+ Name: "test",
+ UID: "42",
+ Controller: ptr.To(true),
+ BlockOwnerDeletion: ptr.To(true),
+ },
+ },
+ },
+ Spec: vmv1beta1.VMScrapeConfigSpec{
+ StaticConfigs: []vmv1beta1.StaticConfig{
+ {
+ Targets: []string{"localhost"},
+ },
+ },
+ EndpointScrapeParams: vmv1beta1.EndpointScrapeParams{
+ ScrapeInterval: "10s",
+ ScrapeTimeout: "20s",
+ Path: "/metrics/v1",
+ HonorTimestamps: ptr.To(true),
+ HonorLabels: ptr.To(true),
+ SampleLimit: 10,
+ Scheme: "http",
+ ProxyURL: ptr.To("http://some-url"),
+ },
+ },
+ },
+ },
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got := ConvertScrapeConfig(tt.args.scrapeConfig, &config.BaseOperatorConf{EnabledPrometheusConverterOwnerReferences: tt.args.ownerRef})
+ if !assert.Equal(t, tt.want, *got) {
+ t.Fatal("expected to match")
+ }
if !cmp.Equal(*got, tt.want) {
diff := cmp.Diff(*got, tt.want)
t.Fatal("not expected output with diff: ", diff)
diff --git a/internal/controller/operator/factory/vmagent/nodescrape_test.go b/internal/controller/operator/factory/vmagent/nodescrape_test.go
index b8dfe0af..e903fe20 100644
--- a/internal/controller/operator/factory/vmagent/nodescrape_test.go
+++ b/internal/controller/operator/factory/vmagent/nodescrape_test.go
@@ -99,7 +99,7 @@ relabel_configs:
Path: "/metrics",
Interval: "30s",
Scheme: "https",
- HonorLabels: true,
+ HonorLabels: ptr.To(true),
ProxyURL: ptr.To("https://some-url"),
SampleLimit: 50,
SeriesLimit: 1000,
diff --git a/internal/controller/operator/factory/vmagent/scrapeconfig.go b/internal/controller/operator/factory/vmagent/scrapeconfig.go
index 777e1d20..947addaf 100644
--- a/internal/controller/operator/factory/vmagent/scrapeconfig.go
+++ b/internal/controller/operator/factory/vmagent/scrapeconfig.go
@@ -102,6 +102,9 @@ func generateScrapeConfig(
yaml.MapItem{Key: "password", Value: s.Password},
)
}
+ if len(config.BasicAuth.UsernameFile) > 0 {
+ bac = append(bac, yaml.MapItem{Key: "username_file", Value: config.BasicAuth.UsernameFile})
+ }
if len(config.BasicAuth.PasswordFile) > 0 {
bac = append(bac, yaml.MapItem{Key: "password_file", Value: config.BasicAuth.PasswordFile})
}
@@ -151,6 +154,9 @@ func generateScrapeConfig(
yaml.MapItem{Key: "password", Value: s.Password},
)
}
+ if len(config.BasicAuth.UsernameFile) > 0 {
+ bac = append(bac, yaml.MapItem{Key: "username_file", Value: config.BasicAuth.UsernameFile})
+ }
if len(config.BasicAuth.PasswordFile) > 0 {
bac = append(bac, yaml.MapItem{Key: "password_file", Value: config.BasicAuth.PasswordFile})
}
@@ -321,6 +327,9 @@ func generateScrapeConfig(
yaml.MapItem{Key: "password", Value: s.Password},
)
}
+ if len(config.BasicAuth.UsernameFile) > 0 {
+ bac = append(bac, yaml.MapItem{Key: "username_file", Value: config.BasicAuth.UsernameFile})
+ }
if len(config.BasicAuth.PasswordFile) > 0 {
bac = append(bac, yaml.MapItem{Key: "password_file", Value: config.BasicAuth.PasswordFile})
}
diff --git a/internal/controller/operator/factory/vmagent/servicescrape_test.go b/internal/controller/operator/factory/vmagent/servicescrape_test.go
index 98be68ce..2938856c 100644
--- a/internal/controller/operator/factory/vmagent/servicescrape_test.go
+++ b/internal/controller/operator/factory/vmagent/servicescrape_test.go
@@ -686,7 +686,7 @@ bearer_token_file: /var/run/tolen
HonorTimestamps: ptr.To(true),
FollowRedirects: ptr.To(true),
ProxyURL: ptr.To("https://some-proxy"),
- HonorLabels: true,
+ HonorLabels: ptr.To(true),
Scheme: "https",
Path: "/metrics",
diff --git a/internal/controller/operator/factory/vmagent/staticscrape_test.go b/internal/controller/operator/factory/vmagent/staticscrape_test.go
index dce906e9..92297618 100644
--- a/internal/controller/operator/factory/vmagent/staticscrape_test.go
+++ b/internal/controller/operator/factory/vmagent/staticscrape_test.go
@@ -154,7 +154,7 @@ relabel_configs:
Path: "/metrics-1",
Scheme: "https",
ProxyURL: ptr.To("https://some-proxy"),
- HonorLabels: true,
+ HonorLabels: ptr.To(true),
HonorTimestamps: ptr.To(true),
VMScrapeParams: &vmv1beta1.VMScrapeParams{
diff --git a/internal/controller/operator/factory/vmagent/vmagent_scrapeconfig.go b/internal/controller/operator/factory/vmagent/vmagent_scrapeconfig.go
index 8dcb2ffe..86224bce 100644
--- a/internal/controller/operator/factory/vmagent/vmagent_scrapeconfig.go
+++ b/internal/controller/operator/factory/vmagent/vmagent_scrapeconfig.go
@@ -24,6 +24,7 @@ import (
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/types"
+ "k8s.io/utils/ptr"
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/controller-runtime/pkg/metrics"
)
@@ -1025,11 +1026,11 @@ func stringMapToMapSlice(m map[string]string) yaml.MapSlice {
// honorLabels determines the value of honor_labels.
// if overrideHonorLabels is true and user tries to set the
// value to true, we want to set honor_labels to false.
-func honorLabels(userHonorLabels, overrideHonorLabels bool) bool {
- if userHonorLabels && overrideHonorLabels {
+func honorLabels(userHonorLabels *bool, overrideHonorLabels bool) bool {
+ if overrideHonorLabels {
return false
}
- return userHonorLabels
+ return ptr.Deref(userHonorLabels, false)
}
// honorTimestamps adds option to enforce honor_timestamps option in scrape_config.
@@ -1389,6 +1390,9 @@ func buildProxyAuthConfig(namespace, cacheKey string, proxyAuth *vmv1beta1.Proxy
yaml.MapItem{Key: "password", Value: ba.Password},
)
}
+ if len(proxyAuth.BasicAuth.UsernameFile) > 0 {
+ pa = append(pa, yaml.MapItem{Key: "username_file", Value: proxyAuth.BasicAuth.UsernameFile})
+ }
if len(proxyAuth.BasicAuth.PasswordFile) > 0 {
pa = append(pa, yaml.MapItem{Key: "password_file", Value: proxyAuth.BasicAuth.PasswordFile})
}
@@ -1556,6 +1560,9 @@ func addEndpointAuthTo(cfg yaml.MapSlice, ac vmv1beta1.EndpointAuth, key string,
bac = append(bac, yaml.MapItem{Key: "password", Value: s.Password})
}
}
+ if len(ac.BasicAuth.UsernameFile) > 0 {
+ bac = append(bac, yaml.MapItem{Key: "username_file", Value: ac.BasicAuth.UsernameFile})
+ }
if len(ac.BasicAuth.PasswordFile) > 0 {
bac = append(bac, yaml.MapItem{Key: "password_file", Value: ac.BasicAuth.PasswordFile})
}