Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Vagrant.require_version ">= 1.6.0"
- boxes = [
- {
- :name => "k8smaster",
- :interface => "enp3s0",
- :mac=> "5CA1AB1E0001",
- :eth1 => "192.168.8.10",
- :mem => "15375",
- :cpu => "1"
- },
- {
- :name => "k8snode1",
- :interface => "enp3s0",
- :mac=> "5CA1AB1E0002",
- :eth1 => "192.168.8.11",
- :mem => "15375",
- :cpu => "2"
- },
- {
- :name => "k8snode2",
- :interface => "enp3s0",
- :mac=> "5CA1AB1E0003",
- :eth1 => "192.168.8.12",
- :mem => "15375",
- :cpu => "2"
- },
- {
- :name => "k8snode3",
- :interface => "enp3s0",
- :mac=> "5CA1AB1E0004",
- :eth1 => "192.168.8.13",
- :mem => "15375",
- :cpu => "2"
- },
- ]
- Vagrant.configure(2) do |config|
- config.vm.box = "ubuntu/xenial64"
- #config.vm.box_version = "20171212.0.0"
- boxes.each do |opts|
- config.vm.define opts[:name] do |config|
- config.vm.hostname = opts[:name]
- #config.ssh.username = "ubuntu"
- #config.ssh.password = "379a8188cba8c5e64b9a429f"
- config.vm.provider "virtualbox" do |v|
- v.customize ["modifyvm", :id, "--memory", opts[:mem]]
- v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]
- v.name = opts[:name]
- end
- config.vm.network "public_network", bridge: opts[:interface], type: "dhcp" , mac: opts[:mac]
- end
- end
- boxes.each do |opts|
- config.vm.define opts[:name] do |config|
- config.ssh.forward_agent = false
- config.vm.provision "shell", privileged: false, inline: <<-SHELL
- sudo swapoff -a
- sudo sed -i -r '/swap/ s/^(.*)$/#\1/g' /etc/fstab
- sudo sed -i -r '/cdrom/ s/^(.*)$/#\1/g' /etc/apt/sources.list
- sudo apt-get -y update
- sudo apt-get -y install -y docker.io
- sudo apt install -y curl
- sudo apt-get -y update && sudo apt-get install -y apt-transport-https
- sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
- sudo echo "deb http://apt.kubernetes.io/ kubernetes-xenial main"> ~/kubernetes.list
- sudo mv ~/kubernetes.list /etc/apt/sources.list.d/kubernetes.list
- sudo apt-get update
- sudo apt-get install -y kubelet kubeadm kubectl
- #kubectl get nodes
- SHELL
- end
- end
- config.vm.define "k8smaster" do |k8smaster|
- k8smaster.ssh.forward_agent = false
- k8smaster.vm.provision "shell", privileged: false, inline: <<-SHELL
- echo "----------------------------- KUBERNETES MASTER -----------------------------"
- SHELL
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement