From 8abaeb83766c3dba4c7a85b168ad7867e82ccf6d Mon Sep 17 00:00:00 2001 From: kairen Date: Mon, 7 Aug 2017 12:03:32 +0800 Subject: [PATCH] Add vagrantfile to help create machines --- ...06\347\276\244\347\216\257\345\242\203.md" | 7 +++- ...275\262Flannel\347\275\221\347\273\234.md" | 4 +-- vagrant/Vagrantfile | 34 +++++++++++++++++++ 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 vagrant/Vagrantfile diff --git "a/01-\347\273\204\344\273\266\347\211\210\346\234\254\345\222\214\351\233\206\347\276\244\347\216\257\345\242\203.md" "b/01-\347\273\204\344\273\266\347\211\210\346\234\254\345\222\214\351\233\206\347\276\244\347\216\257\345\242\203.md" index 4b357190..6a353558 100644 --- "a/01-\347\273\204\344\273\266\347\211\210\346\234\254\345\222\214\351\233\206\347\276\244\347\216\257\345\242\203.md" +++ "b/01-\347\273\204\344\273\266\347\211\210\346\234\254\345\222\214\351\233\206\347\276\244\347\216\257\345\242\203.md" @@ -23,6 +23,11 @@ tags: kubernetes, environment + 10.66.3.86 本着测试的目的,etcd 集群、kubernetes master 集群、kubernetes node 均使用这三台机器。 +> 若有安装 Vagrant 与 Virtualbox,这三台机器可以用本着提供的 Vagrantfile 来建置: +``` bash +$ cd vagrant +$ vagrant up +``` ## 集群环境变量 @@ -68,4 +73,4 @@ CLUSTER_DNS_DOMAIN="cluster.local." ``` bash $ cp environment.sh /root/local/bin $ -``` \ No newline at end of file +``` diff --git "a/05-\351\203\250\347\275\262Flannel\347\275\221\347\273\234.md" "b/05-\351\203\250\347\275\262Flannel\347\275\221\347\273\234.md" index 4837d7fd..7a042d1e 100644 --- "a/05-\351\203\250\347\275\262Flannel\347\275\221\347\273\234.md" +++ "b/05-\351\203\250\347\275\262Flannel\347\275\221\347\273\234.md" @@ -119,7 +119,7 @@ EOF ``` + mk-docker-opts.sh 脚本将分配给 flanneld 的 Pod 子网网段信息写入到 `/run/flannel/docker` 文件中,后续 docker 启动时使用这个文件中参数值设置 docker0 网桥; -+ flanneld 使用系统缺省路由所在的接口和其它节点通信,对于有多个网络接口的机器(如,内网和公网),可以用 `-iface` 选项值指定通信接口(上面的 systemd unit 文件没指定这个选项); ++ flanneld 使用系统缺省路由所在的接口和其它节点通信,对于有多个网络接口的机器(如,内网和公网),可以用 `--iface` 选项值指定通信接口(上面的 systemd unit 文件没指定这个选项),如本着 Vagrant + Virtualbox,就要指定`--iface=enp0s8`; 完整 unit 见 [flanneld.service](https://github.com/opsnull/follow-me-install-kubernetes-cluster/blob/master/systemd/flanneld.service) @@ -196,4 +196,4 @@ $ ping 172.30.19.1 $ ping 172.30.20.2 $ ping 172.30.21.3 $ -``` \ No newline at end of file +``` diff --git a/vagrant/Vagrantfile b/vagrant/Vagrantfile new file mode 100644 index 00000000..8a9c6f16 --- /dev/null +++ b/vagrant/Vagrantfile @@ -0,0 +1,34 @@ +Vagrant.require_version ">= 1.7.0" + +$os_image = (ENV['OS_IMAGE'] || "ubuntu16").to_sym + +Vagrant.configure("2") do |config| + config.vm.provider "virtualbox" + + def set_vbox(vb, config) + vb.gui = false + vb.memory = 2048 + vb.cpus = 2 + + case $os_image + when :centos7 + config.vm.box = "bento/centos-7.3" + when :ubuntu16 + config.vm.box = "bento/ubuntu-16.04" + end + end + + ips = ["10.64.3.7", "10.64.3.8", "10.64.3.86"] + (0..2).each do |id| + mid = id + 1 + config.vm.define "kube-node#{mid}" do |node| + node.vm.hostname = "kube-node#{mid}" + node.vm.network :private_network, ip: "#{ips[id]}", auto_config: true + + node.vm.provider :virtualbox do |vb, override| + vb.name = "kube-node#{mid}" + set_vbox(vb, override) + end + end + end +end