Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Subtask] Deploy the iceberg rest service separately from the gravitino service #2730

Closed
Tracked by #4058
caican00 opened this issue Mar 29, 2024 · 1 comment · Fixed by #4005
Closed
Tracked by #4058

[Subtask] Deploy the iceberg rest service separately from the gravitino service #2730

caican00 opened this issue Mar 29, 2024 · 1 comment · Fixed by #4005
Assignees
Labels
0.6.0 Release v0.6.0 ICEBERG-REST-SERVER subtask Subtasks of umbrella issue

Comments

@caican00
Copy link
Collaborator

Describe the subtask

Deploy the iceberg rest service separately from the gravitino service.

The iceberg rest service can be managed independently, and this two services have no influence on each other.

Parent issue

#1571

@caican00 caican00 added the subtask Subtasks of umbrella issue label Mar 29, 2024
@shaofengshi
Copy link
Contributor

+1 glad to see it.

jerryshao pushed a commit that referenced this issue Jul 23, 2024
### What changes were proposed in this pull request?

Split IcebergRESTService into one separate module, it could be managed
with or without Gravitino server.

#### For user
1. provide an isolated Iceberg REST server package or Gravitino package
with directory `iceberg-rest-server` which contains Iceberg REST server.
They both contain isolated config files and start&stop script.
2. The configuration items start with `gravitino.iceberg-rest.` are
treated as Iceberg REST server configs. like
`gravitino.iceberg-rest.catalog-backend`,
`gravitino.iceberg-rest.httpPort`, etc. Configurations for Iceberg REST
server are same in isolated package and Gravitino package.

#### For developer
The core is `RESTService` which start JettyServer for Iceberg REST
server,
* For isolated Iceberg REST server module, the entrypoint is
`IcebergRESTServer` which provides configuration, metricsSystem for
`RESTService`.
* For GravitinoServer,  `RESTService`  is managed as a AuxiliaryService.

### Why are the changes needed?

Iceberg rest service is managed as an auxiliary service in Gravitino
server , for the users who want to use Iceberg REST service only, it
introduces an extra burden.

Fix: #2730 

### Does this PR introduce _any_ user-facing change?
yes, will add document in #4113

### How was this patch tested?
1. existing tests
2. test in local env as a Iceberg REST server

### related docs

https://docs.google.com/document/d/1lyJwMaaJKfMqtnH9c7LwvnOHRKm7gh8Al4Sw3T1DFjM/edit
@jerryshao jerryshao added the 0.6.0 Release v0.6.0 label Jul 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.6.0 Release v0.6.0 ICEBERG-REST-SERVER subtask Subtasks of umbrella issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants