Skip to content

Commit

Permalink
Update minikube start docs (kubernetes-retired#2365)
Browse files Browse the repository at this point in the history
* Update minikube start docs

* Clarify when to use the extra-config flag

* nit - the Minikube -> Minikube
  • Loading branch information
carolynvs authored and Jay Boyd committed Oct 31, 2018
1 parent 62b9605 commit dda0bb1
Showing 1 changed file with 32 additions and 20 deletions.
52 changes: 32 additions & 20 deletions docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand All @@ -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.

Expand All @@ -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:
Expand Down Expand Up @@ -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).
Expand All @@ -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.

Expand All @@ -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
Expand All @@ -135,23 +135,35 @@ 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.

Like in-cluster DNS, many installation methods should enable RBAC for you.

### Minikube

If you are using Minikube, start your cluster with this command:
When using Minikube v0.25 or older, you must run Minikube with RBAC explicitly
enabled:

```console
```
minikube start --extra-config=apiserver.Authorization.Mode=RBAC
```

When using Minikube v0.26+, run the following command:

```
minikube start
```

With Minikube v0.26+, do not specify `--extra-config`. The
flag has since been changed to `--extra-config=apiserver.authorization-mode` and
Minikube now uses RBAC by default. Specifying the older flag may cause the
start command to hang.

### `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:

Expand All @@ -166,7 +178,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
Expand All @@ -186,7 +198,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
Expand Down

0 comments on commit dda0bb1

Please sign in to comment.