From 41eb91681145ec97d74dbc80025eb7fbcd925ffb Mon Sep 17 00:00:00 2001 From: Jerome Petazzoni Date: Sat, 6 Apr 2019 12:23:40 -0500 Subject: [PATCH] Add kubebins command (install Kubernetes binaries but do not setup cluster) --- prepare-vms/lib/commands.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/prepare-vms/lib/commands.sh b/prepare-vms/lib/commands.sh index 27b7dbdd..c416526a 100644 --- a/prepare-vms/lib/commands.sh +++ b/prepare-vms/lib/commands.sh @@ -103,6 +103,37 @@ _cmd_deploy() { info "$0 cards $TAG" } +_cmd kubebins "Install Kubernetes and CNI binaries but don't start anything" +_cmd_kubebins() { + TAG=$1 + need_tag + + pssh --timeout 300 " + set -e + cd /usr/local/bin + if ! [ -x etcd ]; then + curl -L https://github.com/etcd-io/etcd/releases/download/v3.3.10/etcd-v3.3.10-linux-amd64.tar.gz \ + | sudo tar --strip-components=1 --wildcards -zx '*/etcd' '*/etcdctl' + fi + if ! [ -x hyperkube ]; then + curl -L https://dl.k8s.io/v1.14.0/kubernetes-server-linux-amd64.tar.gz \ + | sudo tar --strip-components=3 -zx kubernetes/server/bin/hyperkube + fi + if ! [ -x kubelet ]; then + for BINARY in kubectl kube-apiserver kube-scheduler kube-controller-manager kubelet kube-proxy; + do + sudo ln -s hyperkube \$BINARY + done + fi + sudo mkdir -p /opt/cni/bin + cd /opt/cni/bin + if ! [ -x bridge ]; then + curl -L https://github.com/containernetworking/plugins/releases/download/v0.7.5/cni-plugins-amd64-v0.7.5.tgz \ + | sudo tar -zx + fi + " +} + _cmd kube "Setup kubernetes clusters with kubeadm (must be run AFTER deploy)" _cmd_kube() { TAG=$1