Created
July 19, 2017 09:05
-
-
Save jonathan-kosgei/c7375ba62e26b5bd7e18fb0bbb983878 to your computer and use it in GitHub Desktop.
Kubernetes Vagrant Setup
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$script = <<SCRIPT | |
# Install docker | |
curl -fsSL get.docker.com | sh | |
# Install kubectl | |
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl | |
chmod +x ./kubectl | |
sudo mv ./kubectl /usr/local/bin/kubectl | |
# Install kubeadm | |
cat <<EOF > /etc/yum.repos.d/kubernetes.repo | |
[kubernetes] | |
name=Kubernetes | |
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 | |
enabled=1 | |
gpgcheck=1 | |
repo_gpgcheck=1 | |
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg | |
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg | |
EOF | |
setenforce 0 | |
yum install -y kubelet kubeadm | |
systemctl enable kubelet && systemctl start kubelet | |
SCRIPT | |
Vagrant.configure("2") do |config| | |
config.vm.provision "shell", inline: $script | |
config.vm.box = "centos/7" | |
config.vm.define "master" | |
config.vm.define "client1" | |
config.vm.define "client2" | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment