You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en/docs/setup/production-environment/tools/kubeadm/high-availability.md
+68-10Lines changed: 68 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,22 +32,80 @@ LoadBalancer, or with dynamic PersistentVolumes.
32
32
33
33
## {{% heading "prerequisites" %}}
34
34
35
-
36
-
For both methods you need this infrastructure:
37
-
38
-
- Three machines that meet [kubeadm's minimum requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for
39
-
the control-plane nodes
40
-
- Three machines that meet [kubeadm's minimum
35
+
The prerequisites depend on which topology you have selected for your cluster's
36
+
control plane:
37
+
38
+
{{< tabs name="prerequisite_tabs" >}}
39
+
{{% tab name="Stacked etcd" %}}
40
+
<!--
41
+
note to reviewers: these prerequisites should match the start of the
42
+
external etc tab
43
+
-->
44
+
45
+
You need:
46
+
47
+
- Three or more machines that meet [kubeadm's minimum requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for
48
+
the control-plane nodes. Having an odd number of control plane nodes can help
49
+
with leader selection in the case of machine or zone failure.
50
+
- including a {{< glossary_tooltip text="container runtime" term_id="container-runtime" >}}, already set up and working
51
+
- Three or more machines that meet [kubeadm's minimum
52
+
requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for the workers
53
+
- including a container runtime, already set up and working
54
+
- Full network connectivity between all machines in the cluster (public or
55
+
private network)
56
+
- Superuser privileges on all machines using `sudo`
57
+
- You can use a different tool; this guide uses `sudo` in the examples.
58
+
- SSH access from one device to all nodes in the system
59
+
-`kubeadm` and `kubelet` already installed on all machines.
60
+
61
+
_See [Stacked etcd topology](/docs/setup/production-environment/tools/kubeadm/ha-topology/#stacked-etcd-topology) for context._
62
+
63
+
{{% /tab %}}
64
+
{{% tab name="External etcd" %}}
65
+
<!--
66
+
note to reviewers: these prerequisites should match the start of the
67
+
stacked etc tab
68
+
-->
69
+
You need:
70
+
71
+
- Three or more machines that meet [kubeadm's minimum requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for
72
+
the control-plane nodes. Having an odd number of control plane nodes can help
73
+
with leader selection in the case of machine or zone failure.
74
+
- including a {{< glossary_tooltip text="container runtime" term_id="container-runtime" >}}, already set up and working
75
+
- Three or more machines that meet [kubeadm's minimum
41
76
requirements](/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin) for the workers
77
+
- including a container runtime, already set up and working
42
78
- Full network connectivity between all machines in the cluster (public or
43
79
private network)
44
-
- sudo privileges on all machines
80
+
- Superuser privileges on all machines using `sudo`
81
+
- You can use a different tool; this guide uses `sudo` in the examples.
45
82
- SSH access from one device to all nodes in the system
46
-
-`kubeadm` and `kubelet` installed on all machines. `kubectl` is optional.
83
+
-`kubeadm` and `kubelet` already installed on all machines.
84
+
85
+
<!-- end of shared prerequisites -->
86
+
87
+
And you also need:
88
+
- Three or more additional machines, that will become etcd cluster members.
89
+
Having an odd number of members in the etcd cluster is a requirement for achieving
90
+
optimal voting quorum.
91
+
- These machines again need to have `kubeadm` and `kubelet` installed.
92
+
- These machines also require a container runtime, that is already set up and working.
93
+
94
+
_See [External etcd topology](/docs/setup/production-environment/tools/kubeadm/ha-topology/#external-etcd-topology) for context._
95
+
{{% /tab %}}
96
+
{{< /tabs >}}
97
+
98
+
### Container images
99
+
100
+
Each host should have access read and fetch images from the Kubernetes container image registry, `k8s.gcr.io`.
101
+
If you want to deploy a highly-available cluster where the hosts do not have access to pull images, this is possible. You must ensure by some other means that the correct container images are already available on the relevant hosts.
47
102
48
-
For the external etcd cluster only, you also need:
103
+
### Command line interface {#kubectl}
49
104
50
-
- Three additional machines for etcd members
105
+
To manage Kubernetes once your cluster is set up, you should
106
+
[install kubectl](/docs/tasks/tools/#kubectl) on your PC. It is also useful
107
+
to install the `kubectl` tool on each control plane node, as this can be
0 commit comments