Browse Source

*: rename initial-cluster-name to initial-cluster-token

Xiang Li 11 years ago
parent
commit
3dfb6723b2

+ 1 - 1
Documentation/0.5/admin_guide.md

@@ -5,7 +5,7 @@ When first started, etcd stores its configuration into the data directory. This
 
 If a member’s data directory is ever lost or corrupted, the user should remove the etcd member from the cluster via the [members API][0]. (The member can then be re-added to the cluster with an empty data directory, again using the [members API][0], and it will recover state).
 
-An etcd member restarted with previously used command line arguments but a new data directory is considered a different member. And it can potentially corrupt the cluster. If you are spinning up multiple clusters for testing it is recommended that you specify a unique cluster-name for the different clusters. This can protect you from cluster corruption in case of the misconfiguration metioned above.
+An etcd member restarted with previously used command line arguments but a new data directory is considered a different member. And it can potentially corrupt the cluster. If you are spinning up multiple clusters for testing it is recommended that you specify a unique initial-cluster-token for the different clusters. This can protect you from cluster corruption in case of the misconfiguration metioned above.
 
 The data directory has two sub-directories in it:
 

+ 4 - 4
etcdmain/etcd.go

@@ -48,9 +48,9 @@ var (
 	snapCount    = fs.Uint64("snapshot-count", etcdserver.DefaultSnapCount, "Number of committed transactions to trigger a snapshot")
 	printVersion = fs.Bool("version", false, "Print the version and exit")
 
-	initialCluster     = fs.String("initial-cluster", "default=http://localhost:2380,default=http://localhost:7001", "Initial cluster configuration for bootstrapping")
-	initialClusterName = fs.String("initial-cluster-name", "etcd", "Initial name for the etcd cluster during bootstrap")
-	clusterState       = new(etcdserver.ClusterState)
+	initialCluster      = fs.String("initial-cluster", "default=http://localhost:2380,default=http://localhost:7001", "Initial cluster configuration for bootstrapping")
+	initialClusterToken = fs.String("initial-cluster-token", "etcd-cluster", "Initial cluster token for the etcd cluster during bootstrap")
+	clusterState        = new(etcdserver.ClusterState)
 
 	corsInfo  = &cors.CORSInfo{}
 	proxyFlag = new(flags.Proxy)
@@ -306,7 +306,7 @@ func setupCluster() (*etcdserver.Cluster, error) {
 	default:
 		// We're statically configured, and cluster has appropriately been set.
 		// Try to configure by indexing the static cluster by name.
-		cls, err = etcdserver.NewClusterFromString(*initialClusterName, *initialCluster)
+		cls, err = etcdserver.NewClusterFromString(*initialClusterToken, *initialCluster)
 	}
 	return cls, err
 }

+ 4 - 4
etcdmain/etcd_test.go

@@ -24,9 +24,9 @@ import (
 
 func TestGenClusterString(t *testing.T) {
 	tests := []struct {
-		name string
-		urls []string
-		wstr string
+		token string
+		urls  []string
+		wstr  string
 	}{
 		{
 			"default", []string{"http://127.0.0.1:4001"},
@@ -42,7 +42,7 @@ func TestGenClusterString(t *testing.T) {
 		if err != nil {
 			t.Fatalf("unexpected new urls error: %v", err)
 		}
-		str := genClusterString(tt.name, urls)
+		str := genClusterString(tt.token, urls)
 		if str != tt.wstr {
 			t.Errorf("#%d: cluster = %s, want %s", i, str, tt.wstr)
 		}

+ 11 - 11
etcdserver/cluster.go

@@ -50,7 +50,7 @@ type ClusterInfo interface {
 // Cluster is a list of Members that belong to the same raft cluster
 type Cluster struct {
 	id      uint64
-	name    string
+	token   string
 	members map[uint64]*Member
 	// removed contains the ids of removed members in the cluster.
 	// removed id cannot be reused.
@@ -58,11 +58,11 @@ type Cluster struct {
 	store   store.Store
 }
 
-// NewClusterFromString returns Cluster through given clusterName and parsing
+// NewClusterFromString returns Cluster through given cluster token and parsing
 // members from a sets of names to IPs discovery formatted like:
 // mach0=http://1.1.1.1,mach0=http://2.2.2.2,mach1=http://3.3.3.3,mach2=http://4.4.4.4
-func NewClusterFromString(name string, cluster string) (*Cluster, error) {
-	c := newCluster(name)
+func NewClusterFromString(token string, cluster string) (*Cluster, error) {
+	c := newCluster(token)
 
 	v, err := url.ParseQuery(strings.Replace(cluster, ",", "&", -1))
 	if err != nil {
@@ -76,7 +76,7 @@ func NewClusterFromString(name string, cluster string) (*Cluster, error) {
 		if err := purls.Set(strings.Join(urls, ",")); err != nil {
 			return nil, err
 		}
-		m := NewMember(name, types.URLs(*purls), c.name, nil)
+		m := NewMember(name, types.URLs(*purls), c.token, nil)
 		if _, ok := c.members[m.ID]; ok {
 			return nil, fmt.Errorf("Member exists with identical ID %v", m)
 		}
@@ -86,8 +86,8 @@ func NewClusterFromString(name string, cluster string) (*Cluster, error) {
 	return c, nil
 }
 
-func NewClusterFromStore(name string, st store.Store) *Cluster {
-	c := newCluster(name)
+func NewClusterFromStore(token string, st store.Store) *Cluster {
+	c := newCluster(token)
 	c.store = st
 
 	e, err := c.store.Get(storeMembersPrefix, true, true)
@@ -119,8 +119,8 @@ func NewClusterFromStore(name string, st store.Store) *Cluster {
 	return c
 }
 
-func NewClusterFromMembers(name string, id uint64, membs []*Member) *Cluster {
-	c := newCluster(name)
+func NewClusterFromMembers(token string, id uint64, membs []*Member) *Cluster {
+	c := newCluster(token)
 	c.id = id
 	for _, m := range membs {
 		c.members[m.ID] = m
@@ -128,9 +128,9 @@ func NewClusterFromMembers(name string, id uint64, membs []*Member) *Cluster {
 	return c
 }
 
-func newCluster(name string) *Cluster {
+func newCluster(token string) *Cluster {
 	return &Cluster{
-		name:    name,
+		token:   token,
 		members: make(map[uint64]*Member),
 		removed: make(map[uint64]bool),
 	}

+ 4 - 4
etcdserver/cluster_test.go

@@ -43,8 +43,8 @@ func TestClusterFromString(t *testing.T) {
 		if err != nil {
 			t.Fatalf("#%d: unexpected new error: %v", i, err)
 		}
-		if c.name != "abc" {
-			t.Errorf("#%d: name = %v, want abc", i, c.name)
+		if c.token != "abc" {
+			t.Errorf("#%d: token = %v, want abc", i, c.token)
 		}
 		wc := newTestCluster(tt.mems)
 		if !reflect.DeepEqual(c.members, wc.members) {
@@ -99,8 +99,8 @@ func TestClusterFromStore(t *testing.T) {
 			hc.AddMember(&m)
 		}
 		c := NewClusterFromStore("abc", st)
-		if c.name != "abc" {
-			t.Errorf("#%d: name = %v, want %v", i, c.name, "abc")
+		if c.token != "abc" {
+			t.Errorf("#%d: token = %v, want %v", i, c.token, "abc")
 		}
 		wc := newTestCluster(tt.mems)
 		if !reflect.DeepEqual(c.members, wc.members) {

+ 2 - 2
etcdserver/server.go

@@ -212,7 +212,7 @@ func NewServer(cfg *ServerConfig) *EtcdServer {
 			if err != nil {
 				log.Fatalf("etcdserver: %v", err)
 			}
-			if cfg.Cluster, err = NewClusterFromString(cfg.Cluster.name, s); err != nil {
+			if cfg.Cluster, err = NewClusterFromString(cfg.Cluster.token, s); err != nil {
 				log.Fatalf("etcdserver: %v", err)
 			}
 		}
@@ -232,7 +232,7 @@ func NewServer(cfg *ServerConfig) *EtcdServer {
 			st.Recovery(snapshot.Data)
 			index = snapshot.Index
 		}
-		cfg.Cluster = NewClusterFromStore(cfg.Cluster.name, st)
+		cfg.Cluster = NewClusterFromStore(cfg.Cluster.token, st)
 		id, n, w = restartNode(cfg, index, snapshot)
 	default:
 		log.Fatalf("etcdserver: unsupported bootstrap config")