Updates HA etcd with kubeadm (#9227)

Adds a missing instruction on how to configure the kubelet. Reported in slack in the #kubeadm channel.

Fixes #9222

Signed-off-by: Chuck Ha <ha.chuck@gmail.com>
This commit is contained in:
Chuck Ha
2018-07-03 10:37:21 -04:00
committed by k8s-ci-robot
parent e342dd50bf
commit 429d01e95b
@@ -22,9 +22,10 @@ when using kubeadm to set up a kubernetes cluster.
document assumes these default ports. However, they are configurable through document assumes these default ports. However, they are configurable through
the kubeadm config file. the kubeadm config file.
* Each host must [have docker, kubelet, and kubeadm installed][toolbox]. * Each host must [have docker, kubelet, and kubeadm installed][toolbox].
* Some infrastructure to copy files between hosts (e.g., ssh). * Some infrastructure to copy files between hosts. For example `ssh` and `scp`
can satisfy this requirement.
[toolbox]: /docs/setup/independent/install-kubeadm/ [toolbox]: /docs/tasks/tools/install-kubeadm/
{{% /capture %}} {{% /capture %}}
@@ -33,9 +34,32 @@ when using kubeadm to set up a kubernetes cluster.
## Setting up the cluster ## Setting up the cluster
The general approach is to generate all certs on one node and only distribute The general approach is to generate all certs on one node and only distribute
the *necessary* files to the other nodes. Note that kubeadm contains all the the *necessary* files to the other nodes.
necessary crytographic machinery to generate the certificates described below;
no other cryptographic tooling is required for this example. {{< note >}}
**Note:** kubeadm contains all the necessary crytographic machinery to generate
the certificates described below; no other cryptographic tooling is required for
this example.
{{< /note >}}
1. Configure the kubelet to be a service manager for etcd.
Running etcd is simpler than running kubernetes so you must override the
kubeadm-provided kubelet unit file by creating a new one with a higher
precedence.
```sh
cat << EOF > /etc/systemd/system/kubelet.service.d/20-etcd-service-manager.conf
[Service]
ExecStart=
ExecStart=/usr/bin/kubelet --pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true
Restart=always
EOF
systemctl daemon-reload
systemctl restart kubelet
```
1. Create configuration files for kubeadm. 1. Create configuration files for kubeadm.