|
1 | 1 | # Install Deis Workflow on Vagrant |
2 | 2 |
|
3 | | -{!install-workflow.md!} |
| 3 | +## Check Your Setup |
| 4 | + |
| 5 | +First check that the `helm` command is available and the version is v2.1.3 or newer. |
| 6 | + |
| 7 | +``` |
| 8 | +$ helm version |
| 9 | +Client: &version.Version{SemVer:"v2.1.3", GitCommit:"5cbc48fb305ca4bf68c26eb8d2a7eb363227e973", GitTreeState:"clean"} |
| 10 | +Server: &version.Version{SemVer:"v2.1.3", GitCommit:"5cbc48fb305ca4bf68c26eb8d2a7eb363227e973", GitTreeState:"clean"} |
| 11 | +``` |
| 12 | + |
| 13 | +Ensure the `kubectl` client is installed and can connect to your Kubernetes cluster. |
| 14 | + |
| 15 | +## Add the Deis Chart Repository |
| 16 | + |
| 17 | +The Deis Chart Repository contains everything needed to install Deis Workflow onto a Kubernetes cluster, with a single `helm install deis/workflow --namespace deis` command. |
| 18 | + |
| 19 | +Add this repository to Helm: |
| 20 | + |
| 21 | +``` |
| 22 | +$ helm repo add deis https://charts.deis.com/workflow |
| 23 | +``` |
| 24 | + |
| 25 | +## Install Deis Workflow |
| 26 | + |
| 27 | +Now that Helm is installed and the repository has been added, install Workflow by running: |
| 28 | + |
| 29 | +``` |
| 30 | +$ helm install deis/workflow --namespace deis --set router.host_port.enabled=true |
| 31 | +``` |
| 32 | + |
| 33 | +Helm will install a variety of Kubernetes resources in the `deis` namespace. |
| 34 | +Wait for the pods that Helm launched to be ready. Monitor their status by running: |
| 35 | + |
| 36 | +``` |
| 37 | +$ kubectl --namespace=deis get pods |
| 38 | +``` |
| 39 | + |
| 40 | +If it's preferred to have `kubectl` automatically update as the pod states change, run (type Ctrl-C to stop the watch): |
| 41 | + |
| 42 | +``` |
| 43 | +$ kubectl --namespace=deis get pods -w |
| 44 | +``` |
| 45 | + |
| 46 | +Depending on the order in which the Workflow components initialize, some pods may restart. This is common during the |
| 47 | +installation: if a component's dependencies are not yet available, that component will exit and Kubernetes will |
| 48 | +automatically restart it. |
| 49 | + |
| 50 | +Here, it can be seen that the controller, builder and registry all took a few loops before they were able to start: |
| 51 | + |
| 52 | +``` |
| 53 | +$ kubectl --namespace=deis get pods |
| 54 | +NAME READY STATUS RESTARTS AGE |
| 55 | +deis-builder-hy3xv 1/1 Running 5 5m |
| 56 | +deis-controller-g3cu8 1/1 Running 5 5m |
| 57 | +deis-database-rad1o 1/1 Running 0 5m |
| 58 | +deis-logger-fluentd-1v8uk 1/1 Running 0 5m |
| 59 | +deis-logger-fluentd-esm60 1/1 Running 0 5m |
| 60 | +deis-logger-sm8b3 1/1 Running 0 5m |
| 61 | +deis-minio-4ww3t 1/1 Running 0 5m |
| 62 | +deis-registry-asozo 1/1 Running 1 5m |
| 63 | +deis-router-k1ond 1/1 Running 0 5m |
| 64 | +deis-workflow-manager-68nu6 1/1 Running 0 5m |
| 65 | +``` |
| 66 | + |
| 67 | +Once all of the pods are in the `READY` state, Deis Workflow is up and running! |
| 68 | + |
| 69 | +Next, [configure dns](dns.md) so you can register your first user and deploy an application. |
0 commit comments