gravitino icon indicating copy to clipboard operation
gravitino copied to clipboard

[FEATURE] Add HA mechanism to CLI

Open Abyss-lord opened this issue 9 months ago • 2 comments

Describe the feature

Currently, the CLI can specify the address of the service to connect to via the 'uri' parameter, otherwise http://localhost:8090 is used by default. We expect Gravitino to introduce HA mechanisms similar to Hive Metastore, When deploying multiple services, we expect to automatically connect to the currently available Gravitino server.

Motivation

No response

Describe the solution

Add a new parameter. for example:

gravitino.server.webserver.uris = http://localhost:8090,http://localhost:8090 

and Add a polling mechanism to the 'GravitinoClientBase' class to automatically select the currently available Gravitino service as the target.

Additional context

No response

Abyss-lord avatar Mar 03 '25 10:03 Abyss-lord

@justinmclean Plz help see if this idea works.

Abyss-lord avatar Mar 03 '25 10:03 Abyss-lord

I don't get the idea of "HA". If we mean that there are more than one servers we could use, there will be a load balancer sitting in front of the servers for L7/L4 traffics. Another possibility is that the DNS resolver will point us to a different node. In either case, we don't have a need for the client to loop through the servers directly. Client side load-balancing has too many problems.

tengqm avatar Mar 03 '25 10:03 tengqm