Ceph manual RGW storageclass region default #9142
-
Hey I am very new to rook and I am trying to deploy Ceph in my cluster. Everything seems fine for block and file. Except when I was playing around RGW following the guide: The storageclass has a field called region and it is set to I am curious where this us-east-1 come from because I look at the code and it seems this is also the default value: https://github.com/rook/rook/blob/master/pkg/operator/ceph/object/s3-handlers.go#L48 Can someone help me to understand this? Thanks so much! |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 15 replies
-
@thotz Can you take a look? I wouldn't expect the region name to be constant either. How can a different region be specified? |
Beta Was this translation helpful? Give feedback.
-
@Jiawei0227 can u please specify the rook version which you are using, I thought this was fixed by #8766 |
Beta Was this translation helpful? Give feedback.
-
Gentle ping. Can anyone help me to understand the region here? What does this mean? |
Beta Was this translation helpful? Give feedback.
-
this 'location constraint' error sounds like it's coming from the CreateBucket request, based on what rook sends in the rgw documents its expectations for this field in https://docs.ceph.com/en/latest/radosgw/placement/#s3-bucket-placement. basically, the location can either be just a region name (which rgw compares against its zonegroup api_names), or it can be 'region:placement', where 'placement' is the name of a placement target defined in the zonegroup i'm not sure what the "storageclass" configuration is trying to do here. in rgw, each 'placement target' has a list of allowed storage classes. the bucket is created with a specific 'placement target' (which can be specified on creation via LocationConstraint), and the client can write objects to any of the 'storage classes' that placement target supports. so i think rook's configuration should ask for the placement target's name, instead of a storage class. in most cases they'll just leave it empty, so rook can omit the and when it comes to the region name, i don't think rook should be requiring the user to fill that in at all. rook should which 'object store' it's operating on, and use the zonegroup api_name associated with that object store |
Beta Was this translation helpful? Give feedback.
Gentle ping. Can anyone help me to understand the region here? What does this mean?