From 9b5f7c1ebd632b040482013a42c662bd245802e1 Mon Sep 17 00:00:00 2001 From: Carolyn Van Slyck Date: Thu, 27 Sep 2018 15:40:10 -0500 Subject: [PATCH 1/3] Update minikube start docs --- docs/install.md | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/docs/install.md b/docs/install.md index 105eb66dbcb..4f2c8b6f1e1 100644 --- a/docs/install.md +++ b/docs/install.md @@ -7,10 +7,10 @@ Kubernetes 1.9 or higher clusters run the [API Aggregator](https://kubernetes.io/docs/concepts/api-extension/apiserver-aggregation/), which is a specialized proxy server that sits in front of the core API Server. -Service Catalog provides an API server that sits behind the API aggregator, +Service Catalog provides an API server that sits behind the API aggregator, so you'll be using `kubectl` as normal to interact with Service Catalog. -To learn more about API aggregation, please see the +To learn more about API aggregation, please see the [Kubernetes documentation](https://kubernetes.io/docs/concepts/api-extension/apiserver-aggregation/). The rest of this document details how to: @@ -22,16 +22,16 @@ The rest of this document details how to: ## Kubernetes Version -Service Catalog requires a Kubernetes cluster v1.9 or later. You'll also need a -[Kubernetes configuration file](https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/) -installed on your host. You need this file so you can use `kubectl` and -[`helm`](https://helm.sh) to communicate with the cluster. Many Kubernetes installation +Service Catalog requires a Kubernetes cluster v1.9 or later. You'll also need a +[Kubernetes configuration file](https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/) +installed on your host. You need this file so you can use `kubectl` and +[`helm`](https://helm.sh) to communicate with the cluster. Many Kubernetes installation tools and/or cloud providers will set this configuration file up for you. Please check with your tool or provider for details. ### `kubectl` Version -Most interaction with the service catalog system is achieved through the +Most interaction with the service catalog system is achieved through the `kubectl` command line interface. As with the cluster version, Service Catalog requires `kubectl` version 1.9 or newer. @@ -43,8 +43,8 @@ kubectl version Ensure that the server version and client versions are both `1.9` or above. -If you need to upgrade your client, follow the -[installation instructions](https://kubernetes.io/docs/tasks/kubectl/install/) +If you need to upgrade your client, follow the +[installation instructions](https://kubernetes.io/docs/tasks/kubectl/install/) to get a new `kubectl` binary. For example, run the following command to get an up-to-date binary on Mac OS: @@ -75,7 +75,7 @@ v2.7.0 or newer for that. See the steps below to install. ### If You Don't Have Helm Installed -If you don't have Helm installed already, +If you don't have Helm installed already, [download the `helm` CLI](https://github.com/kubernetes/helm#install) and then run `helm init` (this installs Tiller, the server-side component of Helm, into your Kubernetes cluster). @@ -85,16 +85,16 @@ Helm, into your Kubernetes cluster). If you already have Helm installed, run `helm version` and ensure that both the client and server versions are `v2.7.0` or above. -If they aren't, +If they aren't, [install a newer version of the `helm` CLI](https://github.com/kubernetes/helm#install) -and run `helm init --upgrade`. +and run `helm init --upgrade`. For more details on installation, see the [Helm installation instructions](https://github.com/kubernetes/helm/blob/master/docs/install.md). ### Tiller Permissions -Tiller is the in-cluster server component of Helm. By default, +Tiller is the in-cluster server component of Helm. By default, `helm init` installs the Tiller pod into the `kube-system` namespace, and configures Tiller to use the `default` service account. @@ -109,7 +109,7 @@ kubectl create clusterrolebinding tiller-cluster-admin \ ## Helm Repository Setup -Service Catalog is easily installed via a +Service Catalog is easily installed via a [Helm chart](https://github.com/kubernetes/helm/blob/master/docs/charts.md). This chart is located in a @@ -135,7 +135,7 @@ svc-cat/catalog x,y.z service-catalog API server and controller-manag... ## RBAC -Your Kubernetes cluster must have +Your Kubernetes cluster must have [RBAC](https://kubernetes.io/docs/admin/authorization/rbac/) enabled to use Service Catalog. @@ -143,15 +143,19 @@ Like in-cluster DNS, many installation methods should enable RBAC for you. ### Minikube -If you are using Minikube, start your cluster with this command: +If you are using Minikube (v0.25+), start your cluster with this command: ```console -minikube start --extra-config=apiserver.Authorization.Mode=RBAC +minikube start ----bootstrapper=kubeadm --extra-config=apiserver.authorization-mode=RBAC ``` +If you are using a more recent version of minikube, kubeadm with RBAC is the +default and you may not need to specify the other flags depending on your +minikube configuration. + ### `hack/local-cluster-up.sh` -If you are using the +If you are using the [`hack/local-up-cluster.sh`](https://github.com/kubernetes/kubernetes/blob/master/hack/local-up-cluster.sh) script in the Kubernetes core repository, start your cluster with this command: @@ -166,7 +170,7 @@ check with your provider's documentation for details. # Step 2 - Install Service Catalog -Now that your cluster and Helm are configured properly, installing +Now that your cluster and Helm are configured properly, installing Service Catalog is simple: ```console @@ -186,7 +190,7 @@ our canary (master) builds, and tags using the following prefixes: * Tagged releases: https://download.svcat.sh/cli/VERSION where `VERSION` is the release, for example `v0.1.20`. * Canary builds: https://download.svcat.sh/cli/canary -* Previous canary builds: https://download.svcat.sh/cli/VERSION-GITDESCRIBE +* Previous canary builds: https://download.svcat.sh/cli/VERSION-GITDESCRIBE where `GITDESCRIBE` is the result of calling `git describe --tags`, for example `v0.1.20-1-g203c8ad`. ## MacOS with Homebrew From 7f53ce6db5e98a0e8ee809003d34a24fe61c9f28 Mon Sep 17 00:00:00 2001 From: Carolyn Van Slyck Date: Fri, 28 Sep 2018 10:17:00 -0500 Subject: [PATCH 2/3] Clarify when to use the extra-config flag --- docs/install.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/docs/install.md b/docs/install.md index 4f2c8b6f1e1..23e27e60d93 100644 --- a/docs/install.md +++ b/docs/install.md @@ -143,15 +143,23 @@ Like in-cluster DNS, many installation methods should enable RBAC for you. ### Minikube -If you are using Minikube (v0.25+), start your cluster with this command: +When using Minikube v0.25 or older, you must run Minikube with RBAC explicitly +enabled: -```console -minikube start ----bootstrapper=kubeadm --extra-config=apiserver.authorization-mode=RBAC +``` +minikube start --extra-config=apiserver.Authorization.Mode=RBAC +``` + +When using Minikube v0.26+, run the following command: + +``` +minikube start ``` -If you are using a more recent version of minikube, kubeadm with RBAC is the -default and you may not need to specify the other flags depending on your -minikube configuration. +With Minikube v0.26+, do not specify `--extra-config`. The +flag has since been changed to `--extra-config=apiserver.authorization-mode` and +the Minikube now uses RBAC by default. Specifying the older flag may cause the +start command to hang. ### `hack/local-cluster-up.sh` From ffba55e87ac952bdd4d123a6a8116597a11e5382 Mon Sep 17 00:00:00 2001 From: Morgan Bauer Date: Fri, 28 Sep 2018 11:37:29 -0400 Subject: [PATCH 3/3] nit - the Minikube -> Minikube --- docs/install.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/install.md b/docs/install.md index 23e27e60d93..0cd3cf23934 100644 --- a/docs/install.md +++ b/docs/install.md @@ -158,7 +158,7 @@ minikube start With Minikube v0.26+, do not specify `--extra-config`. The flag has since been changed to `--extra-config=apiserver.authorization-mode` and -the Minikube now uses RBAC by default. Specifying the older flag may cause the +Minikube now uses RBAC by default. Specifying the older flag may cause the start command to hang. ### `hack/local-cluster-up.sh`