Documentation
¶
Index ¶
Constants ¶
View Source
const (
// ServicePortName is the name of the port in the Service specification.
ServicePortName = "web"
)
Variables ¶
View Source
var TimeoutWaitForManagedResource = 5 * time.Minute
TimeoutWaitForManagedResource is the timeout used while waiting for the ManagedResources to become healthy or deleted.
Functions ¶
This section is empty.
Types ¶
type AlertingValues ¶
type AlertingValues struct {
// AlertmanagerName is the name of the alertmanager to which alerts should be sent.
AlertmanagerName string
}
AlertingValues contains alerting configuration for this Prometheus instance.
type CentralConfigs ¶
type CentralConfigs struct {
// AdditionalScrapeConfigs are additional scrape configs which cannot be modelled with the CRDs of the Prometheus
// operator.
AdditionalScrapeConfigs []string
// PrometheusRules is a list of central PrometheusRule objects for this prometheus instance.
PrometheusRules []*monitoringv1.PrometheusRule
// ScrapeConfigs is a list of central ScrapeConfig objects for this prometheus instance.
ScrapeConfigs []*monitoringv1alpha1.ScrapeConfig
// ServiceMonitors is a list of central ServiceMonitor objects for this prometheus instance.
ServiceMonitors []*monitoringv1.ServiceMonitor
// PodMonitors is a list of central PodMonitor objects for this prometheus instance.
PodMonitors []*monitoringv1.PodMonitor
}
CentralConfigs contains configuration for this Prometheus instance that is created together with it. This should only contain configuration that cannot be directly assigned to another component package.
type IngressValues ¶
type IngressValues struct {
// AuthSecretName is the name of the auth secret.
AuthSecretName string
// Host is the hostname under which the Prometheus instance should be exposed.
Host string
// SecretsManager is the secrets manager used for generating the TLS certificate if no wildcard certificate is
// provided.
SecretsManager secretsmanager.Interface
// SigningCA is the name of the CA that should be used the sign a self-signed server certificate. Only needed when
// no wildcard certificate secret is provided.
SigningCA string
// WildcardCertSecretName is name of a secret containing the wildcard TLS certificate which is issued for the
// ingress domain. If not provided, a self-signed server certificate will be created.
WildcardCertSecretName *string
}
IngressValues contains configuration for exposing this Prometheus instance via an Ingress resource.
type Interface ¶ added in v1.93.0
type Interface interface {
component.DeployWaiter
// SetIngressAuthSecret sets the ingress authentication secret name.
SetIngressAuthSecret(*corev1.Secret)
// SetIngressWildcardCertSecret sets the ingress wildcard certificate secret name.
SetIngressWildcardCertSecret(*corev1.Secret)
// SetCentralScrapeConfigs sets the central scrape configs.
SetCentralScrapeConfigs([]*monitoringv1alpha1.ScrapeConfig)
}
Interface contains functions for a Prometheus deployer.
type Values ¶
type Values struct {
// Name is the name of the prometheus. It will be used for the resource names of Prometheus and ManagedResource.
Name string
// Image defines the container image of prometheus.
Image string
// Version is the version of prometheus.
Version string
// PriorityClassName is the name of the priority class for the deployment.
PriorityClassName string
// StorageCapacity is the storage capacity of Prometheus.
StorageCapacity resource.Quantity
// Replicas is the number of replicas.
Replicas int32
// Retention is the duration for the data retention.
Retention *monitoringv1.Duration
// RetentionSize is the size for the data retention.
RetentionSize monitoringv1.ByteSize
// RuntimeVersion is the Kubernetes version of the runtime cluster.
RuntimeVersion *semver.Version
// ScrapeTimeout is the timeout duration when scraping targets.
ScrapeTimeout monitoringv1.Duration
// VPAMinAllowed defines the resource list for the minAllowed field for the prometheus container resource policy.
VPAMinAllowed *corev1.ResourceList
// VPAMaxAllowed defines the resource list for the maxAllowed field for the prometheus container resource policy.
VPAMaxAllowed *corev1.ResourceList
// ExternalLabels is the set of external labels for the Prometheus configuration.
ExternalLabels map[string]string
// AdditionalPodLabels is a map containing additional labels for the created pods.
AdditionalPodLabels map[string]string
// CentralConfigs contains configuration for this Prometheus instance that is created together with it. This should
// only contain configuration that cannot be directly assigned to another component package.
CentralConfigs CentralConfigs
// IngressValues contains configuration for exposing this Prometheus instance via an Ingress resource.
Ingress *IngressValues
// Alerting contains alerting configuration for this Prometheus instance.
Alerting *AlertingValues
// AdditionalResources contains any additional resources which get added to the ManagedResource.
AdditionalResources []client.Object
// DataMigration is a struct for migrating data from existing disks.
// TODO(rfranzke): Remove this as soon as the PV migration code is removed.
DataMigration monitoring.DataMigration
}
Values contains configuration values for the prometheus resources.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.