Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the telemetry v1beta1 API group +kubebuilder:object:generate=true +groupName=telemetry.openstack.org
Index ¶
- Constants
- Variables
- func SetupAutoscalingDefaults(defaults AutoscalingDefaults)
- func SetupCeilometerDefaults(defaults CeilometerDefaults)
- func SetupDefaultsAutoscaling()
- func SetupDefaultsCeilometer()
- func SetupDefaultsTelemetry()
- func SetupTelemetryDefaults(defaults TelemetryDefaults)
- type APIOverrideSpec
- type Aodh
- type AodhCore
- type Autoscaling
- func (in *Autoscaling) DeepCopy() *Autoscaling
- func (in *Autoscaling) DeepCopyInto(out *Autoscaling)
- func (in *Autoscaling) DeepCopyObject() runtime.Object
- func (r *Autoscaling) Default()
- func (instance *Autoscaling) GetLastAppliedTopology() *topologyv1.TopoRef
- func (instance *Autoscaling) GetSpecTopologyRef() *topologyv1.TopoRef
- func (instance Autoscaling) IsReady() bool
- func (instance Autoscaling) RbacConditionsSet(c *condition.Condition)
- func (instance Autoscaling) RbacNamespace() string
- func (instance Autoscaling) RbacResourceName() string
- func (instance *Autoscaling) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
- func (r *Autoscaling) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Autoscaling) ValidateCreate() (admission.Warnings, error)
- func (r *Autoscaling) ValidateDelete() (admission.Warnings, error)
- func (r *Autoscaling) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type AutoscalingDefaults
- type AutoscalingList
- type AutoscalingSection
- type AutoscalingSectionCore
- type AutoscalingSpec
- type AutoscalingSpecBase
- type AutoscalingSpecCore
- type AutoscalingStatus
- type Ceilometer
- func (in *Ceilometer) DeepCopy() *Ceilometer
- func (in *Ceilometer) DeepCopyInto(out *Ceilometer)
- func (in *Ceilometer) DeepCopyObject() runtime.Object
- func (r *Ceilometer) Default()
- func (instance *Ceilometer) GetLastAppliedTopology() *topologyv1.TopoRef
- func (instance *Ceilometer) GetSpecTopologyRef() *topologyv1.TopoRef
- func (instance Ceilometer) IsReady() bool
- func (instance Ceilometer) RbacConditionsSet(c *condition.Condition)
- func (instance Ceilometer) RbacNamespace() string
- func (instance Ceilometer) RbacResourceName() string
- func (instance *Ceilometer) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
- func (r *Ceilometer) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Ceilometer) ValidateCreate() (admission.Warnings, error)
- func (r *Ceilometer) ValidateDelete() (admission.Warnings, error)
- func (r *Ceilometer) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type CeilometerDefaults
- type CeilometerList
- type CeilometerSection
- type CeilometerSectionCore
- type CeilometerSpec
- type CeilometerSpecCore
- type CeilometerStatus
- type KSMStatus
- type Logging
- func (in *Logging) DeepCopy() *Logging
- func (in *Logging) DeepCopyInto(out *Logging)
- func (in *Logging) DeepCopyObject() runtime.Object
- func (instance Logging) IsReady() bool
- func (instance Logging) RbacConditionsSet(c *condition.Condition)
- func (instance Logging) RbacNamespace() string
- func (instance Logging) RbacResourceName() string
- type LoggingList
- type LoggingSection
- type LoggingSpec
- type LoggingStatus
- type MetricStorage
- func (in *MetricStorage) DeepCopy() *MetricStorage
- func (in *MetricStorage) DeepCopyInto(out *MetricStorage)
- func (in *MetricStorage) DeepCopyObject() runtime.Object
- func (r *MetricStorage) Default()
- func (instance MetricStorage) IsReady() bool
- func (r *MetricStorage) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *MetricStorage) ValidateCreate() (admission.Warnings, error)
- func (r *MetricStorage) ValidateDelete() (admission.Warnings, error)
- func (r *MetricStorage) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type MetricStorageList
- type MetricStorageSection
- type MetricStorageSpec
- type MetricStorageStatus
- type MonitoringStack
- type PasswordsSelector
- type PersistentStorage
- type Storage
- type Telemetry
- func (in *Telemetry) DeepCopy() *Telemetry
- func (in *Telemetry) DeepCopyInto(out *Telemetry)
- func (in *Telemetry) DeepCopyObject() runtime.Object
- func (r *Telemetry) Default()
- func (instance Telemetry) IsReady() bool
- func (r *Telemetry) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *Telemetry) ValidateCreate() (admission.Warnings, error)
- func (r *Telemetry) ValidateDelete() (admission.Warnings, error)
- func (r *Telemetry) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type TelemetryDefaults
- type TelemetryList
- type TelemetrySpec
- func (in *TelemetrySpec) DeepCopy() *TelemetrySpec
- func (in *TelemetrySpec) DeepCopyInto(out *TelemetrySpec)
- func (spec *TelemetrySpec) Default()
- func (r TelemetrySpec) ValidateCreate(basePath *field.Path, namespace string) field.ErrorList
- func (spec *TelemetrySpec) ValidateTelemetryTopology(basePath *field.Path, namespace string) field.ErrorList
- func (r TelemetrySpec) ValidateUpdate(old TelemetrySpec, basePath *field.Path, namespace string) field.ErrorList
- type TelemetrySpecBase
- type TelemetrySpecCore
- func (in *TelemetrySpecCore) DeepCopy() *TelemetrySpecCore
- func (in *TelemetrySpecCore) DeepCopyInto(out *TelemetrySpecCore)
- func (spec *TelemetrySpecCore) Default()
- func (r TelemetrySpecCore) ValidateCreate(basePath *field.Path, namespace string) field.ErrorList
- func (spec *TelemetrySpecCore) ValidateTelemetryTopology(basePath *field.Path, namespace string) field.ErrorList
- func (r TelemetrySpecCore) ValidateUpdate(old TelemetrySpec, basePath *field.Path, namespace string) field.ErrorList
- type TelemetryStatus
Constants ¶
const ( // AodhAPIContainerImage - default fall-back image for Aodh API AodhAPIContainerImage = "quay.io/podified-antelope-centos9/openstack-aodh-api:current-podified" // AodhEvaluatorContainerImage - default fall-back image for Aodh Evaluator AodhEvaluatorContainerImage = "quay.io/podified-antelope-centos9/openstack-aodh-evaluator:current-podified" // AodhNotifierContainerImage - default fall-back image for Aodh Notifier AodhNotifierContainerImage = "quay.io/podified-antelope-centos9/openstack-aodh-notifier:current-podified" // AodhListenerContainerImage - default fall-back image for Aodh Listener AodhListenerContainerImage = "quay.io/podified-antelope-centos9/openstack-aodh-listener:current-podified" // DbSyncHash hash DbSyncHash = "dbsync" )
const ( // CeilometerCentralContainerImage - default fall-back image for Ceilometer Central CeilometerCentralContainerImage = "quay.io/podified-antelope-centos9/openstack-ceilometer-central:current-podified" // CeilometerNotificationContainerImage - default fall-back image for Ceilometer Notification CeilometerNotificationContainerImage = "quay.io/podified-antelope-centos9/openstack-ceilometer-notification:current-podified" // CeilometerSgCoreContainerImage - default fall-back image for Ceilometer SgCore CeilometerSgCoreContainerImage = "quay.io/openstack-k8s-operators/sg-core:latest" // CeilometerComputeContainerImage - default fall-back image for Ceilometer Compute CeilometerComputeContainerImage = "quay.io/podified-antelope-centos9/openstack-ceilometer-compute:current-podified" // CeilometerIpmiContainerImage - default fall-back image for Ceilometer Ipmi CeilometerIpmiContainerImage = "quay.io/podified-antelope-centos9/openstack-ceilometer-ipmi:current-podified" // CeilometerProxyContainerImage - default fall-back image for proxy container // CeilometerProxyContainerImage = "registry.redhat.io/ubi9/httpd-24:latest" CeilometerProxyContainerImage = "quay.io/podified-antelope-centos9/openstack-aodh-api:current-podified" // KubeStateMetricsImage - default fall-back image for KSM KubeStateMetricsImage = "registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.10.0" // MysqldExporterImage - default fall-back image for mysqld_exporter // MysqldExporterContainerImage = "quay.io/prometheus/mysqld-exporter:v0.16.0" MysqldExporterContainerImage = "" )
const ( // CeilometerReadyCondition Status=True condition which indicates if the Ceilometer is configured and operational CeilometerReadyCondition condition.Type = "CeilometerReady" // AutoscalingReadyCondition Status=True condition which indicates if the Autoscaling is configured and operational AutoscalingReadyCondition condition.Type = "AutoscalingReady" // MetricStorageReadyCondition Status=True condition which indicates if the MetricStorage is configured and operational MetricStorageReadyCondition condition.Type = "MetricStorageReady" // HeatReadyCondition Status=True condition which indicates if the Heat is configured and operational HeatReadyCondition condition.Type = "HeatReady" // MonitoringStackReadyCondition Status=True condition which indicates if the MonitoringStack is configured and operational MonitoringStackReadyCondition condition.Type = "MonitoringStackReady" // ScrapeConfigReadyCondition Status=True condition which indicates if the ScrapeConfig is configured and operational ScrapeConfigReadyCondition condition.Type = "ScrapeConfigReady" // PrometheusReadyCondition Status=True condition which indicates if the Prometheus watch is operational PrometheusReadyCondition condition.Type = "PrometheusReady" // LoggingReadyCondition Status=True condition which indicates if the Logging is configured and operational LoggingReadyCondition condition.Type = "LoggingReady" // LoggingCLONamespaceReadyCondition Status=True condition which indicates if the cluster-logging-operator namespace is created LoggingCLONamespaceReadyCondition condition.Type = "LoggingCLONamespaceReady" DashboardPrometheusRuleReadyCondition condition.Type = "DashboardPrometheusRuleReady" DashboardPluginReadyCondition condition.Type = "DashboardPluginReady" DashboardDatasourceReadyCondition condition.Type = "DashboardDatasourceReady" DashboardDefinitionReadyCondition condition.Type = "DashboardDefinitionReady" // KSMTLSInputReadyCondition Status=True condition when required TLS sources are ready for KSM KSMTLSInputReadyCondition condition.Type = "KSMTLSInputReady" // KSMDeploymentReadyCondition Status=True condition when KSM statefulset created ok KSMDeploymentReadyCondition condition.Type = "KSMDeploymentReady" // KSMServiceConfigReadyCondition Status=True Condition which indicates that all service config got rendered ok KSMServiceConfigReadyCondition condition.Type = "KSMServiceConfigReady" // KSMCreateServiceReadyCondition Status=True condition when k8s service for the KSM created ok KSMCreateServiceReadyCondition condition.Type = "KSMCreateServiceReady" // MysqldExporter conditions MysqldExporterDBReadyCondition condition.Type = "MysqldExporterDBReady" MysqldExporterDeploymentReadyCondition condition.Type = "MysqldExporterDeploymentReady" MysqldExporterMariaDBAccountReadyCondition condition.Type = "MysqldExporterMariaDBAccountReady" MysqldExporterServiceConfigReadyCondition condition.Type = "MysqldExporterServiceConfigReady" MysqldExporterTLSInputReadyCondition condition.Type = "MysqldExporterTLSInputReady" )
Telemetry Condition Types used by API objects.
const ( // // CeilometerReady condition messages // // CeilometerReadyInitMessage CeilometerReadyInitMessage = "Ceilometer not started" // CeilometerReadyMessage CeilometerReadyMessage = "Ceilometer completed" // CeilometerReadyErrorMessage CeilometerReadyErrorMessage = "Ceilometer error occured %s" // CeilometerReadyRunningMessage CeilometerReadyRunningMessage = "Ceilometer in progress" // // AutoscalingReady condition messages // // AutoscalingReadyInitMessage AutoscalingReadyInitMessage = "Autoscaling not started" // AutoscalingReadyMessage AutoscalingReadyMessage = "Autoscaling completed" // AutoscalingReadyErrorMessage AutoscalingReadyErrorMessage = "Autoscaling error occured %s" // AutoscalingReadyRunningMessage AutoscalingReadyRunningMessage = "Autoscaling in progress" // // MetricStorageReady condition messages // // MetricStorageReadyInitMessage MetricStorageReadyInitMessage = "MetricStorage not started" // MetricStorageReadyMessage MetricStorageReadyMessage = "MetricStorage completed" // MetricStorageReadyErrorMessage MetricStorageReadyErrorMessage = "MetricStorage error occured %s" // MetricStorageReadyRunningMessage MetricStorageReadyRunningMessage = "MetricStorage in progress" // // HeatReady condition messages // // HeatReadyInitMessage HeatReadyInitMessage = "Heat not started" // HeatReadyErrorMessage HeatReadyErrorMessage = "Heat error occured %s" // HeatReadyNotFoundMessage HeatReadyNotFoundMessage = "Heat has not been found" // HeatReadyUnreadyMessage HeatReadyUnreadyMessage = "Heat isn't ready yet" // // MonitoringStackReady condition messages // // MonitoringStackReadyInitMessage MonitoringStackReadyInitMessage = "MonitoringStack not started" // MonitoringStackUnableToOwnMessage MonitoringStackUnableToOwnMessage = "Error occured when trying to own: %s" // MonitoringStackReadyErrorMessage MonitoringStackReadyErrorMessage = "MonitoringStack error occured %s" // MonitoringStackReadyMisconfiguredMessage MonitoringStackReadyMisconfiguredMessage = "MonitoringStack isn't configured properly: %s" // // ScrapeConfigReady condition messages // // ScrapeConfigReadyInitMessage ScrapeConfigReadyInitMessage = "ScrapeConfig not started" // ScrapeConfigUnableToOwnMessage ScrapeConfigUnableToOwnMessage = "Error occured when trying to own %s" // // PrometheusReady condition messages // // PrometheusReadyInitMessage PrometheusReadyInitMessage = "Prometheus not ready" // PrometheusUnableToWatchMessage PrometheusUnableToWatchMessage = "Error occured when trying to watch %s" // PrometheusUnableToRemoveTLSMessage PrometheusUnableToRemoveTLSMessage = "Error occured when trying to remove TLS config: %s" // PrometheusUnableToRemoveNADMessage PrometheusUnableToRemoveNADMessage = "Error occured when trying to remove NAD config: %s" // // LoggingReady condition messages // // LoggingReadyInitMessage LoggingReadyInitMessage = "Logging not started" // LoggingReadyMessage LoggingReadyMessage = "Logging completed" // LoggingReadyErrorMessage LoggingReadyErrorMessage = "Logging error occured %s" // LoggingReadyRunningMessage LoggingReadyRunningMessage = "Logging in progress" // LoggingCLONamespaceFailedMessage LoggingCLONamespaceFailedMessage = "CLO Namespace %s does not exist" DashboardsNotEnabledMessage = "Dashboarding was not enabled, so no actions required" DashboardPrometheusRuleReadyInitMessage = "Dashboard PrometheusRule not started" DashboardPrometheusRuleUnableToOwnMessage = "Error occured when trying to own %s" DashboardPluginReadyInitMessage = "Dashboard Plugin not started" DashboardPluginFailedMessage = "Error occured when trying to install the dashboard plugin: %s" DashboardDatasourceReadyInitMessage = "Dashboard Datasource not started" DashboardDatasourceFailedMessage = "Error occured when trying to install the dashboard datasource: %s" DashboardDefinitionReadyInitMessage = "Dashboard Definition not started" DashboardDefinitionFailedMessage = "Error occured when trying to install the dashboard definitions: %s" // // KSMReady condition messages // // KSMDisabledMessage KSMDisabledMessage = "kube-state-metrics is disabled" // // mysqld_exporter condition messages // // MysqldExporterDisabledMessage MysqldExporterDisabledMessage = "mysqld_exporter is disabled" )
Common Messages used by API objects.
const ( // DefaultServiceName - DefaultServiceName = "metric-storage" // DefaultPvcStorageRequest - DefaultPvcStorageRequest = "20G" // DefaultPrometheusPort - DefaultPrometheusPort = 9090 // DefaultNodeExporterPort - DefaultNodeExporterPort = 9100 // DefaultPodmanExporterPort - DefaultPodmanExporterPort = 9882 // DefaultDataplaneNodeExporterPort - DefaultOpenStackNetworkExporterPort = 9105 // DefaultScrapeInterval - DefaultScrapeInterval = "30s" // PauseBetweenWatchAttempts - PauseBetweenWatchAttempts = time.Duration(60) * time.Second // DefaultKeplerPort - DefaultKeplerPort = 8888 // Dataplane power monitoring service name TelemetryPowerMonitoring = "telemetry-power-monitoring" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "telemetry.openstack.org", Version: "v1beta1"} // 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 )
var PrometheusReplicas int32 = 1
PrometheusReplicas -
Functions ¶
func SetupAutoscalingDefaults ¶ added in v0.4.0
func SetupAutoscalingDefaults(defaults AutoscalingDefaults)
SetupAutoscalingDefaults - initialize Autoscaling spec defaults for use with either internal or external webhooks
func SetupCeilometerDefaults ¶ added in v0.2.0
func SetupCeilometerDefaults(defaults CeilometerDefaults)
SetupCeilometerDefaults - initialize Ceilometer spec defaults for use with either internal or external webhooks
func SetupDefaultsAutoscaling ¶ added in v0.4.0
func SetupDefaultsAutoscaling()
SetupDefaultsAutoscaling - initializes any CRD field defaults based on environment variables (the defaulting mechanism itself is implemented via webhooks)
func SetupDefaultsCeilometer ¶ added in v0.2.0
func SetupDefaultsCeilometer()
SetupDefaultsCeilometer - initializes any CRD field defaults based on environment variables (the defaulting mechanism itself is implemented via webhooks)
func SetupDefaultsTelemetry ¶
func SetupDefaultsTelemetry()
SetupDefaultsTelemetry - initializes any CRD field defaults based on environment variables (the defaulting mechanism itself is implemented via webhooks)
func SetupTelemetryDefaults ¶
func SetupTelemetryDefaults(defaults TelemetryDefaults)
SetupTelemetryDefaults - initialize Telemetry spec defaults for use with either internal or external webhooks
Types ¶
type APIOverrideSpec ¶ added in v0.4.0
type APIOverrideSpec struct {
// Override configuration for the Service created to serve traffic to the cluster.
// The key must be the endpoint type (public, internal)
Service map[service.Endpoint]service.RoutedOverrideSpec `json:"service,omitempty"`
}
APIOverrideSpec to override the generated manifest of several child resources.
func (*APIOverrideSpec) DeepCopy ¶ added in v0.4.0
func (in *APIOverrideSpec) DeepCopy() *APIOverrideSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIOverrideSpec.
func (*APIOverrideSpec) DeepCopyInto ¶ added in v0.4.0
func (in *APIOverrideSpec) DeepCopyInto(out *APIOverrideSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Aodh ¶ added in v0.4.0
type Aodh struct {
AodhCore `json:",inline"`
// +kubebuilder:validation:Required
APIImage string `json:"apiImage"`
// +kubebuilder:validation:Required
EvaluatorImage string `json:"evaluatorImage"`
// +kubebuilder:validation:Required
NotifierImage string `json:"notifierImage"`
// +kubebuilder:validation:Required
ListenerImage string `json:"listenerImage"`
}
Aodh defines the aodh component spec
func (*Aodh) DeepCopy ¶ added in v0.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Aodh.
func (*Aodh) DeepCopyInto ¶ added in v0.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AodhCore ¶ added in v0.4.0
type AodhCore struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=60
// APITimeout for Route and Apache
APITimeout int `json:"apiTimeout"`
// RabbitMQ instance name
// Needed to request a transportURL that is created and used in Aodh
// +kubebuilder:default=rabbitmq
RabbitMqClusterName string `json:"rabbitMqClusterName,omitempty"`
// +kubebuilder:validation:Required
// +kubebuilder:default=openstack
// MariaDB instance name
// Right now required by the maridb-operator to get the credentials from the instance to create the DB
// Might not be required in future
DatabaseInstance string `json:"databaseInstance"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=aodh
// DatabaseAccount - optional MariaDBAccount CR name used for aodh DB, defaults to aodh
DatabaseAccount string `json:"databaseAccount"`
// PasswordSelectors - Selectors to identify the service from the Secret
// +kubebuilder:default:={aodhService: AodhPassword}
PasswordSelectors PasswordsSelector `json:"passwordSelector,omitempty"`
// ServiceUser - optional username used for this service to register in keystone
// +kubebuilder:validation:Optional
// +kubebuilder:default=aodh
ServiceUser string `json:"serviceUser"`
// Secret containing OpenStack password information for aodh
// +kubebuilder:validation:Required
// +kubebuilder:default=osp-secret
Secret string `json:"secret"`
// CustomServiceConfig - customize the service config using this parameter to change service defaults,
// or overwrite rendered information using raw OpenStack config format. The content gets added to
// to /etc/<service>/<service>.conf.d directory as custom.conf file.
// +kubebuilder:default:="# add your customization here"
CustomServiceConfig string `json:"customServiceConfig,omitempty"`
// ConfigOverwrite - interface to overwrite default config files like e.g. logging.conf or policy.json.
// But can also be used to add additional files. Those get added to the service config dir in /etc/<service> .
// TODO: -> implement
// +kubebuilder:validation:Optional
DefaultConfigOverwrite map[string]string `json:"defaultConfigOverwrite,omitempty"`
// NetworkAttachmentDefinitions list of network attachment definitions the service pod gets attached to
// +kubebuilder:validation:Optional
NetworkAttachmentDefinitions []string `json:"networkAttachmentDefinitions,omitempty"`
// Override, provides the ability to override the generated manifest of several child resources.
Override APIOverrideSpec `json:"override,omitempty"`
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
// PreserveJobs - do not delete jobs after they finished e.g. to check logs
PreserveJobs bool `json:"preserveJobs"`
// Memcached instance name.
// +kubebuilder:validation:Optional
// +kubebuilder:default=memcached
MemcachedInstance string `json:"memcachedInstance"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// TLS - Parameters related to the TLS
TLS tls.API `json:"tls,omitempty"`
// +kubebuilder:validation:Optional
// NodeSelector to target subset of worker nodes running this service
NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
// +kubebuilder:validation:Optional
// TopologyRef to apply the Topology defined by the associated CR referenced
// by name
TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}
Aodh defines the aodh component spec
func (*AodhCore) DeepCopy ¶ added in v0.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AodhCore.
func (*AodhCore) DeepCopyInto ¶ added in v0.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Autoscaling ¶ added in v0.2.0
type Autoscaling struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AutoscalingSpec `json:"spec,omitempty"`
Status AutoscalingStatus `json:"status,omitempty"`
}
Autoscaling is the Schema for the autoscalings API
func (*Autoscaling) DeepCopy ¶ added in v0.2.0
func (in *Autoscaling) DeepCopy() *Autoscaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Autoscaling.
func (*Autoscaling) DeepCopyInto ¶ added in v0.2.0
func (in *Autoscaling) DeepCopyInto(out *Autoscaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Autoscaling) DeepCopyObject ¶ added in v0.2.0
func (in *Autoscaling) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Autoscaling) Default ¶ added in v0.4.0
func (r *Autoscaling) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Autoscaling) GetLastAppliedTopology ¶ added in v0.6.0
func (instance *Autoscaling) GetLastAppliedTopology() *topologyv1.TopoRef
GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status
func (*Autoscaling) GetSpecTopologyRef ¶ added in v0.6.0
func (instance *Autoscaling) GetSpecTopologyRef() *topologyv1.TopoRef
GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status
func (Autoscaling) IsReady ¶ added in v0.2.0
func (instance Autoscaling) IsReady() bool
IsReady - returns true if Autescaling is reconciled successfully
func (Autoscaling) RbacConditionsSet ¶ added in v0.2.0
func (instance Autoscaling) RbacConditionsSet(c *condition.Condition)
RbacConditionsSet - set the conditions for the rbac object
func (Autoscaling) RbacNamespace ¶ added in v0.2.0
func (instance Autoscaling) RbacNamespace() string
RbacNamespace - return the namespace
func (Autoscaling) RbacResourceName ¶ added in v0.2.0
func (instance Autoscaling) RbacResourceName() string
RbacResourceName - return the name to be used for rbac objects (serviceaccount, role, rolebinding)
func (*Autoscaling) SetLastAppliedTopology ¶ added in v0.6.0
func (instance *Autoscaling) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status
func (*Autoscaling) SetupWebhookWithManager ¶ added in v0.4.0
func (r *Autoscaling) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager - setups webhook with the adequate manager
func (*Autoscaling) ValidateCreate ¶ added in v0.4.0
func (r *Autoscaling) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Autoscaling) ValidateDelete ¶ added in v0.4.0
func (r *Autoscaling) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*Autoscaling) ValidateUpdate ¶ added in v0.4.0
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type AutoscalingDefaults ¶ added in v0.4.0
type AutoscalingDefaults struct {
AodhAPIContainerImageURL string
AodhEvaluatorContainerImageURL string
AodhNotifierContainerImageURL string
AodhListenerContainerImageURL string
}
AutoscalingDefaults -
func (*AutoscalingDefaults) DeepCopy ¶ added in v0.4.0
func (in *AutoscalingDefaults) DeepCopy() *AutoscalingDefaults
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingDefaults.
func (*AutoscalingDefaults) DeepCopyInto ¶ added in v0.4.0
func (in *AutoscalingDefaults) DeepCopyInto(out *AutoscalingDefaults)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoscalingList ¶ added in v0.2.0
type AutoscalingList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Autoscaling `json:"items"`
}
AutoscalingList contains a list of Autoscaling
func (*AutoscalingList) DeepCopy ¶ added in v0.2.0
func (in *AutoscalingList) DeepCopy() *AutoscalingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingList.
func (*AutoscalingList) DeepCopyInto ¶ added in v0.2.0
func (in *AutoscalingList) DeepCopyInto(out *AutoscalingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AutoscalingList) DeepCopyObject ¶ added in v0.2.0
func (in *AutoscalingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AutoscalingSection ¶ added in v0.4.0
type AutoscalingSection struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Enabled - Whether OpenStack autoscaling service should be deployed and managed
Enabled *bool `json:"enabled"`
// +kubebuilder:validation:Optional
//+operator-sdk:csv:customresourcedefinitions:type=spec
// Template - Overrides to use when creating the OpenStack autoscaling service
AutoscalingSpec `json:",inline"`
}
AutoscalingSection defines the desired state of the autoscaling service
func (*AutoscalingSection) DeepCopy ¶ added in v0.4.0
func (in *AutoscalingSection) DeepCopy() *AutoscalingSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingSection.
func (*AutoscalingSection) DeepCopyInto ¶ added in v0.4.0
func (in *AutoscalingSection) DeepCopyInto(out *AutoscalingSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoscalingSectionCore ¶ added in v0.4.0
type AutoscalingSectionCore struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Enabled - Whether OpenStack autoscaling service should be deployed and managed
Enabled *bool `json:"enabled"`
// +kubebuilder:validation:Optional
//+operator-sdk:csv:customresourcedefinitions:type=spec
// Template - Overrides to use when creating the OpenStack autoscaling service
AutoscalingSpecCore `json:",inline"`
}
AutoscalingSectionCore defines the desired state of the autoscaling service
func (*AutoscalingSectionCore) DeepCopy ¶ added in v0.4.0
func (in *AutoscalingSectionCore) DeepCopy() *AutoscalingSectionCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingSectionCore.
func (*AutoscalingSectionCore) DeepCopyInto ¶ added in v0.4.0
func (in *AutoscalingSectionCore) DeepCopyInto(out *AutoscalingSectionCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoscalingSpec ¶ added in v0.2.0
type AutoscalingSpec struct {
AutoscalingSpecBase `json:",inline"`
// Aodh spec
// +kubebuilder:default={rabbitMqClusterName: rabbitmq, databaseAccount: aodh, passwordSelector: {aodhService: AodhPassword}, serviceUser: aodh, apiImage: "", evaluatorImage: "", notifierImage: "", listenerImage: "", databaseInstance: "openstack", secret: "osp-secret", memcachedInstance: "memcached"}
Aodh Aodh `json:"aodh,omitempty"`
}
AutoscalingSpec defines the desired state of Autoscaling
func (*AutoscalingSpec) DeepCopy ¶ added in v0.2.0
func (in *AutoscalingSpec) DeepCopy() *AutoscalingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingSpec.
func (*AutoscalingSpec) DeepCopyInto ¶ added in v0.2.0
func (in *AutoscalingSpec) DeepCopyInto(out *AutoscalingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AutoscalingSpec) Default ¶ added in v0.4.0
func (spec *AutoscalingSpec) Default()
Default - set defaults for this Autoscaling spec
type AutoscalingSpecBase ¶ added in v0.4.0
type AutoscalingSpecBase struct {
// Host of user deployed prometheus
// +kubebuilder:validation:Optional
PrometheusHost string `json:"prometheusHost,omitempty"`
// Port of user deployed prometheus
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=65535
// +kubebuilder:validation:Optional
PrometheusPort int32 `json:"prometheusPort,omitempty"`
// If defined, specifies which CA certificate to use for user deployed prometheus
// +kubebuilder:validation:Optional
// +nullable
PrometheusTLSCaCertSecret *corev1.SecretKeySelector `json:"prometheusTLSCaCertSecret,omitempty"`
// Heat instance name.
// +kubebuilder:default=heat
HeatInstance string `json:"heatInstance"`
}
AutoscalingSpecBase -
func (*AutoscalingSpecBase) DeepCopy ¶ added in v0.4.0
func (in *AutoscalingSpecBase) DeepCopy() *AutoscalingSpecBase
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingSpecBase.
func (*AutoscalingSpecBase) DeepCopyInto ¶ added in v0.4.0
func (in *AutoscalingSpecBase) DeepCopyInto(out *AutoscalingSpecBase)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoscalingSpecCore ¶ added in v0.4.0
type AutoscalingSpecCore struct {
AutoscalingSpecBase `json:",inline"`
// Aodh spec
// +kubebuilder:default={rabbitMqClusterName: rabbitmq, databaseAccount: aodh, passwordSelector: {aodhService: AodhPassword}, serviceUser: aodh, databaseInstance: "openstack", secret: "osp-secret", memcachedInstance: "memcached"}
Aodh AodhCore `json:"aodh,omitempty"`
}
AutoscalingSpecCore defines the desired state of Autoscaling (this version is used by the OpenStackControlplane no image parameters)
func (*AutoscalingSpecCore) DeepCopy ¶ added in v0.4.0
func (in *AutoscalingSpecCore) DeepCopy() *AutoscalingSpecCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingSpecCore.
func (*AutoscalingSpecCore) DeepCopyInto ¶ added in v0.4.0
func (in *AutoscalingSpecCore) DeepCopyInto(out *AutoscalingSpecCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AutoscalingSpecCore) SetDefaultRouteAnnotations ¶ added in v0.6.0
func (spec *AutoscalingSpecCore) SetDefaultRouteAnnotations(annotations map[string]string)
SetDefaultRouteAnnotations sets HAProxy timeout values of the route NOTE: it is used by ctlplane webhook on openstack-operator
type AutoscalingStatus ¶ added in v0.2.0
type AutoscalingStatus struct {
// ReadyCount of autoscaling instances
ReadyCount int32 `json:"readyCount,omitempty"`
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// Networks in addtion to the cluster network, the service is attached to
Networks []string `json:"networks,omitempty"`
// TransportURLSecret - Secret containing RabbitMQ transportURL
TransportURLSecret string `json:"transportURLSecret,omitempty"`
// DatabaseHostname - Hostname for the database
DatabaseHostname string `json:"databaseHostname,omitempty"`
// PrometheusHost - Hostname for prometheus used for autoscaling
PrometheusHost string `json:"prometheusHostname,omitempty"`
// PrometheusPort - Port for prometheus used for autoscaling
PrometheusPort int32 `json:"prometheusPort,omitempty"`
// PrometheusTLS - Determines if TLS should be used for accessing prometheus
PrometheusTLS bool `json:"prometheusTLS,omitempty"`
// API endpoint
APIEndpoints map[string]string `json:"apiEndpoint,omitempty"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}
AutoscalingStatus defines the observed state of Autoscaling
func (*AutoscalingStatus) DeepCopy ¶ added in v0.2.0
func (in *AutoscalingStatus) DeepCopy() *AutoscalingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscalingStatus.
func (*AutoscalingStatus) DeepCopyInto ¶ added in v0.2.0
func (in *AutoscalingStatus) DeepCopyInto(out *AutoscalingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Ceilometer ¶ added in v0.2.0
type Ceilometer struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec CeilometerSpec `json:"spec,omitempty"`
Status CeilometerStatus `json:"status,omitempty"`
KSMStatus KSMStatus `json:"ksmStatus,omitempty"`
}
Ceilometer is the Schema for the ceilometers API
func (*Ceilometer) DeepCopy ¶ added in v0.2.0
func (in *Ceilometer) DeepCopy() *Ceilometer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ceilometer.
func (*Ceilometer) DeepCopyInto ¶ added in v0.2.0
func (in *Ceilometer) DeepCopyInto(out *Ceilometer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Ceilometer) DeepCopyObject ¶ added in v0.2.0
func (in *Ceilometer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Ceilometer) Default ¶ added in v0.2.0
func (r *Ceilometer) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Ceilometer) GetLastAppliedTopology ¶ added in v0.6.0
func (instance *Ceilometer) GetLastAppliedTopology() *topologyv1.TopoRef
GetLastAppliedTopology - Returns the LastAppliedTopology Set in the Status
func (*Ceilometer) GetSpecTopologyRef ¶ added in v0.6.0
func (instance *Ceilometer) GetSpecTopologyRef() *topologyv1.TopoRef
GetSpecTopologyRef - Returns the LastAppliedTopology Set in the Status
func (Ceilometer) IsReady ¶ added in v0.2.0
func (instance Ceilometer) IsReady() bool
IsReady - returns true if Ceilometer is reconciled successfully
func (Ceilometer) RbacConditionsSet ¶ added in v0.2.0
func (instance Ceilometer) RbacConditionsSet(c *condition.Condition)
RbacConditionsSet - set the conditions for the rbac object
func (Ceilometer) RbacNamespace ¶ added in v0.2.0
func (instance Ceilometer) RbacNamespace() string
RbacNamespace - return the namespace
func (Ceilometer) RbacResourceName ¶ added in v0.2.0
func (instance Ceilometer) RbacResourceName() string
RbacResourceName - return the name to be used for rbac objects (serviceaccount, role, rolebinding)
func (*Ceilometer) SetLastAppliedTopology ¶ added in v0.6.0
func (instance *Ceilometer) SetLastAppliedTopology(topologyRef *topologyv1.TopoRef)
SetLastAppliedTopology - Sets the LastAppliedTopology value in the Status
func (*Ceilometer) SetupWebhookWithManager ¶ added in v0.2.0
func (r *Ceilometer) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager - setups webhook with the adequate manager
func (*Ceilometer) ValidateCreate ¶ added in v0.2.0
func (r *Ceilometer) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Ceilometer) ValidateDelete ¶ added in v0.2.0
func (r *Ceilometer) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*Ceilometer) ValidateUpdate ¶ added in v0.2.0
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type CeilometerDefaults ¶ added in v0.2.0
type CeilometerDefaults struct {
CentralContainerImageURL string
NotificationContainerImageURL string
SgCoreContainerImageURL string
ComputeContainerImageURL string
IpmiContainerImageURL string
ProxyContainerImageURL string
KSMContainerImageURL string
MysqldExporterContainerImageURL string
}
CeilometerDefaults -
func (*CeilometerDefaults) DeepCopy ¶ added in v0.2.0
func (in *CeilometerDefaults) DeepCopy() *CeilometerDefaults
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerDefaults.
func (*CeilometerDefaults) DeepCopyInto ¶ added in v0.2.0
func (in *CeilometerDefaults) DeepCopyInto(out *CeilometerDefaults)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CeilometerList ¶ added in v0.2.0
type CeilometerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Ceilometer `json:"items"`
}
CeilometerList contains a list of Ceilometer
func (*CeilometerList) DeepCopy ¶ added in v0.2.0
func (in *CeilometerList) DeepCopy() *CeilometerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerList.
func (*CeilometerList) DeepCopyInto ¶ added in v0.2.0
func (in *CeilometerList) DeepCopyInto(out *CeilometerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CeilometerList) DeepCopyObject ¶ added in v0.2.0
func (in *CeilometerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CeilometerSection ¶ added in v0.4.0
type CeilometerSection struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=true
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Enabled - Whether OpenStack Ceilometer service should be deployed and managed
Enabled *bool `json:"enabled"`
// +kubebuilder:validation:Optional
//+operator-sdk:csv:customresourcedefinitions:type=spec
// Template - Overrides to use when creating the OpenStack Ceilometer service
CeilometerSpec `json:",inline"`
}
CeilometerSection defines the desired state of the ceilometer service
func (*CeilometerSection) DeepCopy ¶ added in v0.4.0
func (in *CeilometerSection) DeepCopy() *CeilometerSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerSection.
func (*CeilometerSection) DeepCopyInto ¶ added in v0.4.0
func (in *CeilometerSection) DeepCopyInto(out *CeilometerSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CeilometerSectionCore ¶ added in v0.4.0
type CeilometerSectionCore struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=true
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Enabled - Whether OpenStack Ceilometer service should be deployed and managed
Enabled *bool `json:"enabled"`
// +kubebuilder:validation:Optional
//+operator-sdk:csv:customresourcedefinitions:type=spec
// Template - Overrides to use when creating the OpenStack Ceilometer service
CeilometerSpecCore `json:",inline"`
}
CeilometerSectionCore defines the desired state of the ceilometer service
func (*CeilometerSectionCore) DeepCopy ¶ added in v0.4.0
func (in *CeilometerSectionCore) DeepCopy() *CeilometerSectionCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerSectionCore.
func (*CeilometerSectionCore) DeepCopyInto ¶ added in v0.4.0
func (in *CeilometerSectionCore) DeepCopyInto(out *CeilometerSectionCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CeilometerSpec ¶ added in v0.2.0
type CeilometerSpec struct {
CeilometerSpecCore `json:",inline"`
// +kubebuilder:validation:Required
CentralImage string `json:"centralImage"`
// +kubebuilder:validation:Required
NotificationImage string `json:"notificationImage"`
// +kubebuilder:validation:Required
SgCoreImage string `json:"sgCoreImage"`
// +kubebuilder:validation:Required
ComputeImage string `json:"computeImage"`
// +kubebuilder:validation:Required
IpmiImage string `json:"ipmiImage"`
// +kubebuilder:validation:Required
ProxyImage string `json:"proxyImage"`
// +kubebuilder:validation:Optional
KSMImage string `json:"ksmImage"`
// +kubebuilder:validation:Optional
MysqldExporterImage string `json:"mysqldExporterImage"`
}
CeilometerSpec defines the desired state of Ceilometer
func (*CeilometerSpec) DeepCopy ¶ added in v0.2.0
func (in *CeilometerSpec) DeepCopy() *CeilometerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerSpec.
func (*CeilometerSpec) DeepCopyInto ¶ added in v0.2.0
func (in *CeilometerSpec) DeepCopyInto(out *CeilometerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CeilometerSpec) Default ¶ added in v0.2.0
func (spec *CeilometerSpec) Default()
Default - set defaults for this Ceilometer spec
type CeilometerSpecCore ¶ added in v0.4.0
type CeilometerSpecCore struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=60
// APITimeout for Apache
APITimeout int `json:"apiTimeout"`
// RabbitMQ instance name
// Needed to request a transportURL that is created and used in Telemetry
// +kubebuilder:default=rabbitmq
RabbitMqClusterName string `json:"rabbitMqClusterName,omitempty"`
// PasswordSelectors - Selectors to identify the service from the Secret
// +kubebuilder:default:={ceilometerService: CeilometerPassword}
PasswordSelectors PasswordsSelector `json:"passwordSelector,omitempty"`
// ServiceUser - optional username used for this service to register in keystone
// +kubebuilder:validation:Optional
// +kubebuilder:default=ceilometer
ServiceUser string `json:"serviceUser"`
// Secret containing OpenStack password information for ceilometer
// +kubebuilder:validation:Required
// +kubebuilder:default=osp-secret
Secret string `json:"secret"`
// CustomServiceConfig - customize the service config using this parameter to change service defaults,
// or overwrite rendered information using raw OpenStack config format. The content gets added to
// to /etc/<service>/<service>.conf.d directory as custom.conf file.
// +kubebuilder:default:="# add your customization here"
CustomServiceConfig string `json:"customServiceConfig,omitempty"`
// ConfigOverwrite - interface to overwrite default config files like e.g. logging.conf or policy.json.
// But can also be used to add additional files. Those get added to the service config dir in /etc/<service> .
// TODO: -> implement
DefaultConfigOverwrite map[string]string `json:"defaultConfigOverwrite,omitempty"`
// NetworkAttachmentDefinitions list of network attachment definitions the service pod gets attached to
// +listType=atomic
NetworkAttachmentDefinitions []string `json:"networkAttachmentDefinitions,omitempty"`
// Whether kube-state-metrics should be deployed
// +kubebuilder:validation:optional
// +kubebuilder:default=true
KSMEnabled *bool `json:"ksmEnabled,omitempty"`
// Whether mysqld_exporter should be deployed
// +kubebuilder:validation:optional
MysqldExporterEnabled *bool `json:"mysqldExporterEnabled,omitempty"`
// MysqldExporterDatabaseAccountPrefix - Database account prefix for the mysqld-exporter.
// A mariadbaccount CR named "<mysqldExporterDatabaseAccountPrefix>-<galera CR name>" for each
// galera instance needs to be either created by the user or if it's missing, it'll be
// created by the telemetry-operator automatically.
// +kubebuilder:validation:optional
// +kubebuilder:default=mysqld-exporter
MysqldExporterDatabaseAccountPrefix string `json:"mysqldExporterDatabaseAccountPrefix,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// TLS - Parameters related to the TLS
TLS tls.SimpleService `json:"tls,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// KSMTLS - Parameters related to the TLS for kube-state-metrics
KSMTLS tls.SimpleService `json:"ksmTls,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// MysqldExporterTLS - Parameters related to the TLS for mysqld_exporter
MysqldExporterTLS tls.SimpleService `json:"mysqldExporterTLS,omitempty"`
// +kubebuilder:validation:Optional
// NodeSelector to target subset of worker nodes running this service
NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
// +kubebuilder:validation:Optional
// TopologyRef to apply the Topology defined by the associated CR referenced
// by name
TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}
CeilometerSpecCore defines the desired state of Ceilometer. This version is used by the OpenStackControlplane (no image parameters)
func (*CeilometerSpecCore) DeepCopy ¶ added in v0.4.0
func (in *CeilometerSpecCore) DeepCopy() *CeilometerSpecCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerSpecCore.
func (*CeilometerSpecCore) DeepCopyInto ¶ added in v0.4.0
func (in *CeilometerSpecCore) DeepCopyInto(out *CeilometerSpecCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CeilometerStatus ¶ added in v0.2.0
type CeilometerStatus struct {
// ReadyCount of ceilometer instances
ReadyCount int32 `json:"readyCount,omitempty"`
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// TransportURLSecret - Secret containing RabbitMQ transportURL
TransportURLSecret string `json:"transportURLSecret,omitempty"`
// Networks in addtion to the cluster network, the service is attached to
Networks []string `json:"networks,omitempty"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// ReadyCount of mysqld_exporter instances
MysqldExporterReadyCount int32 `json:"mysqldExporterReadyCount,omitempty"`
// Map of hashes to track e.g. job status
MysqldExporterHash map[string]string `json:"mysqldExporterHash,omitempty"`
// List of galera CRs, which are being exported with mysqld_exporter
// +listType=atomic
MysqldExporterExportedGaleras []string `json:"mysqldExporterExportedGaleras,omitempty"`
// ReadyCount of kube-state-metrics instances
KSMReadyCount int32 `json:"ksmReadyCount,omitempty"`
// Map of hashes to track e.g. job status
KSMHash map[string]string `json:"ksmHash,omitempty"`
// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}
CeilometerStatus defines the observed state of Ceilometer
func (*CeilometerStatus) DeepCopy ¶ added in v0.2.0
func (in *CeilometerStatus) DeepCopy() *CeilometerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CeilometerStatus.
func (*CeilometerStatus) DeepCopyInto ¶ added in v0.2.0
func (in *CeilometerStatus) DeepCopyInto(out *CeilometerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KSMStatus ¶ added in v0.5.0
type KSMStatus struct {
// ReadyCount of ksm instances
ReadyCount int32 `json:"readyCount,omitempty"`
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}
KSMStatus defines the observed state of kube-state-metrics [DEPRECATED, Status is used instead]
func (*KSMStatus) DeepCopy ¶ added in v0.5.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KSMStatus.
func (*KSMStatus) DeepCopyInto ¶ added in v0.5.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Logging ¶ added in v0.4.0
type Logging struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec LoggingSpec `json:"spec,omitempty"`
Status LoggingStatus `json:"status,omitempty"`
}
Logging is the Schema for the loggings API
func (*Logging) DeepCopy ¶ added in v0.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Logging.
func (*Logging) DeepCopyInto ¶ added in v0.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Logging) DeepCopyObject ¶ added in v0.4.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (Logging) IsReady ¶ added in v0.4.0
IsReady - returns true if Logging is reconciled successfully
func (Logging) RbacConditionsSet ¶ added in v0.4.0
RbacConditionsSet - set the conditions for the rbac object
func (Logging) RbacNamespace ¶ added in v0.4.0
RbacNamespace - return the namespace
func (Logging) RbacResourceName ¶ added in v0.4.0
RbacResourceName - return the name to be used for rbac objects (serviceaccount, role, rolebinding)
type LoggingList ¶ added in v0.4.0
type LoggingList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Logging `json:"items"`
}
LoggingList contains a list of Logging
func (*LoggingList) DeepCopy ¶ added in v0.4.0
func (in *LoggingList) DeepCopy() *LoggingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingList.
func (*LoggingList) DeepCopyInto ¶ added in v0.4.0
func (in *LoggingList) DeepCopyInto(out *LoggingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LoggingList) DeepCopyObject ¶ added in v0.4.0
func (in *LoggingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LoggingSection ¶ added in v0.4.0
type LoggingSection struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=true
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Enabled - Whether OpenStack logging service should be deployed and managed
Enabled *bool `json:"enabled"`
// +kubebuilder:validation:Optional
//+operator-sdk:csv:customresourcedefinitions:type=spec
// Template - Overrides to use when creating the OpenStack Logging
LoggingSpec `json:",inline"`
}
LoggingSection defines the desired state of the logging service
func (*LoggingSection) DeepCopy ¶ added in v0.4.0
func (in *LoggingSection) DeepCopy() *LoggingSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingSection.
func (*LoggingSection) DeepCopyInto ¶ added in v0.4.0
func (in *LoggingSection) DeepCopyInto(out *LoggingSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingSpec ¶ added in v0.4.0
type LoggingSpec struct {
// Port is the port where the service will listen on
// +kubebuilder:validation:Optional
// +kubebuilder:default=10514
Port int32 `json:"port"`
// TargetPort is the port where the logging syslog receiver is listening
// +kubebuilder:validation:Optional
// +kubebuilder:default=10514
TargetPort int `json:"targetPort"`
// CLONamespace points to the namespace where the cluster-logging-operator is deployed
// +kubebuilder:validation:Optional
// +kubebuilder:default=openshift-logging
CLONamespace string `json:"cloNamespace"`
// Annotations is a way to configure certain LoadBalancers, like MetalLB
// +kubebuilder:validation:Optional
// +kubebuilder:default={metallb.universe.tf/address-pool: internalapi, metallb.universe.tf/allow-shared-ip: internalapi, metallb.universe.tf/loadBalancerIPs: "172.17.0.80"}
Annotations map[string]string `json:"annotations"`
// The number of retries rsyslog will attempt before abandoning
// +kubebuilder:validation:Optional
// +kubebuilder:default=100
RsyslogRetries int32 `json:"rsyslogRetries"`
// The type of the local queue of logs
// +kubebuilder:default=linkedList
RsyslogQueueType string `json:"rsyslogQueueType"`
// The size of the local queue of logs
// +kubebuilder:validation:Optional
// +kubebuilder:default=10000
RsyslogQueueSize int32 `json:"rsyslogQueueSize"`
}
LoggingSpec defines the desired state of Logging
func (*LoggingSpec) DeepCopy ¶ added in v0.4.0
func (in *LoggingSpec) DeepCopy() *LoggingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingSpec.
func (*LoggingSpec) DeepCopyInto ¶ added in v0.4.0
func (in *LoggingSpec) DeepCopyInto(out *LoggingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingStatus ¶ added in v0.4.0
type LoggingStatus struct {
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}
LoggingStatus defines the observed state of Logging
func (*LoggingStatus) DeepCopy ¶ added in v0.4.0
func (in *LoggingStatus) DeepCopy() *LoggingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingStatus.
func (*LoggingStatus) DeepCopyInto ¶ added in v0.4.0
func (in *LoggingStatus) DeepCopyInto(out *LoggingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricStorage ¶ added in v0.4.0
type MetricStorage struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec MetricStorageSpec `json:"spec,omitempty"`
Status MetricStorageStatus `json:"status,omitempty"`
}
MetricStorage is the Schema for the metricstorages API
func (*MetricStorage) DeepCopy ¶ added in v0.4.0
func (in *MetricStorage) DeepCopy() *MetricStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricStorage.
func (*MetricStorage) DeepCopyInto ¶ added in v0.4.0
func (in *MetricStorage) DeepCopyInto(out *MetricStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricStorage) DeepCopyObject ¶ added in v0.4.0
func (in *MetricStorage) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MetricStorage) Default ¶ added in v0.4.0
func (r *MetricStorage) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (MetricStorage) IsReady ¶ added in v0.4.0
func (instance MetricStorage) IsReady() bool
IsReady - returns true if MetricStorage is reconciled successfully
func (*MetricStorage) SetupWebhookWithManager ¶ added in v0.4.0
func (r *MetricStorage) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager sets up the webhook with the Manager
func (*MetricStorage) ValidateCreate ¶ added in v0.4.0
func (r *MetricStorage) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*MetricStorage) ValidateDelete ¶ added in v0.4.0
func (r *MetricStorage) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*MetricStorage) ValidateUpdate ¶ added in v0.4.0
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type MetricStorageList ¶ added in v0.4.0
type MetricStorageList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []MetricStorage `json:"items"`
}
MetricStorageList contains a list of MetricStorage
func (*MetricStorageList) DeepCopy ¶ added in v0.4.0
func (in *MetricStorageList) DeepCopy() *MetricStorageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricStorageList.
func (*MetricStorageList) DeepCopyInto ¶ added in v0.4.0
func (in *MetricStorageList) DeepCopyInto(out *MetricStorageList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricStorageList) DeepCopyObject ¶ added in v0.4.0
func (in *MetricStorageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MetricStorageSection ¶ added in v0.4.0
type MetricStorageSection struct {
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:booleanSwitch"}
// Enabled - Whether a MetricStorage should be deployed and managed
Enabled *bool `json:"enabled"`
// +kubebuilder:validation:Optional
//+operator-sdk:csv:customresourcedefinitions:type=spec
// Template - Overrides to use when creating the MetricStorage
MetricStorageSpec `json:",inline"`
}
MetricStorageSection defines the desired state of the MetricStorage
func (*MetricStorageSection) DeepCopy ¶ added in v0.4.0
func (in *MetricStorageSection) DeepCopy() *MetricStorageSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricStorageSection.
func (*MetricStorageSection) DeepCopyInto ¶ added in v0.4.0
func (in *MetricStorageSection) DeepCopyInto(out *MetricStorageSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricStorageSpec ¶ added in v0.4.0
type MetricStorageSpec struct {
// DashboardsEnabled allows to enable or disable dashboards and related artifacts
// +kubebuilder:validation:Optional
// +kubebuilder:default=false
DashboardsEnabled bool `json:"dashboardsEnabled"`
// DataplaneNetwork defines the network that will be used to scrape dataplane node_exporter endpoints
// +kubebuilder:validation:Optional
// +kubebuilder:default=ctlplane
DataplaneNetwork *infranetworkv1.NetNameStr `json:"dataplaneNetwork"`
// NetworkAttachments is a list of NetworkAttachment resource names to expose the services to the given network
// +kubebuilder:validation:Optional
// +listType=atomic
NetworkAttachments []string `json:"networkAttachments,omitempty"`
// MonitoringStack allows to define a metric storage with
// options supported by Red Hat
// +kubebuilder:validation:Optional
// +nullable
MonitoringStack *MonitoringStack `json:"monitoringStack,omitempty"`
// CustomMonitoringStack allows to deploy a custom monitoring
// stack when the options in "MonitoringStack" aren't
// enough
// +kubebuilder:validation:Optional
// +nullable
CustomMonitoringStack *obov1.MonitoringStackSpec `json:"customMonitoringStack,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// TLS - Parameters related to the TLS
PrometheusTLS tls.SimpleService `json:"prometheusTls,omitempty"`
}
MetricStorageSpec defines the desired state of MetricStorage
func (*MetricStorageSpec) DeepCopy ¶ added in v0.4.0
func (in *MetricStorageSpec) DeepCopy() *MetricStorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricStorageSpec.
func (*MetricStorageSpec) DeepCopyInto ¶ added in v0.4.0
func (in *MetricStorageSpec) DeepCopyInto(out *MetricStorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricStorageSpec) Default ¶ added in v0.4.0
func (spec *MetricStorageSpec) Default()
Default - set defaults for the MetricStorage spec
type MetricStorageStatus ¶ added in v0.4.0
type MetricStorageStatus struct {
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
PrometheusTLSPatched bool `json:"prometheusTLSPatched,omitempty" optional:"true"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// NetworkAttachments status of the Prometheus pods
NetworkAttachments map[string]string `json:"networkAttachments,omitempty"`
}
MetricStorageStatus defines the observed state of MetricStorage
func (*MetricStorageStatus) DeepCopy ¶ added in v0.4.0
func (in *MetricStorageStatus) DeepCopy() *MetricStorageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricStorageStatus.
func (*MetricStorageStatus) DeepCopyInto ¶ added in v0.4.0
func (in *MetricStorageStatus) DeepCopyInto(out *MetricStorageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitoringStack ¶ added in v0.4.0
type MonitoringStack struct {
// AlertingEnabled allows to enable or disable alertmanager
// +kubebuilder:validation:Optional
// +kubebuilder:default=true
AlertingEnabled bool `json:"alertingEnabled"`
// ScrapeInterval sets the interval between scrapes
// +kubebuilder:validation:Optional
// +kubebuilder:default="30s"
ScrapeInterval string `json:"scrapeInterval"`
// Storage allows to define options for how to store metrics
// +kubebuilder:validation:Optional
// +kubebuilder:default={strategy: persistent, retention: "24h", persistent: {pvcStorageRequest: "20G"}}
Storage `json:"storage"`
}
MonitoringStack defines the options for a Red Hat supported metric storage
func (*MonitoringStack) DeepCopy ¶ added in v0.4.0
func (in *MonitoringStack) DeepCopy() *MonitoringStack
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringStack.
func (*MonitoringStack) DeepCopyInto ¶ added in v0.4.0
func (in *MonitoringStack) DeepCopyInto(out *MonitoringStack)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MonitoringStack) Default ¶ added in v0.4.0
func (ms *MonitoringStack) Default()
Default - set defaults for the MonitoringStack field
type PasswordsSelector ¶
type PasswordsSelector struct {
// CeilometerService - Selector to get the ceilometer service password from the Secret
// +kubebuilder:validation:Optional
// +kubebuilder:default:=CeilometerPassword
CeilometerService string `json:"ceilometerService"`
// AodhService - Selector to get the aodh service password from the Secret
// +kubebuilder:validation:Optional
// +kubebuilder:default:=AodhPassword
AodhService string `json:"aodhService"`
}
PasswordsSelector to identify the Service password from the Secret
func (*PasswordsSelector) DeepCopy ¶
func (in *PasswordsSelector) DeepCopy() *PasswordsSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PasswordsSelector.
func (*PasswordsSelector) DeepCopyInto ¶
func (in *PasswordsSelector) DeepCopyInto(out *PasswordsSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PersistentStorage ¶ added in v0.4.0
type PersistentStorage struct {
// PvcStorageRequest The amount of storage to request in PVC
// +kubebuilder:validation:Optional
// +kubebuilder:default="20G"
PvcStorageRequest string `json:"pvcStorageRequest"`
// PvcStorageSelector The Label selector to specify in PVCs
// +kubebuilder:validation:Optional
PvcStorageSelector metav1.LabelSelector `json:"pvcStorageSelector,omitempty"`
// PvcStorageClass The storage class to use for storing metrics
// +kubebuilder:validation:Optional
PvcStorageClass string `json:"pvcStorageClass,omitempty"`
}
PersistentStorage defines storage options used for persistent storage
func (*PersistentStorage) DeepCopy ¶ added in v0.4.0
func (in *PersistentStorage) DeepCopy() *PersistentStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentStorage.
func (*PersistentStorage) DeepCopyInto ¶ added in v0.4.0
func (in *PersistentStorage) DeepCopyInto(out *PersistentStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PersistentStorage) Default ¶ added in v0.4.0
func (ps *PersistentStorage) Default()
Default - set defaults for the PersistentStorage field
type Storage ¶ added in v0.4.0
type Storage struct {
// Strategy to use for storage. Can be "persistent", "ephemeral"
// or empty, in which case a COO default is used
// +kubebuilder:validation:Optional
// +kubebuilder:validation:Enum=persistent;ephemeral
// +kubebuilder:default=persistent
Strategy string `json:"strategy"`
// Retention time for metrics
// +kubebuilder:validation:Optional
// +kubebuilder:default="24h"
Retention string `json:"retention"`
// Used to specify the options of persistent storage when
// strategy = "persistent"
// +kubebuilder:validation:Optional
Persistent *PersistentStorage `json:"persistent,omitempty"`
}
Storage defines the options used for storage of metrics
func (*Storage) DeepCopy ¶ added in v0.4.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶ added in v0.4.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Telemetry ¶
type Telemetry struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec TelemetrySpec `json:"spec,omitempty"`
Status TelemetryStatus `json:"status,omitempty"`
}
Telemetry is the Schema for the telemetry API
func (*Telemetry) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Telemetry.
func (*Telemetry) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Telemetry) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Telemetry) Default ¶
func (r *Telemetry) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*Telemetry) SetupWebhookWithManager ¶
SetupWebhookWithManager sets up the webhook with the Manager
func (*Telemetry) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*Telemetry) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type TelemetryDefaults ¶
type TelemetryDefaults struct {
CentralContainerImageURL string
ComputeContainerImageURL string
NotificationContainerImageURL string
SgCoreContainerImageURL string
ProxyContainerImageURL string
IpmiContainerImageURL string
KsmContainerImageURL string
MysqldExporterContainerImageURL string
AodhAPIContainerImageURL string
AodhEvaluatorContainerImageURL string
AodhNotifierContainerImageURL string
AodhListenerContainerImageURL string
}
TelemetryDefaults -
func (*TelemetryDefaults) DeepCopy ¶
func (in *TelemetryDefaults) DeepCopy() *TelemetryDefaults
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetryDefaults.
func (*TelemetryDefaults) DeepCopyInto ¶
func (in *TelemetryDefaults) DeepCopyInto(out *TelemetryDefaults)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TelemetryList ¶
type TelemetryList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Telemetry `json:"items"`
}
TelemetryList contains a list of Telemetry
func (*TelemetryList) DeepCopy ¶
func (in *TelemetryList) DeepCopy() *TelemetryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetryList.
func (*TelemetryList) DeepCopyInto ¶
func (in *TelemetryList) DeepCopyInto(out *TelemetryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TelemetryList) DeepCopyObject ¶
func (in *TelemetryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TelemetrySpec ¶
type TelemetrySpec struct {
TelemetrySpecBase `json:",inline"`
// +kubebuilder:validation:Optional
// Autoscaling - Parameters related to the autoscaling service
Autoscaling AutoscalingSection `json:"autoscaling,omitempty"`
// +kubebuilder:validation:Optional
// Ceilometer - Parameters related to the ceilometer service
Ceilometer CeilometerSection `json:"ceilometer,omitempty"`
}
TelemetrySpec defines the desired state of Telemetry
func (*TelemetrySpec) DeepCopy ¶
func (in *TelemetrySpec) DeepCopy() *TelemetrySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetrySpec.
func (*TelemetrySpec) DeepCopyInto ¶
func (in *TelemetrySpec) DeepCopyInto(out *TelemetrySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TelemetrySpec) Default ¶
func (spec *TelemetrySpec) Default()
Default - set defaults for this Telemetry spec
func (TelemetrySpec) ValidateCreate ¶ added in v0.6.0
func (*TelemetrySpec) ValidateTelemetryTopology ¶ added in v0.6.0
func (spec *TelemetrySpec) ValidateTelemetryTopology(basePath *field.Path, namespace string) field.ErrorList
ValidateTelemetryTopology - Returns an ErrorList if the Topology is referenced on a different namespace
func (TelemetrySpec) ValidateUpdate ¶ added in v0.6.0
func (r TelemetrySpec) ValidateUpdate(old TelemetrySpec, basePath *field.Path, namespace string) field.ErrorList
type TelemetrySpecBase ¶ added in v0.4.0
type TelemetrySpecBase struct {
// +kubebuilder:validation:Optional
// MetricStorage - Parameters related to the metricStorage
MetricStorage MetricStorageSection `json:"metricStorage,omitempty"`
// +kubebuilder:validation:Optional
// Logging - Parameters related to the logging
Logging LoggingSection `json:"logging,omitempty"`
// +kubebuilder:validation:Optional
// NodeSelector to target subset of worker nodes running this service
NodeSelector *map[string]string `json:"nodeSelector,omitempty"`
// +kubebuilder:validation:Optional
// TopologyRef to apply the Topology defined by the associated CR referenced
// by name
TopologyRef *topologyv1.TopoRef `json:"topologyRef,omitempty"`
}
TelemetrySpecBase -
func (*TelemetrySpecBase) DeepCopy ¶ added in v0.4.0
func (in *TelemetrySpecBase) DeepCopy() *TelemetrySpecBase
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetrySpecBase.
func (*TelemetrySpecBase) DeepCopyInto ¶ added in v0.4.0
func (in *TelemetrySpecBase) DeepCopyInto(out *TelemetrySpecBase)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TelemetrySpecCore ¶ added in v0.4.0
type TelemetrySpecCore struct {
TelemetrySpecBase `json:",inline"`
// +kubebuilder:validation:Optional
// Autoscaling - Parameters related to the autoscaling service
Autoscaling AutoscalingSectionCore `json:"autoscaling,omitempty"`
// +kubebuilder:validation:Optional
// Ceilometer - Parameters related to the ceilometer service
Ceilometer CeilometerSectionCore `json:"ceilometer,omitempty"`
}
TelemetrySpecCore defines the desired state of Telemetry. This version has no image parameters and is used by OpenStackControlplane
func (*TelemetrySpecCore) DeepCopy ¶ added in v0.4.0
func (in *TelemetrySpecCore) DeepCopy() *TelemetrySpecCore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetrySpecCore.
func (*TelemetrySpecCore) DeepCopyInto ¶ added in v0.4.0
func (in *TelemetrySpecCore) DeepCopyInto(out *TelemetrySpecCore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TelemetrySpecCore) Default ¶ added in v0.4.0
func (spec *TelemetrySpecCore) Default()
Default - set defaults for this Telemetry spec core NOTE: only this version gets called by the Controlplane Webhook
func (TelemetrySpecCore) ValidateCreate ¶ added in v0.6.0
func (*TelemetrySpecCore) ValidateTelemetryTopology ¶ added in v0.6.0
func (spec *TelemetrySpecCore) ValidateTelemetryTopology(basePath *field.Path, namespace string) field.ErrorList
ValidateTelemetryTopology - Returns an ErrorList if the Topology is referenced on a different namespace
func (TelemetrySpecCore) ValidateUpdate ¶ added in v0.6.0
func (r TelemetrySpecCore) ValidateUpdate(old TelemetrySpec, basePath *field.Path, namespace string) field.ErrorList
type TelemetryStatus ¶
type TelemetryStatus struct {
// Map of hashes to track e.g. job status
Hash map[string]string `json:"hash,omitempty"`
// Conditions
Conditions condition.Conditions `json:"conditions,omitempty" optional:"true"`
// ObservedGeneration - the most recent generation observed for this
// service. If the observed generation is less than the spec generation,
// then the controller has not processed the latest changes injected by
// the openstack-operator in the top-level CR (e.g. the ContainerImage)
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// LastAppliedTopology - the last applied Topology
LastAppliedTopology *topologyv1.TopoRef `json:"lastAppliedTopology,omitempty"`
}
TelemetryStatus defines the observed state of Telemetry
func (*TelemetryStatus) DeepCopy ¶
func (in *TelemetryStatus) DeepCopy() *TelemetryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TelemetryStatus.
func (*TelemetryStatus) DeepCopyInto ¶
func (in *TelemetryStatus) DeepCopyInto(out *TelemetryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.