-
Notifications
You must be signed in to change notification settings - Fork 0
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
Investigate etcd as an alternative of bootstrap bricks and leader election algorithm #6
Comments
etcd - The Road to 1.0 |
On Jan 30, 2014, @tatsuya6502 wrote:
I recently started to use etcd v0.4.6 cluster for other project to store application auto-discovery information, and now I'm very confident that etcd will be very good for above tasks in Hibari admin server. It will greatly simplify the admin server implementation and will be much more stable and scalable than the current implementation. I also think I can retire our partition-detector too by using etcd. A couple of weeks ago, the CoreOS team announced the first release candidate for etcd v2.0.0, and it seems they have brushed up the Raft implementation. Announcing the etcd 2.0 Release Candidate
|
I can start to try etcd v2.0.0 RC using pre-built Docker container on CoreOS. Or, build it by myself for SmartOS Zones. I would prefer the latter as I'm running SmartOS on my home server. etcd is written in Go, so all Go library dependencies are packed into a single binary file. Go's binaries are platform/processor-architecture dependent, but the compiler supports cross-compiling. It covers all possible Hibari platforms:
There is an official Docker container with cross-compiling support (the ones with *-cross tag), and I think Gox will be handy for this kind of task. This Dockerfile might be a good example of how to achieve this. Of course, I can use Go packages in SmartOS, FreeBSD and Arch Linux ARM, but cross-compiling with Gox will be simpler as it can produce binaries for all these targets at once in parallel compiling. |
Too bad. No ARM (and other 32-bit systems) support in etcd. coreos/etcd/README.md
|
Tried to build etcd 2.0.0 RC on 64-bit FreeBSD and SmartOS systems.
According to this article "Solaris portability - flock()" by a core SmartOS developer Jonathan Perkin, I'll play with Go a bit more (I should start with basic tutorials), and try to send a PR to etcd project. |
etcd.erl - Erlang bindings for etcd key value store |
OK. I'm not alone. Other people are making some progress on ARM support 👍
|
There are some on-going efforts by other people to make etcd 2 (including bolt) to run on Solaris and illmuos. |
@tatsuya6502 The above issues are fixed and now both bolt and etcd work on illumos and should work on Solaris. |
@akolb1 - That's great! I appreciate all your hard work.
|
Investigate etcd to see if it can replace the following areas in admin server:
etcd is a highly-available key value store for shared configuration and service discovery. It is written in Go language and uses the Raft (a variant of Paxos) consensus algorithm to manage a highly-available replicated log. etcd is a part of CoreOS, a Linux distribution with extensive Docker support for distributed server platform.
Details about etcd:
https://coreos.com/using-coreos/etcd/
The text was updated successfully, but these errors were encountered: