Project

General

Profile

Actions

Bug #54012

closed

cephadm,ingress: Crash with s3website serving

Added by Manuel Holtgrewe over 2 years ago. Updated over 1 year ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

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

Description

I am using Ceph v16.2.7 using ceph orch/cephadm using the stock quay.io Docker images.

I am trying to setup radosgw with the s3website feature. I have setup

  • ceph-s3-ext.example.com -- for the S3 protocol
  • ceph-s3-website-ext.example.com -- for S3 and s3website

using `ceph orch apply -i CONFIG.yml`, shown at the bottom.

The configuration of the resulting rgw.ext and rgw.ext-website daemons via `ceph --admin-daemon` is attached.

Now I observe the following.

The following works nicely.

$ aws --profile=ext-web --endpoint-url=https://ceph-s3-ext.example.com s3 ls
2022-01-25 08:09:48 test

I expect the ceph-s3-website-ext.example.com to work in the same way, as it provides the s3 protocol in addition to s3website.

$ aws --profile=ext-web --endpoint-url=https://ceph-s3-website-ext.example.com s3 ls
2022-01-25 08:09:48 test

Interestingly, this leads to a crash documented in the attached crash.log file.

I was planning to subsequently use "aws s3 website" on the endpoint, but:

$ aws --profile=ext-cubi-web --endpoint-url=https://ceph-s3-website-ext.example.com \
    s3 website s3://test  --index-document=index.html --error-document=404.html

An error occurred (405) when calling the PutBucketWebsite operation: Method Not Allowed

Below is the YAML input for ceph orch apply.

==> ingress.rgw.ext-website.yml <==
service_type: ingress
service_id: rgw.ext-website
placement:
  hosts:
    - osd-3
spec:
  backend_service: rgw.ext-website
  virtual_ip: 172.16.62.43/19  # ceph-s3-website-ext.example.com
  frontend_port: 443
  monitor_port: 1969
  ssl_cert: |

==> ingress.rgw.ext.yml <==
service_type: ingress
service_id: rgw.ext
placement:
  hosts:
    - osd-5
spec:
  backend_service: rgw.ext
  virtual_ip: 172.16.62.27/19  # ceph-s3-ext.example.com
  frontend_port: 443
  monitor_port: 1968
  ssl_cert: |

==> rgw.ext-website.yml <==
service_type: rgw
service_id: ext-website
service_name: rgw.ext-website
placement:
  hosts:
    - osd-3
spec:
  rgw_frontend_port: 8200
  rgw_realm: ext
  rgw_zone: ext-default-primary
  config:
    rgw_dns_name: ceph-s3-ext.example.com
    rgw_dns_s3website_name: ceph-s3-website-ext.example.com
    rgw_enable_apis: s3, s3website
    rgw_enable_static_website: true
    rgw_resolve_cname: true

==> rgw.ext.yml <==
service_type: rgw
service_id: ext
service_name: rgw.ext
placement:
  hosts:
    - osd-5
spec:
  rgw_frontend_port: 8100
  rgw_realm: ext
  rgw_zone: ext-default-primary
  config:
    rgw_dns_name: ceph-s3-ext.example.com
    rgw_dns_s3website_name: ceph-s3-website-ext.example.com
    rgw_enable_apis: s3
    rgw_enable_static_website: false
    rgw_expose_bucket: true
    rgw_resolve_cname: true

Files

crash.log (617 KB) crash.log Manuel Holtgrewe, 01/25/2022 12:38 PM
rgw.ext.config.json (72.7 KB) rgw.ext.config.json Manuel Holtgrewe, 01/25/2022 12:38 PM
rgw.ext-website.config.json (72.8 KB) rgw.ext-website.config.json Manuel Holtgrewe, 01/25/2022 12:38 PM

Related issues 1 (0 open1 closed)

Is duplicate of rgw - Backport #56654: pacific: crash: RGWHandler_REST_S3Website::retarget(RGWOp*, RGWOp**, optional_yield)ResolvedCory SnyderActions
Actions

Also available in: Atom PDF