patternkubernetesMinor
Is making kubernetes masters schedulable a really bad idea?
Viewed 0 times
reallyideakubernetesbadschedulablemastersmaking
Problem
It's a cash strapped start-up. What are the worst consequences of running only three nodes, three schedulable masters?
Are there some ways can one mitigate against the risks?
Are there some ways can one mitigate against the risks?
Solution
https://kubernetes.io/docs/tasks/administer-cluster/highly-available-master/
Best practices for replicating masters for HA clusters
Try to place master replicas in different zones. During a zone failure, all masters placed inside the zone will fail. To survive zone
failure, also place nodes in multiple zones (see multiple-zones for
details).
Do not use a cluster with two master replicas. Consensus on a two-replica cluster requires both replicas running when changing
persistent state. As a result, both replicas are needed and a failure
of any replica turns cluster into majority failure state. A
two-replica cluster is thus inferior, in terms of HA, to a single
replica cluster.
When you add a master replica, cluster state (etcd) is copied to a new instance. If the cluster is large, it may take a long time to
duplicate its state. This operation may be sped up by migrating etcd
data directory, as described here (we are considering adding support
for etcd data dir migration in future).
I would like to emphasize the following quote
A
two-replica cluster is thus inferior, in terms of HA, to a single
replica cluster.
If less then 3 nodes will be used then it is basically more safe to run 1 master, but if one goes down there will be an issue as well. So it is better to run at least three masters.
Best practices for replicating masters for HA clusters
Try to place master replicas in different zones. During a zone failure, all masters placed inside the zone will fail. To survive zone
failure, also place nodes in multiple zones (see multiple-zones for
details).
Do not use a cluster with two master replicas. Consensus on a two-replica cluster requires both replicas running when changing
persistent state. As a result, both replicas are needed and a failure
of any replica turns cluster into majority failure state. A
two-replica cluster is thus inferior, in terms of HA, to a single
replica cluster.
When you add a master replica, cluster state (etcd) is copied to a new instance. If the cluster is large, it may take a long time to
duplicate its state. This operation may be sped up by migrating etcd
data directory, as described here (we are considering adding support
for etcd data dir migration in future).
I would like to emphasize the following quote
A
two-replica cluster is thus inferior, in terms of HA, to a single
replica cluster.
If less then 3 nodes will be used then it is basically more safe to run 1 master, but if one goes down there will be an issue as well. So it is better to run at least three masters.
Context
StackExchange DevOps Q#1779, answer score: 3
Revisions (0)
No revisions yet.