Documentation ¶
Overview ¶
Package v1alpha1 contains v1alpha1 version's types in apps.nebula-graph.io group.
+groupName=apps.nebula-graph.io
Package v1alpha1 contains API Schema definitions for the apps v1alpha1 API group +kubebuilder:object:generate=true +groupName=apps.nebula-graph.io
Index ¶
- Constants
- Variables
- func EnableLocalCerts() bool
- func GenerateInitAgentContainer(c NebulaClusterComponent) corev1.Container
- func GetClientCertVolumeMounts() []corev1.VolumeMount
- func GetClientCertVolumes(sslCerts *SSLCertsSpec) []corev1.Volume
- func Resource(resource string) schema.GroupResource
- type AgentContainerSpec
- type BackupCondition
- type BackupConditionType
- type BackupConfig
- type BackupSpec
- type BackupStatus
- type BackupType
- type BalanceJob
- type BaseComponent
- type ComponentAccessor
- type ComponentPhase
- type ComponentSpec
- type ComponentStatus
- type ComponentType
- type ConsoleSpec
- type CronBackupSpec
- type CronBackupStatus
- type EmptyStruct
- type ExporterSpec
- type FailureHost
- type GraphdServiceSpec
- type GraphdSpec
- type GsStorageProvider
- type LicenseSpec
- type LogRotate
- type MetadSpec
- type NamespacedObjectReference
- type NebulaBackup
- type NebulaBackupList
- type NebulaCluster
- func (nc *NebulaCluster) AutoMountServerCerts() bool
- func (nc *NebulaCluster) ComponentByType(typ ComponentType) (NebulaClusterComponent, error)
- func (nc *NebulaCluster) ConcurrentTransfer() bool
- func (in *NebulaCluster) DeepCopy() *NebulaCluster
- func (in *NebulaCluster) DeepCopyInto(out *NebulaCluster)
- func (in *NebulaCluster) DeepCopyObject() runtime.Object
- func (nc *NebulaCluster) ExporterComponent() NebulaExporterComponent
- func (nc *NebulaCluster) GenerateOwnerReferences() []metav1.OwnerReference
- func (nc *NebulaCluster) GetClusterName() string
- func (nc *NebulaCluster) GetGraphdEndpoints(portName string) []string
- func (nc *NebulaCluster) GetGraphdServiceName() string
- func (nc *NebulaCluster) GetMetadEndpoints(portName string) []string
- func (nc *NebulaCluster) GetMetadThriftConnAddress() string
- func (nc *NebulaCluster) GetStoragedEndpoints(portName string) []string
- func (nc *NebulaCluster) GraphdComponent() NebulaClusterComponent
- func (nc *NebulaCluster) InsecureSkipVerify() bool
- func (nc *NebulaCluster) IsAutoBalanceEnabled() bool
- func (nc *NebulaCluster) IsAutoFailoverEnabled() bool
- func (nc *NebulaCluster) IsBREnabled() bool
- func (nc *NebulaCluster) IsClusterSSLEnabled() bool
- func (nc *NebulaCluster) IsConditionReady() bool
- func (nc *NebulaCluster) IsForceUpdateEnabled() bool
- func (nc *NebulaCluster) IsGraphdSSLEnabled() bool
- func (nc *NebulaCluster) IsLogRotateEnabled() bool
- func (nc *NebulaCluster) IsMetadSSLEnabled() bool
- func (nc *NebulaCluster) IsPVReclaimEnabled() bool
- func (nc *NebulaCluster) IsReady() bool
- func (nc *NebulaCluster) IsStoragedAvailable() bool
- func (nc *NebulaCluster) IsStoragedSSLEnabled() bool
- func (nc *NebulaCluster) IsSuspendEnabled() bool
- func (nc *NebulaCluster) IsZoneEnabled() bool
- func (nc *NebulaCluster) MetadComponent() NebulaClusterComponent
- func (nc *NebulaCluster) SslServerName() string
- func (nc *NebulaCluster) StoragedComponent() NebulaClusterComponent
- type NebulaClusterComponent
- type NebulaClusterCondition
- type NebulaClusterConditionType
- type NebulaClusterList
- type NebulaClusterSpec
- type NebulaClusterStatus
- type NebulaCronBackup
- type NebulaCronBackupList
- type NebulaExporterComponent
- type NebulaRestore
- type NebulaRestoreList
- type ObjectStorageType
- type ProvisionedVolume
- type ProvisionedVolumes
- type RestoreCondition
- type RestoreConditionType
- type RestoreConfig
- type RestoreSpec
- type RestoreStatus
- type S3StorageProvider
- type SSLCertsSpec
- type ServiceSpec
- type StorageClaim
- type StorageProvider
- type StoragedSpec
- type StoragedStatus
- type TopologySpreadConstraint
- type VolumeStatus
- type WorkloadReference
- type WorkloadStatus
Constants ¶
const ( NebulaServiceAccountName = "nebula-sa" NebulaRoleName = "nebula-role" NebulaRoleBindingName = "nebula-rolebinding" LogSidecarContainerName = "ng-logrotate" AgentSidecarContainerName = "ng-agent" AgentInitContainerName = "ng-init-agent" DefaultAgentPortGRPC = 8888 AgentPortNameGRPC = "grpc" DefaultAgentImage = "vesoft/nebula-agent" DefaultAlpineImage = "vesoft/nebula-alpine:latest" ZoneSuffix = "zone" )
const ( GraphdComponentType = ComponentType("graphd") GraphdPortNameThrift = "thrift" GraphdPortNameHTTP = "http" )
const ( MetadComponentType = ComponentType("metad") MetadPortNameThrift = "thrift" MetadPortNameHTTP = "http" )
const ( StoragedComponentType = ComponentType("storaged") StoragedPortNameThrift = "thrift" StoragedPortNameHTTP = "http" StoragedPortNameAdmin = "admin" )
const ( // nolint: revive GraphdConfigTemplate = `` /* 8855-byte string literal not displayed */ // nolint: revive MetadhConfigTemplate = `` /* 2886-byte string literal not displayed */ // nolint: revive StoragedConfigTemplate = `` /* 8364-byte string literal not displayed */ )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "apps.nebula-graph.io", Version: "v1alpha1"} SchemeGroupVersion = GroupVersion // 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 DynamicFlags = map[string]string{
"minloglevel": "0",
"v": "0",
"accept_partial_success": "false",
"max_allowed_query_size": "4194304",
"system_memory_high_watermark_ratio": "0.8",
"ng_black_box_file_lifetime_seconds": "1800",
"memory_tracker_limit_ratio": "0.8",
"memory_tracker_untracked_reserved_memory_mb": "50",
"memory_tracker_detail_log": "false",
"memory_tracker_detail_log_interval_ms": "60000",
"memory_purge_enabled": "true",
"memory_purge_interval_seconds": "10",
"heartbeat_interval_secs": "10",
"raft_heartbeat_interval_secs": "30",
"raft_rpc_timeout_ms": "500",
"wal_ttl": "14400",
"query_concurrently": "true",
"auto_remove_invalid_space": "true",
"snapshot_part_rate_limit": "10485760",
"snapshot_batch_size": "1048576",
"rebuild_index_part_rate_limit": "4194304",
"prioritize_intra_zone_reading": "false",
"stick_to_intra_zone_on_failure": "false",
}
Functions ¶
func EnableLocalCerts ¶
func EnableLocalCerts() bool
func GenerateInitAgentContainer ¶
func GenerateInitAgentContainer(c NebulaClusterComponent) corev1.Container
func GetClientCertVolumeMounts ¶
func GetClientCertVolumeMounts() []corev1.VolumeMount
func GetClientCertVolumes ¶
func GetClientCertVolumes(sslCerts *SSLCertsSpec) []corev1.Volume
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource is required by pkg/client/listers/...
Types ¶
type AgentContainerSpec ¶
type AgentContainerSpec struct { // Container image. // +optional Image string `json:"image,omitempty"` // Version tag for container image. // +kubebuilder:default=latest // +optional Version string `json:"version,omitempty"` // K8S resources settings. // +optional Resources corev1.ResourceRequirements `json:"resources,omitempty"` // Container environment variables. // +optional EnvVars []corev1.EnvVar `json:"env,omitempty"` // +optional VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // Limit the file upload and download rate, unit Mbps // +optional RateLimit *int32 `json:"rateLimit,omitempty"` // Agent heartbeat interval to nebula meta, in seconds // +kubebuilder:default=60 // +optional HeartbeatInterval int32 `json:"heartbeatInterval,omitempty"` }
AgentContainerSpec defines the desired state of Agent
func (*AgentContainerSpec) DeepCopy ¶
func (in *AgentContainerSpec) DeepCopy() *AgentContainerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentContainerSpec.
func (*AgentContainerSpec) DeepCopyInto ¶
func (in *AgentContainerSpec) DeepCopyInto(out *AgentContainerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupCondition ¶
type BackupCondition struct { // Type of the condition. Type BackupConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status"` // The last time this condition was updated. LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"` // Last time the condition transitioned from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // The reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // A human-readable message indicating details about the transition. // +optional Message string `json:"message,omitempty"` }
BackupCondition describes the observed state of a Backup at a certain point.
func (*BackupCondition) DeepCopy ¶
func (in *BackupCondition) DeepCopy() *BackupCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupCondition.
func (*BackupCondition) DeepCopyInto ¶
func (in *BackupCondition) DeepCopyInto(out *BackupCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupConditionType ¶
type BackupConditionType string
BackupConditionType represents a valid condition of a Backup.
const ( // BackupRunning means the backup is currently being executed. BackupRunning BackupConditionType = "Running" // BackupComplete means the backup has successfully executed and the // backup data has been loaded into nebula cluster. BackupComplete BackupConditionType = "Complete" // BackupClean means the clean job has been clean the backup data. BackupClean BackupConditionType = "Clean" // BackupFailed means the backup has failed. BackupFailed BackupConditionType = "Failed" // BackupInvalid means invalid backup CR. BackupInvalid BackupConditionType = "Invalid" )
type BackupConfig ¶
type BackupConfig struct { NamespacedObjectReference `json:",inline"` // The name of the base backup and only used for incremental backup. BaseBackupName *string `json:"baseBackupName,omitempty"` // Concurrency is used to control the number of concurrent file uploads during data backup. // +kubebuilder:default=5 // +optional Concurrency int32 `json:"concurrency,omitempty"` // StorageProvider configures where and how backups should be stored. StorageProvider `json:",inline"` }
func (*BackupConfig) DeepCopy ¶
func (in *BackupConfig) DeepCopy() *BackupConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupConfig.
func (*BackupConfig) DeepCopyInto ¶
func (in *BackupConfig) DeepCopyInto(out *BackupConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupSpec ¶
type BackupSpec struct { // Container image. // +optional Image string `json:"image,omitempty"` // Version tag for container image. // +optional Version string `json:"version,omitempty"` // +optional Resources corev1.ResourceRequirements `json:"resources,omitempty"` // +optional Env []corev1.EnvVar `json:"env,omitempty"` // +kubebuilder:default=Always ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // +optional ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // +optional InitContainers []corev1.Container `json:"initContainers,omitempty"` // +optional SidecarContainers []corev1.Container `json:"sidecarContainers,omitempty"` // +optional Volumes []corev1.Volume `json:"volumes,omitempty"` // +optional VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // CleanBackupData denotes whether to clean backup data when the object is deleted from the cluster, // if not set, the backup data will be retained // +optional CleanBackupData *bool `json:"cleanBackupData,omitempty"` // The job that status is failed and completed will be removed automatically. // +optional AutoRemoveFinished *bool `json:"autoRemoveFinished,omitempty"` Config *BackupConfig `json:"config,omitempty"` }
BackupSpec contains the specification for a backup of a nebula cluster backup.
func (*BackupSpec) DeepCopy ¶
func (in *BackupSpec) DeepCopy() *BackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupSpec.
func (*BackupSpec) DeepCopyInto ¶
func (in *BackupSpec) DeepCopyInto(out *BackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStatus ¶
type BackupStatus struct { // Type is the backup type for nebula cluster. Type BackupType `json:"type,omitempty"` // BackupName is the name of the backup generated by nebula. BackupName string `json:"backupName,omitempty"` // TimeStarted is the time at which the backup was started. // +nullable TimeStarted *metav1.Time `json:"timeStarted,omitempty"` // TimeCompleted is the time at which the backup was completed. // +nullable TimeCompleted *metav1.Time `json:"timeCompleted,omitempty"` // Phase is a user readable state inferred from the underlying Backup conditions. Phase BackupConditionType `json:"phase,omitempty"` // +nullable Conditions []BackupCondition `json:"conditions,omitempty"` }
BackupStatus represents the current status of a nebula cluster backup.
func (*BackupStatus) DeepCopy ¶
func (in *BackupStatus) DeepCopy() *BackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStatus.
func (*BackupStatus) DeepCopyInto ¶
func (in *BackupStatus) DeepCopyInto(out *BackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupType ¶
type BackupType string
BackupType represents the backup type. +k8s:openapi-gen=true
const ( // BackupTypeFull represents the full backup of nebula cluster. BackupTypeFull BackupType = "full" // BackupTypeIncr represents the incremental backup of nebula cluster. BackupTypeIncr BackupType = "incr" )
func (BackupType) String ¶
func (t BackupType) String() string
type BalanceJob ¶
type BalanceJob struct { SpaceID int32 `json:"spaceID,omitempty"` JobID int32 `json:"jobID,omitempty"` }
BalanceJob describes the admin job for balance data.
func (*BalanceJob) DeepCopy ¶
func (in *BalanceJob) DeepCopy() *BalanceJob
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BalanceJob.
func (*BalanceJob) DeepCopyInto ¶
func (in *BalanceJob) DeepCopyInto(out *BalanceJob)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BaseComponent ¶
type BaseComponent interface { GraphdComponent() NebulaClusterComponent MetadComponent() NebulaClusterComponent StoragedComponent() NebulaClusterComponent ComponentSpec() ComponentAccessor ComponentType() ComponentType GetNebulaCluster() *NebulaCluster GetClusterName() string GetNamespace() string GetName() string GetPodName(ordinal int32) string GenerateOwnerReferences() []metav1.OwnerReference }
+k8s:deepcopy-gen=false
type ComponentAccessor ¶
type ComponentAccessor interface { Replicas() int32 PodImage() string Resources() *corev1.ResourceRequirements PodLabels() map[string]string PodAnnotations() map[string]string PodEnvVars() []corev1.EnvVar NodeSelector() map[string]string Affinity() *corev1.Affinity Tolerations() []corev1.Toleration TopologySpreadConstraints(labels map[string]string) []corev1.TopologySpreadConstraint SecurityContext() *corev1.SecurityContext InitContainers() []corev1.Container SidecarContainers() []corev1.Container Volumes() []corev1.Volume VolumeMounts() []corev1.VolumeMount ReadinessProbe() *corev1.Probe LivenessProbe() *corev1.Probe }
+k8s:deepcopy-gen=false
type ComponentPhase ¶
type ComponentPhase string
ComponentPhase is the current state of component
const ( // RunningPhase represents normal state of nebula cluster. RunningPhase ComponentPhase = "Running" // ScaleInPhase represents the scaling state of nebula cluster. ScaleInPhase ComponentPhase = "ScaleIn" // ScaleOutPhase represents the scaling state of nebula cluster. ScaleOutPhase ComponentPhase = "ScaleOut" // UpdatePhase represents update state of nebula cluster. UpdatePhase ComponentPhase = "Update" // SuspendPhase represents the suspend state of nebula cluster. SuspendPhase ComponentPhase = "Suspend" )
type ComponentSpec ¶
type ComponentSpec struct { // K8S deployment replicas setting. // +kubebuilder:validation:Minimum=0 Replicas *int32 `json:"replicas,omitempty"` // K8S resources settings. // +optional Resources *corev1.ResourceRequirements `json:"resources,omitempty"` // Container environment variables. // +optional EnvVars []corev1.EnvVar `json:"env,omitempty"` // Container image. Image string `json:"image"` // Version tag for container image. // +kubebuilder:default=latest // +optional Version string `json:"version,omitempty"` // K8S pod annotations. // +optional Annotations map[string]string `json:"annotations,omitempty"` // +optional Labels map[string]string `json:"labels,omitempty"` // K8S nodeSelector. // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // +optional TopologySpreadConstraints []TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"` // +optional SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"` // +optional InitContainers []corev1.Container `json:"initContainers,omitempty"` // +optional SidecarContainers []corev1.Container `json:"sidecarContainers,omitempty"` // +optional Volumes []corev1.Volume `json:"volumes,omitempty"` // +optional VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // +optional ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"` // +optional LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"` }
ComponentSpec is a common set of k8s resource configs for nebula components.
func (*ComponentSpec) DeepCopy ¶
func (in *ComponentSpec) DeepCopy() *ComponentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentSpec.
func (*ComponentSpec) DeepCopyInto ¶
func (in *ComponentSpec) DeepCopyInto(out *ComponentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentStatus ¶
type ComponentStatus struct { Version string `json:"version,omitempty"` Phase ComponentPhase `json:"phase,omitempty"` Workload *WorkloadStatus `json:"workload,omitempty"` FailureHosts map[string]FailureHost `json:"failureHosts,omitempty"` Volume *VolumeStatus `json:"volume,omitempty"` }
ComponentStatus is the status and version of a nebula component.
func (*ComponentStatus) DeepCopy ¶
func (in *ComponentStatus) DeepCopy() *ComponentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatus.
func (*ComponentStatus) DeepCopyInto ¶
func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentType ¶
type ComponentType string
ComponentType is the type of NebulaCluster Component: graphd, metad or storaged +k8s:deepcopy-gen=false
func (ComponentType) String ¶
func (typ ComponentType) String() string
type ConsoleSpec ¶
type ConsoleSpec struct { // The Graph login username // +optional Username string `json:"username,omitempty"` // The Graph login password // +optional Password string `json:"password,omitempty"` // Container image. // +optional Image string `json:"image,omitempty"` // Version tag for container image. // +optional Version string `json:"version,omitempty"` // K8S nodeSelector. // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` }
func (*ConsoleSpec) DeepCopy ¶
func (in *ConsoleSpec) DeepCopy() *ConsoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConsoleSpec.
func (*ConsoleSpec) DeepCopyInto ¶
func (in *ConsoleSpec) DeepCopyInto(out *ConsoleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CronBackupSpec ¶
type CronBackupSpec struct { // The schedule in Cron format, see https://en.wikipedia.org/wiki/Cron. Schedule string `json:"schedule"` // This flag tells the controller to pause subsequent executions, it does // not apply to already started executions. Defaults to false. // +optional Pause *bool `json:"pause,omitempty"` // MaxReservedTime is to specify how long backups we want to keep. // It should be a duration string format. // +optional MaxReservedTime *string `json:"maxReservedTime,omitempty"` // Specifies the backup that will be created when executing a CronBackup. BackupTemplate BackupSpec `json:"backupTemplate"` }
func (*CronBackupSpec) DeepCopy ¶
func (in *CronBackupSpec) DeepCopy() *CronBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CronBackupSpec.
func (*CronBackupSpec) DeepCopyInto ¶
func (in *CronBackupSpec) DeepCopyInto(out *CronBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CronBackupStatus ¶
type CronBackupStatus struct { // LastBackup represents the last backup. LastBackup string `json:"lastBackup,omitempty"` // LastScheduleTime represents the last time the backup was successfully scheduled. LastScheduleTime *metav1.Time `json:"lastScheduleTime,omitempty"` // LastSuccessfulTime represents the last time the backup successfully completed. LastSuccessfulTime *metav1.Time `json:"lastSuccessfulTime,omitempty"` // BackupCleanTime represents the last time the expired backup objects are cleaned up. BackupCleanTime *metav1.Time `json:"backupCleanTime,omitempty"` }
func (*CronBackupStatus) DeepCopy ¶
func (in *CronBackupStatus) DeepCopy() *CronBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CronBackupStatus.
func (*CronBackupStatus) DeepCopyInto ¶
func (in *CronBackupStatus) DeepCopyInto(out *CronBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmptyStruct ¶
type EmptyStruct struct{}
func (*EmptyStruct) DeepCopy ¶
func (in *EmptyStruct) DeepCopy() *EmptyStruct
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmptyStruct.
func (*EmptyStruct) DeepCopyInto ¶
func (in *EmptyStruct) DeepCopyInto(out *EmptyStruct)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExporterSpec ¶
type ExporterSpec struct { ComponentSpec `json:",inline"` // Maximum number of parallel scrape requests // +kubebuilder:default=40 // +optional MaxRequests int32 `json:"maxRequests,omitempty"` // CollectRegex means the regex to filter metrics // +optional CollectRegex string `json:"collectRegex,omitempty"` // IgnoreRegex means the regex to ignore metrics // +optional IgnoreRegex string `json:"ignoreRegex,omitempty"` // +optional // +kubebuilder:default=9100 HTTPPort int32 `json:"httpPort,omitempty"` }
ExporterSpec defines the desired state of Exporter
func (*ExporterSpec) DeepCopy ¶
func (in *ExporterSpec) DeepCopy() *ExporterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExporterSpec.
func (*ExporterSpec) DeepCopyInto ¶
func (in *ExporterSpec) DeepCopyInto(out *ExporterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FailureHost ¶
type FailureHost struct { Host string `json:"host,omitempty"` PVCSet map[types.UID]EmptyStruct `json:"pvcSet,omitempty"` HostDeleted *bool `json:"hostDeleted,omitempty"` DataBalanced *bool `json:"dataBalanced,omitempty"` PodRestarted bool `json:"podRestarted,omitempty"` PodRebuilt bool `json:"podRebuilt,omitempty"` NodeDown bool `json:"nodeDown,omitempty"` CreationTime metav1.Time `json:"creationTime,omitempty"` ConfirmationTime metav1.Time `json:"confirmationTime,omitempty"` DeletionTime metav1.Time `json:"deletionTime,omitempty"` }
FailureHost is the failure host information.
func (*FailureHost) DeepCopy ¶
func (in *FailureHost) DeepCopy() *FailureHost
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailureHost.
func (*FailureHost) DeepCopyInto ¶
func (in *FailureHost) DeepCopyInto(out *FailureHost)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphdServiceSpec ¶
type GraphdServiceSpec struct { ServiceSpec `json:",inline"` // LoadBalancerIP is the loadBalancerIP of service // +optional LoadBalancerIP *string `json:"loadBalancerIP,omitempty"` // ExternalTrafficPolicy of the service // +optional ExternalTrafficPolicy *corev1.ServiceExternalTrafficPolicyType `json:"externalTrafficPolicy,omitempty"` }
GraphdServiceSpec is the service spec of graphd
func (*GraphdServiceSpec) DeepCopy ¶
func (in *GraphdServiceSpec) DeepCopy() *GraphdServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphdServiceSpec.
func (*GraphdServiceSpec) DeepCopyInto ¶
func (in *GraphdServiceSpec) DeepCopyInto(out *GraphdServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphdSpec ¶
type GraphdSpec struct { ComponentSpec `json:",inline"` // Config defines a graphd configuration load into ConfigMap Config map[string]string `json:"config,omitempty"` // Service defines a k8s service of Graphd cluster. // +optional Service *GraphdServiceSpec `json:"service,omitempty"` // K8S persistent volume claim for Graphd log volume. // +optional LogVolumeClaim *StorageClaim `json:"logVolumeClaim,omitempty"` }
GraphdSpec defines the desired state of Graphd
func (*GraphdSpec) DeepCopy ¶
func (in *GraphdSpec) DeepCopy() *GraphdSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphdSpec.
func (*GraphdSpec) DeepCopyInto ¶
func (in *GraphdSpec) DeepCopyInto(out *GraphdSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GsStorageProvider ¶
type GsStorageProvider struct { // Location in which the gs bucket is located. Location string `json:"location,omitempty"` // Bucket in which to store the backup data. Bucket string `json:"bucket,omitempty"` // SecretName is the name of secret which stores // the GS service account or refresh token JSON. // Secret key: credentials SecretName string `json:"secretName,omitempty"` }
GsStorageProvider represents a GS compliant storage for storing backups.
func (*GsStorageProvider) DeepCopy ¶
func (in *GsStorageProvider) DeepCopy() *GsStorageProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GsStorageProvider.
func (*GsStorageProvider) DeepCopyInto ¶
func (in *GsStorageProvider) DeepCopyInto(out *GsStorageProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LicenseSpec ¶
type LicenseSpec struct { // Name of the license secret. SecretName string `json:"secretName,omitempty"` // The key to nebula license file. LicenseKey string `json:"licenseKey,omitempty"` }
func (*LicenseSpec) DeepCopy ¶
func (in *LicenseSpec) DeepCopy() *LicenseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LicenseSpec.
func (*LicenseSpec) DeepCopyInto ¶
func (in *LicenseSpec) DeepCopyInto(out *LicenseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogRotate ¶
type LogRotate struct { // +kubebuilder:default=5 // +optional Rotate int32 `json:"rotate,omitempty"` // +kubebuilder:default="200M" // +optional Size string `json:"size,omitempty"` }
func (*LogRotate) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogRotate.
func (*LogRotate) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadSpec ¶
type MetadSpec struct { ComponentSpec `json:",inline"` // Config defines a metad configuration load into ConfigMap Config map[string]string `json:"config,omitempty"` // Service defines a Kubernetes service of Metad cluster. // +optional Service *ServiceSpec `json:"service,omitempty"` // K8S persistent volume claim for Metad log volume. // +optional LogVolumeClaim *StorageClaim `json:"logVolumeClaim,omitempty"` // K8S persistent volume claim for Metad data volume. // +optional DataVolumeClaim *StorageClaim `json:"dataVolumeClaim,omitempty"` // License defines a nebula license load into Secret License *LicenseSpec `json:"license,omitempty"` // LicenseManagerURL defines a nebula license manager url LicenseManagerURL *string `json:"licenseManagerURL,omitempty"` }
MetadSpec defines the desired state of Metad
func (*MetadSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadSpec.
func (*MetadSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespacedObjectReference ¶
type NamespacedObjectReference struct { // ClusterName of backup/restore cluster ClusterName string `json:"clusterName"` // ClusterNamespace of backup/restore cluster // +optional ClusterNamespace *string `json:"clusterNamespace,omitempty"` }
NamespacedObjectReference contains enough information to let you locate the referenced object in any namespace
func (*NamespacedObjectReference) DeepCopy ¶
func (in *NamespacedObjectReference) DeepCopy() *NamespacedObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedObjectReference.
func (*NamespacedObjectReference) DeepCopyInto ¶
func (in *NamespacedObjectReference) DeepCopyInto(out *NamespacedObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NebulaBackup ¶
type NebulaBackup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BackupSpec `json:"spec,omitempty"` Status BackupStatus `json:"status,omitempty"` }
func (*NebulaBackup) CleanBackupData ¶
func (nb *NebulaBackup) CleanBackupData() bool
func (*NebulaBackup) DeepCopy ¶
func (in *NebulaBackup) DeepCopy() *NebulaBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaBackup.
func (*NebulaBackup) DeepCopyInto ¶
func (in *NebulaBackup) DeepCopyInto(out *NebulaBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaBackup) DeepCopyObject ¶
func (in *NebulaBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NebulaBackup) GenerateOwnerReferences ¶
func (nb *NebulaBackup) GenerateOwnerReferences() []metav1.OwnerReference
type NebulaBackupList ¶
type NebulaBackupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NebulaBackup `json:"items"` }
NebulaBackupList contains a list of NebulaBackup.
func (*NebulaBackupList) DeepCopy ¶
func (in *NebulaBackupList) DeepCopy() *NebulaBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaBackupList.
func (*NebulaBackupList) DeepCopyInto ¶
func (in *NebulaBackupList) DeepCopyInto(out *NebulaBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaBackupList) DeepCopyObject ¶
func (in *NebulaBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NebulaCluster ¶
type NebulaCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NebulaClusterSpec `json:"spec,omitempty"` Status NebulaClusterStatus `json:"status,omitempty"` }
NebulaCluster is the Schema for the nebulaclusters API
func (*NebulaCluster) AutoMountServerCerts ¶
func (nc *NebulaCluster) AutoMountServerCerts() bool
func (*NebulaCluster) ComponentByType ¶
func (nc *NebulaCluster) ComponentByType(typ ComponentType) (NebulaClusterComponent, error)
func (*NebulaCluster) ConcurrentTransfer ¶
func (nc *NebulaCluster) ConcurrentTransfer() bool
func (*NebulaCluster) DeepCopy ¶
func (in *NebulaCluster) DeepCopy() *NebulaCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaCluster.
func (*NebulaCluster) DeepCopyInto ¶
func (in *NebulaCluster) DeepCopyInto(out *NebulaCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaCluster) DeepCopyObject ¶
func (in *NebulaCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NebulaCluster) ExporterComponent ¶
func (nc *NebulaCluster) ExporterComponent() NebulaExporterComponent
func (*NebulaCluster) GenerateOwnerReferences ¶
func (nc *NebulaCluster) GenerateOwnerReferences() []metav1.OwnerReference
func (*NebulaCluster) GetClusterName ¶
func (nc *NebulaCluster) GetClusterName() string
func (*NebulaCluster) GetGraphdEndpoints ¶
func (nc *NebulaCluster) GetGraphdEndpoints(portName string) []string
func (*NebulaCluster) GetGraphdServiceName ¶
func (nc *NebulaCluster) GetGraphdServiceName() string
func (*NebulaCluster) GetMetadEndpoints ¶
func (nc *NebulaCluster) GetMetadEndpoints(portName string) []string
func (*NebulaCluster) GetMetadThriftConnAddress ¶
func (nc *NebulaCluster) GetMetadThriftConnAddress() string
func (*NebulaCluster) GetStoragedEndpoints ¶
func (nc *NebulaCluster) GetStoragedEndpoints(portName string) []string
func (*NebulaCluster) GraphdComponent ¶
func (nc *NebulaCluster) GraphdComponent() NebulaClusterComponent
func (*NebulaCluster) InsecureSkipVerify ¶
func (nc *NebulaCluster) InsecureSkipVerify() bool
func (*NebulaCluster) IsAutoBalanceEnabled ¶
func (nc *NebulaCluster) IsAutoBalanceEnabled() bool
func (*NebulaCluster) IsAutoFailoverEnabled ¶
func (nc *NebulaCluster) IsAutoFailoverEnabled() bool
func (*NebulaCluster) IsBREnabled ¶
func (nc *NebulaCluster) IsBREnabled() bool
func (*NebulaCluster) IsClusterSSLEnabled ¶
func (nc *NebulaCluster) IsClusterSSLEnabled() bool
func (*NebulaCluster) IsConditionReady ¶
func (nc *NebulaCluster) IsConditionReady() bool
func (*NebulaCluster) IsForceUpdateEnabled ¶
func (nc *NebulaCluster) IsForceUpdateEnabled() bool
func (*NebulaCluster) IsGraphdSSLEnabled ¶
func (nc *NebulaCluster) IsGraphdSSLEnabled() bool
func (*NebulaCluster) IsLogRotateEnabled ¶
func (nc *NebulaCluster) IsLogRotateEnabled() bool
func (*NebulaCluster) IsMetadSSLEnabled ¶
func (nc *NebulaCluster) IsMetadSSLEnabled() bool
func (*NebulaCluster) IsPVReclaimEnabled ¶
func (nc *NebulaCluster) IsPVReclaimEnabled() bool
func (*NebulaCluster) IsReady ¶
func (nc *NebulaCluster) IsReady() bool
func (*NebulaCluster) IsStoragedAvailable ¶
func (nc *NebulaCluster) IsStoragedAvailable() bool
func (*NebulaCluster) IsStoragedSSLEnabled ¶
func (nc *NebulaCluster) IsStoragedSSLEnabled() bool
func (*NebulaCluster) IsSuspendEnabled ¶
func (nc *NebulaCluster) IsSuspendEnabled() bool
func (*NebulaCluster) IsZoneEnabled ¶
func (nc *NebulaCluster) IsZoneEnabled() bool
func (*NebulaCluster) MetadComponent ¶
func (nc *NebulaCluster) MetadComponent() NebulaClusterComponent
func (*NebulaCluster) SslServerName ¶
func (nc *NebulaCluster) SslServerName() string
func (*NebulaCluster) StoragedComponent ¶
func (nc *NebulaCluster) StoragedComponent() NebulaClusterComponent
type NebulaClusterComponent ¶
type NebulaClusterComponent interface { BaseComponent GetLogStorageResources() *corev1.ResourceRequirements GetDataStorageResources() (*corev1.ResourceRequirements, error) GetConfig() map[string]string GetConfigMapKey() string IsSSLEnabled() bool GetServiceSpec() *ServiceSpec GetHeadlessServiceName() string GetServiceFQDN() string GetPodFQDN(ordinal int32) string GetPort(portName string) int32 GetConnAddress(portName string) string GetEndpoints(portName string) []string GenerateLabels() map[string]string GenerateContainerPorts() []corev1.ContainerPort GenerateVolumeMounts() []corev1.VolumeMount GenerateVolumes() []corev1.Volume GenerateVolumeClaim() ([]corev1.PersistentVolumeClaim, error) GenerateWorkload(gvk schema.GroupVersionKind, cm *corev1.ConfigMap) (*unstructured.Unstructured, error) GenerateService() *corev1.Service GenerateHeadlessService() *corev1.Service GenerateConfigMap() *corev1.ConfigMap IsReady() bool GetUpdateRevision() string SetPhase(phase ComponentPhase) GetPhase() ComponentPhase IsSuspending() bool IsSuspended() bool IsAutoFailovering() bool SetWorkloadStatus(status *WorkloadStatus) SetVolumeStatus(status *VolumeStatus) UpdateComponentStatus(status *ComponentStatus) }
NebulaClusterComponent is the interface for component +k8s:deepcopy-gen=false
type NebulaClusterCondition ¶
type NebulaClusterCondition struct { // Type of the condition. Type NebulaClusterConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status"` // The last time this condition was updated. LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"` // Last time the condition transitioned from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // The reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // A human-readable message indicating details about the transition. // +optional Message string `json:"message,omitempty"` }
NebulaClusterCondition describes the state of a nebula cluster at a certain point.
func (*NebulaClusterCondition) DeepCopy ¶
func (in *NebulaClusterCondition) DeepCopy() *NebulaClusterCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaClusterCondition.
func (*NebulaClusterCondition) DeepCopyInto ¶
func (in *NebulaClusterCondition) DeepCopyInto(out *NebulaClusterCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NebulaClusterConditionType ¶
type NebulaClusterConditionType string
NebulaClusterConditionType represents a nebula cluster condition value.
const ( // NebulaClusterReady indicates that the nebula cluster is ready or not. // This is defined as: // - All workloads are up-to-date (currentRevision == updateRevision). // - All nebula component pods are healthy. NebulaClusterReady NebulaClusterConditionType = "Ready" )
type NebulaClusterList ¶
type NebulaClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NebulaCluster `json:"items"` }
NebulaClusterList contains a list of NebulaCluster
func (*NebulaClusterList) DeepCopy ¶
func (in *NebulaClusterList) DeepCopy() *NebulaClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaClusterList.
func (*NebulaClusterList) DeepCopyInto ¶
func (in *NebulaClusterList) DeepCopyInto(out *NebulaClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaClusterList) DeepCopyObject ¶
func (in *NebulaClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NebulaClusterSpec ¶
type NebulaClusterSpec struct { // graphd spec Graphd *GraphdSpec `json:"graphd"` // Metad spec Metad *MetadSpec `json:"metad"` // Storaged spec Storaged *StoragedSpec `json:"storaged"` // +optional Reference WorkloadReference `json:"reference,omitempty"` // +optional Suspend *bool `json:"suspend,omitempty"` // +kubebuilder:default=default-scheduler // +optional SchedulerName string `json:"schedulerName"` // TopologySpreadConstraints specifies how to spread matching pods among the given topology. TopologySpreadConstraints []TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"` // Flag to enable/disable PV reclaim while the nebula cluster deleted, default false // +optional EnablePVReclaim *bool `json:"enablePVReclaim,omitempty"` // +kubebuilder:default=Always ImagePullPolicy *corev1.PullPolicy `json:"imagePullPolicy,omitempty"` // +optional ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"` // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // Flag to enable/disable sidecar container nebula-agent injection, default false. // +optional EnableBR *bool `json:"enableBR,omitempty"` // Flag to enable/disable auto fail over in use local PV scenario, default false. // +optional EnableAutoFailover *bool `json:"enableAutoFailover,omitempty"` // +optional FailoverPeriod metav1.Duration `json:"failoverPeriod,omitempty"` // +optional LogRotate *LogRotate `json:"logRotate,omitempty"` // +optional Exporter *ExporterSpec `json:"exporter,omitempty"` // +optional Console *ConsoleSpec `json:"console,omitempty"` // SSLCerts defines SSL certs load into secret // +optional SSLCerts *SSLCertsSpec `json:"sslCerts,omitempty"` // +optional Agent *AgentContainerSpec `json:"agent,omitempty"` // +optional AlpineImage *string `json:"alpineImage,omitempty"` }
NebulaClusterSpec defines the desired state of NebulaCluster
func (*NebulaClusterSpec) DeepCopy ¶
func (in *NebulaClusterSpec) DeepCopy() *NebulaClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaClusterSpec.
func (*NebulaClusterSpec) DeepCopyInto ¶
func (in *NebulaClusterSpec) DeepCopyInto(out *NebulaClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NebulaClusterStatus ¶
type NebulaClusterStatus struct { ObservedGeneration int64 `json:"observedGeneration,omitempty"` Graphd ComponentStatus `json:"graphd,omitempty"` Metad ComponentStatus `json:"metad,omitempty"` Storaged StoragedStatus `json:"storaged,omitempty"` Conditions []NebulaClusterCondition `json:"conditions,omitempty"` Version string `json:"version,omitempty"` }
NebulaClusterStatus defines the observed state of NebulaCluster
func (*NebulaClusterStatus) DeepCopy ¶
func (in *NebulaClusterStatus) DeepCopy() *NebulaClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaClusterStatus.
func (*NebulaClusterStatus) DeepCopyInto ¶
func (in *NebulaClusterStatus) DeepCopyInto(out *NebulaClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NebulaCronBackup ¶
type NebulaCronBackup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CronBackupSpec `json:"spec,omitempty"` Status CronBackupStatus `json:"status,omitempty"` }
func (*NebulaCronBackup) DeepCopy ¶
func (in *NebulaCronBackup) DeepCopy() *NebulaCronBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaCronBackup.
func (*NebulaCronBackup) DeepCopyInto ¶
func (in *NebulaCronBackup) DeepCopyInto(out *NebulaCronBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaCronBackup) DeepCopyObject ¶
func (in *NebulaCronBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NebulaCronBackup) GenerateOwnerReferences ¶
func (ncb *NebulaCronBackup) GenerateOwnerReferences() []metav1.OwnerReference
type NebulaCronBackupList ¶
type NebulaCronBackupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NebulaCronBackup `json:"items"` }
NebulaCronBackupList contains a list of NebulaCronBackup.
func (*NebulaCronBackupList) DeepCopy ¶
func (in *NebulaCronBackupList) DeepCopy() *NebulaCronBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaCronBackupList.
func (*NebulaCronBackupList) DeepCopyInto ¶
func (in *NebulaCronBackupList) DeepCopyInto(out *NebulaCronBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaCronBackupList) DeepCopyObject ¶
func (in *NebulaCronBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NebulaExporterComponent ¶
type NebulaExporterComponent interface { ComponentSpec() ComponentAccessor MaxRequests() int32 CollectRegex() string IgnoreRegex() string }
+k8s:deepcopy-gen=false
type NebulaRestore ¶
type NebulaRestore struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RestoreSpec `json:"spec,omitempty"` Status RestoreStatus `json:"status,omitempty"` }
func (*NebulaRestore) DeepCopy ¶
func (in *NebulaRestore) DeepCopy() *NebulaRestore
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaRestore.
func (*NebulaRestore) DeepCopyInto ¶
func (in *NebulaRestore) DeepCopyInto(out *NebulaRestore)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaRestore) DeepCopyObject ¶
func (in *NebulaRestore) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NebulaRestoreList ¶
type NebulaRestoreList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NebulaRestore `json:"items"` }
NebulaRestoreList contains a list of NebulaRestore.
func (*NebulaRestoreList) DeepCopy ¶
func (in *NebulaRestoreList) DeepCopy() *NebulaRestoreList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NebulaRestoreList.
func (*NebulaRestoreList) DeepCopyInto ¶
func (in *NebulaRestoreList) DeepCopyInto(out *NebulaRestoreList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NebulaRestoreList) DeepCopyObject ¶
func (in *NebulaRestoreList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ObjectStorageType ¶
type ObjectStorageType string
ObjectStorageType represents the object storage type.
const ( // ObjectStorageS3 represents all storage that compatible with the Amazon S3. ObjectStorageS3 ObjectStorageType = "s3" // ObjectStorageGS represents the Google storage ObjectStorageGS ObjectStorageType = "gs" // ObjectStorageUnknown represents the unknown storage type ObjectStorageUnknown ObjectStorageType = "unknown" )
type ProvisionedVolume ¶
type ProvisionedVolume struct { VolumeName string `json:"volumeName"` StorageClass string `json:"storageClass"` Capacity string `json:"capacity"` }
ProvisionedVolume describes the status of a specified PVC.
func (*ProvisionedVolume) DeepCopy ¶
func (in *ProvisionedVolume) DeepCopy() *ProvisionedVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProvisionedVolume.
func (*ProvisionedVolume) DeepCopyInto ¶
func (in *ProvisionedVolume) DeepCopyInto(out *ProvisionedVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProvisionedVolumes ¶
type ProvisionedVolumes map[string]ProvisionedVolume
func (ProvisionedVolumes) DeepCopy ¶
func (in ProvisionedVolumes) DeepCopy() ProvisionedVolumes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProvisionedVolumes.
func (ProvisionedVolumes) DeepCopyInto ¶
func (in ProvisionedVolumes) DeepCopyInto(out *ProvisionedVolumes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreCondition ¶
type RestoreCondition struct { // Type of the condition. Type RestoreConditionType `json:"type"` // Status of the condition, one of True, False, Unknown. Status corev1.ConditionStatus `json:"status"` // The last time this condition was updated. LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"` // Last time the condition transitioned from one status to another. // +optional LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // The reason for the condition's last transition. // +optional Reason string `json:"reason,omitempty"` // A human-readable message indicating details about the transition. // +optional Message string `json:"message,omitempty"` }
RestoreCondition describes the observed state of a Restore at a certain point.
func (*RestoreCondition) DeepCopy ¶
func (in *RestoreCondition) DeepCopy() *RestoreCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreCondition.
func (*RestoreCondition) DeepCopyInto ¶
func (in *RestoreCondition) DeepCopyInto(out *RestoreCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreConditionType ¶
type RestoreConditionType string
RestoreConditionType represents a valid condition of a Restore.
const ( // RestoreComplete means the restore has successfully executed and the // backup data has been loaded into nebula cluster. RestoreComplete RestoreConditionType = "Complete" // RestoreMetadComplete means metad pods have been rebuilt from the backup data RestoreMetadComplete RestoreConditionType = "MetadComplete" // RestoreStoragedCompleted means storaged pods have been rebuilt from the backup data RestoreStoragedCompleted RestoreConditionType = "StoragedComplete" // RestoreFailed means the restore has failed. RestoreFailed RestoreConditionType = "Failed" // RestoreInvalid means invalid restore CR. RestoreInvalid RestoreConditionType = "Invalid" )
type RestoreConfig ¶
type RestoreConfig struct { NamespacedObjectReference `json:",inline"` // The name of the backup file. BackupName string `json:"backupName,omitempty"` // Concurrency is used to control the number of concurrent file downloads during data restoration. // +kubebuilder:default=5 // +optional Concurrency int32 `json:"concurrency,omitempty"` // StorageProvider configures where and how backups should be stored. StorageProvider `json:",inline"` }
func (*RestoreConfig) DeepCopy ¶
func (in *RestoreConfig) DeepCopy() *RestoreConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreConfig.
func (*RestoreConfig) DeepCopyInto ¶
func (in *RestoreConfig) DeepCopyInto(out *RestoreConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreSpec ¶
type RestoreSpec struct { // +optional NodeSelector map[string]string `json:"nodeSelector,omitempty"` // +optional Affinity *corev1.Affinity `json:"affinity,omitempty"` // +optional Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // +optional AutoRemoveFailed bool `json:"autoRemoveFailed,omitempty"` // +optional Config *RestoreConfig `json:"config,omitempty"` }
RestoreSpec contains the specification for a restore of a nebula cluster backup.
func (*RestoreSpec) DeepCopy ¶
func (in *RestoreSpec) DeepCopy() *RestoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreSpec.
func (*RestoreSpec) DeepCopyInto ¶
func (in *RestoreSpec) DeepCopyInto(out *RestoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RestoreStatus ¶
type RestoreStatus struct { // TimeStarted is the time at which the restore was started. // +nullable TimeStarted *metav1.Time `json:"timeStarted,omitempty"` // TimeCompleted is the time at which the restore was completed. // +nullable TimeCompleted *metav1.Time `json:"timeCompleted,omitempty"` // ClusterName is the name of restored nebula cluster. ClusterName string `json:"clusterName,omitempty"` // Phase is a user readable state inferred from the underlying Restore conditions Phase RestoreConditionType `json:"phase,omitempty"` // +nullable Conditions []RestoreCondition `json:"conditions,omitempty"` // +nullable Partitions map[string][]*nebula.HostAddr `json:"partitions,omitempty"` // +nullable Checkpoints map[string]map[string]string `json:"checkpoints,omitempty"` // The Metad data files download is complete. MetaDownload bool `json:"metaDownload"` // The Storaged data files download is complete. StorageDownload bool `json:"storageDownload"` }
RestoreStatus represents the current status of a nebula cluster restore.
func (*RestoreStatus) DeepCopy ¶
func (in *RestoreStatus) DeepCopy() *RestoreStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RestoreStatus.
func (*RestoreStatus) DeepCopyInto ¶
func (in *RestoreStatus) DeepCopyInto(out *RestoreStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type S3StorageProvider ¶
type S3StorageProvider struct { // Region in which the S3 compatible bucket is located. Region string `json:"region,omitempty"` // Bucket in which to store the backup data. Bucket string `json:"bucket,omitempty"` // Endpoint of S3 compatible storage service Endpoint string `json:"endpoint,omitempty"` // SecretName is the name of secret which stores access key and secret key. // Secret keys: access-key, secret-key SecretName string `json:"secretName,omitempty"` }
S3StorageProvider represents a S3 compliant storage for storing backups.
func (*S3StorageProvider) DeepCopy ¶
func (in *S3StorageProvider) DeepCopy() *S3StorageProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3StorageProvider.
func (*S3StorageProvider) DeepCopyInto ¶
func (in *S3StorageProvider) DeepCopyInto(out *S3StorageProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SSLCertsSpec ¶
type SSLCertsSpec struct { // Name of the server cert secret ServerSecret string `json:"serverSecret,omitempty"` // The key to server PEM encoded public key certificate // +kubebuilder:default=tls.crt // +optional ServerCert string `json:"serverCert,omitempty"` // The key to server private key associated with given certificate // +kubebuilder:default=tls.key // +optional ServerKey string `json:"serverKey,omitempty"` // Name of the client cert secret ClientSecret string `json:"clientSecret,omitempty"` // The key to client PEM encoded public key certificate // +kubebuilder:default=tls.crt // +optional ClientCert string `json:"clientCert,omitempty"` // The key to client private key associated with given certificate // +kubebuilder:default=tls.key // +optional ClientKey string `json:"clientKey,omitempty"` // Name of the CA cert secret CASecret string `json:"caSecret,omitempty"` // The key to CA PEM encoded public key certificate // +kubebuilder:default=ca.crt // +optional CACert string `json:"caCert,omitempty"` // Name of the client CA cert secret ClientCASecret string `json:"clientCASecret,omitempty"` // The key to Client CA PEM encoded public key certificate // +kubebuilder:default=ca.crt // +optional ClientCACert string `json:"clientCACert,omitempty"` // InsecureSkipVerify controls whether a client verifies the server's // certificate chain and host name. // +optional InsecureSkipVerify *bool `json:"insecureSkipVerify,omitempty"` // ServerName is used to verify the hostname on the returned // certificates unless InsecureSkipVerify is given. It is also included // in the client's handshake to support virtual hosting unless it is // an IP address. // +optional ServerName string `json:"serverName,omitempty"` // AutoMountServerCerts controls whether operator mounts server's // certificate from secret. // +optional AutoMountServerCerts *bool `json:"autoMountServerCerts,omitempty"` }
func (*SSLCertsSpec) DeepCopy ¶
func (in *SSLCertsSpec) DeepCopy() *SSLCertsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLCertsSpec.
func (*SSLCertsSpec) DeepCopyInto ¶
func (in *SSLCertsSpec) DeepCopyInto(out *SSLCertsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceSpec ¶
type ServiceSpec struct { Type corev1.ServiceType `json:"type,omitempty"` // +optional Annotations map[string]string `json:"annotations,omitempty"` // +optional Selector map[string]string `json:"selector,omitempty"` // ClusterIP is the clusterIP of service // +optional ClusterIP *string `json:"clusterIP,omitempty"` // +optional PublishNotReadyAddresses bool `json:"publishNotReadyAddresses,omitempty"` }
ServiceSpec is a common set of k8s service configs.
func (*ServiceSpec) DeepCopy ¶
func (in *ServiceSpec) DeepCopy() *ServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceSpec.
func (*ServiceSpec) DeepCopyInto ¶
func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageClaim ¶
type StorageClaim struct { // Resources represents the minimum resources the volume should have. // +optional Resources corev1.ResourceRequirements `json:"resources,omitempty"` // Name of the StorageClass required by the claim. // +optional StorageClassName *string `json:"storageClassName,omitempty"` }
StorageClaim contains details of storage
func (*StorageClaim) DeepCopy ¶
func (in *StorageClaim) DeepCopy() *StorageClaim
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageClaim.
func (*StorageClaim) DeepCopyInto ¶
func (in *StorageClaim) DeepCopyInto(out *StorageClaim)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageProvider ¶
type StorageProvider struct { S3 *S3StorageProvider `json:"s3,omitempty"` GS *GsStorageProvider `json:"gs,omitempty"` }
func (*StorageProvider) DeepCopy ¶
func (in *StorageProvider) DeepCopy() *StorageProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageProvider.
func (*StorageProvider) DeepCopyInto ¶
func (in *StorageProvider) DeepCopyInto(out *StorageProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StoragedSpec ¶
type StoragedSpec struct { ComponentSpec `json:",inline"` // Config defines a storaged configuration load into ConfigMap Config map[string]string `json:"config,omitempty"` // Service defines a Kubernetes service of Storaged cluster. // +optional Service *ServiceSpec `json:"service,omitempty"` // K8S persistent volume claim for Storaged log volume. // +optional LogVolumeClaim *StorageClaim `json:"logVolumeClaim,omitempty"` // K8S persistent volume claim for Storaged data volume. // +optional DataVolumeClaims []StorageClaim `json:"dataVolumeClaims,omitempty"` // Flag to enable/disable auto balance data and leader while the nebula storaged scale out, default false // +optional EnableAutoBalance *bool `json:"enableAutoBalance,omitempty"` // Flag to enable/disable rolling update without leader state transition // +optional EnableForceUpdate *bool `json:"enableForceUpdate,omitempty"` // Flag to enable/disable transferring leader state concurrently. // Note: This feature is in alpha state. // +optional ConcurrentTransfer *bool `json:"concurrentTransfer,omitempty"` }
StoragedSpec defines the desired state of Storaged
func (*StoragedSpec) DeepCopy ¶
func (in *StoragedSpec) DeepCopy() *StoragedSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StoragedSpec.
func (*StoragedSpec) DeepCopyInto ¶
func (in *StoragedSpec) DeepCopyInto(out *StoragedSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StoragedStatus ¶
type StoragedStatus struct { ComponentStatus `json:",inline"` HostsAdded bool `json:"hostsAdded,omitempty"` RemovedSpaces []int32 `json:"removedSpaces,omitempty"` BalancedSpaces []int32 `json:"balancedSpaces,omitempty"` LastBalanceJob *BalanceJob `json:"lastBalanceJob,omitempty"` FailureHosts map[string]FailureHost `json:"failureHosts,omitempty"` Volume *VolumeStatus `json:"volume,omitempty"` }
StoragedStatus describes the status and version of nebula storaged.
func (*StoragedStatus) DeepCopy ¶
func (in *StoragedStatus) DeepCopy() *StoragedStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StoragedStatus.
func (*StoragedStatus) DeepCopyInto ¶
func (in *StoragedStatus) DeepCopyInto(out *StoragedStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopologySpreadConstraint ¶
type TopologySpreadConstraint struct { // TopologyKey is the key of node labels. Nodes that have a label with this key // and identical values are considered to be in the same topology. // We consider each <key, value> as a "bucket", and try to put balanced number // of pods into each bucket. // MaxSkew is default set to 1 // LabelSelector is generated by component type TopologyKey string `json:"topologyKey"` WhenUnsatisfiable corev1.UnsatisfiableConstraintAction `json:"whenUnsatisfiable"` }
func (*TopologySpreadConstraint) DeepCopy ¶
func (in *TopologySpreadConstraint) DeepCopy() *TopologySpreadConstraint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopologySpreadConstraint.
func (*TopologySpreadConstraint) DeepCopyInto ¶
func (in *TopologySpreadConstraint) DeepCopyInto(out *TopologySpreadConstraint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumeStatus ¶
type VolumeStatus struct { ProvisionedVolumes map[string]ProvisionedVolume `json:"provisionedVolumes,omitempty"` // All volumes have been provisioned with the desired resources. ProvisionedDone bool `json:"provisionedDone"` }
VolumeStatus describes the observed state of volumes.
func (*VolumeStatus) DeepCopy ¶
func (in *VolumeStatus) DeepCopy() *VolumeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumeStatus.
func (*VolumeStatus) DeepCopyInto ¶
func (in *VolumeStatus) DeepCopyInto(out *VolumeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadReference ¶
type WorkloadReference struct { // Name of the referenced CustomResourceDefinition. // e.g. statefulsets.apps Name string `json:"name"` // Version indicate which version should be used if CRD has multiple versions // by default it will use the first one if not specified Version string `json:"version,omitempty"` }
A WorkloadReference refers to a CustomResourceDefinition by name.
func (*WorkloadReference) DeepCopy ¶
func (in *WorkloadReference) DeepCopy() *WorkloadReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadReference.
func (*WorkloadReference) DeepCopyInto ¶
func (in *WorkloadReference) DeepCopyInto(out *WorkloadReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadStatus ¶
type WorkloadStatus struct { // ObservedGeneration is the most recent generation observed for this Workload. It corresponds to the // Workload's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // ReadyReplicas is the number of pods with a Ready Condition. // +optional ReadyReplicas int32 `json:"readyReplicas,omitempty"` // Replicas is the number of pods created by the Workload controller. Replicas int32 `json:"replicas"` // The number of pods in updatedRevision. UpdatedReplicas int32 `json:"updatedReplicas"` // The number of pods in currentRevision. CurrentReplicas int32 `json:"currentReplicas,omitempty"` // Count of hash collisions for the Workload. // +optional CollisionCount *int32 `json:"collisionCount,omitempty"` // CurrentRevision, if not empty, indicates the current version of the Workload. CurrentRevision string `json:"currentRevision"` // UpdateRevision, if not empty, indicates the version of the Workload used to generate Pods in the sequence UpdateRevision string `json:"updateRevision,omitempty"` // Total number of available pods. // +optional AvailableReplicas int32 `json:"availableReplicas"` }
WorkloadStatus describes the status of a specified workload.
func (*WorkloadStatus) DeepCopy ¶
func (in *WorkloadStatus) DeepCopy() *WorkloadStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadStatus.
func (*WorkloadStatus) DeepCopyInto ¶
func (in *WorkloadStatus) DeepCopyInto(out *WorkloadStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- common_types.go
- doc.go
- exporter.go
- groupversion_info.go
- nebulabackup.go
- nebulabackup_types.go
- nebulacluster.go
- nebulacluster_common.go
- nebulacluster_component.go
- nebulacluster_graphd.go
- nebulacluster_metad.go
- nebulacluster_storaged.go
- nebulacluster_types.go
- nebulacronbackup_types.go
- nebularestore_types.go
- template.go
- zz_generated.deepcopy.go