update kata container deployment 17/52017/5
authorGuo Ruijing <ruijing.guo@intel.com>
Mon, 12 Feb 2018 08:48:10 +0000 (03:48 -0500)
committerGuo Ruijing <ruijing.guo@intel.com>
Mon, 12 Feb 2018 14:29:09 +0000 (09:29 -0500)
    1. fix kata container deployment failure issue
    2. use package instead of source build
    3. remove docker installation
    4. upgrade to k8s 1.9

Change-Id: Ie7698fb0e6a3a459d42b17d998b21f2dcf3a7854
Signed-off-by: Guo Ruijing <ruijing.guo@intel.com>
src/vagrant/kubeadm_kata/host_setup.sh
src/vagrant/kubeadm_kata/kata_setup.sh
src/vagrant/kubeadm_kata/master_setup.sh
src/vagrant/kubeadm_kata/worker_setup.sh

index f9e1a76..d2af951 100644 (file)
@@ -25,19 +25,14 @@ cat << EOF | sudo tee /etc/hosts
 192.168.1.23 worker3
 EOF
 
-sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
-sudo apt-key adv -k 58118E89F3A912897C070ADBF76221572C52609D
-cat << EOF | sudo tee /etc/apt/sources.list.d/docker.list
-deb [arch=amd64] https://apt.dockerproject.org/repo ubuntu-xenial main
-EOF
-
 curl -s http://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
 cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
 deb http://apt.kubernetes.io/ kubernetes-xenial main
 EOF
 sudo apt-get update
-sudo apt-get install -y --allow-downgrades docker-engine=1.12.6-0~ubuntu-xenial kubelet=1.7.0-00 kubeadm=1.7.0-00 kubectl=1.7.0-00 kubernetes-cni=0.5.1-00
+sudo apt-get install -y kubelet kubeadm kubectl kubernetes-cni
 
+sudo swapoff -a
 sudo systemctl stop kubelet
 sudo rm -rf /var/lib/kubelet
 sudo systemctl daemon-reload
index 9682f3a..c14d844 100644 (file)
 
 set -ex
 
-wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
-sudo tar -xvf go1.8.3.linux-amd64.tar.gz -C /usr/local/
-mkdir -p $HOME/go/src
-export GOPATH=$HOME/go
-export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
-
-go get github.com/clearcontainers/tests
-cd $GOPATH/src/github.com/clearcontainers/tests/.ci
-
-echo "Install dependencies"
-bash -f ./setup_env_ubuntu.sh
-
-echo "Install shim"
-bash -f ./install_shim.sh
-
-echo "Install proxy"
-bash -f ./install_proxy.sh
-
-echo "Install runtime"
-bash -f ./install_runtime.sh
-
-echo "Install CRI-O"
-bash -f ./install_crio.sh
+cat << EOF | sudo tee /etc/apt/sources.list.d/cc-oci-runtime.list
+deb http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/xUbuntu_16.04/ /
+EOF
+curl -fsSL http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/xUbuntu_16.04/Release.key | sudo apt-key add -
+sudo apt-get update
+sudo apt-get install -y cc-oci-runtime
+
+echo | sudo add-apt-repository ppa:projectatomic/ppa
+sudo apt-get update
+sudo apt-get install -y cri-o
+sudo sed -i 's,runtime_untrusted_workload.*,runtime_untrusted_workload = "/usr/bin/cc-runtime",' /etc/crio/crio.conf
+sudo sed -i 's,cgroup_manager.*,cgroup_manager = "cgroupfs",' /etc/crio/crio.conf
+sudo sed -i 's,default_workload_trust.*,default_workload_trust = "untrusted",' /etc/crio/crio.conf
+sudo sed -i 's,^registries.*,registries = [ "docker.io",' /etc/crio/crio.conf
+sudo systemctl enable crio
+sudo systemctl daemon-reload
+sudo systemctl restart crio
 
 sudo systemctl stop kubelet
 echo "Modify kubelet systemd configuration to use CRI-O"
 k8s_systemd_file="/etc/systemd/system/kubelet.service.d/10-kubeadm.conf"
-sudo sed -i '/KUBELET_AUTHZ_ARGS/a Environment="KUBELET_EXTRA_ARGS=--container-runtime=remote --container-runtime-endpoint=/var/run/crio.sock --runtime-request-timeout=30m"' "$k8s_systemd_file"
+sudo sed -i '/KUBELET_AUTHZ_ARGS/a Environment="KUBELET_EXTRA_ARGS=--container-runtime=remote --container-runtime-endpoint=/var/run/crio/crio.sock --runtime-request-timeout=30m"' "$k8s_systemd_file"
 sudo systemctl daemon-reload
 sudo systemctl start kubelet
index 3748f01..41dadf0 100644 (file)
@@ -17,7 +17,7 @@
 
 set -ex
 
-sudo 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 kubeadm init --skip-preflight-checks --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
 mkdir ~/.kube
 sudo cp /etc/kubernetes/admin.conf .kube/config
 sudo chown $(id -u):$(id -g) ~/.kube/config
index a6e4bf4..6145793 100644 (file)
@@ -16,7 +16,9 @@
 #
 
 set -ex
-sudo kubeadm join --token 8c5adc.1cec8dbf339093f0 192.168.1.10:6443 || true
+sudo kubeadm join --discovery-token-unsafe-skip-ca-verification \
+    --token 8c5adc.1cec8dbf339093f0 192.168.1.10:6443 \
+    --ignore-preflight-errors=SystemVerification,FileContent--proc-sys-net-bridge-bridge-nf-call-iptables
 
 sudo apt-get install -y putty-tools
 mkdir ~/.kube