etcd-starter

command module
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 25, 2015 License: Apache-2.0 Imports: 5 Imported by: 0

README

etcd-starter

etcd-starter is the starter code to faciliate etcd upgrade in CoreOS image. The main functionality is:

  1. do binary selection between etcd v0.4 and etcd v2.0 based on the layout of data directory and the content inside wal and snapshot
  2. modify flag for standby-mode v0.4 etcd, which helps it run on proxy mode

Installation

mkdir $GOPATH/src/github.com/coreos
cd $GOPATH/src/github.com/coreos
git clone git@github.com:coreos/etcd-starter.git
cd etcd-starter
go build .

Usage

Set ETCD_INTERNAL_BINARY_DIR to the internal binary directory, which should be organized in this way:

ETCD_INTERNAL_BINARY_DIR
├── 1
    ├── etcd (points to v0.4 etcd binary)
├── 2
    ├── etcd (points to v2.0 etcd binary)

The default value for ETCD_INTERNAL_BINARY_DIR is "/usr/libexec/etcd/internal_versions/".

Start etcd-starter just like etcd. Here is an example:

$ etcd-starter --name default --data-dir default.etcd

Upgrade Example

Assume that you have a data directory default.etcd which is used by v0.4 etcd.

You can start it using v0.4 etcd as before:

$ etcd-starter --name default --data-dir default.etcd

When you want to upgrade it to v2.0, trigger it:

$ etcdctl upgrade --peer-urls http://127.0.0.1:7001

etcd will exit after 10 seconds if everything goes well. Restart it using the same command line:

$ etcd-starter --name default --data-dir default.etcd

It will run using v2.0 etcd now.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Godeps
_workspace/src/code.google.com/p/gogoprotobuf/proto
Package proto converts data structures to and from the wire format of protocol buffers.
Package proto converts data structures to and from the wire format of protocol buffers.
_workspace/src/code.google.com/p/goprotobuf/proto
Package proto converts data structures to and from the wire format of protocol buffers.
Package proto converts data structures to and from the wire format of protocol buffers.
_workspace/src/github.com/coreos/etcd/client
Package client provides bindings for the etcd APIs.
Package client provides bindings for the etcd APIs.
_workspace/src/github.com/coreos/etcd/discovery
Package discovery provides an implementation of the cluster discovery that is used by etcd.
Package discovery provides an implementation of the cluster discovery that is used by etcd.
_workspace/src/github.com/coreos/etcd/error
error package describes errors in etcd project.
error package describes errors in etcd project.
_workspace/src/github.com/coreos/etcd/etcdserver/etcdserverpb
Package etcdserverpb is a generated protocol buffer package.
Package etcdserverpb is a generated protocol buffer package.
_workspace/src/github.com/coreos/etcd/raft
Package raft provides an implementation of the raft consensus algorithm.
Package raft provides an implementation of the raft consensus algorithm.
_workspace/src/github.com/coreos/etcd/raft/raftpb
Package raftpb is a generated protocol buffer package.
Package raftpb is a generated protocol buffer package.
_workspace/src/github.com/coreos/etcd/snap/snappb
Package snappb is a generated protocol buffer package.
Package snappb is a generated protocol buffer package.
_workspace/src/github.com/coreos/etcd/wal
Package wal provides an implementation of a write ahead log that is used by etcd.
Package wal provides an implementation of a write ahead log that is used by etcd.
_workspace/src/github.com/coreos/etcd/wal/walpb
Package walpb is a generated protocol buffer package.
Package walpb is a generated protocol buffer package.
_workspace/src/github.com/golang/protobuf/proto
Package proto converts data structures to and from the wire format of protocol buffers.
Package proto converts data structures to and from the wire format of protocol buffers.
_workspace/src/github.com/matttproud/golang_protobuf_extensions/ext
Package ext enables record length-delimited Protocol Buffer streaming.
Package ext enables record length-delimited Protocol Buffer streaming.
HTTP Content-Type Autonegotiation.
_workspace/src/github.com/prometheus/client_golang/_vendor/perks/quantile
Package quantile computes approximate quantiles over an unbounded data stream within low memory and CPU bounds.
Package quantile computes approximate quantiles over an unbounded data stream within low memory and CPU bounds.
_workspace/src/github.com/prometheus/client_golang/model
Package model contains core representation of Prometheus client primitives.
Package model contains core representation of Prometheus client primitives.
_workspace/src/github.com/prometheus/client_golang/prometheus
Package prometheus provides embeddable metric primitives for servers and standardized exposition of telemetry through a web services interface.
Package prometheus provides embeddable metric primitives for servers and standardized exposition of telemetry through a web services interface.
_workspace/src/github.com/prometheus/client_golang/text
Package text contains helper functions to parse and create text-based exchange formats.
Package text contains helper functions to parse and create text-based exchange formats.
_workspace/src/github.com/prometheus/client_model/go
Package io_prometheus_client is a generated protocol buffer package.
Package io_prometheus_client is a generated protocol buffer package.
_workspace/src/github.com/prometheus/procfs
Package procfs provides functions to retrieve system, kernel and process metrics from the pseudo-filesystem proc.
Package procfs provides functions to retrieve system, kernel and process metrics from the pseudo-filesystem proc.
_workspace/src/golang.org/x/crypto/bcrypt
Package bcrypt implements Provos and Mazières's bcrypt adaptive hashing algorithm.
Package bcrypt implements Provos and Mazières's bcrypt adaptive hashing algorithm.
_workspace/src/golang.org/x/crypto/blowfish
Package blowfish implements Bruce Schneier's Blowfish encryption algorithm.
Package blowfish implements Bruce Schneier's Blowfish encryption algorithm.
_workspace/src/golang.org/x/net/context
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL