mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-23 02:51:55 +00:00
commit
815d8da2ed
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,14 @@
|
|||||||
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")
|
||||||
|
KUBE_FORMATS ?= iso-efi
|
||||||
|
endif
|
||||||
|
KUBE_FORMATS ?= iso-bios
|
||||||
|
|
||||||
|
KUBE_FORMAT_ARGS := $(patsubst %,-format %,$(KUBE_FORMATS))
|
||||||
|
|
||||||
all: build-container-images build-vm-images
|
all: build-container-images build-vm-images
|
||||||
|
|
||||||
@ -18,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 -format iso-efi -format iso-bios 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 -format iso-efi -format iso-bios $^
|
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
|
||||||
|
8
projects/kubernetes/bridge.yml
Normal file
8
projects/kubernetes/bridge.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
onboot:
|
||||||
|
- name: bridge
|
||||||
|
image: busybox:latest
|
||||||
|
command: ["/bin/sh", "-c", "set -ex; echo '{\"cniVersion\":\"0.3.1\",\"name\":\"default\",\"plugins\":[{\"type\":\"bridge\",\"bridge\":\"cni0\",\"isDefaultGateway\":true,\"ipMasq\":false,\"hairpinMode\":true,\"ipam\":{\"type\":\"host-local\",\"subnet\":\"10.1.0.0/16\",\"gateway\":\"10.1.0.1\"},\"dns\":{\"nameservers\":[\"10.1.0.1\"]}},{\"type\":\"portmap\",\"capabilities\":{\"portMappings\":true},\"snat\":true}]}' > /var/lib/cni/etc/net.d/10-default.conflist; echo '{\"cniVersion\":\"0.2.0\",\"type\":\"loopback\"}' > /var/lib/cni/etc/net.d/99-loopback.conf"]
|
||||||
|
runtime:
|
||||||
|
mkdir: ["/var/lib/cni/etc/net.d"]
|
||||||
|
binds:
|
||||||
|
- /var/lib:/var/lib
|
@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
- name: cri-containerd
|
- name: cri-containerd
|
||||||
image: linuxkitprojects/cri-containerd:7059f247c4135c75722047a2ce2fe6119a0e1681
|
image: linuxkitprojects/cri-containerd:72863deaa81a749fe8ff72bd69f863bab719aa06
|
||||||
files:
|
files:
|
||||||
- path: /etc/kubelet.sh.conf
|
- path: /etc/kubelet.sh.conf
|
||||||
contents: |
|
contents: |
|
||||||
|
@ -16,7 +16,7 @@ ENV GOPATH=/go PATH=$PATH:/go/bin
|
|||||||
|
|
||||||
ENV CRI_CONTAINERD_URL https://github.com/kubernetes-incubator/cri-containerd.git
|
ENV CRI_CONTAINERD_URL https://github.com/kubernetes-incubator/cri-containerd.git
|
||||||
#ENV CRI_CONTAINERD_BRANCH pull/NNN/head
|
#ENV CRI_CONTAINERD_BRANCH pull/NNN/head
|
||||||
ENV CRI_CONTAINERD_COMMIT v1.0.0-alpha.1
|
ENV CRI_CONTAINERD_COMMIT ac8b0979fa634703e0a8d03df03eb51774fcff3d
|
||||||
RUN mkdir -p $GOPATH/src/github.com/kubernetes-incubator && \
|
RUN mkdir -p $GOPATH/src/github.com/kubernetes-incubator && \
|
||||||
cd $GOPATH/src/github.com/kubernetes-incubator && \
|
cd $GOPATH/src/github.com/kubernetes-incubator && \
|
||||||
git clone $CRI_CONTAINERD_URL cri-containerd
|
git clone $CRI_CONTAINERD_URL cri-containerd
|
||||||
|
@ -36,7 +36,7 @@ services:
|
|||||||
- name: sshd
|
- name: sshd
|
||||||
image: linuxkit/sshd:b7f21ef1b13300a994e35eac3644e4f84f0ada8a
|
image: linuxkit/sshd:b7f21ef1b13300a994e35eac3644e4f84f0ada8a
|
||||||
- name: kubelet
|
- name: kubelet
|
||||||
image: linuxkitprojects/kubernetes:4d8ef8789cc04cb0e8cf42dc3f34e03ec70daf3d
|
image: linuxkitprojects/kubernetes:a2693a182f9038d6ac5f7309f4678a9ad11d39ca
|
||||||
files:
|
files:
|
||||||
- path: etc/linuxkit.yml
|
- path: etc/linuxkit.yml
|
||||||
metadata: yaml
|
metadata: yaml
|
||||||
@ -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
|
||||||
|
@ -11,9 +11,19 @@ else
|
|||||||
kubeadm init --skip-preflight-checks --kubernetes-version @KUBERNETES_VERSION@ $@
|
kubeadm init --skip-preflight-checks --kubernetes-version @KUBERNETES_VERSION@ $@
|
||||||
fi
|
fi
|
||||||
for i in /etc/kubeadm/kube-system.init/*.yaml ; do
|
for i in /etc/kubeadm/kube-system.init/*.yaml ; do
|
||||||
|
n=$(basename "$i")
|
||||||
if [ -e "$i" ] ; then
|
if [ -e "$i" ] ; then
|
||||||
echo "Applying "$(basename "$i")
|
if [ ! -s "$i" ] ; then # ignore zero sized files
|
||||||
kubectl create -n kube-system -f "$i"
|
echo "Ignoring zero size file $n"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
echo "Applying $n"
|
||||||
|
if ! kubectl create -n kube-system -f "$i" ; then
|
||||||
|
touch /var/lib/kubeadm/.kubeadm-init.sh-kube-system.init-failed
|
||||||
|
touch /var/lib/kubeadm/.kubeadm-init.sh-kube-system.init-"$n"-failed
|
||||||
|
echo "Failed to apply $n"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [ -f /var/config/kubeadm/untaint-master ] ; then
|
if [ -f /var/config/kubeadm/untaint-master ] ; then
|
||||||
|
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