mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-20 17:49:10 +00:00
kubernetes: Refactor network provider selection
KUBE_NETWORK now specifies a yml which is passed to the Moby tool, which can introduce files into /etc/kubeadm/kube-system.init/ or do other things as it likes. In the case of weave this just adds the weave yaml to that directory. To avoid too much confusion between weave.yml (Moby tool input) and `weave.yaml` (the kubernetes `ServiceAccount`, `DeamonsSet` etc object specs) name the latter `kube-weave.yaml`. Signed-off-by: Ian Campbell <ijc@docker.com>
This commit is contained in:
parent
22cdd22184
commit
ed0e79aa9d
3
projects/kubernetes/.gitignore
vendored
3
projects/kubernetes/.gitignore
vendored
@ -2,5 +2,4 @@ image-cache/common/*.tar
|
|||||||
image-cache/common/Dockerfile
|
image-cache/common/Dockerfile
|
||||||
image-cache/control-plane/*.tar
|
image-cache/control-plane/*.tar
|
||||||
image-cache/control-plane/Dockerfile
|
image-cache/control-plane/Dockerfile
|
||||||
weave.yaml
|
kube-weave.yaml
|
||||||
network.yaml
|
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
KUBE_RUNTIME ?= docker
|
KUBE_RUNTIME ?= docker
|
||||||
KUBE_NETWORK ?= weave-v2.0.5
|
KUBE_NETWORK ?= weave
|
||||||
|
|
||||||
INIT_YAML ?=
|
KUBE_NETWORK_WEAVE ?= v2.0.5
|
||||||
INIT_YAML += network.yaml
|
|
||||||
|
|
||||||
ifeq ($(shell uname -s),"Darwin")
|
ifeq ($(shell uname -s),"Darwin")
|
||||||
KUBE_FORMATS ?= iso-efi
|
KUBE_FORMATS ?= iso-efi
|
||||||
@ -25,21 +24,19 @@ push-container-images:
|
|||||||
|
|
||||||
build-vm-images: kube-master.iso kube-node.iso
|
build-vm-images: kube-master.iso kube-node.iso
|
||||||
|
|
||||||
# NB cannot use $^ because $(INIT_YAML) is not for consumption by "moby build"
|
kube-master.iso: kube.yml $(KUBE_RUNTIME).yml $(KUBE_RUNTIME)-master.yml $(KUBE_NETWORK).yml
|
||||||
kube-master.iso: kube.yml $(KUBE_RUNTIME).yml $(KUBE_RUNTIME)-master.yml $(INIT_YAML)
|
moby build -name kube-master $(KUBE_FORMAT_ARGS) $^
|
||||||
moby build -name kube-master $(KUBE_FORMAT_ARGS) kube.yml $(KUBE_RUNTIME).yml $(KUBE_RUNTIME)-master.yml
|
|
||||||
|
|
||||||
kube-node.iso: kube.yml $(KUBE_RUNTIME).yml
|
kube-node.iso: kube.yml $(KUBE_RUNTIME).yml $(KUBE_NETWORK).yml
|
||||||
moby build -name kube-node $(KUBE_FORMAT_ARGS) $^
|
moby build -name kube-node $(KUBE_FORMAT_ARGS) $^
|
||||||
|
|
||||||
network.yaml: $(KUBE_NETWORK).yaml
|
weave.yml: kube-weave.yaml
|
||||||
ln -nf $< $@
|
|
||||||
|
|
||||||
weave-%.yaml:
|
kube-weave.yaml:
|
||||||
curl -L -o $@ https://cloud.weave.works/k8s/v1.8/net?v=$*
|
curl -L -o $@ https://cloud.weave.works/k8s/v1.8/net?v=$(KUBE_NETWORK_WEAVE)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f -r \
|
rm -f -r \
|
||||||
kube-*-kernel kube-*-cmdline kube-*-state kube-*-initrd.img *.iso \
|
kube-*-kernel kube-*-cmdline kube-*-state kube-*-initrd.img *.iso \
|
||||||
weave-*.yaml network.yaml
|
kube-weave.yaml
|
||||||
$(MAKE) -C image-cache clean
|
$(MAKE) -C image-cache clean
|
||||||
|
@ -47,8 +47,8 @@ files:
|
|||||||
PRETTY_NAME="LinuxKit Kubernetes Project"
|
PRETTY_NAME="LinuxKit Kubernetes Project"
|
||||||
- path: /usr/libexec/kubernetes/kubelet-plugins
|
- path: /usr/libexec/kubernetes/kubelet-plugins
|
||||||
symlink: "/var/lib/kubelet-plugins"
|
symlink: "/var/lib/kubelet-plugins"
|
||||||
- path: /etc/kubeadm/kube-system.init/50-network.yaml
|
- path: /etc/kubeadm/
|
||||||
source: network.yaml
|
directory: true
|
||||||
- path: /etc/sysctl.d/01-kubernetes.conf
|
- path: /etc/sysctl.d/01-kubernetes.conf
|
||||||
contents: 'net.ipv4.ip_forward = 1'
|
contents: 'net.ipv4.ip_forward = 1'
|
||||||
- path: /opt/cni
|
- path: /opt/cni
|
||||||
|
3
projects/kubernetes/weave.yml
Normal file
3
projects/kubernetes/weave.yml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
files:
|
||||||
|
- path: /etc/kubeadm/kube-system.init/50-weave.yaml
|
||||||
|
source: weave-sa.yaml
|
Loading…
Reference in New Issue
Block a user