When using rsync file synchronization with Vagrant, the whole kubernetes
repo directory is copied over into the virtual machine. This includes
the _output directory, which tends to be gigabytes in size, while often
just _output/release-tars (a few hundred MB) would be enough.
Furthermore, if the some of the directories contains a recursive
symlink, rsync with the default args will keep descending and copying
files endlessly until filling up the VM disk.
Making the rsync args and excluded dirs/files customizable via
KUBERNETES_VAGRANT_RSYNC_ARGS and KUBERNETES_VAGRANT_RSYNC_EXLUDE,
respectively, allows the developer to prevent the issues mentioned
above. A new KUBERNETES_VAGRANT_USE_RSYNC variable is also added to
control whether Vagrant should force usage of rsync as the file
synchronization backend. The args/exclude customizations only take
effect when KUBERNETES_VAGRANT_USE_RSYNC is 'true'.
With current default number (1024) i am not able to spawn all required for
e2e tests kube-system containers. I had problems with heapster replicas, and
it was obvious from kube-scheduler logs that it is in Pending exaclty because of
insufficient memory.
To reproduce:
1. KUBERNETES_PROVIDER=vagrant ./cluster/kube-up.sh
2. Run any e2e test
Change-Id: I963347e86c7129607f07ce1cea8cc0b536b09b72
* Using Fedora 21 as the base box
* Discover the active network interfaces in the box to avoid hardcoding
them in configuration.
* Use the master IP for the certificate.
nfs synced folders do not require guest additions and are faster than
vmware and virtualbox's shared folders. This change configures the
default /vagrant synced folder to use nfs if the
KUBERNETES_VAGRANT_USE_NFS environment variable is set to 'true'.
Corrects error in 19224deb04 on linux cpus with hyperthreading (we need to pass the results of `cat /proc/cpuinfo | grep 'core id'` through uniq before counting the lines).
Also checks that we found more than 0 lines (cores) and defaults to the result of nproc in case we didn't (necessary for processors without the core id field, so far only observed on a raspberry pi).
In Vagrantfile replace hack that assumed hyper threading was enabled on
the host and divided ncpu by 2 with methods of getting the actual
hardware core count.
* Have a single config file that mirrors other cluster providers
* Warn users not to use 'vagrant up' directly
* Allow 'extra' parameters to the docker daemon. Fixes#2685
* Renumbers things so that they are more sane. Master/minions are 10.245.1.x, container subnets are 10.246.x.1/24, portal is 10.247.0.0/16