Sign inSign up

hellslicer/etcd

By hellslicer

•Updated almost 11 years ago

Image
0

816

hellslicer/etcd repository overview

⁠etcd

Build Status Docker Repository on Quay.io

etcd Logo

etcd is a distributed, consistent key value store for shared configuration and service discovery with a focus on being:

  • Simple: curl'able user facing API (HTTP+JSON)
  • Secure: optional SSL client cert authentication
  • Fast: benchmarked 1000s of writes/s per instance
  • Reliable: properly distributed using Raft

etcd is written in Go and uses the Raft⁠ consensus algorithm to manage a highly-available replicated log.

See etcdctl⁠ for a simple command line client. Or feel free to just use curl, as in the examples below.

If you're considering etcd for production use, please see: production-ready.md⁠

⁠Getting Started

⁠Getting etcd

The latest release and setup instructions are available at GitHub⁠.

⁠Running etcd

First start a single-member cluster of etcd:

./bin/etcd

This will bring up etcd listening on port 4001 for client communication and on port 7001 for server-to-server communication.

Next, let's set a single key, and then retrieve it:

curl -L http://127.0.0.1:4001/v2/keys/mykey -XPUT -d value="this is awesome"
curl -L http://127.0.0.1:4001/v2/keys/mykey

You have successfully started an etcd and written a key to the store.

⁠Running local etcd cluster

First install goreman⁠, which manages Procfile-based applications.

Our Profile script⁠ will set up a local example cluster. You can start it with:

goreman start

This will bring up 3 etcd members infra1, infra2 and infra3 and etcd proxy proxy, which runs locally and composes a cluster.

You can write a key to the cluster and retrieve the value back from any member or proxy.

⁠Next Steps

Now it's time to dig into the full etcd API and other guides.

⁠Contact

⁠Contributing

See CONTRIBUTING⁠ for details on submitting patches and the contribution workflow.

⁠Project Details

⁠Versioning
⁠Service Versioning

etcd uses semantic versioning⁠ New minor versions may add additional features to the API.

You can get the version of etcd by issuing a request to /version:

curl -L http://127.0.0.1:4001/version
⁠API Versioning

The v2 API responses should not change after the 2.0.0 release but new features will be added over time.

⁠32-bit systems

etcd has known issues on 32-bit systems due to a bug in the Go runtime. See #358⁠ for more information.

⁠License

etcd is under the Apache 2.0 license. See the LICENSE⁠ file for details.

Tag summary

Content type

Image

Digest

sha256:ffc11d42a…

Size

175.8 MB

Last updated

almost 11 years ago

docker pull hellslicer/etcd:2.0.2