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 #1

Updated by Sebastian Wagner about 2 years ago

  • Project changed from 18 to Orchestrator
  • Subject changed from Crash with s3website serving to cephadm,ingress: Crash with s3website serving
Actions #2

Updated by Redouane Kachach Elhichou almost 2 years ago

  • Project changed from Orchestrator to rgw

Moving to RGW since this seems to cause a crash in RGW code:

*** Caught signal (Segmentation fault) **
 in thread 7f61767ab700 thread_name:radosgw
 ceph version 16.2.7 (dd0603118f56ab514f133c8d2e3adfc983942503) pacific (stable)
 1: /lib64/libpthread.so.0(+0x12c20) [0x7f621e28cc20]
 2: (RGWHandler_REST_S3Website::retarget(RGWOp*, RGWOp**, optional_yield)+0x174) [0x7f62292fbc24]
 3: (rgw_process_authenticated(RGWHandler_REST*, RGWOp*&, RGWRequest*, req_state*, optional_yield, bool)+0xf0a) [0x7f6228e9a35a]
 4: (process_request(rgw::sal::RGWRadosStore*, RGWREST*, RGWRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rgw::auth::StrategyRegistry const&, RGWRestfulIO*, OpsLogSink*, optional_yield, rgw::dmclock::Scheduler*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >*, int*)+0x2891) [0x7f6228e9de21]
 5: /lib64/libradosgw.so.2(+0x4b1b63) [0x7f6228dedb63]
 6: /lib64/libradosgw.so.2(+0x4b3604) [0x7f6228def604]
 7: /lib64/libradosgw.so.2(+0x4b386e) [0x7f6228def86e]
 8: make_fcontext()
debug 2022-01-25T12:08:34.615+0000 7f61767ab700 -1 *** Caught signal (Segmentation fault) **
 in thread 7f61767ab700 thread_name:radosgw
Actions #3

Updated by Casey Bodley over 1 year ago

  • Is duplicate of Backport #56654: pacific: crash: RGWHandler_REST_S3Website::retarget(RGWOp*, RGWOp**, optional_yield) added
Actions #4

Updated by Casey Bodley over 1 year ago

  • Status changed from New to Duplicate
Actions #5

Updated by Casey Bodley over 1 year ago

fixed in 16.2.10

Actions

Also available in: Atom PDF