k8s-vagrant-multi-node: The magic behind this project


The GitHub repository can be found here: galexrt/k8s-vagrant-multi-node.
Intro
The Vagrant VirtualBox provider can't start VMs in parallel (--parallel flag for vagrant up).
It is possible to do so, but you need to "invest" in Vagrantfile and Makefile.
Solution
Use Makefile to run NODE=X vagrant up, where NODE=X is the "number" of the node you want to be started.
To tell Makefile to start these "many" targets you use a "hack" like this:
[...]
nodes: $(shell for i in $(shell seq 1 $(NODE_COUNT)); do echo "node-$$i"; done)
node-%:
VAGRANT_VAGRANTFILE=Vagrantfile_nodes NODE=$* vagrant up
[...]
Wanting to start 10 VMs in parallel using this method would be done like this: make -j 10 nodes NODE_COUNT=10.
Simple but powerful.
NOTE When you use this method with
Makefileyou can make a "dependency" tree usingMakefiletargets. Instead of relying on Vagrant.
For a full example Makefile and Vagrantfile, see the Makefile and Vagrantfile_nodes files in the galexrt/k8s-vagrant-multi-node project repository.
Have Fun!
GitLab + Kubernetes: Using GitLab CI's Kubernetes Cluster feature
This post shows possibilites on how to use GitLab in combination with Kubernetes to contionously deliver your applications with Container, using the new GitLab CI Kubernetes Cluster feature.
KubeCon Austin 2017 (Recap) Presentation
A recap presentation about the KubeCon Austin 2017.