diff options
Diffstat (limited to 'src/vagrant/kubeadm_multus')
-rwxr-xr-x | src/vagrant/kubeadm_multus/deploy.sh | 2 | ||||
-rw-r--r-- | src/vagrant/kubeadm_multus/examples/busybox.yaml | 17 | ||||
-rwxr-xr-x | src/vagrant/kubeadm_multus/examples/multus.sh | 39 | ||||
-rw-r--r-- | src/vagrant/kubeadm_multus/examples/ubuntu.yaml | 32 | ||||
-rw-r--r-- | src/vagrant/kubeadm_multus/master_setup.sh | 3 |
5 files changed, 59 insertions, 34 deletions
diff --git a/src/vagrant/kubeadm_multus/deploy.sh b/src/vagrant/kubeadm_multus/deploy.sh index f5b810e..a0e7843 100755 --- a/src/vagrant/kubeadm_multus/deploy.sh +++ b/src/vagrant/kubeadm_multus/deploy.sh @@ -4,5 +4,7 @@ set -ex DIR="$(dirname `readlink -f $0`)" cd $DIR +vagrant destroy -f vagrant up +vagrant ssh master -c "/vagrant/examples/multus.sh" || (vagrant destroy -f; exit 1) vagrant destroy -f diff --git a/src/vagrant/kubeadm_multus/examples/busybox.yaml b/src/vagrant/kubeadm_multus/examples/busybox.yaml new file mode 100644 index 0000000..7fd1b8d --- /dev/null +++ b/src/vagrant/kubeadm_multus/examples/busybox.yaml @@ -0,0 +1,17 @@ +apiVersion: v1 +kind: ReplicationController +metadata: + name: busybox +spec: + replicas: 2 + template: + metadata: + labels: + app: busybox + spec: + containers: + - name: busybox + image: busybox:1.27.2 + command: + - sleep + - "36000" diff --git a/src/vagrant/kubeadm_multus/examples/multus.sh b/src/vagrant/kubeadm_multus/examples/multus.sh new file mode 100755 index 0000000..d4b9a88 --- /dev/null +++ b/src/vagrant/kubeadm_multus/examples/multus.sh @@ -0,0 +1,39 @@ +#!/bin/bash +# +# Copyright (c) 2017 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +set -ex + +#workaroud to fix dns pod issue +times=0 + +while [ $times -lt "3" ] +do + kubectl get pods -n kube-system | grep kube-dns | grep -v Run | sed "s/ .*//" | \ + xargs -I {} kubectl delete pod -n kube-system {} + sleep 20 + times+=1 +done + +kubectl apply -f /vagrant/examples/busybox.yaml +r="0" +while [ $r -ne "2" ] +do + r=$(kubectl get pods | grep Running | wc -l) + sleep 20 +done +kubectl get pods --all-namespaces +kubectl get pods | grep Run | sed "s/ .*//" | xargs -I {} kubectl exec -i {} ip a diff --git a/src/vagrant/kubeadm_multus/examples/ubuntu.yaml b/src/vagrant/kubeadm_multus/examples/ubuntu.yaml deleted file mode 100644 index b01f903..0000000 --- a/src/vagrant/kubeadm_multus/examples/ubuntu.yaml +++ /dev/null @@ -1,32 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: ubuntu - labels: - app: ubuntu -spec: - type: NodePort - ports: - - port: 80 - protocol: TCP - name: http - selector: - app: ubuntu ---- -apiVersion: v1 -kind: ReplicationController -metadata: - name: ubuntu -spec: - replicas: 2 - template: - metadata: - labels: - app: ubuntu - spec: - containers: - - name: ubuntu - image: openretriever/ubuntu1604-ping - command: [ "/bin/bash", "-c", "sleep 30000" ] - ports: - - containerPort: 80 diff --git a/src/vagrant/kubeadm_multus/master_setup.sh b/src/vagrant/kubeadm_multus/master_setup.sh index eaf308a..c452ac8 100644 --- a/src/vagrant/kubeadm_multus/master_setup.sh +++ b/src/vagrant/kubeadm_multus/master_setup.sh @@ -2,12 +2,11 @@ set -ex -sudo timeout 600 kubeadm init --apiserver-advertise-address=192.168.1.10 --service-cidr=10.96.0.0/24 --pod-network-cidr=10.244.0.0/16 --token 8c5adc.1cec8dbf339093f0 +sudo timeout 600 kubeadm init --apiserver-advertise-address=192.168.1.10 --service-cidr=10.96.0.0/16 --pod-network-cidr=10.32.0.0/12 --token 8c5adc.1cec8dbf339093f0 sudo cp /etc/kubernetes/admin.conf $HOME/ sudo chown $(id -u):$(id -g) $HOME/admin.conf export KUBECONFIG=$HOME/admin.conf echo "export KUBECONFIG=$HOME/admin.conf" >> $HOME/.bash_profile kubectl apply -f http://git.io/weave-kube-1.6 -kubectl apply -f http://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml kubectl apply -f /vagrant/multus/kube_cni_multus.yml |