From 7e08800876067a316fe181d14749938ae07a872f Mon Sep 17 00:00:00 2001 From: Oleksandr Didenko Date: Tue, 14 Jun 2016 18:21:56 +0200 Subject: [PATCH] Initial commit --- Vagrantfile | 56 +++++++++++++++++++++++++++++++++++++++++++++ bootstrap-master.sh | 12 ++++++++++ bootstrap-node.sh | 7 ++++++ ssh/authorized_keys | 1 + ssh/id_rsa | 27 ++++++++++++++++++++++ ssh/id_rsa.pub | 1 + 6 files changed, 104 insertions(+) create mode 100644 Vagrantfile create mode 100644 bootstrap-master.sh create mode 100644 bootstrap-node.sh create mode 100644 ssh/authorized_keys create mode 100644 ssh/id_rsa create mode 100644 ssh/id_rsa.pub diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 000000000..8103ec970 --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,56 @@ +# Controlled by puppet +# -*- mode: ruby -*- +# vi: set ft=ruby : + +ENV["VAGRANT_DEFAULT_PROVIDER"] = "libvirt" + +$num_instances = 7 +$vm_memory = 2048 +$vm_cpus = 2 + +$user = "adidenko" +$public_subnet = "10.210.0" +$private_subnet = "10.210.1" +$mgmt_cidr = "10.210.2.0/24" + +$instance_name_prefix = "#{$user}-k8s" +# Boxes with libvirt provider support: +#$box = "yk0/ubuntu-xenial" #900M +#$box = "centos/7" +$box = "nrclark/xenial64-minimal-libvirt" + +Vagrant.configure("2") do |config| + (1..$num_instances).each do |i| + if i == 1 + bootstrap_script = "bootstrap-master.sh" + else + bootstrap_script = "bootstrap-node.sh" + end + config.ssh.insert_key = false + vm_name = "%s-%02d" % [$instance_name_prefix, i] + config.vm.define vm_name do |test_vm| + test_vm.vm.box = $box + test_vm.vm.hostname = vm_name + test_vm.vm.provider :libvirt do |domain| + domain.uri = "qemu+unix:///system" + domain.memory = $vm_memory + domain.cpus = $vm_cpus + domain.driver = "kvm" + domain.host = "localhost" + domain.connect_via_ssh = false + domain.username = $user + domain.storage_pool_name = "default" + domain.nic_model_type = "e1000" + domain.management_network_name = "#{$instance_name_prefix}-mgmt-net" + domain.management_network_address = $mgmt_cidr + end + + test_vm.vm.network :private_network, :ip => "#{$private_subnet}.#{i+10}" + + # Provisioning + config.vm.provision "file", source: "ssh", destination: "~/ssh" + config.vm.provision :shell, :path => bootstrap_script + + end + end +end diff --git a/bootstrap-master.sh b/bootstrap-master.sh new file mode 100644 index 000000000..0416f9e70 --- /dev/null +++ b/bootstrap-master.sh @@ -0,0 +1,12 @@ +#!/bin/bash +echo master > /var/tmp/role + +sudo apt-get --yes update +sudo apt-get --yes upgrade +sudo apt-get --yes install ansible git screen +sudo git clone https://github.com/kubespray/kargo /root/kargo + +sudo rm -rf /root/.ssh +sudo mv ~vagrant/ssh /root/.ssh +sudo chown -R root: /root/.ssh + diff --git a/bootstrap-node.sh b/bootstrap-node.sh new file mode 100644 index 000000000..350a2aa43 --- /dev/null +++ b/bootstrap-node.sh @@ -0,0 +1,7 @@ +#!/bin/bash +echo node > /var/tmp/role + +sudo rm -rf /root/.ssh +sudo mv ~vagrant/ssh /root/.ssh +sudo chown -R root: /root/.ssh + diff --git a/ssh/authorized_keys b/ssh/authorized_keys new file mode 100644 index 000000000..2204b0d67 --- /dev/null +++ b/ssh/authorized_keys @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMw+fFXL37UxmicLHQfH+bW8ok/cw+Qd0mWw7NifIw21HtpvMMhE2zzWdJxewjmFG9xZ78F1xYYoJTamnggtpAi8vn+yP2tAlqC9PrW02vNgK3AkhFF2EtdL8anWl4m5YMGeGbN8ykVZeznbflsBiJ0MOgI0RUvukQf6K6I9zKof/tEzntKJO/aL54wC93e2ej2JOE3tMt1ABocOAGv2hJM1nYu2hUcoR9fmSLDhOTpRQY5SLqozZ52GYbx+T180GW6FaKUjcC0DTFFQE8K+98n4oL2mbWpHjDM1u2d3wcrBryDqXjBHat7bv+QW1DisauQzvxwMkwFVa1Jb08XEdX diff --git a/ssh/id_rsa b/ssh/id_rsa new file mode 100644 index 000000000..5e07dff11 --- /dev/null +++ b/ssh/id_rsa @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAzMPnxVy9+1MZonCx0Hx/m1vKJP3MPkHdJlsOzYnyMNtR7abz +DIRNs81nScXsI5hRvcWe/BdcWGKCU2pp4ILaQIvL5/sj9rQJagvT61tNrzYCtwJI +RRdhLXS/Gp1peJuWDBnhmzfMpFWXs5235bAYidDDoCNEVL7pEH+iuiPcyqH/7RM5 +7SiTv2i+eMAvd3tno9iThN7TLdQAaHDgBr9oSTNZ2LtoVHKEfX5kiw4Tk6UUGOUi +6qM2edhmG8fk9fNBluhWilI3AtA0xRUBPCvvfJ+KC9pm1qR4wzNbtnd8HKwa8g6l +4wR2re27/kFtQ4rGrkM78cDJMBVWtSW9PFxHVwIDAQABAoIBADFEEUeTAMKvQ8Op +iZ631ZvzgbdUuQdhoWvRDMa3IeZPXm7ndCLW0jsoeGlvjVkjFMer/Ix6smUxjlmz +iLXTxd8xw2WVLxn0Ry+UmPBPj2lQfWa6zdiRv3fIVxJ4PSAfjwJqV7WYv0vqrA0z +LUO+EqlV6TtmQNKC/GBT1Tsj1cOKuHRucoazMDDENgWN2qCLRUw7ZXMv9IGb6Z58 +3h3LpfM08gjQrO15n7yVdNzdYzUh6lhm0mvtSkm49/7K09ApmWLGC8n26OeuZrNt +DwW+ZQ578LZR2A8PtTpTrDN3GRWCoEz5HuJTMMtBW1meWYSzURKvFKkYIMMhRVtn +CCHKT8ECgYEA5Uv0i4BqFte42sz69jzccxYg2+n6HWkeezZJmB1YsRrgcwYDPcGb +TuxSfSwyf4PuFZmlQDpDKPez4828CthAipd5TXvJgnTJmV7xATORlE0eDAZ989Yb +1JL6y+ExApLz1cQG6/pzCU7iZBEOSNsnnCvAWkS0TmGWl7M40UsqRkUCgYEA5JyX +fWANeZf/RIkHVMpOVTHg/ieZYffgVFIhGgUJqIXRc+mqLPEHkjP1+o46hZp6Fluk +f82ah3wdd6iHdWhsSv5nZUYUiwPXWxO7y0FnZX887UtTpLuRyx7NTVjLJEJ7x7gS +tCM93JOctJ1sf+0Msy30aQL0KVEf7GQLxsg+DusCgYAluvniep76Y0TnvBMPsbQU +u+9sQHQHouSBIc26WhneCq4kPzkJUHJd6kUok707floO89ldWDj05M2VDqWCo1L7 +ezFarqPZ8524vwapS/MIlCf9kpPnK7QopobeRY/q/INjCX6aFfwX7AMUtDnFg0ph +SFG+iM+ilixRigwvZE7wgQKBgQCOSJvMj3yzghOBP1vNvQAV7C5hYJoJLHJ1aIxr +mlkRhv/+iZ69y+Hvb+GXaPApeSSlR7JRTNDxpCDe+YgdXbmQz1fg40Yj42ckq1qF +PZaxyAhOlERh0dACwI/8pNgCIFLT0c/qR8jXwROWIiiGUi5GUsK8nPcDxBb/VKEz +vitJswKBgFYTR/e/Y0B5HTJAz+4YSnBKXn5EBo6AFEVHLglY09kpPbSMpxb/olGX +3fxd7aNckNxcD+WYq2jTycKwWzG/z5X/de3FccjigNjwRaudbCobj47I9UMAe9KL +sawurq+OhVVo90HGkyh7rzcdYi80ARZU5fRikQGtJAfsMZFxEJqU +-----END RSA PRIVATE KEY----- diff --git a/ssh/id_rsa.pub b/ssh/id_rsa.pub new file mode 100644 index 000000000..2204b0d67 --- /dev/null +++ b/ssh/id_rsa.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMw+fFXL37UxmicLHQfH+bW8ok/cw+Qd0mWw7NifIw21HtpvMMhE2zzWdJxewjmFG9xZ78F1xYYoJTamnggtpAi8vn+yP2tAlqC9PrW02vNgK3AkhFF2EtdL8anWl4m5YMGeGbN8ykVZeznbflsBiJ0MOgI0RUvukQf6K6I9zKof/tEzntKJO/aL54wC93e2ej2JOE3tMt1ABocOAGv2hJM1nYu2hUcoR9fmSLDhOTpRQY5SLqozZ52GYbx+T180GW6FaKUjcC0DTFFQE8K+98n4oL2mbWpHjDM1u2d3wcrBryDqXjBHat7bv+QW1DisauQzvxwMkwFVa1Jb08XEdX