Skip to content
This repository has been archived by the owner on Sep 4, 2021. It is now read-only.

Create dedicated etcd machines backed by EBS volumes #92

Closed
jimmycuadra opened this issue Oct 2, 2015 · 5 comments
Closed

Create dedicated etcd machines backed by EBS volumes #92

jimmycuadra opened this issue Oct 2, 2015 · 5 comments

Comments

@jimmycuadra
Copy link

It should be configurable (and probably the default set up) to launch a cluster of etcd nodes (probably 3 by default) on separate CoreOS instances and point the Kubernetes API server at them rather than having a single etcd node colocated with the API server. This is a more reliable configuration for production deployments that can tolerate potential etcd failures on a single node and provide better disaster recovery. The etcd data dirs should be located on EBS volumes (not the root device) so the instances can be terminated safely without risk of losing the data.

@vyshane
Copy link
Contributor

vyshane commented Oct 7, 2015

Agreed. Ideally:

  • The etcd nodes should be in an autoscaling group with a configurable initial number of nodes
  • The cloud formation template should set up an internal ELB for etcd
  • The etcd nodes should be backed by EBS volumes
  • Generation of etcd discovery URL can be left to the user

@jimmycuadra
Copy link
Author

Autoscaling of etcd is not a good idea and very unlikely to be supported by an automated tools like this, based on the intentional architectural design of etcd: https://github.com/coreos/etcd/blob/master/Documentation/runtime-reconf-design.md

@aaronlevy
Copy link
Contributor

@jimmycuadra currently the etcd data is backed by an EBS volume (root device), so the data will survive node failure (although will be unavailable until new node is launched).

I will leave this open, however, to track the issue of launching a separate etcd cluster as an option, rather than a single node backed by EBS.

/cc @silas

@AlmogBaku
Copy link

any update on this?

@aaronlevy
Copy link
Contributor

The kube-aws tool has been moved to its own top-level directory @ https://github.com/coreos/kube-aws

If this issue still needs to be addressed, please re-open the issue under the new repository.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants