################################################################################################################# # Create an object store with settings for erasure coding for the data pool. A minimum of 3 nodes with OSDs are # required in this example since failureDomain is host. # kubectl create -f object-ec.yaml ################################################################################################################# apiVersion: ceph.rook.io/v1 kind: CephObjectStore metadata: name: {{taskserv.object_storename}} namespace: {{taskserv.namespace | default (value="rook-ceph")}} # namespace:cluster spec: # The pool spec used to create the metadata pools. Must use replication. metadataPool: failureDomain: host replicated: size: 3 # Disallow setting pool with replica 1, this could lead to data loss without recovery. # Make sure you're *ABSOLUTELY CERTAIN* that is what you want requireSafeReplicaSize: true parameters: # Inline compression mode for the data pool # Further reference: https://docs.ceph.com/docs/master/rados/configuration/bluestore-config-ref/#inline-compression compression_mode: none # gives a hint (%) to Ceph in terms of expected consumption of the total cluster capacity of a given pool # for more info: https://docs.ceph.com/docs/master/rados/operations/placement-groups/#specifying-expected-pool-size #target_size_ratio: ".5" # The pool spec used to create the data pool. Can use replication or erasure coding. dataPool: failureDomain: host erasureCoded: dataChunks: 2 codingChunks: 1 parameters: # Inline compression mode for the data pool # Further reference: https://docs.ceph.com/docs/master/rados/configuration/bluestore-config-ref/#inline-compression compression_mode: none # gives a hint (%) to Ceph in terms of expected consumption of the total cluster capacity of a given pool # for more info: https://docs.ceph.com/docs/master/rados/operations/placement-groups/#specifying-expected-pool-size #target_size_ratio: ".5" # Whether to preserve metadata and data pools on object store deletion preservePoolsOnDelete: true # The gateway service configuration gateway: # A reference to the secret in the rook namespace where the ssl certificate is stored sslCertificateRef: # The port that RGW pods will listen on (http) port: 80 # The port that RGW pods will listen on (https). An ssl certificate is required. # securePort: 443 # The number of pods in the rgw deployment instances: 1 # The affinity rules to apply to the rgw deployment or daemonset. placement: # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # - key: role # operator: In # values: # - rgw-node # tolerations: # - key: rgw-node # operator: Exists # podAffinity: # podAntiAffinity: # A key/value list of annotations annotations: # key: value # A key/value list of labels labels: # key: value resources: # The requests and limits set here, allow the object store gateway Pod(s) to use half of one CPU core and 1 gigabyte of memory # limits: # memory: "1024Mi" # requests: # cpu: "500m" # memory: "1024Mi" # priorityClassName: my-priority-class #zone: #name: zone-a # service endpoint healthcheck healthCheck: # Configure the pod probes for the rgw daemon startupProbe: disabled: false readinessProbe: disabled: false