Files
my-rook-config/deploy/examples/object-shared-pools-test.yaml
Travis Nielsen fdacfd51c5 object: create an object store based on shared pools
Until now, an object store would create all the necessary
metadata pools and the data pool that were exclusively
for its own object store. When isolation between object
stores is necessary, this would cause many pools and
PGs to be created in the cluster, which was not
manageable.

Now one set of pools can be created to be shared
by any number of object stores. The metadata and data
between each object store is isolated by
RADOS namespaces, which by design will keep the
data safe for multi-tenancy.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-03-11 11:20:57 -06:00

49 lines
1.4 KiB
YAML

#################################################################################################################
# Create the pools that can be shared by multiple object stores. A single OSD is required
# in this example. This example shows two object stores being created with the same
# shared metadata and data pools. The pool sharing will utilize RADOS namespaces to keep the object store
# data independent, while avoiding the growth of PGs in the cluster.
# kubectl create -f object-shared-pools.yaml
# kubectl create -f object-a.yaml -f object-b.yaml
#################################################################################################################
apiVersion: ceph.rook.io/v1
kind: CephBlockPool
metadata:
name: rgw-root
namespace: rook-ceph # namespace:cluster
spec:
name: .rgw.root
failureDomain: host
replicated:
size: 1
requireSafeReplicaSize: false
parameters:
pg_num: "8"
application: rgw
---
apiVersion: ceph.rook.io/v1
kind: CephBlockPool
metadata:
name: rgw-meta-pool
namespace: rook-ceph # namespace:cluster
spec:
failureDomain: host
replicated:
size: 1
requireSafeReplicaSize: false
parameters:
pg_num: "8"
application: rgw
---
apiVersion: ceph.rook.io/v1
kind: CephBlockPool
metadata:
name: rgw-data-pool
namespace: rook-ceph # namespace:cluster
spec:
failureDomain: osd
replicated:
size: 1
requireSafeReplicaSize: false
application: rgw