diff --git a/api/v1/zz_generated.deepcopy.go b/api/v1/zz_generated.deepcopy.go index 795a5ce2af..c4344a41f9 100644 --- a/api/v1/zz_generated.deepcopy.go +++ b/api/v1/zz_generated.deepcopy.go @@ -280,6 +280,21 @@ func (in *ManageCephCluster) DeepCopyInto(out *ManageCephCluster) { *out = new(bool) **out = **in } + if in.FullRatio != nil { + in, out := &in.FullRatio, &out.FullRatio + *out = new(float64) + **out = **in + } + if in.NearFullRatio != nil { + in, out := &in.NearFullRatio, &out.NearFullRatio + *out = new(float64) + **out = **in + } + if in.BackfillFullRatio != nil { + in, out := &in.BackfillFullRatio, &out.BackfillFullRatio + *out = new(float64) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageCephCluster. diff --git a/config/crd/bases/ocs.openshift.io_storageclusters.yaml b/config/crd/bases/ocs.openshift.io_storageclusters.yaml index 0246d86ac0..045e1c95fe 100644 --- a/config/crd/bases/ocs.openshift.io_storageclusters.yaml +++ b/config/crd/bases/ocs.openshift.io_storageclusters.yaml @@ -725,10 +725,26 @@ spec: description: ManageCephCluster defines how to reconcile the Ceph cluster definition properties: + backfillFullRatio: + description: BackfillFullRatio is the ratio at which the cluster + is too full for backfill. Backfill will be disabled if above + this threshold. Default is 0.90. + maximum: 1 + minimum: 0 + nullable: true + type: number continueUpgradeAfterChecksEvenIfNotHealthy: description: Whether or not continue if PGs are not clean during an upgrade type: boolean + fullRatio: + description: FullRatio is the ratio at which the cluster is + considered full and ceph will stop accepting writes. Default + is 0.95. + maximum: 1 + minimum: 0 + nullable: true + type: number mgrCount: enum: - 1 @@ -739,6 +755,14 @@ spec: - 3 - 5 type: integer + nearFullRatio: + description: NearFullRatio is the ratio at which the cluster + is considered nearly full and will raise a ceph health warning. + Default is 0.85. + maximum: 1 + minimum: 0 + nullable: true + type: number osdMaintenanceTimeout: description: A duration in minutes that determines how long an entire failureDomain like `region/zone/host` will be diff --git a/deploy/csv-templates/crds/ocs/ocs.openshift.io_storageclusters.yaml b/deploy/csv-templates/crds/ocs/ocs.openshift.io_storageclusters.yaml index 0246d86ac0..045e1c95fe 100644 --- a/deploy/csv-templates/crds/ocs/ocs.openshift.io_storageclusters.yaml +++ b/deploy/csv-templates/crds/ocs/ocs.openshift.io_storageclusters.yaml @@ -725,10 +725,26 @@ spec: description: ManageCephCluster defines how to reconcile the Ceph cluster definition properties: + backfillFullRatio: + description: BackfillFullRatio is the ratio at which the cluster + is too full for backfill. Backfill will be disabled if above + this threshold. Default is 0.90. + maximum: 1 + minimum: 0 + nullable: true + type: number continueUpgradeAfterChecksEvenIfNotHealthy: description: Whether or not continue if PGs are not clean during an upgrade type: boolean + fullRatio: + description: FullRatio is the ratio at which the cluster is + considered full and ceph will stop accepting writes. Default + is 0.95. + maximum: 1 + minimum: 0 + nullable: true + type: number mgrCount: enum: - 1 @@ -739,6 +755,14 @@ spec: - 3 - 5 type: integer + nearFullRatio: + description: NearFullRatio is the ratio at which the cluster + is considered nearly full and will raise a ceph health warning. + Default is 0.85. + maximum: 1 + minimum: 0 + nullable: true + type: number osdMaintenanceTimeout: description: A duration in minutes that determines how long an entire failureDomain like `region/zone/host` will be diff --git a/deploy/ocs-operator/manifests/storagecluster.crd.yaml b/deploy/ocs-operator/manifests/storagecluster.crd.yaml index 1c2bec127c..f044cddee5 100644 --- a/deploy/ocs-operator/manifests/storagecluster.crd.yaml +++ b/deploy/ocs-operator/manifests/storagecluster.crd.yaml @@ -724,10 +724,26 @@ spec: description: ManageCephCluster defines how to reconcile the Ceph cluster definition properties: + backfillFullRatio: + description: BackfillFullRatio is the ratio at which the cluster + is too full for backfill. Backfill will be disabled if above + this threshold. Default is 0.90. + maximum: 1 + minimum: 0 + nullable: true + type: number continueUpgradeAfterChecksEvenIfNotHealthy: description: Whether or not continue if PGs are not clean during an upgrade type: boolean + fullRatio: + description: FullRatio is the ratio at which the cluster is + considered full and ceph will stop accepting writes. Default + is 0.95. + maximum: 1 + minimum: 0 + nullable: true + type: number mgrCount: enum: - 1 @@ -738,6 +754,14 @@ spec: - 3 - 5 type: integer + nearFullRatio: + description: NearFullRatio is the ratio at which the cluster + is considered nearly full and will raise a ceph health warning. + Default is 0.85. + maximum: 1 + minimum: 0 + nullable: true + type: number osdMaintenanceTimeout: description: A duration in minutes that determines how long an entire failureDomain like `region/zone/host` will be diff --git a/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go b/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go index 828a3641b1..c211e972fb 100644 --- a/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go +++ b/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go @@ -198,6 +198,21 @@ type ManageCephCluster struct { // default DOWN/OUT interval) when it is draining. This is only relevant when `managePodBudgets` is `true` in cephCluster CR. // The default value is `30` minutes. OsdMaintenanceTimeout time.Duration `json:"osdMaintenanceTimeout,omitempty"` + // FullRatio is the ratio at which the cluster is considered full and ceph will stop accepting writes. Default is 0.95. + // +kubebuilder:validation:Minimum=0.0 + // +kubebuilder:validation:Maximum=1.0 + // +nullable + FullRatio *float64 `json:"fullRatio,omitempty"` + // NearFullRatio is the ratio at which the cluster is considered nearly full and will raise a ceph health warning. Default is 0.85. + // +kubebuilder:validation:Minimum=0.0 + // +kubebuilder:validation:Maximum=1.0 + // +nullable + NearFullRatio *float64 `json:"nearFullRatio,omitempty"` + // BackfillFullRatio is the ratio at which the cluster is too full for backfill. Backfill will be disabled if above this threshold. Default is 0.90. + // +kubebuilder:validation:Minimum=0.0 + // +kubebuilder:validation:Maximum=1.0 + // +nullable + BackfillFullRatio *float64 `json:"backfillFullRatio,omitempty"` } // ManageCephConfig defines how to reconcile the Ceph configuration diff --git a/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go b/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go index 795a5ce2af..c4344a41f9 100644 --- a/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go +++ b/metrics/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go @@ -280,6 +280,21 @@ func (in *ManageCephCluster) DeepCopyInto(out *ManageCephCluster) { *out = new(bool) **out = **in } + if in.FullRatio != nil { + in, out := &in.FullRatio, &out.FullRatio + *out = new(float64) + **out = **in + } + if in.NearFullRatio != nil { + in, out := &in.NearFullRatio, &out.NearFullRatio + *out = new(float64) + **out = **in + } + if in.BackfillFullRatio != nil { + in, out := &in.BackfillFullRatio, &out.BackfillFullRatio + *out = new(float64) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageCephCluster. diff --git a/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go b/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go index 828a3641b1..c211e972fb 100644 --- a/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go +++ b/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/storagecluster_types.go @@ -198,6 +198,21 @@ type ManageCephCluster struct { // default DOWN/OUT interval) when it is draining. This is only relevant when `managePodBudgets` is `true` in cephCluster CR. // The default value is `30` minutes. OsdMaintenanceTimeout time.Duration `json:"osdMaintenanceTimeout,omitempty"` + // FullRatio is the ratio at which the cluster is considered full and ceph will stop accepting writes. Default is 0.95. + // +kubebuilder:validation:Minimum=0.0 + // +kubebuilder:validation:Maximum=1.0 + // +nullable + FullRatio *float64 `json:"fullRatio,omitempty"` + // NearFullRatio is the ratio at which the cluster is considered nearly full and will raise a ceph health warning. Default is 0.85. + // +kubebuilder:validation:Minimum=0.0 + // +kubebuilder:validation:Maximum=1.0 + // +nullable + NearFullRatio *float64 `json:"nearFullRatio,omitempty"` + // BackfillFullRatio is the ratio at which the cluster is too full for backfill. Backfill will be disabled if above this threshold. Default is 0.90. + // +kubebuilder:validation:Minimum=0.0 + // +kubebuilder:validation:Maximum=1.0 + // +nullable + BackfillFullRatio *float64 `json:"backfillFullRatio,omitempty"` } // ManageCephConfig defines how to reconcile the Ceph configuration diff --git a/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go b/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go index 795a5ce2af..c4344a41f9 100644 --- a/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go +++ b/vendor/github.com/red-hat-storage/ocs-operator/api/v4/v1/zz_generated.deepcopy.go @@ -280,6 +280,21 @@ func (in *ManageCephCluster) DeepCopyInto(out *ManageCephCluster) { *out = new(bool) **out = **in } + if in.FullRatio != nil { + in, out := &in.FullRatio, &out.FullRatio + *out = new(float64) + **out = **in + } + if in.NearFullRatio != nil { + in, out := &in.NearFullRatio, &out.NearFullRatio + *out = new(float64) + **out = **in + } + if in.BackfillFullRatio != nil { + in, out := &in.BackfillFullRatio, &out.BackfillFullRatio + *out = new(float64) + **out = **in + } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManageCephCluster.