kubespray/roles
Florent Monbillard 061f5a313b Explicitely set etcd endpoint in kubeadm-images.yaml (#4063)
Currently, the task `container_download | download images for kubeadm config images` fetches etcd image even though it's not required (etcd is bootstrapped by kubespray, not kubeadm).

`kubeadm-images.yaml` is only a subset of `kubeadm-config.yaml`, therefore ``kubeadm config images pull` will try to get all this list (including etcd)

```
# kubeadm config images list --config /etc/kubernetes/kubeadm-images.yaml
k8s.gcr.io/kube-apiserver:v1.13.2
k8s.gcr.io/kube-controller-manager:v1.13.2
k8s.gcr.io/kube-scheduler:v1.13.2
k8s.gcr.io/kube-proxy:v1.13.2
k8s.gcr.io/pause:3.1
k8s.gcr.io/etcd:3.2.24
k8s.gcr.io/coredns:1.2.6
```

When using the `kubeadm-config.yaml` though, it doesn't list etcd image:

```
# kubeadm config images list --config /etc/kubernetes/kubeadm-config.yaml
k8s.gcr.io/kube-apiserver:v1.13.2
k8s.gcr.io/kube-controller-manager:v1.13.2
k8s.gcr.io/kube-scheduler:v1.13.2
k8s.gcr.io/kube-proxy:v1.13.2
k8s.gcr.io/pause:3.1
k8s.gcr.io/coredns:1.2.6
```

This change just adds the etcd endpoints in the `kubeadm-images.yaml` to give a hint to kubeadm it doesn't need etcd image for its boostrapping as etcd is "external".
I confess it is a ugly hack, a better way would be to use a single `kubeadm-config.yaml` for both tasks, but they are triggered by different roles (`kubeadm-images.yaml` is used by download, `kubeadm-config.yaml` by kubernetes/master) at different steps and I didn't want to refactor too many things to prevent breakage. 

This is specially useful for offline installation where a whitelist of container images is mirrored on a local private container registry. `k8s.gcr.io/etcd` and `quay.io/coreos/etcd`  are two different repositories hosting the same images but using *different tags*! 
* coreos/etcd:v3.2.24   
* k8s.gcr.io/etcd:3.2.24 (note the missing 'v' in the tag name)
2019-02-13 12:44:12 -08:00
..
adduser Fix createhome directory for adduser role 2018-08-23 08:55:11 +02:00
bastion-ssh-config Split deploy steps in separate playbooks: part1 (#3451) 2018-10-09 19:14:33 -07:00
bootstrap-os Omit does not work in the context of yum_repository proxy. The ansible documentation specifies to use _none_ to disable the global proxy setting. (#4225) 2019-02-12 16:46:32 -08:00
container-engine [SECURITY] Docker patches for CVE-2019-5736 (#4223) 2019-02-13 01:50:53 -08:00
dnsmasq Upgrade kubernetes to v1.13.0 (#3810) 2018-12-06 12:11:48 -08:00
download Explicitely set etcd endpoint in kubeadm-images.yaml (#4063) 2019-02-13 12:44:12 -08:00
etcd Enable ClearLinux as a distro in kubespray (#3855) 2018-12-18 01:39:25 -08:00
kubernetes Improve kubeadm join tasks (#4206) 2019-02-12 13:42:56 -08:00
kubernetes-apps Add an option for helm init --wait (#4202) 2019-02-11 14:32:26 -08:00
kubespray-defaults Fix kube_hostname_override inconsistencies (#4185) 2019-02-06 22:20:11 -08:00
network_plugin change permission after unarchive (#4191) 2019-02-11 14:21:38 -08:00
remove-node Remove non-kubeadm deployment (#3811) 2018-12-06 02:33:38 -08:00
reset cri-o reset all containers and pods (#3856) 2018-12-12 01:59:55 -08:00
upgrade Remove non-kubeadm deployment (#3811) 2018-12-06 02:33:38 -08:00
win_nodes/kubernetes_patch Fix kube_hostname_override inconsistencies (#4185) 2019-02-06 22:20:11 -08:00