You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Dave Teng (Jira)" <ji...@apache.org> on 2023/01/04 20:49:00 UTC

[jira] [Updated] (HDDS-7586) Allow users to create an Ozone bucket with non-s3-naming-convention

     [ https://issues.apache.org/jira/browse/HDDS-7586?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dave Teng updated HDDS-7586:
----------------------------
    Description: 
To configure whether Ozone bucket's name will follow S3 naming rules or not, I propose to add a CLI flag '--{{{}nonS3Naming'{}}} in ozone's bucket-creation command.

There are two cases of the flag:

When client sends *nonS3Naming* flag in CLI command (it stands for *true* when CLI interprets it) to OM, the bucket naming could *be allowed NOT compliant* with S3 rules.

When client doesn't send *nonS3Naming* flag in CLI command (it stands for *false* when CLI interprets it) to OM, the bucket naming should be *compliant* with S3 rules.

 

I currently have a [POC PR|https://github.com/apache/ozone/pull/4037] of the approach. I'd love to hear any feedback from the community!  
Thank you!

  was:
There're currently two ideas to approach this problem: 
 #  Allows both the {color:#4c9aff}Ozone client side{color} and {color:#4c9aff}server{color} side to set the flag whether the bucket name follows S3 or non-S3 naming rule.

 - When a {color:#4c9aff}client{color} set 'S3_NAMING_COMPLIANT' as {color:#57d9a3}true{color}, and {color:#4c9aff}server{color} side set 'S3_NAMING_COMPLIANT' as {color:#57d9a3}true{color}. The bucket naming should *be compliant* with S3 rules.

 - When a {color:#4c9aff}client{color} set 'S3_NAMING_COMPLIANT' as {color:#de350b}false{color}, and {color:#4c9aff}server{color} side set  'S3_NAMING_COMPLIANT' as {color:#57d9a3}true{color}. The bucket naming should be allowed to *NOT* *compliant* with S3 rules.

 - When a {color:#4c9aff}client{color} set 'S3_NAMING_COMPLIANT' as {color:#57d9a3}true{color}, and {color:#4c9aff}server{color} side set 'S3_NAMING_COMPLIANT' as {color:#de350b}false{color}. The bucket naming should *be compliant* with S3 rules.

 - When a {color:#4c9aff}client {color}set 'S3_NAMING_COMPLIANT' as {color:#de350b}false{color}, and {color:#4c9aff}server{color} side set 'S3_NAMING_COMPLIANT' as {color:#57d9a3}true{color}. The bucket naming should be allowed to *NOT* *compliant* with S3 rules.

 * The {color:#00875a}advantage{color} is that different client could enable/disable S3 naming rule compliance based on their need without affecting other clients bucket naming rule. This provide flexibility especially for HDFS migration.

 * The {color:#ffab00}disadvantage{color} is that besides bucket creation, other type of bucket/key operation (For example, get a bucket, delete a bucket, set bucket quota, set bucket replication config, etc.) requires the verification of bucket name as well. Thus we need to make codes change both on client and server side for each affected operation.

2. Configure only Ozone {color:#4c9aff}server{color} side to whether use S3 or non-S3 naming rule or           not.
 - When {color:#4c9aff}server{color} side set 'S3_NAMING_COMPLIANT' as {color:#57d9a3}true{color}. The bucket naming should *be compliant* with S3 rules {+}*For All Clients*{+}.

 * When {color:#4c9aff}server{color} side set 'S3_NAMING_COMPLIANT' as {color:#de350b}false{color}. The bucket naming should be allowed to *NOT* *compliant* with S3 rules {+}*For All Clients*{+}.

 * The {color:#00875a}advantage{color} is that the code change only includes the server side. Not involved the client side.

 * The {color:#ffab00}disadvantage{color} is that all buckets created in same Ozone cluster don't have flexibility to have different S3-naming compliant or non-S3-naming compliant setting.

I currently have a [POC PR|https://github.com/apache/ozone/pull/4037] of the approach 1, set the flag on both client and server side regarding to whether to use S3 naming during {*}bucket creation{*}. I'd love to hear any feedback from the community!  
Thank you!


> Allow users to create an Ozone bucket with non-s3-naming-convention
> -------------------------------------------------------------------
>
>                 Key: HDDS-7586
>                 URL: https://issues.apache.org/jira/browse/HDDS-7586
>             Project: Apache Ozone
>          Issue Type: Improvement
>            Reporter: Dave Teng
>            Assignee: Dave Teng
>            Priority: Major
>              Labels: ozone, pull-request-available
>
> To configure whether Ozone bucket's name will follow S3 naming rules or not, I propose to add a CLI flag '--{{{}nonS3Naming'{}}} in ozone's bucket-creation command.
> There are two cases of the flag:
> When client sends *nonS3Naming* flag in CLI command (it stands for *true* when CLI interprets it) to OM, the bucket naming could *be allowed NOT compliant* with S3 rules.
> When client doesn't send *nonS3Naming* flag in CLI command (it stands for *false* when CLI interprets it) to OM, the bucket naming should be *compliant* with S3 rules.
>  
> I currently have a [POC PR|https://github.com/apache/ozone/pull/4037] of the approach. I'd love to hear any feedback from the community!  
> Thank you!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org