Project

General

Profile

Bug #44926

dashboard: creating a new bucket causes InvalidLocationConstraint

Added by Andreas Haase 6 months ago. Updated 9 days ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature:

Description

In Octopus I created an object gateway as mentioned in https://ceph.io/ceph-management/introducing-cephadm/ chapter "deploying storage services". After doing so I followed instructions in https://docs.ceph.com/docs/master/mgr/dashboard/#enabling-the-object-gateway-management-frontend to create a system user (username: dashboard) and getting its access and secret key configure the dashboard. This done, I can see the object gateways in dashboard. Additionally I created another user (system flag not set, username: rsasse) via dashboard.

When trying to create a bucket for any user (dashboard or rsasse) and selecting default placement, I get an error message as attached in screenshot. One of our developers managed to create a bucket using api keys of user rsasse directly using the rest api, so I guess, the porblem is caused by the dashboard.

To be complete, at the moment I'm running on version octopus-f8d5631-centos-8-x86_64-devel as supposed by sage while debugging another dashboard issue.

Bildschirmfoto 2020-04-03 um 13.23.21.png View (24.3 KB) Andreas Haase, 04/03/2020 11:23 AM


Related issues

Related to Orchestrator - Feature #44605: cephadm: RGW: missing dashboard integration In Progress
Related to rgw - Bug #38119: rgw can't create bucket, because can't find zonegroup? location constraint (default) can't be found. Triaged
Duplicated by mgr - Fix #46667: mgr/dashboard: Handle buckets without a realm_id Resolved

History

#1 Updated by Andreas Haase 6 months ago

Commands used to create the object gateway:

radosgw-admin realm create --rgw-realm=C4U --default
radosgw-admin zonegroup create --rgw-zonegroup=CHE --master --default
radosgw-admin zone create --rgw-zonegroup=CHE --rgw-zone=Villa_Hahn --master --default
ceph orch apply rgw C4U Villa_Hahn
ceph config set client.rgw.C4U.Villa_Hahn rgw_frontends "beast port=8080" 

Commands used for creating the systemuser:

radosgw-admin user create --uid=dashboard --display-name=Dashboard --system
radosgw-admin user info --uid=dashboard # looked for access key an secret key
ceph dashboard set-rgw-api-access-key <KEY>
ceph dashboard set-rgw-api-secret-key <KEY>
ceph dashboard set-rgw-api-ssl-verify False

#2 Updated by Greg Farnum 6 months ago

  • Project changed from Ceph to mgr

#3 Updated by Sebastian Wagner 6 months ago

  • Related to Feature #44605: cephadm: RGW: missing dashboard integration added

#4 Updated by Sebastian Wagner 6 months ago

  • Project changed from mgr to Orchestrator
  • Description updated (diff)
  • Category set to cephadm

#5 Updated by Alfonso Martínez 6 months ago

#6 Updated by Sebastian Wagner 6 months ago

  • Related to Bug #38119: rgw can't create bucket, because can't find zonegroup? location constraint (default) can't be found. added

#7 Updated by Alfonso Martínez 6 months ago

#8 Updated by Apely AGAMAKOU 5 months ago

Hi, i've got the same issue:

OS: Debian 10 (buster)
Ceph: Octopus (15.2.1)
Nodes: 3

#9 Updated by Apely AGAMAKOU 5 months ago

Apely AGAMAKOU wrote:

Hi, i've got the same issue:

OS: Debian 10 (buster)
Ceph: Octopus (15.2.1)
Nodes: 3

radosgw-admin  zonegroup get --rgw-zonegroup=default
{
    "id": "4a71b901-5166-4318-b605-1a4de2183d87",
    "name": "default",
    "api_name": "default",
    "is_master": "true",
    "endpoints": [],
    "hostnames": [],
    "hostnames_s3website": [],
    "master_zone": "db0cfcd6-b7a2-47f3-b4c4-862a1e492a4c",
    "zones": [
        {
            "id": "db0cfcd6-b7a2-47f3-b4c4-862a1e492a4c",
            "name": "eu-west-1",
            "endpoints": [],
            "log_meta": "false",
            "log_data": "false",
            "bucket_index_max_shards": 11,
            "read_only": "false",
            "tier_type": "",
            "sync_from_all": "true",
            "sync_from": [],
            "redirect_zone": "" 
        }
    ],
    "placement_targets": [
        {
            "name": "default-placement",
            "tags": [],
            "storage_classes": [
                "STANDARD" 
            ]
        }
    ],
    "default_placement": "default-placement",
    "realm_id": "1943f5e9-1e85-41d5-a004-7f7209a88d5e",
    "sync_policy": {
        "groups": []
    }
}

#10 Updated by Sebastian Wagner 2 months ago

  • Project changed from Orchestrator to mgr
  • Category changed from cephadm to dashboard/rgw

#11 Updated by Sebastian Wagner 2 months ago

  • Related to Fix #46667: mgr/dashboard: Handle buckets without a realm_id added

#12 Updated by Stephan Müller 2 months ago

  • Related to deleted (Fix #46667: mgr/dashboard: Handle buckets without a realm_id)

#13 Updated by Stephan Müller 2 months ago

  • Duplicated by Fix #46667: mgr/dashboard: Handle buckets without a realm_id added

#14 Updated by Andy Gold 2 months ago

Hi, i've got the same issue:

OS: CentOS 8.2.2004
Ceph: Octopus (15.2.4)
Nodes: 3

#15 Updated by Alfonso Martínez about 2 months ago

Andreas Haase wrote:

Commands used to create the object gateway:

[...]

Commands used for creating the systemuser:

[...]

After creating realms & users, you should update realm period:

radosgw-admin period update --rgw-realm=C4U --commit

See: https://docs.ceph.com/docs/master/radosgw/multisite/#update-the-period
It's recommended to update the period after any multisite change.

After that, you can create buckets through Dashboard (tested locally and it works).

The question is: should cephadm update the period as a final step when deploying rgw daemons?

#16 Updated by Sebastian Wagner about 1 month ago

  • Project changed from mgr to Orchestrator
  • Category deleted (dashboard/rgw)
  • Status changed from New to Resolved
  • Target version set to v15.2.5
  • Pull request ID set to 36496

#17 Updated by Jiffin Tony Thottan 9 days ago

Similar issue is reported in rook upstream https://github.com/rook/rook/issues/6210, I tried in mydev enviroment and it was easily reproduced.
radosgw-admin period update --rgw-realm=my-store --commit didn't work for me, ceph version was v15.2.4.

debug logs from rgw for create_bucket

 s3:create_bucket init permissions
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 20 get_system_obj_state: rctx=0x7f6b9b68d8c8 obj=my-store.rgw.meta:users.uid:jiffin state=0x55b3d08b7ba0 s-&gt;prefetch_data=0
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 10 cache get: name=my-store.rgw.meta+users.uid+jiffin : hit (requested=0x6, cached=0x17)
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 20 get_system_obj_state: s-&gt;obj_tag was set empty
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 20 Read xattr: user.rgw.idtag
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 10 cache get: name=my-store.rgw.meta+users.uid+jiffin : hit (requested=0x3, cached=0x17)
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700  2 req 69 0s s3:create_bucket recalculating target
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700  2 req 69 0s s3:create_bucket reading permissions
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700  2 req 69 0s s3:create_bucket init op
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700  2 req 69 0s s3:create_bucket verifying op mask
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 20 req 69 0s s3:create_bucket required_mask= 2 user.op_mask=7
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700  2 req 69 0s s3:create_bucket verifying op permissions
debug 2020-09-15T05:54:46.173+0000 7f6bdc916700 20 WARNING: blocking librados call
debug 2020-09-15T05:54:46.174+0000 7f6bdc916700  2 req 69 0.000999956s s3:create_bucket verifying op params
debug 2020-09-15T05:54:46.174+0000 7f6bdc916700  2 req 69 0.000999956s s3:create_bucket pre-executing
debug 2020-09-15T05:54:46.174+0000 7f6bdc916700  2 req 69 0.000999956s s3:create_bucket executing
debug 2020-09-15T05:54:46.174+0000 7f6bdc916700  5 req 69 0.000999956s s3:create_bucket <span style="background-color:#FFFFFF"><font color="#300A24">NOTICE</font></span>: call to do_aws4_auth_completion
debug 2020-09-15T05:54:46.175+0000 7f6bdc916700 20 req 69 0.001999912s s3:create_bucket create bucket input data=&lt;CreateBucketConfiguration&gt;&lt;LocationConstraint&gt;default:default-placement&lt;/LocationConstraint&gt;&lt;/CreateBucketConfiguration&gt;
debug 2020-09-15T05:54:46.175+0000 7f6bdc916700 10 req 69 0.001999912s s3:create_bucket create bucket location constraint: default:default-placement
debug 2020-09-15T05:54:46.175+0000 7f6bdc916700  0 req 69 0.001999912s s3:create_bucket location constraint (default) can&apos;t be found.
debug 2020-09-15T05:54:46.175+0000 7f6bdc916700  2 req 69 0.001999912s s3:create_bucket completing
debug 2020-09-15T05:54:46.175+0000 7f6bdc916700  2 req 69 0.001999912s s3:create_bucket op status=-2208
debug 2020-09-15T05:54:46.175+0000 7f6bdc916700  2 req 69 0.001999912s s3:create_bucket http status=400

Also available in: Atom PDF