Bug 1888839 - Create public route for ceph-rgw service
Summary: Create public route for ceph-rgw service
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenShift Container Storage
Classification: Red Hat Storage
Component: rook
Version: 4.5
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: OCS 4.7.0
Assignee: Subham Rai
QA Contact: Pratik Surve
URL:
Whiteboard:
Depends On:
Blocks: 1889814 1915730
TreeView+ depends on / blocked
 
Reported: 2020-10-15 22:07 UTC by Lars Kellogg-Stedman
Modified: 2021-06-01 08:45 UTC (History)
11 users (show)

Fixed In Version: 4.7.0-714.ci
Doc Type: No Doc Update
Doc Text:
Clone Of:
: 1889814 1915730 (view as bug list)
Environment:
Last Closed: 2021-05-19 09:16:13 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github rook rook pull 7079 0 None closed ceph: create a route for ceph-rgw service 2021-02-18 12:53:17 UTC
Red Hat Product Errata RHSA-2021:2041 0 None None None 2021-05-19 09:16:51 UTC

Description Lars Kellogg-Stedman 2020-10-15 22:07:07 UTC
Description of problem (please be detailed as possible and provide log
snippests):

After completing the install of OCS 4.5, the routes on the openshift-storage namespace look like this:

NAME          HOST/PORT                                               PATH   SERVICES                                           PORT         TERMINATION   WILDCARD
noobaa-mgmt   noobaa-mgmt-openshift-storage.apps.cnv.massopen.cloud          noobaa-mgmt                                        mgmt-https   reencrypt     None
s3            s3-openshift-storage.apps.cnv.massopen.cloud                   s3                                                 s3-https     reencrypt     None


There is a route for the Noobaa S3 API, but there is no route for Ceph RGW. This looks like we are intending to signal a strong preference for using Noobaa, but I don't think that's the case.

The installer should also create a route for ceph-rgw.

Version of all relevant components (if applicable):

OCP 4.5.13 baremetal
OCS 4.5.0

Does this issue impact your ability to continue to work with the product
(please explain in detail what is the user impact)?

This caused problems because the apparent preference for Noobaa led me to start working with that API, only to find out that Noobaa has limited S3 api support (e.g., it seems to be missing support for bucket acls and policies, object tagging, etc).

Is there any workaround available to the best of your knowledge?

I manually added an appropriate route to the openshift-storage namespace.

Rate from 1 - 5 the complexity of the scenario you performed that caused this
bug (1 - very simple, 5 - very complex)?

2

Can this issue reproducible?

Yes

Can this issue reproduce from the UI?

Yes

Steps to Reproduce:
1. install cs
2. run oc -n openshift-storage get routes


Actual results:

There is no route for ceph-rgw

Expected results:

There should be a route for ceph-rgw

Comment 2 Sébastien Han 2020-10-19 08:13:33 UTC
Assigning to ocs-op to create the route once the CephObjectStore has been created.

Comment 3 Neha Berry 2020-10-19 08:23:25 UTC
Since RGW is an important component for BM deployments, marking it as a blocker for now, so that the fix can be included in 4.6. We can discuss if required.

Comment 4 Mudit Agarwal 2020-10-20 15:59:40 UTC
Based on an offline discussion, this BZ was moved to 4.7

As agreed, I will be creating a doc clone for this.

Comment 5 Travis Nielsen 2020-12-01 23:09:33 UTC
Since the route is so closely tied to the RGW service, I would see that Rook should create the route as part of the object store reconcile, similar to how noobaa creates its route. This would involve the following...

1. A new property would be added to the CephObjectStore CRD in Rook that indicates whether to create the route. The object store reconcile would create the route if it's set. (It might be something more complex than a bool, but at a glance that may be sufficient.)

   createRoute: true

2. The OCS operator would set this to true in the object store CR.

3. In the Rook repo, the object OpenShift example (object-openshift.yaml) would set this value to true. The k8s examples (object.yaml and object-test.yaml) would not set this value.

Since work is needed in both the OCS operator and Rook, we may want to clone this BZ.

Comment 6 Subham Rai 2021-01-28 15:55:57 UTC
We are now moving with a new direction on creating the route. On the Rook side, we'll be creating the route as an object OpenShift example in (object-openshift.yaml) no changes in the codes. See discussion https://github.com/rook/rook/pull/7079#issuecomment-768653963

Comment 7 Travis Nielsen 2021-02-01 23:27:53 UTC
Example route is merged downstream with https://github.com/openshift/rook/pull/157
But we really don't need to verify this downstream since the route will be created by the OCS operator (separate BZ). This BZ is just for informational purposes.

Comment 8 Mudit Agarwal 2021-02-02 06:46:45 UTC
Not a blocker any more.

Comment 14 errata-xmlrpc 2021-05-19 09:16:13 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: Red Hat OpenShift Container Storage 4.7.0 security, bug fix, and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2021:2041


Note You need to log in before you can comment on or make changes to this bug.