CephObjectStore [cephobjectstores.ceph.rook.io/v1]
- Description
- CephObjectStore represents a Ceph Object Store Gateway
- Type
object- Required
metadataspec
Specification
.spec
- Description
- ObjectStoreSpec represent the spec of a pool
- Type
object
.spec.allowUsersInNamespaces
- Description
- The list of allowed namespaces in addition to the object store namespace where ceph object store users may be created. Specify "*" to allow all namespaces, otherwise list individual namespaces that are to be allowed. This is useful for applications that need object store credentials to be created in their own namespace, where neither OBCs nor COSI is being used to create buckets. The default is empty.
- Type
array
.spec.allowUsersInNamespaces[]
- Type
string
.spec.auth
- Description
- The authentication configuration
- Type
object
.spec.auth.keystone
- Description
- The spec for Keystone
- Type
object- Required
acceptedRolesserviceUserSecretNameurl
.spec.auth.keystone.acceptedRoles
- Description
- The roles requires to serve requests.
- Type
array
.spec.auth.keystone.acceptedRoles[]
- Type
string
.spec.dataPool
- Description
- The data pool settings
- Type
object
.spec.dataPool.erasureCoded
- Description
- The erasure code settings
- Type
object- Required
codingChunksdataChunks
.spec.dataPool.mirroring
- Description
- The mirroring settings
- Type
object
.spec.dataPool.mirroring.peers
- Description
- Peers represents the peers spec
- Type
object
.spec.dataPool.mirroring.peers.secretNames
- Description
- SecretNames represents the Kubernetes Secret names to add rbd-mirror or cephfs-mirror peers
- Type
array
.spec.dataPool.mirroring.peers.secretNames[]
- Type
string
.spec.dataPool.mirroring.snapshotSchedules
- Description
- SnapshotSchedules is the scheduling of snapshot for mirrored images/pools
- Type
array
.spec.dataPool.mirroring.snapshotSchedules[]
- Description
- SnapshotScheduleSpec represents the snapshot scheduling settings of a mirrored pool
- Type
object
.spec.dataPool.parameters
- Description
- Parameters is a list of properties to enable on a given pool
- Type
object
.spec.dataPool.quotas
- Description
- The quota settings
- Type
object
.spec.dataPool.replicated
- Description
- The replication settings
- Type
object- Required
size
.spec.dataPool.replicated.hybridStorage
- Description
- HybridStorage represents hybrid storage tier settings
- Type
object- Required
primaryDeviceClasssecondaryDeviceClass
.spec.dataPool.statusCheck
- Description
- The mirroring statusCheck
- Type
object
.spec.dataPool.statusCheck.mirror
- Description
- HealthCheckSpec represents the health check of an object store bucket
- Type
object
.spec.gateway
- Description
- The rgw pod info
- Type
object
.spec.gateway.additionalVolumeMounts
- Description
- AdditionalVolumeMounts allows additional volumes to be mounted to the RGW pod. The root directory for each additional volume mount is `/var/rgw`. Example: for an additional mount at subPath `ldap`, mounted from a secret that has key `bindpass.secret`, the file would reside at `/var/rgw/ldap/bindpass.secret`.
- Type
array
.spec.gateway.additionalVolumeMounts[]
- Description
- AdditionalVolumeMount represents the source from where additional files in pod containers should come from and what subdirectory they are made available in.
- Type
object- Required
subPathvolumeSource
.spec.gateway.additionalVolumeMounts[].volumeSource
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.configMap
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.configMap.items
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.configMap.items[]
- Type
object- Required
keypath
.spec.gateway.additionalVolumeMounts[].volumeSource.emptyDir
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.hostPath
- Type
object- Required
path
.spec.gateway.additionalVolumeMounts[].volumeSource.persistentVolumeClaim
- Type
object- Required
claimName
.spec.gateway.additionalVolumeMounts[].volumeSource.projected
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[]
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle
- Type
object- Required
path
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle.labelSelector
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle.labelSelector.matchExpressions
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle.labelSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle.labelSelector.matchExpressions[].values
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle.labelSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].clusterTrustBundle.labelSelector.matchLabels
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].configMap
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].configMap.items
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].configMap.items[]
- Type
object- Required
keypath
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].downwardAPI
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].downwardAPI.items
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].downwardAPI.items[]
- Type
object- Required
path
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].downwardAPI.items[].fieldRef
- Type
object- Required
fieldPath
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].downwardAPI.items[].resourceFieldRef
- Type
object- Required
resource
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].podCertificate
- Type
object- Required
keyTypesignerName
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].podCertificate.userAnnotations
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].secret
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].secret.items
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].secret.items[]
- Type
object- Required
keypath
.spec.gateway.additionalVolumeMounts[].volumeSource.projected.sources[].serviceAccountToken
- Type
object- Required
path
.spec.gateway.additionalVolumeMounts[].volumeSource.secret
- Type
object
.spec.gateway.additionalVolumeMounts[].volumeSource.secret.items
- Type
array
.spec.gateway.additionalVolumeMounts[].volumeSource.secret.items[]
- Type
object- Required
keypath
.spec.gateway.annotations
- Description
- The annotations-related configuration to add/set on each Pod related object.
- Type
object
.spec.gateway.externalRgwEndpoints
- Description
- ExternalRgwEndpoints points to external RGW endpoint(s). Multiple endpoints can be given, but for stability of ObjectBucketClaims, we highly recommend that users give only a single external RGW endpoint that is a load balancer that sends requests to the multiple RGWs.
- Type
array
.spec.gateway.externalRgwEndpoints[]
- Description
- EndpointAddress is a tuple that describes a single IP address or host name. This is a subset of Kubernetes's v1.EndpointAddress.
- Type
object
.spec.gateway.labels
- Description
- The labels-related configuration to add/set on each Pod related object.
- Type
object
.spec.gateway.opsLogSidecar
- Description
- Enable enhanced operation Logs for S3 in a sidecar named ops-log
- Type
object
.spec.gateway.opsLogSidecar.resources
- Description
- Resources represents the way to specify resource requirements for the ops-log sidecar
- Type
object
.spec.gateway.opsLogSidecar.resources.claims
- Description
- Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This field depends on the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers.
- Type
array
.spec.gateway.opsLogSidecar.resources.claims[]
- Description
- ResourceClaim references one entry in PodSpec.ResourceClaims.
- Type
object- Required
name
.spec.gateway.opsLogSidecar.resources.limits
- Description
- Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- Type
object
.spec.gateway.opsLogSidecar.resources.requests
- Description
- Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- Type
object
.spec.gateway.placement
- Type
object
.spec.gateway.placement.nodeAffinity
- Type
object
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
- Type
array
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- Type
object- Required
preferenceweight
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference
- Type
object
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions
- Type
array
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[].values
- Type
array
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields
- Type
array
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[]
- Type
object- Required
keyoperator
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[].values
- Type
array
.spec.gateway.placement.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution[].preference.matchFields[].values[]
- Type
string
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
- Type
object- Required
nodeSelectorTerms
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
- Type
array
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[]
- Type
object
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions
- Type
array
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[].values
- Type
array
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchExpressions[].values[]
- Type
string
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields
- Type
array
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[]
- Type
object- Required
keyoperator
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[].values
- Type
array
.spec.gateway.placement.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms[].matchFields[].values[]
- Type
string
.spec.gateway.placement.podAffinity
- Type
object
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- Type
object- Required
podAffinityTermweight
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- Type
object- Required
topologyKey
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- Type
object
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchLabels
- Type
object
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.matchLabelKeys
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.matchLabelKeys[]
- Type
string
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.mismatchLabelKeys
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.mismatchLabelKeys[]
- Type
string
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- Type
object
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchLabels
- Type
object
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaces
- Type
array
.spec.gateway.placement.podAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaces[]
- Type
string
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- Type
object- Required
topologyKey
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- Type
object
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchLabels
- Type
object
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].matchLabelKeys
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].matchLabelKeys[]
- Type
string
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].mismatchLabelKeys
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].mismatchLabelKeys[]
- Type
string
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- Type
object
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchLabels
- Type
object
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaces
- Type
array
.spec.gateway.placement.podAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaces[]
- Type
string
.spec.gateway.placement.podAntiAffinity
- Type
object
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[]
- Type
object- Required
podAffinityTermweight
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm
- Type
object- Required
topologyKey
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector
- Type
object
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.labelSelector.matchLabels
- Type
object
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.matchLabelKeys
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.matchLabelKeys[]
- Type
string
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.mismatchLabelKeys
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.mismatchLabelKeys[]
- Type
string
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector
- Type
object
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaceSelector.matchLabels
- Type
object
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaces
- Type
array
.spec.gateway.placement.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution[].podAffinityTerm.namespaces[]
- Type
string
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[]
- Type
object- Required
topologyKey
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector
- Type
object
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].labelSelector.matchLabels
- Type
object
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].matchLabelKeys
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].matchLabelKeys[]
- Type
string
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].mismatchLabelKeys
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].mismatchLabelKeys[]
- Type
string
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector
- Type
object
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaceSelector.matchLabels
- Type
object
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaces
- Type
array
.spec.gateway.placement.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[].namespaces[]
- Type
string
.spec.gateway.placement.tolerations
- Type
array
.spec.gateway.placement.tolerations[]
- Type
object
.spec.gateway.placement.topologySpreadConstraints
- Type
array
.spec.gateway.placement.topologySpreadConstraints[]
- Type
object- Required
maxSkewtopologyKeywhenUnsatisfiable
.spec.gateway.placement.topologySpreadConstraints[].labelSelector
- Type
object
.spec.gateway.placement.topologySpreadConstraints[].labelSelector.matchExpressions
- Type
array
.spec.gateway.placement.topologySpreadConstraints[].labelSelector.matchExpressions[]
- Type
object- Required
keyoperator
.spec.gateway.placement.topologySpreadConstraints[].labelSelector.matchExpressions[].values
- Type
array
.spec.gateway.placement.topologySpreadConstraints[].labelSelector.matchExpressions[].values[]
- Type
string
.spec.gateway.placement.topologySpreadConstraints[].labelSelector.matchLabels
- Type
object
.spec.gateway.placement.topologySpreadConstraints[].matchLabelKeys
- Type
array
.spec.gateway.placement.topologySpreadConstraints[].matchLabelKeys[]
- Type
string
.spec.gateway.readAffinity
- Description
- ReadAffinity defines the RGW read affinity policy to optimize the read requests for the RGW clients Note: Only supported from Ceph Tentacle (v20)
- Type
object- Required
type
.spec.gateway.resources
- Description
- The resource requirements for the rgw pods
- Type
object
.spec.gateway.resources.claims
- Description
- Claims lists the names of resources, defined in spec.resourceClaims, that are used by this container. This field depends on the DynamicResourceAllocation feature gate. This field is immutable. It can only be set for containers.
- Type
array
.spec.gateway.resources.claims[]
- Description
- ResourceClaim references one entry in PodSpec.ResourceClaims.
- Type
object- Required
name
.spec.gateway.resources.limits
- Description
- Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- Type
object
.spec.gateway.resources.requests
- Description
- Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
- Type
object
.spec.gateway.rgwCommandFlags
- Description
- RgwCommandFlags sets Ceph RGW config values for the gateway clients that serve this object store. Values are modified at RGW startup, resulting in RGW pod restarts. This feature is intended for advanced users. It allows breaking configurations to be easily applied. Use with caution.
- Type
object
.spec.gateway.rgwConfig
- Description
- RgwConfig sets Ceph RGW config values for the gateway clients that serve this object store. Values are modified at runtime without RGW restart. This feature is intended for advanced users. It allows breaking configurations to be easily applied. Use with caution.
- Type
object
.spec.gateway.rgwConfigFromSecret
- Description
- RgwConfigFromSecret works exactly like RgwConfig but takes config value from Secret Key reference. Values are modified at runtime without RGW restart. This feature is intended for advanced users. It allows breaking configurations to be easily applied. Use with caution.
- Type
object
.spec.gateway.service
- Description
- The configuration related to add/set on each rgw service.
- Type
object
.spec.gateway.service.annotations
- Description
- The annotations-related configuration to add/set on each rgw service. nullable optional
- Type
object
.spec.healthCheck
- Description
- The RGW health probes
- Type
object
.spec.healthCheck.readinessProbe
- Description
- ProbeSpec is a wrapper around Probe so it can be enabled or disabled for a Ceph daemon
- Type
object
.spec.healthCheck.readinessProbe.probe
- Description
- Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.
- Type
object
.spec.healthCheck.readinessProbe.probe.exec
- Description
- Exec specifies a command to execute in the container.
- Type
object
.spec.healthCheck.readinessProbe.probe.exec.command
- Description
- Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
- Type
array
.spec.healthCheck.readinessProbe.probe.exec.command[]
- Type
string
.spec.healthCheck.readinessProbe.probe.grpc
- Description
- GRPC specifies a GRPC HealthCheckRequest.
- Type
object- Required
port
.spec.healthCheck.readinessProbe.probe.httpGet
- Description
- HTTPGet specifies an HTTP GET request to perform.
- Type
object- Required
port
.spec.healthCheck.readinessProbe.probe.httpGet.httpHeaders
- Description
- Custom headers to set in the request. HTTP allows repeated headers.
- Type
array
.spec.healthCheck.readinessProbe.probe.httpGet.httpHeaders[]
- Description
- HTTPHeader describes a custom header to be used in HTTP probes
- Type
object- Required
namevalue
.spec.healthCheck.readinessProbe.probe.tcpSocket
- Description
- TCPSocket specifies a connection to a TCP port.
- Type
object- Required
port
.spec.healthCheck.startupProbe
- Description
- ProbeSpec is a wrapper around Probe so it can be enabled or disabled for a Ceph daemon
- Type
object
.spec.healthCheck.startupProbe.probe
- Description
- Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.
- Type
object
.spec.healthCheck.startupProbe.probe.exec
- Description
- Exec specifies a command to execute in the container.
- Type
object
.spec.healthCheck.startupProbe.probe.exec.command
- Description
- Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
- Type
array
.spec.healthCheck.startupProbe.probe.exec.command[]
- Type
string
.spec.healthCheck.startupProbe.probe.grpc
- Description
- GRPC specifies a GRPC HealthCheckRequest.
- Type
object- Required
port
.spec.healthCheck.startupProbe.probe.httpGet
- Description
- HTTPGet specifies an HTTP GET request to perform.
- Type
object- Required
port
.spec.healthCheck.startupProbe.probe.httpGet.httpHeaders
- Description
- Custom headers to set in the request. HTTP allows repeated headers.
- Type
array
.spec.healthCheck.startupProbe.probe.httpGet.httpHeaders[]
- Description
- HTTPHeader describes a custom header to be used in HTTP probes
- Type
object- Required
namevalue
.spec.healthCheck.startupProbe.probe.tcpSocket
- Description
- TCPSocket specifies a connection to a TCP port.
- Type
object- Required
port
.spec.hosting
- Description
- Hosting settings for the object store. A common use case for hosting configuration is to inform Rook of endpoints that support DNS wildcards, which in turn allows virtual host-style bucket addressing.
- Type
object
.spec.hosting.advertiseEndpoint
- Description
- AdvertiseEndpoint is the default endpoint Rook will return for resources dependent on this object store. This endpoint will be returned to CephObjectStoreUsers, Object Bucket Claims, and COSI Buckets/Accesses. By default, Rook returns the endpoint for the object store's Kubernetes service using HTTPS with `gateway.securePort` if it is defined (otherwise, HTTP with `gateway.port`).
- Type
object- Required
dnsNameportuseTls
.spec.hosting.dnsNames
- Description
- A list of DNS host names on which object store gateways will accept client S3 connections. When specified, object store gateways will reject client S3 connections to hostnames that are not present in this list, so include all endpoints. The object store's advertiseEndpoint and Kubernetes service endpoint, plus CephObjectZone `customEndpoints` are automatically added to the list but may be set here again if desired. Each DNS name must be valid according RFC-1123. If the DNS name corresponds to an endpoint with DNS wildcard support, do not include the wildcard itself in the list of hostnames. E.g., use "mystore.example.com" instead of "*.mystore.example.com".
- Type
array
.spec.hosting.dnsNames[]
- Type
string
.spec.metadataPool
- Description
- The metadata pool settings
- Type
object
.spec.metadataPool.erasureCoded
- Description
- The erasure code settings
- Type
object- Required
codingChunksdataChunks
.spec.metadataPool.mirroring
- Description
- The mirroring settings
- Type
object
.spec.metadataPool.mirroring.peers
- Description
- Peers represents the peers spec
- Type
object
.spec.metadataPool.mirroring.peers.secretNames
- Description
- SecretNames represents the Kubernetes Secret names to add rbd-mirror or cephfs-mirror peers
- Type
array
.spec.metadataPool.mirroring.peers.secretNames[]
- Type
string
.spec.metadataPool.mirroring.snapshotSchedules
- Description
- SnapshotSchedules is the scheduling of snapshot for mirrored images/pools
- Type
array
.spec.metadataPool.mirroring.snapshotSchedules[]
- Description
- SnapshotScheduleSpec represents the snapshot scheduling settings of a mirrored pool
- Type
object
.spec.metadataPool.parameters
- Description
- Parameters is a list of properties to enable on a given pool
- Type
object
.spec.metadataPool.quotas
- Description
- The quota settings
- Type
object
.spec.metadataPool.replicated
- Description
- The replication settings
- Type
object- Required
size
.spec.metadataPool.replicated.hybridStorage
- Description
- HybridStorage represents hybrid storage tier settings
- Type
object- Required
primaryDeviceClasssecondaryDeviceClass
.spec.metadataPool.statusCheck
- Description
- The mirroring statusCheck
- Type
object
.spec.metadataPool.statusCheck.mirror
- Description
- HealthCheckSpec represents the health check of an object store bucket
- Type
object
.spec.protocols
- Description
- The protocol specification
- Type
object
.spec.protocols.enableAPIs
- Description
- Represents RGW 'rgw_enable_apis' config option. See: https://docs.ceph.com/en/reef/radosgw/config-ref/#confval-rgw_enable_apis If no value provided then all APIs will be enabled: s3, s3website, swift, swift_auth, admin, sts, iam, notifications If enabled APIs are set, all remaining APIs will be disabled. This option overrides S3.Enabled value.
- Type
array
.spec.protocols.enableAPIs[]
- Type
string
.spec.protocols.s3
- Description
- The spec for S3
- Type
object
.spec.protocols.swift
- Description
- The spec for Swift
- Type
object
.spec.security
- Description
- Security represents security settings
- Type
object
.spec.security.keyRotation
- Description
- KeyRotation defines options for Key Rotation.
- Type
object
.spec.security.kms
- Description
- KeyManagementService is the main Key Management option
- Type
object
.spec.security.kms.connectionDetails
- Description
- ConnectionDetails contains the KMS connection details (address, port etc)
- Type
object
.spec.security.s3
- Description
- The settings for supporting AWS-SSE:S3 with RGW
- Type
object
.spec.security.s3.connectionDetails
- Description
- ConnectionDetails contains the KMS connection details (address, port etc)
- Type
object
.spec.sharedPools
- Description
- The pool information when configuring RADOS namespaces in existing pools.
- Type
object
.spec.sharedPools.poolPlacements
- Description
- PoolPlacements control which Pools are associated with a particular RGW bucket. Once PoolPlacements are defined, RGW client will be able to associate pool with ObjectStore bucket by providing "<LocationConstraint>" during s3 bucket creation or "X-Storage-Policy" header during swift container creation. See: https://docs.ceph.com/en/latest/radosgw/placement/#placement-targets PoolPlacement with name: "default" will be used as a default pool if no option is provided during bucket creation. If default placement is not provided, spec.sharedPools.dataPoolName and spec.sharedPools.MetadataPoolName will be used as default pools. If spec.sharedPools are also empty, then RGW pools (spec.dataPool and spec.metadataPool) will be used as defaults.
- Type
array
.spec.sharedPools.poolPlacements[]
- Type
object- Required
dataPoolNamemetadataPoolNamename
.spec.sharedPools.poolPlacements[].storageClasses
- Description
- StorageClasses can be selected by user to override dataPoolName during object creation. Each placement has default STANDARD StorageClass pointing to dataPoolName. This list allows defining additional StorageClasses on top of default STANDARD storage class.
- Type
array
.spec.sharedPools.poolPlacements[].storageClasses[]
- Type
object- Required
dataPoolNamename
.spec.zone
- Description
- The multisite info
- Type
object- Required
name
.status
- Description
- ObjectStoreStatus represents the status of a Ceph Object Store resource
- Type
object
.status.cephx
- Type
object
.status.cephx.daemon
- Description
- Daemon shows the CephX key status for local Ceph daemons associated with this resources.
- Type
object
.status.conditions
- Type
array
.status.conditions[]
- Description
- Condition represents a status condition on any Rook-Ceph Custom Resource.
- Type
object
.status.endpoints
- Type
object
.status.endpoints.insecure
- Type
array
.status.endpoints.insecure[]
- Type
string
.status.endpoints.secure
- Type
array
.status.endpoints.secure[]
- Type
string
.status.info
- Type
object
API Endpoints
The following API endpoints are available:
/apis/ceph.rook.io/v1/namespaces/{namespace}/cephobjectstoresDELETE: delete collection of CephObjectStoreGET: list objects of kind CephObjectStorePOST: create a new CephObjectStore
/apis/ceph.rook.io/v1/namespaces/{namespace}/cephobjectstores/{name}DELETE: delete the specified CephObjectStoreGET: read the specified CephObjectStorePATCH: partially update the specified CephObjectStorePUT: replace the specified CephObjectStore
/apis/ceph.rook.io/v1/namespaces/{namespace}/cephobjectstores/{name}/statusGET: read status of the specified CephObjectStorePATCH: partially update status of the specified CephObjectStorePUT: replace status of the specified CephObjectStore
/apis/ceph.rook.io/v1/namespaces/{namespace}/cephobjectstores
- HTTP method
DELETE- Description
- delete collection of CephObjectStore
- HTTP responses
- HTTP method
GET- Description
- list objects of kind CephObjectStore
- HTTP responses
- HTTP method
POST- Description
- create a new CephObjectStore
- Query parameters
- Body parameters
- HTTP responses
/apis/ceph.rook.io/v1/namespaces/{namespace}/cephobjectstores/{name}
- HTTP method
DELETE- Description
- delete the specified CephObjectStore
- Query parameters
- HTTP responses
- HTTP method
GET- Description
- read the specified CephObjectStore
- HTTP responses
- HTTP method
PATCH- Description
- partially update the specified CephObjectStore
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace the specified CephObjectStore
- Query parameters
- Body parameters
- HTTP responses
/apis/ceph.rook.io/v1/namespaces/{namespace}/cephobjectstores/{name}/status
- HTTP method
GET- Description
- read status of the specified CephObjectStore
- HTTP responses
- HTTP method
PATCH- Description
- partially update status of the specified CephObjectStore
- Query parameters
- HTTP responses
- HTTP method
PUT- Description
- replace status of the specified CephObjectStore
- Query parameters
- Body parameters
- HTTP responses