Rancher の Vagrant Quick Start を試す
Rancher Vagrant Quick Start とは
Rancher Server 用のVM1台と、kubernetes node用のVM数台をサクッと構築できるツールです。
こちらがその記事です。
gitのリポジトリはここですね。
動かしてみる
必須なのは
- Vagrant
- Virtualbox
- 4GB以上のメモリ
まずはVagrantからVirtualboxを動かすPluginを入れます。
$ vagrant plugin install vagrant-vboxmanage $ vagrant plugin install vagrant-vbguest
gitから適当なディレクトリにcloneします。
$ git clone https://github.com/rancher/quickstart Cloning into 'quickstart'... remote: Enumerating objects: 81, done. remote: Counting objects: 100% (81/81), done. remote: Compressing objects: 100% (57/57), done. remote: Total 747 (delta 51), reused 41 (delta 24), pack-reused 666 Receiving objects: 100% (747/747), 317.15 KiB | 648.00 KiB/s, done. Resolving deltas: 100% (432/432), done.
quickstart
ていうディレクトリができます。第1階層はこんな感じで、Vagrant以外にもAzure、AWS、GCPにも対応してそうです。
$ tree -L 1 quickstart/ quickstart/ ├── Makefile ├── README.md ├── aws ├── azure ├── azure-windows ├── cloud-common ├── do ├── gcp ├── rancher-common ├── test └── vagrant
今回はVagrantでやりたいので、vagrant ディレクトリの中を見てみましょう。
$ tree quickstart/vagrant/ quickstart/vagrant/ ├── README.md ├── Vagrantfile ├── config.yaml ├── scripts │ ├── configure_rancher_node.sh │ └── configure_rancher_server.sh ├── vagrant-provision-reboot-plugin.rb └── vagrant_rancheros_guest_plugin.rb
非常にシンプル。設定は config.yaml
にするみたいなので見てみましょう。
admin_password: admin version: latest ROS_version: 1.5.1 # Empty defaults to latest non-experimental available k8s_version: "" server: cpus: 1 memory: 1500 node: count: 1 cpus: 1 memory: 1500 ip: master: 172.22.101.100 server: 172.22.101.101 node: 172.22.101.111 linked_clones: true net: private_nic_type: 82545EM network_type: private_network
とりあえずこのままの状態で作成してみましょう
$ vagrant up
数分待ちます。
無事終了したので、statusを見てみましょう。
$ vagrant status Config: {"admin_password"=>"admin", "version"=>"latest", "ROS_version"=>"1.5.1", "k8s_version"=>"", "server"=>{"cpus"=>1, "memory"=>1500}, "node"=>{"count"=>1, "cpus"=>1, "memory"=>1500}, "ip"=>{"master"=>"172.22.101.100", "server"=>"172.22.101.101", "node"=>"172.22.101.111"}, "linked_clones"=>true, "net"=>{"private_nic_type"=>"82545EM", "network_type"=>"private_network"}} Current machine states: server-01 running (virtualbox) node-01 running (virtualbox) This environment represents multiple VMs. The VMs are all listed above with their current state. For more information about a specific VM, run `vagrant status NAME`.
kubernetesを管理するRancherが入っているであろう server-01
と、 多分マスタ兼ワーカな node-01
ができたようです。
https://172.22.101.101 にブラウザでアクセスしてみましょう。
おお!Rancherですよ奥さん!
Vagrantあげたら3分でRancher!
ログインしてみると、 quickstart
というクラスタができてます。
node-01 やはりマスタ兼ワーカみたいですね。RancherOS v1.5.1 というOSなのも確認できました。
まとめ
拍子抜けするくらい簡単にkubernetes+Rancher環境ができました。
ちなみにnodeの数を増やしたい場合は、config.yaml
の count
の値を変えて vagrant up
すれば勝手に増えて既存のクラスタに追加されます。
開発とか勉強ならminikubeとかkindでも全然いいと思うんですけど、どうしてもVM作成からやってみたいとか、 ローカルマシンを汚したくないみたいな人にはうってつけなのではと思います。