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

Run without ZooKeeper #123

Open
AnharMiah opened this issue Apr 18, 2019 · 6 comments
Open

Run without ZooKeeper #123

AnharMiah opened this issue Apr 18, 2019 · 6 comments
Labels
enhancement New feature or request help wanted We're not actively working on this, so please take it on if you have spare cycles. m-api Related to the external API question Further information is requested

Comments

@AnharMiah
Copy link

would it be possible to run without ZooKeeper for much simpler/basic deployments so its inline with other databases e.g. MySql/PosgreSql?

@jonhoo
Copy link
Contributor

jonhoo commented Apr 18, 2019

This is actually already supported by using a LocalAuthority. We'd probably want to make it even more convenient to launch a server using those settings though!

@AnharMiah
Copy link
Author

thanks @jonhoo is there any documentation on how to use this LocalAuthority ?

Ideally, I would love to just do:

$ ./noria --config=/path/to/config

:)

@jonhoo
Copy link
Contributor

jonhoo commented Apr 24, 2019

So, one thing worth pointing out here is that, at the moment, ZooKeeper is the way that clients (including the MySQL shim) discover the server as well. Even if you could run just the Noria server like you show above, then you wouldn't actually have a way of interacting with it. This is probably something we should fix, though it's somewhat more involved than I had initially thought. @ms705 something worth thinking about.

@jonhoo jonhoo added enhancement New feature or request m-api Related to the external API question Further information is requested labels Apr 24, 2019
@ms705 ms705 added the help wanted We're not actively working on this, so please take it on if you have spare cycles. label Aug 7, 2019
@ms705
Copy link
Member

ms705 commented Aug 7, 2019

I think it would be great to have a config file-based authority implementation!

@rrichardson
Copy link

I have taken a stab at implementing a static client/server config option in the mysql proxy.
mit-pdos/noria-mysql#10

I was able to do this without editing Noria code, but having some helper constructs would be nice, as you can tell from the code in the PR.. the gist of the idea is here:
https://github.com/mit-pdos/noria-mysql/pull/10/files#diff-639fbc4ef05b315af92b4d836c31b023R136

Basically we statically construct a LocalAuthority and pre-populate the CONTROLLER value with the value of the new server_addr argument.

I am not even sure if this is the correct approach.. if it is, we can build on it.

@rayrrr
Copy link

rayrrr commented Jun 11, 2022

I'm a bit out of my depth here, but is there any chance that using a native Rust service discovery library such as https://docs.rs/tower/0.4.6/tower/discover/index.html could be a more robust solution to removing the Zookeeper dependency?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted We're not actively working on this, so please take it on if you have spare cycles. m-api Related to the external API question Further information is requested
Projects
None yet
Development

No branches or pull requests

5 participants