Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the obsapi v1alpha1 API group +kubebuilder:object:generate=true +groupName=core.observatorium.io
Index ¶
- Variables
- type APIRBAC
- type APISpec
- type APITenant
- type AlertmanagerConfigFile
- type CompactSpec
- type EndpointsConfig
- type Hashring
- type LokiObjectStorageConfigSpec
- type LokiSpec
- type MemCacheSpec
- type ObjectStorageConfig
- type Observatorium
- type ObservatoriumList
- type ObservatoriumSpec
- type ObservatoriumStatus
- type Permission
- type QueryFrontendSpec
- type QuerySpec
- type RBACRole
- type RBACRoleBinding
- type ReceiveControllerSpec
- type ReceiversSpec
- type RuleConfig
- type RuleSpec
- type StoreSpec
- type Subject
- type SubjectKind
- type TLS
- type TenantMTLS
- type TenantOIDC
- type ThanosObjectStorageConfigSpec
- type ThanosSpec
- type VolumeClaimTemplate
- type VolumeMount
- type VolumeMountType
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "core.observatorium.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type APIRBAC ¶
type APIRBAC struct { // Roles is a slice of Observatorium API roles. Roles []RBACRole `json:"roles"` // RoleBindings is a slice of Observatorium API role bindings. RoleBindings []RBACRoleBinding `json:"roleBindings"` }
APIRBAC represents a set of Observatorium API RBAC roles and role bindings.
func (*APIRBAC) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIRBAC.
func (*APIRBAC) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APISpec ¶
type APISpec struct { // API image Image string `json:"image,omitempty"` // API image pull policy ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"` // Number of API replicas. Replicas *int32 `json:"replicas,omitempty"` // Version describes the version of API to use. Version string `json:"version,omitempty"` // TLS configuration for the Observatorium API. TLS TLS `json:"tls,omitempty"` // RBAC is an RBAC configuration for the Observatorium API. RBAC APIRBAC `json:"rbac"` // Tenants is a slice of tenants for the Observatorium API. Tenants []APITenant `json:"tenants"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // AdditionalWriteEndpoints is a slice of additional write endpoint for the Observatorium API. // +optional AdditionalWriteEndpoints *EndpointsConfig `json:"additionalWriteEndpoints,omitempty"` }
func (*APISpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APISpec.
func (*APISpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APITenant ¶
type APITenant struct { Name string `json:"name"` ID string `json:"id"` // +optional OIDC *TenantOIDC `json:"oidc,omitempty"` // +optional MTLS *TenantMTLS `json:"mTLS,omitempty"` }
APITenant represents a tenant in the Observatorium API.
func (*APITenant) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APITenant.
func (*APITenant) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlertmanagerConfigFile ¶
type AlertmanagerConfigFile struct { // Alertmanager ConfigMap Name Name string `json:"name"` // Alertmanager ConfigMap key Key string `json:"key"` }
func (*AlertmanagerConfigFile) DeepCopy ¶
func (in *AlertmanagerConfigFile) DeepCopy() *AlertmanagerConfigFile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertmanagerConfigFile.
func (*AlertmanagerConfigFile) DeepCopyInto ¶
func (in *AlertmanagerConfigFile) DeepCopyInto(out *AlertmanagerConfigFile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CompactSpec ¶
type CompactSpec struct { // Number of Compact replicas. Replicas *int32 `json:"replicas,omitempty"` // VolumeClaimTemplate VolumeClaimTemplate VolumeClaimTemplate `json:"volumeClaimTemplate"` // RetentionResolutionRaw RetentionResolutionRaw string `json:"retentionResolutionRaw"` // RetentionResolutionRaw RetentionResolution5m string `json:"retentionResolution5m"` // RetentionResolutionRaw RetentionResolution1h string `json:"retentionResolution1h"` // EnableDownsampling enables downsampling. EnableDownsampling bool `json:"enableDownsampling,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // Time before a block marked for deletion is deleted from bucket // +optional DeleteDelay string `json:"deleteDelay,omitempty"` // Annotations is an unstructured key value map stored with a service account ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"` // The container object, provides a way to override parameters of existing containers. // Currently only the `args` value are overwritten. // +optional Containers []v1.Container `json:"containers,omitempty"` }
func (*CompactSpec) DeepCopy ¶
func (in *CompactSpec) DeepCopy() *CompactSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CompactSpec.
func (*CompactSpec) DeepCopyInto ¶
func (in *CompactSpec) DeepCopyInto(out *CompactSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointsConfig ¶
type EndpointsConfig struct { // Secret name for the endpoints configuration EndpointsConfigSecret string `json:"endpointsConfigSecret"` // Secret list to be mounted // +optional MountSecrets []string `json:"mountSecrets,omitempty"` // Mount path for the secrets // +optional MountPath string `json:"mountPath,omitempty"` }
EndpointsConfig contains the configuration for all endpoints
func (*EndpointsConfig) DeepCopy ¶
func (in *EndpointsConfig) DeepCopy() *EndpointsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointsConfig.
func (*EndpointsConfig) DeepCopyInto ¶
func (in *EndpointsConfig) DeepCopyInto(out *EndpointsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Hashring ¶
type Hashring struct { // Thanos Hashring name Hashring string `json:"hashring"` // Tenants describes a lists of tenants. Tenants []string `json:"tenants,omitempty"` }
func (*Hashring) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Hashring.
func (*Hashring) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LokiObjectStorageConfigSpec ¶
type LokiObjectStorageConfigSpec struct { // Object Store Config Secret Name SecretName string `json:"secretName"` // Object Store Config key for S3_URL // +optional EndpointKey string `json:"endpointKey"` // Object Store Config key for AWS_ACCESS_KEY_ID // +optional AccessKeyIDKey string `json:"accessKeyIdKey"` // Object Store Config key for AWS_SECRET_ACCESS_KEY // +optional SecretAccessKeyKey string `json:"secretAccessKeyKey"` // Object Store Config key for S3_BUCKETS // +optional BucketsKey string `json:"bucketsKey"` // Object Store Config key for S3_REGION // +optional RegionKey string `json:"regionKey"` }
func (*LokiObjectStorageConfigSpec) DeepCopy ¶
func (in *LokiObjectStorageConfigSpec) DeepCopy() *LokiObjectStorageConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LokiObjectStorageConfigSpec.
func (*LokiObjectStorageConfigSpec) DeepCopyInto ¶
func (in *LokiObjectStorageConfigSpec) DeepCopyInto(out *LokiObjectStorageConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LokiSpec ¶
type LokiSpec struct { // Loki image Image string `json:"image"` // Loki image pull policy ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"` // Loki replicas per component Replicas map[string]int32 `json:"replicas,omitempty"` // Version of Loki image to be deployed Version string `json:"version,omitempty"` // VolumeClaimTemplate VolumeClaimTemplate VolumeClaimTemplate `json:"volumeClaimTemplate"` }
func (*LokiSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LokiSpec.
func (*LokiSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemCacheSpec ¶
type MemCacheSpec struct { // Memcached image Image string `json:"image,omitempty"` // Memcached image pull policy ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"` // Version of Memcached image to be deployed. Version string `json:"version,omitempty"` // Memcached Prometheus Exporter image ExporterImage string `json:"exporterImage,omitempty"` // Memcached Prometheus Exporter image image pull policy ExporterImagePullPolicy v1.PullPolicy `json:"exporterImagePullPolicy,omitempty"` // Version of Memcached Prometheus Exporter image to be deployed. ExporterVersion string `json:"exporterVersion,omitempty"` // Number of Memcached replicas. Replicas *int32 `json:"replicas,omitempty"` // Memory limit of Memcached in megabytes. MemoryLimitMB *int32 `json:"memoryLimitMb,omitempty"` // Max item size (default: 1m, min: 1k, max: 1024m) MaxItemSize string `json:"maxItemSize,omitempty"` // Max simultaneous connections ConnectionLimit *int32 `json:"connectionLimit,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // Compute Resources required by this container. // +optional ExporterResources v1.ResourceRequirements `json:"exporterResources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` }
MemCacheSpec describes configuration for Store Memcached
func (*MemCacheSpec) DeepCopy ¶
func (in *MemCacheSpec) DeepCopy() *MemCacheSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemCacheSpec.
func (*MemCacheSpec) DeepCopyInto ¶
func (in *MemCacheSpec) DeepCopyInto(out *MemCacheSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStorageConfig ¶
type ObjectStorageConfig struct { // Object Store Config Secret for Thanos Thanos *ThanosObjectStorageConfigSpec `json:"thanos"` // Object Store Config Secret for Loki // +optional Loki *LokiObjectStorageConfigSpec `json:"loki,omitempty"` }
func (*ObjectStorageConfig) DeepCopy ¶
func (in *ObjectStorageConfig) DeepCopy() *ObjectStorageConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStorageConfig.
func (*ObjectStorageConfig) DeepCopyInto ¶
func (in *ObjectStorageConfig) DeepCopyInto(out *ObjectStorageConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Observatorium ¶
type Observatorium struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ObservatoriumSpec `json:"spec,omitempty"` Status ObservatoriumStatus `json:"status,omitempty"` }
Observatorium is the Schema for the observatoria API +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*Observatorium) DeepCopy ¶
func (in *Observatorium) DeepCopy() *Observatorium
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Observatorium.
func (*Observatorium) DeepCopyInto ¶
func (in *Observatorium) DeepCopyInto(out *Observatorium)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Observatorium) DeepCopyObject ¶
func (in *Observatorium) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ObservatoriumList ¶
type ObservatoriumList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Observatorium `json:"items"` }
ObservatoriumList contains a list of Observatorium
func (*ObservatoriumList) DeepCopy ¶
func (in *ObservatoriumList) DeepCopy() *ObservatoriumList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObservatoriumList.
func (*ObservatoriumList) DeepCopyInto ¶
func (in *ObservatoriumList) DeepCopyInto(out *ObservatoriumList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObservatoriumList) DeepCopyObject ¶
func (in *ObservatoriumList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ObservatoriumSpec ¶
type ObservatoriumSpec struct { // Objest Storage Configuration ObjectStorageConfig ObjectStorageConfig `json:"objectStorageConfig"` // Hashrings describes a list of Hashrings Hashrings []*Hashring `json:"hashrings"` // EnvVars define the common environment variables. // EnvVars apply to thanos compact/receive/rule/store components // +optional EnvVars map[string]string `json:"envVars,omitempty"` // Thanos Spec // +optional Thanos ThanosSpec `json:"thanos"` // API API APISpec `json:"api,omitempty"` // Loki // +optional Loki *LokiSpec `json:"loki,omitempty"` // NodeSelector causes all components to be scheduled on nodes with matching labels. // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // Affinity causes all components to be scheduled on nodes with matching rules. // +optional Affinity *v1.Affinity `json:"affinity,omitempty"` // Tolerations causes all components to tolerate specified taints. // +optional Tolerations []v1.Toleration `json:"tolerations,omitempty"` // Security options the pod should run with. // +optional SecurityContext *v1.SecurityContext `json:"securityContext,omitempty"` // Pull secret used to pull the images. // +optional PullSecret string `json:"pullSecret,omitempty"` }
ObservatoriumSpec defines the desired state of Observatorium
func (*ObservatoriumSpec) DeepCopy ¶
func (in *ObservatoriumSpec) DeepCopy() *ObservatoriumSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObservatoriumSpec.
func (*ObservatoriumSpec) DeepCopyInto ¶
func (in *ObservatoriumSpec) DeepCopyInto(out *ObservatoriumSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObservatoriumStatus ¶
type ObservatoriumStatus struct { // Represents the status of Observatorium // +optional Conditions []*feedback.StatusCondition `json:"conditions"` }
ObservatoriumStatus defines the observed state of Observatorium
func (*ObservatoriumStatus) DeepCopy ¶
func (in *ObservatoriumStatus) DeepCopy() *ObservatoriumStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObservatoriumStatus.
func (*ObservatoriumStatus) DeepCopyInto ¶
func (in *ObservatoriumStatus) DeepCopyInto(out *ObservatoriumStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Permission ¶
type Permission string
Permission is an Observatorium RBAC permission.
const ( // Write gives access to write data to a tenant. Write Permission = "write" // Read gives access to read data from a tenant. Read Permission = "read" )
type QueryFrontendSpec ¶
type QueryFrontendSpec struct { // Number of Query Frontend replicas. Replicas *int32 `json:"replicas,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // Memcached spec for QueryFrontend Cache MemCacheSpec `json:"cache,omitempty"` // The container object, provides a way to override parameters of existing containers. // Currently only the `args` value are overwritten. // +optional Containers []v1.Container `json:"containers,omitempty"` }
func (*QueryFrontendSpec) DeepCopy ¶
func (in *QueryFrontendSpec) DeepCopy() *QueryFrontendSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueryFrontendSpec.
func (*QueryFrontendSpec) DeepCopyInto ¶
func (in *QueryFrontendSpec) DeepCopyInto(out *QueryFrontendSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type QuerySpec ¶
type QuerySpec struct { // Number of Query replicas. Replicas *int32 `json:"replicas,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // The maximum lookback duration for retrieving metrics during expression evaluations. // +optional LookbackDelta string `json:"lookbackDelta,omitempty"` // Annotations is an unstructured key value map stored with a service account // +optional ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"` // Default to old Prometheus engine instead of Thanos PromQL engine. // +optional UsePrometheusEngine bool `json:"usePrometheusEngine,omitempty"` // The container object, provides a way to override parameters of existing containers. // Currently only the `args` value are overwritten. // +optional Containers []v1.Container `json:"containers,omitempty"` }
func (*QuerySpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuerySpec.
func (*QuerySpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RBACRole ¶
type RBACRole struct { // Name is the name of the role. Name string `json:"name"` // Resources is a list of resources to which access will be granted. Resources []string `json:"resources"` // Tenants is a list of tenants whose resources will be considered. Tenants []string `json:"tenants"` // Permissions is a list of permissions that will be granted. Permissions []Permission `json:"permissions"` }
RBACRole describes a set of permissions to interact with a tenant.
func (*RBACRole) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACRole.
func (*RBACRole) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RBACRoleBinding ¶
type RBACRoleBinding struct { // Name is the name of the role binding. Name string `json:"name"` // Subjects is a list of subjects who will be given access to the specified roles. Subjects []Subject `json:"subjects"` // Roles is a list of roles that will be bound. Roles []string `json:"roles"` }
RBACRoleBinding binds a set of roles to a set of subjects.
func (*RBACRoleBinding) DeepCopy ¶
func (in *RBACRoleBinding) DeepCopy() *RBACRoleBinding
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACRoleBinding.
func (*RBACRoleBinding) DeepCopyInto ¶
func (in *RBACRoleBinding) DeepCopyInto(out *RBACRoleBinding)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReceiveControllerSpec ¶
type ReceiveControllerSpec struct { // Receive Controller image Image string `json:"image,omitempty"` // Receive image pull policy ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"` // Version describes the version of Thanos receive controller to use. Version string `json:"version,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` }
func (*ReceiveControllerSpec) DeepCopy ¶
func (in *ReceiveControllerSpec) DeepCopy() *ReceiveControllerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReceiveControllerSpec.
func (*ReceiveControllerSpec) DeepCopyInto ¶
func (in *ReceiveControllerSpec) DeepCopyInto(out *ReceiveControllerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReceiversSpec ¶
type ReceiversSpec struct { // Number of Receiver replicas. Replicas *int32 `json:"replicas,omitempty"` // VolumeClaimTemplate VolumeClaimTemplate VolumeClaimTemplate `json:"volumeClaimTemplate"` // ReplicationFactor defines the number of copies of every time-series ReplicationFactor *int32 `json:"replicationFactor,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // How long to retain raw samples on local storage // +optional Retention string `json:"retention,omitempty"` // Annotations is an unstructured key value map stored with a service account // +optional ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"` // The container object, provides a way to override parameters of existing containers. // Currently only the `args` value are overwritten. // +optional Containers []v1.Container `json:"containers,omitempty"` }
func (*ReceiversSpec) DeepCopy ¶
func (in *ReceiversSpec) DeepCopy() *ReceiversSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReceiversSpec.
func (*ReceiversSpec) DeepCopyInto ¶
func (in *ReceiversSpec) DeepCopyInto(out *ReceiversSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuleConfig ¶
type RuleConfig struct { // Rule ConfigMap Name Name string `json:"name"` // Rule ConfigMap key Key string `json:"key"` }
func (*RuleConfig) DeepCopy ¶
func (in *RuleConfig) DeepCopy() *RuleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleConfig.
func (*RuleConfig) DeepCopyInto ¶
func (in *RuleConfig) DeepCopyInto(out *RuleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuleSpec ¶
type RuleSpec struct { // Number of Rule replicas. Replicas *int32 `json:"replicas,omitempty"` // VolumeClaimTemplate VolumeClaimTemplate VolumeClaimTemplate `json:"volumeClaimTemplate"` // RulesConfig configures rules from the configmaps // +optional RulesConfig []RuleConfig `json:"rulesConfig,omitempty"` // AlertmanagerURLs // +optional AlertmanagerURLs []string `json:"alertmanagerURLs,omitempty"` // ExtraVolumeMounts // +optional ExtraVolumeMounts []VolumeMount `json:"extraVolumeMounts,omitempty"` // AlertmanagerConfigFile // +optional AlertmanagerConfigFile AlertmanagerConfigFile `json:"alertmanagerConfigFile,omitempty"` // ReloaderImage is an image of configmap reloader // +optional ReloaderImage string `json:"reloaderImage,omitempty"` // ReloaderImage image pull policy // +optional ReloaderImagePullPolicy v1.PullPolicy `json:"reloaderImagePullPolicy,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // Compute Resources required by this container. // +optional ReloaderResources v1.ResourceRequirements `json:"reloaderResources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // Block duration for TSDB block // +optional BlockDuration string `json:"blockDuration,omitempty"` // Block retention time on local disk // +optional Retention string `json:"retention,omitempty"` // Evaluation interval // +optional EvalInterval string `json:"evalInterval,omitempty"` // Annotations is an unstructured key value map stored with a service account // +optional ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"` // The container object, provides a way to override parameters of existing containers. // Currently only the `args` value are overwritten. // +optional Containers []v1.Container `json:"containers,omitempty"` }
func (*RuleSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleSpec.
func (*RuleSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StoreSpec ¶
type StoreSpec struct { // VolumeClaimTemplate VolumeClaimTemplate VolumeClaimTemplate `json:"volumeClaimTemplate"` Shards *int32 `json:"shards,omitempty"` // Memcached spec for Store Cache MemCacheSpec `json:"cache,omitempty"` // Compute Resources required by this container. // +optional Resources v1.ResourceRequirements `json:"resources,omitempty"` // ServiceMonitor enables servicemonitor. // +optional ServiceMonitor bool `json:"serviceMonitor,omitempty"` // Annotations is an unstructured key value map stored with a service account // +optional ServiceAccountAnnotations map[string]string `json:"serviceAccountAnnotations,omitempty"` // The container object, provides a way to override parameters of existing containers. // Currently only the `args` value are overwritten. // +optional Containers []v1.Container `json:"containers,omitempty"` }
func (*StoreSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StoreSpec.
func (*StoreSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Subject ¶
type Subject struct { Kind SubjectKind `json:"kind"` Name string `json:"name"` }
Subject represents a subject to which an RBAC role can be bound.
func (*Subject) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subject.
func (*Subject) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubjectKind ¶
type SubjectKind string
SubjectKind is a kind of Observatorium subject.
const ( // User represents a subject that is a user. User SubjectKind = "user" // Group represents a subject that is a group. Group SubjectKind = "group" )
type TLS ¶
type TLS struct { SecretName string `json:"secretName"` CertKey string `json:"certKey"` KeyKey string `json:"keyKey"` // +optional ConfigMapName string `json:"configMapName,omitempty"` // +optional CAKey string `json:"caKey,omitempty"` // +optional ServerName string `json:"serverName,omitempty"` // +optional ReloadInterval string `json:"reloadInterval,omitempty"` }
TLS contains the TLS configuration for a component.
func (*TLS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLS.
func (*TLS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TenantMTLS ¶
type TenantMTLS struct { CAKey string `json:"caKey"` // +optional SecretName string `json:"secretName,omitempty"` // +optional ConfigMapName string `json:"configMapName,omitempty"` }
TenantMTLS represents the mTLS configuration for an Observatorium API tenant.
func (*TenantMTLS) DeepCopy ¶
func (in *TenantMTLS) DeepCopy() *TenantMTLS
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantMTLS.
func (*TenantMTLS) DeepCopyInto ¶
func (in *TenantMTLS) DeepCopyInto(out *TenantMTLS)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TenantOIDC ¶
type TenantOIDC struct { ClientID string `json:"clientID"` ClientSecret string `json:"clientSecret,omitempty"` IssuerURL string `json:"issuerURL"` RedirectURL string `json:"redirectURL,omitempty"` UsernameClaim string `json:"usernameClaim,omitempty"` CAKey string `json:"caKey,omitempty"` ConfigMapName string `json:"configMapName,omitempty"` IssuerCAPath string `json:"issuerCAPath,omitempty"` }
TenantOIDC represents the OIDC configuration for an Observatorium API tenant.
func (*TenantOIDC) DeepCopy ¶
func (in *TenantOIDC) DeepCopy() *TenantOIDC
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantOIDC.
func (*TenantOIDC) DeepCopyInto ¶
func (in *TenantOIDC) DeepCopyInto(out *TenantOIDC)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThanosObjectStorageConfigSpec ¶
type ThanosObjectStorageConfigSpec struct { // Object Store Config Secret Name Name string `json:"name"` // Object Store Config key Key string `json:"key"` // TLS secret contains the custom certificate for the object store // +optional TLSSecretName string `json:"tlsSecretName"` // TLS secret mount path in thanos store/ruler/compact/receiver // +optional TLSSecretMountPath string `json:"tlsSecretMountPath"` // When set to true, mounts service account token in thanos store, ruler, compact and receiver pods. Default is false. // +optional ServiceAccountProjection bool `json:"serviceAccountProjection"` }
func (*ThanosObjectStorageConfigSpec) DeepCopy ¶
func (in *ThanosObjectStorageConfigSpec) DeepCopy() *ThanosObjectStorageConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThanosObjectStorageConfigSpec.
func (*ThanosObjectStorageConfigSpec) DeepCopyInto ¶
func (in *ThanosObjectStorageConfigSpec) DeepCopyInto(out *ThanosObjectStorageConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThanosSpec ¶
type ThanosSpec struct { // Thanos image Image string `json:"image,omitempty"` // Thanos image pull policy ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"` // Version of Thanos image to be deployed. Version string `json:"version,omitempty"` // Thanos CompactSpec Compact CompactSpec `json:"compact"` // Thanos Receive Controller Spec ReceiveController ReceiveControllerSpec `json:"receiveController,omitempty"` // Thanos ThanosPersistentSpec Receivers ReceiversSpec `json:"receivers"` // Thanos QueryFrontend QueryFrontend QueryFrontendSpec `json:"queryFrontend,omitempty"` // Thanos StoreSpec Store StoreSpec `json:"store"` // Thanos RulerSpec Rule RuleSpec `json:"rule"` // Query Query QuerySpec `json:"query,omitempty"` }
func (*ThanosSpec) DeepCopy ¶
func (in *ThanosSpec) DeepCopy() *ThanosSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThanosSpec.
func (*ThanosSpec) DeepCopyInto ¶
func (in *ThanosSpec) DeepCopyInto(out *ThanosSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeClaimTemplate ¶
type VolumeClaimTemplate struct {
Spec v1.PersistentVolumeClaimSpec `json:"spec"`
}
func (*VolumeClaimTemplate) DeepCopy ¶
func (in *VolumeClaimTemplate) DeepCopy() *VolumeClaimTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeClaimTemplate.
func (*VolumeClaimTemplate) DeepCopyInto ¶
func (in *VolumeClaimTemplate) DeepCopyInto(out *VolumeClaimTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeMount ¶
type VolumeMount struct { // Voume mount type, configMap or secret Type VolumeMountType `json:"type"` // Volume mount path in the pod MountPath string `json:"mountPath"` // Resource name for the volume mount source Name string `json:"name"` // File name for the mount Key string `json:"key"` }
func (*VolumeMount) DeepCopy ¶
func (in *VolumeMount) DeepCopy() *VolumeMount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeMount.
func (*VolumeMount) DeepCopyInto ¶
func (in *VolumeMount) DeepCopyInto(out *VolumeMount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeMountType ¶
type VolumeMountType string
var ( VolumeMountTypeConfigMap VolumeMountType = "configMap" VolumeMountTypeSecret VolumeMountType = "secret" )