Install Service Catalog using Helm
Service Catalog is an extension API that enables applications running in Kubernetes clusters to easily use external managed software offerings, such as a datastore service offered by a cloud provider.
It provides a way to list, provision, and bind with external Managed ServicesA software offering maintained by a third-party provider. from Service BrokersAn endpoint for a set of Managed Services offered and maintained by a third-party. without needing detailed knowledge about how those services are created or managed.
- Before you begin
- Add the service-catalog Helm repository
- Enable RBAC
- Install Service Catalog in your Kubernetes cluster
- What's next
Before you begin
- Understand the key concepts of Service Catalog.
- Service Catalog requires a Kubernetes cluster running version 1.7 or higher.
- You must have a Kubernetes cluster with cluster DNS enabled.
- If you are using a cloud-based Kubernetes cluster or MinikubeA tool for running Kubernetes locally. , you may already have cluster DNS enabled.
- If you are using
hack/local-up-cluster.sh, ensure that the
KUBE_ENABLE_CLUSTER_DNSenvironment variable is set, then run the install script.
- Install and setup kubectl v1.7 or higher. Make sure it is configured to connect to the Kubernetes cluster.
- Install Helm v2.7.0 or newer.
- Follow the Helm install instructions.
- If you already have an appropriate version of Helm installed, execute
helm initto install Tiller, the server-side component of Helm.
Add the service-catalog Helm repository
Once Helm is installed, add the service-catalog Helm repository to your local machine by executing the following command:
helm repo add svc-cat https://svc-catalog-charts.storage.googleapis.com
Check to make sure that it installed successfully by executing the following command:
helm search service-catalog
If the installation was successful, the command should output the following:
NAME CHART VERSION APP VERSION DESCRIPTION svc-cat/catalog 0.2.1 service-catalog API server and controller-manager helm chart svc-cat/catalog-v0.2 0.2.2 service-catalog API server and controller-manager helm chart
Your Kubernetes cluster must have RBAC enabled, which requires your Tiller Pod(s) to have
When using Minikube v0.25 or older, you must run Minikube with RBAC explicitly enabled:
minikube start --extra-config=apiserver.Authorization.Mode=RBAC
When using Minikube v0.26+, run:
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.
If you are using
hack/local-up-cluster.sh, set the
AUTHORIZATION_MODE environment variable with the following values:
AUTHORIZATION_MODE=Node,RBAC hack/local-up-cluster.sh -O
helm init installs the Tiller Pod into the
kube-system namespace, with Tiller configured to use the
default service account.
Note: If you used the
--service-accountflags when running
helm init, the
--serviceaccountflag in the following command needs to be adjusted to reference the appropriate namespace and ServiceAccount name.
Configure Tiller to have
kubectl create clusterrolebinding tiller-cluster-admin \ --clusterrole=cluster-admin \ --serviceaccount=kube-system:default
Install Service Catalog in your Kubernetes cluster
Install Service Catalog from the root of the Helm repository using the following command:
helm install svc-cat/catalog \ --name catalog --namespace catalog
Was this page helpful?
Thanks for the feedback. If you have a specific, answerable question about how to use Kubernetes, ask it on Stack Overflow. Open an issue in the GitHub repo if you want to report a problem or suggest an improvement.