summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKubernetes Prow Robot <k8s-ci-robot@users.noreply.github.com>2020-02-12 09:46:51 -0800
committerGitHub <noreply@github.com>2020-02-12 09:46:51 -0800
commit934bec62902bcef49d7233c6c4052b8f61e249de (patch)
tree79d099f7d184b651b6223c6f019a86ac223ab01e
parentcf4af5865a6652362ce7c46499f663947147a8d0 (diff)
parent0ed6e0747184a1954189b75cec919532ab1793ff (diff)
Merge pull request #4497 from mrbobbytables/remove-vagrant-docs
Remove deprecated vagrant development instructions.
-rw-r--r--contributors/devel/vagrant.md433
1 files changed, 0 insertions, 433 deletions
diff --git a/contributors/devel/vagrant.md b/contributors/devel/vagrant.md
deleted file mode 100644
index 221a3f7a..00000000
--- a/contributors/devel/vagrant.md
+++ /dev/null
@@ -1,433 +0,0 @@
-## Getting started with Vagrant
-
-Running Kubernetes with Vagrant is an easy way to run/test/develop on your
-local machine in an environment using the same setup procedures when running on
-GCE or AWS cloud providers.
-
-Note : Support for vagrant has been removed in 1.10. Check
-[#58118](https://github.com/kubernetes/kubernetes/pull/58118) and
-[#64561](https://github.com/kubernetes/kubernetes/issues/64561#issuecomment-394366611).
-You might run into issues with kubernetes versions >= 1.10
-
-### Prerequisites
-
-1. Install latest version >= 1.8.1 of vagrant from
-http://www.vagrantup.com/downloads.html
-
-2. Install a virtual machine host. Examples:
- 1. [Virtual Box](https://www.virtualbox.org/wiki/Downloads)
- 2. [VMWare Fusion](https://www.vmware.com/products/fusion/) plus
-[Vagrant VMWare Fusion provider](https://www.vagrantup.com/vmware)
- 3. [Parallels Desktop](https://www.parallels.com/products/desktop/)
-plus
-[Vagrant Parallels provider](https://parallels.github.io/vagrant-parallels/)
-
-3. Get or build a
-[binary release](../../../docs/getting-started-guides/binary_release.md)
-
-### Setup
-
-Setting up a cluster is as simple as running:
-
-```shell
-export KUBERNETES_PROVIDER=vagrant
-curl -sS https://get.k8s.io | bash
-```
-
-Alternatively, you can download
-[Kubernetes release](https://github.com/kubernetes/kubernetes/releases) and
-extract the archive. To start your local cluster, open a shell and run:
-
-```shell
-cd kubernetes
-
-export KUBERNETES_PROVIDER=vagrant
-./cluster/kube-up.sh
-```
-
-The `KUBERNETES_PROVIDER` environment variable tells all of the various cluster
-management scripts which variant to use. If you forget to set this, the
-assumption is you are running on Google Compute Engine.
-
-By default, the Vagrant setup will create a single master VM (called
-kubernetes-master) and one node (called kubernetes-node-1). Each VM will take 1
-GB, so make sure you have at least 2GB to 4GB of free memory (plus appropriate
-free disk space).
-
-Vagrant will provision each machine in the cluster with all the necessary
-components to run Kubernetes. The initial setup can take a few minutes to
-complete on each machine.
-
-If you installed more than one Vagrant provider, Kubernetes will usually pick
-the appropriate one. However, you can override which one Kubernetes will use by
-setting the
-[`VAGRANT_DEFAULT_PROVIDER`](https://docs.vagrantup.com/v2/providers/default.html)
-environment variable:
-
-```shell
-export VAGRANT_DEFAULT_PROVIDER=parallels
-export KUBERNETES_PROVIDER=vagrant
-./cluster/kube-up.sh
-```
-
-By default, each VM in the cluster is running Fedora.
-
-To access the master or any node:
-
-```shell
-vagrant ssh master
-vagrant ssh node-1
-```
-
-If you are running more than one node, you can access the others by:
-
-```shell
-vagrant ssh node-2
-vagrant ssh node-3
-```
-
-Each node in the cluster installs the docker daemon and the kubelet.
-
-The master node instantiates the Kubernetes master components as pods on the
-machine.
-
-To view the service status and/or logs on the kubernetes-master:
-
-```shell
-[vagrant@kubernetes-master ~] $ vagrant ssh master
-[vagrant@kubernetes-master ~] $ sudo su
-
-[root@kubernetes-master ~] $ systemctl status kubelet
-[root@kubernetes-master ~] $ journalctl -ru kubelet
-
-[root@kubernetes-master ~] $ systemctl status docker
-[root@kubernetes-master ~] $ journalctl -ru docker
-
-[root@kubernetes-master ~] $ tail -f /var/log/kube-apiserver.log
-[root@kubernetes-master ~] $ tail -f /var/log/kube-controller-manager.log
-[root@kubernetes-master ~] $ tail -f /var/log/kube-scheduler.log
-```
-
-To view the services on any of the nodes:
-
-```shell
-[vagrant@kubernetes-master ~] $ vagrant ssh node-1
-[vagrant@kubernetes-master ~] $ sudo su
-
-[root@kubernetes-master ~] $ systemctl status kubelet
-[root@kubernetes-master ~] $ journalctl -ru kubelet
-
-[root@kubernetes-master ~] $ systemctl status docker
-[root@kubernetes-master ~] $ journalctl -ru docker
-```
-
-### Interacting with your Kubernetes cluster with Vagrant.
-
-With your Kubernetes cluster up, you can manage the nodes in your cluster with
-the regular Vagrant commands.
-
-To push updates to new Kubernetes code after making source changes:
-
-```shell
-./cluster/kube-push.sh
-```
-
-To stop and then restart the cluster:
-
-```shell
-vagrant halt
-./cluster/kube-up.sh
-```
-
-To destroy the cluster:
-
-```shell
-vagrant destroy
-```
-
-Once your Vagrant machines are up and provisioned, the first thing to do is to
-check that you can use the `kubectl.sh` script.
-
-You may need to build the binaries first, you can do this with `make`
-
-```shell
-$ ./cluster/kubectl.sh get nodes
-```
-
-### Authenticating with your master
-
-When using the vagrant provider in Kubernetes, the `cluster/kubectl.sh` script
-will cache your credentials in a `~/.kubernetes_vagrant_auth` file so you will
-not be prompted for them in the future.
-
-```shell
-cat ~/.kubernetes_vagrant_auth
-```
-
-```json
-{ "User": "vagrant",
- "Password": "vagrant",
- "CAFile": "/home/k8s_user/.kubernetes.vagrant.ca.crt",
- "CertFile": "/home/k8s_user/.kubecfg.vagrant.crt",
- "KeyFile": "/home/k8s_user/.kubecfg.vagrant.key"
-}
-```
-
-You should now be set to use the `cluster/kubectl.sh` script. For example try to
-list the nodes that you have started with:
-
-```shell
-./cluster/kubectl.sh get nodes
-```
-
-### Running containers
-
-You can use `cluster/kube-*.sh` commands to interact with your VM machines:
-
-```shell
-$ ./cluster/kubectl.sh get pods
-NAME READY STATUS RESTARTS AGE
-
-$ ./cluster/kubectl.sh get services
-NAME CLUSTER_IP EXTERNAL_IP PORT(S) SELECTOR AGE
-
-$ ./cluster/kubectl.sh get deployments
-CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS
-```
-
-To Start a container running nginx with a Deployment and three replicas:
-
-```shell
-$ ./cluster/kubectl.sh run my-nginx --image=nginx --replicas=3 --port=80
-```
-
-When listing the pods, you will see that three containers have been started and
-are in Waiting state:
-
-```shell
-$ ./cluster/kubectl.sh get pods
-NAME READY STATUS RESTARTS AGE
-my-nginx-3800858182-4e6pe 0/1 ContainerCreating 0 3s
-my-nginx-3800858182-8ko0s 1/1 Running 0 3s
-my-nginx-3800858182-seu3u 0/1 ContainerCreating 0 3s
-```
-
-When the provisioning is complete:
-
-```shell
-$ ./cluster/kubectl.sh get pods
-NAME READY STATUS RESTARTS AGE
-my-nginx-3800858182-4e6pe 1/1 Running 0 40s
-my-nginx-3800858182-8ko0s 1/1 Running 0 40s
-my-nginx-3800858182-seu3u 1/1 Running 0 40s
-
-$ ./cluster/kubectl.sh get services
-NAME CLUSTER_IP EXTERNAL_IP PORT(S) SELECTOR AGE
-
-$ ./cluster/kubectl.sh get deployments
-NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
-my-nginx 3 3 3 3 1m
-```
-
-We did not start any Services, hence there are none listed. But we see three
-replicas displayed properly. Check the
-[guestbook](https://git.k8s.io/examples/guestbook)
-application to learn how to create a Service. You can already play with scaling
-the replicas with:
-
-```shell
-$ ./cluster/kubectl.sh scale deployments my-nginx --replicas=2
-$ ./cluster/kubectl.sh get pods
-NAME READY STATUS RESTARTS AGE
-my-nginx-3800858182-4e6pe 1/1 Running 0 2m
-my-nginx-3800858182-8ko0s 1/1 Running 0 2m
-```
-
-Congratulations!
-
-### Testing
-
-The following will run all of the end-to-end testing scenarios assuming you set
-your environment:
-
-```shell
-NUM_NODES=3 go run hack/e2e.go -v --build --up --test --down
-```
-
-### Troubleshooting
-
-#### I keep downloading the same (large) box all the time!
-
-By default the Vagrantfile will download the box from S3. You can change this
-(and cache the box locally) by providing a name and an alternate URL when
-calling `kube-up.sh`
-
-```shell
-export KUBERNETES_BOX_NAME=choose_your_own_name_for_your_kuber_box
-export KUBERNETES_BOX_URL=path_of_your_kuber_box
-export KUBERNETES_PROVIDER=vagrant
-./cluster/kube-up.sh
-```
-
-#### I am getting timeouts when trying to curl the master from my host!
-
-During provision of the cluster, you may see the following message:
-
-```shell
-Validating node-1
-.............
-Waiting for each node to be registered with cloud provider
-error: couldn't read version from server: Get https://10.245.1.2/api: dial tcp 10.245.1.2:443: i/o timeout
-```
-
-Some users have reported VPNs may prevent traffic from being routed to the host
-machine into the virtual machine network.
-
-To debug, first verify that the master is binding to the proper IP address:
-
-```
-$ vagrant ssh master
-$ ifconfig | grep eth1 -C 2
-eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.245.1.2 netmask
- 255.255.255.0 broadcast 10.245.1.255
-```
-
-Then verify that your host machine has a network connection to a bridge that can
-serve that address:
-
-```shell
-$ ifconfig | grep 10.245.1 -C 2
-
-vboxnet5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
- inet 10.245.1.1 netmask 255.255.255.0 broadcast 10.245.1.255
- inet6 fe80::800:27ff:fe00:5 prefixlen 64 scopeid 0x20<link>
- ether 0a:00:27:00:00:05 txqueuelen 1000 (Ethernet)
-```
-
-If you do not see a response on your host machine, you will most likely need to
-connect your host to the virtual network created by the virtualization provider.
-
-If you do see a network, but are still unable to ping the machine, check if your
-VPN is blocking the request.
-
-#### I just created the cluster, but I am getting authorization errors!
-
-You probably have an incorrect ~/.kubernetes_vagrant_auth file for the cluster
-you are attempting to contact.
-
-```shell
-rm ~/.kubernetes_vagrant_auth
-```
-
-After using kubectl.sh make sure that the correct credentials are set:
-
-```shell
-cat ~/.kubernetes_vagrant_auth
-```
-
-```json
-{
- "User": "vagrant",
- "Password": "vagrant"
-}
-```
-
-#### I just created the cluster, but I do not see my container running!
-
-If this is your first time creating the cluster, the kubelet on each node
-schedules a number of docker pull requests to fetch prerequisite images. This
-can take some time and as a result may delay your initial pod getting
-provisioned.
-
-#### I have Vagrant up but the nodes won't validate!
-
-Log on to one of the nodes (`vagrant ssh node-1`) and inspect the salt node
-log (`sudo cat /var/log/salt/node`).
-
-#### I want to change the number of nodes!
-
-You can control the number of nodes that are instantiated via the environment
-variable `NUM_NODES` on your host machine. If you plan to work with replicas, we
-strongly encourage you to work with enough nodes to satisfy your largest
-intended replica size. If you do not plan to work with replicas, you can save
-some system resources by running with a single node. You do this, by setting
-`NUM_NODES` to 1 like so:
-
-```shell
-export NUM_NODES=1
-```
-
-#### I want my VMs to have more memory!
-
-You can control the memory allotted to virtual machines with the
-`KUBERNETES_MEMORY` environment variable. Just set it to the number of megabytes
-you would like the machines to have. For example:
-
-```shell
-export KUBERNETES_MEMORY=2048
-```
-
-If you need more granular control, you can set the amount of memory for the
-master and nodes independently. For example:
-
-```shell
-export KUBERNETES_MASTER_MEMORY=1536
-export KUBERNETES_NODE_MEMORY=2048
-```
-
-#### I want to set proxy settings for my Kubernetes cluster boot strapping!
-
-If you are behind a proxy, you need to install the Vagrant proxy plugin and set
-the proxy settings:
-
-```shell
-vagrant plugin install vagrant-proxyconf
-export KUBERNETES_HTTP_PROXY=http://username:password@proxyaddr:proxyport
-export KUBERNETES_HTTPS_PROXY=https://username:password@proxyaddr:proxyport
-```
-
-You can also specify addresses that bypass the proxy, for example:
-
-```shell
-export KUBERNETES_NO_PROXY=127.0.0.1
-```
-
-If you are using sudo to make Kubernetes build, use the `-E` flag to pass in the
-environment variables. For example, if running `make quick-release`, use:
-
-```shell
-sudo -E make quick-release
-```
-
-#### I have repository access errors during VM provisioning!
-
-Sometimes VM provisioning may fail with errors that look like this:
-
-```
-Timeout was reached for https://mirrors.fedoraproject.org/metalink?repo=fedora-23&arch=x86_64 [Connection timed out after 120002 milliseconds]
-```
-
-You may use a custom Fedora repository URL to fix this:
-
-```shell
-export CUSTOM_FEDORA_REPOSITORY_URL=https://download.fedoraproject.org/pub/fedora/
-```
-
-#### I ran vagrant suspend and nothing works!
-
-`vagrant suspend` seems to mess up the network. It's not supported at this time.
-
-#### I want vagrant to sync folders via nfs!
-
-You can ensure that vagrant uses nfs to sync folders with virtual machines by
-setting the KUBERNETES_VAGRANT_USE_NFS environment variable to 'true'. nfs is
-faster than virtualbox or vmware's 'shared folders' and does not require guest
-additions. See the
-[vagrant docs](http://docs.vagrantup.com/v2/synced-folders/nfs.html) for details
-on configuring nfs on the host. This setting will have no effect on the libvirt
-provider, which uses nfs by default. For example:
-
-```shell
-export KUBERNETES_VAGRANT_USE_NFS=true
-```
-