Re: error: failed to add bucket placement

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 21, 2013 at 2:46 PM, Snider, Tim <Tim.Snider@xxxxxxxxxx> wrote:
>
> Can someone tell me what I'm missing. I have a radosgw user created.
>
> I get the following complaint when I try to create a pool with or without the --uid parameter:
>
>
> #radosgw-admin pool add --pool=radosPool --uid=rados
>
> failed to add bucket placement: (2) No such file or directory
>
>
What are you trying to do exactly? That command is to add a pool to
the list of data placement pools, but is leveraging the legacy data
placement system. Note that any rgw system pool (e.g., the data and
index pools) should always be prefixed with a period.
If you're trying to leverage the new data placement capabilities then
you need to do it through the zone and region configuration.

For example:

$ radosgw-admin region get > region.conf.json
$ cat region.conf.json
{ "name": "default",
  "api_name": "",
  "is_master": "true",
  "endpoints": [],
  "master_zone": "",
  "zones": [
        { "name": "default",
          "endpoints": [],
          "log_meta": "false",
          "log_data": "false"}],
  "placement_targets": [
        { "name": "default-placement",
          "tags": []}],
  "default_placement": "default-placement"}


<edit region config, add a new placement target>

{ "name": "default",
  "api_name": "",
  "is_master": "true",
  "endpoints": [],
  "master_zone": "",
  "zones": [
        { "name": "default",
          "endpoints": [],
          "log_meta": "false",
          "log_data": "false"}],
  "placement_targets": [
        { "name": "default-placement",
          "tags": []},
        { "name": "fast-placement",
          "tags": []}],
  "default_placement": "default-placement"}

$ radosgw-admin region set < region.conf.json

Then you need to set up all the zones within the region to assign data
and index pools to be used with this new placement. Use readosgw-admin
zone get + radosgw-admin zone set for that. Here's an example config:

{ "domain_root": ".rgw",
  "control_pool": ".rgw.control",
  "gc_pool": ".rgw.gc",
  "log_pool": ".log",
  "intent_log_pool": ".intent-log",
  "usage_log_pool": ".usage",
  "user_keys_pool": ".users",
  "user_email_pool": ".users.email",
  "user_swift_pool": ".users.swift",
  "user_uid_pool": ".users.uid",
  "system_key": { "access_key": "",
      "secret_key": ""},
  "placement_pools": [
        { "key": "default-placement",
          "val": { "index_pool": ".rgw.buckets.index",
              "data_pool": ".rgw.buckets"}},
        { "key": "fast-placement",
          "val": { "index_pool": ".rgw.fast.buckets.index",
              "data_pool": ".rgw.fast.buckets.data"}}]}

and finally, you can modify the user's default placement, via:

$ radosgw-admin metadata get user:<uid> > user.md.json

<edit the default placement field>

$ radosgw-admin metadata put user:<uid> < user.md.json


When creating a bucket users can specify which placement target they
want to use with that specific bucket (by using the S3 create bucket
location constraints field, format is
location_constraints='[region][:placement-target]', e.g.,
location_constraints=':fast-placement'). Also, you can limit placement
target to be only used by specific users via setting tags on the
target config.


Yehuda
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux