@@ -28,8 +28,8 @@ Storage Classes
2828
2929.. versionadded :: Nautilus
3030
31- Storage classes are used to customize the placement of object data. S3 Bucket
32- Lifecycle rules can automate the transition of objects between storage classes.
31+ Storage classes specify the placement of object data. S3 Bucket
32+ Lifecycle (LC) rules can automate the transition of objects between storage classes.
3333
3434Storage classes are defined in terms of placement targets. Each zonegroup
3535placement target lists its available storage classes with an initial class
@@ -125,7 +125,7 @@ Then provide the zone placement info for that target:
125125 --data-extra-pool default.rgw.temporary.non-ec
126126
127127.. note :: With default placement target settings, RGW stores an object's first data chunk in the RADOS "head" object along
128- with xattr metadata. The `--placement-inline-data=false ` flag may be passed with the `zone placement add ` or
128+ with XATTR metadata. The `--placement-inline-data=false ` flag may be passed with the `zone placement add ` or
129129 `zone placement modify ` commands to change this behavior for new objects stored on the target.
130130 When data is stored inline (default), it may provide an advantage for read/write workloads since the first chunk of
131131 an object's data can be retrieved/stored in a single librados call along with object metadata. On the other hand, a
@@ -139,15 +139,15 @@ Then provide the zone placement info for that target:
139139Adding a Storage Class
140140----------------------
141141
142- To add a new storage class named ``GLACIER `` to the ``default-placement `` target,
142+ To add a new storage class named ``STANDARD_IA `` to the ``default-placement `` target,
143143start by adding it to the zonegroup:
144144
145145::
146146
147147 $ radosgw-admin zonegroup placement add \
148148 --rgw-zonegroup default \
149149 --placement-id default-placement \
150- --storage-class GLACIER
150+ --storage-class STANDARD_IA
151151
152152Then provide the zone placement info for that storage class:
153153
@@ -156,7 +156,7 @@ Then provide the zone placement info for that storage class:
156156 $ radosgw-admin zone placement add \
157157 --rgw-zone default \
158158 --placement-id default-placement \
159- --storage-class GLACIER \
159+ --storage-class STANDARD_IA \
160160 --data-pool default.rgw.glacier.data \
161161 --compression lz4
162162
@@ -252,12 +252,19 @@ name in an HTTP header with the request. The S3 protocol uses the
252252``X-Amz-Storage-Class `` header, while the Swift protocol uses the
253253``X-Object-Storage-Class `` header.
254254
255- When using AWS S3 SDKs such as ``boto3 ``, it is important that non-default
256- storage class names match those provided by AWS S3, or else the SDK
257- will drop the request and raise an exception.
258-
259255S3 Object Lifecycle Management can then be used to move object data between
260256storage classes using ``Transition `` actions.
261257
258+ When using AWS S3 SDKs such as ``boto3 ``, it is important that
259+ storage class names match those provided by AWS S3, or else the SDK
260+ will drop the request and raise an exception. Moreover, some S3 clients
261+ and libraries expect AWS-specific behavior when a storage class named
262+ or prefixed with ``GLACIER `` is used and thus will fail when accessing
263+ Ceph RGW services. For this reason we advise that other storage class
264+ names be used with Ceph, including ``INTELLIGENT-TIERING ``, ``STANDARD_IA ``,
265+ ``REDUCED_REDUNDANCY ``, and ``ONEZONE_IA ``. Custom storage class names like
266+ ``CHEAPNDEEP `` are accepted by Ceph but might not be by some clients and
267+ libraries.
268+
262269.. _`Pools` : ../pools
263270.. _`Multisite Configuration` : ../multisite
0 commit comments