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.
Use Helm to install Service Catalog on your Kubernetes cluster. Up to date information on this process can be found at the kubernetes-incubator/service-catalog repo.
hack/local-up-cluster.sh, ensure that the KUBE_ENABLE_CLUSTER_DNS environment variable is set, then run the install script.helm init to install Tiller, the server-side component of Helm.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.comCheck to make sure that it installed successfully by executing the following command:
helm search service-catalogIf the installation was successful, the command should output the following:
NAME VERSION DESCRIPTION
svc-cat/catalog 0.0.1 service-catalog API server and controller-manag...
Your Kubernetes cluster must have RBAC enabled, which requires your Tiller Pod(s) to have cluster-admin access.
If you are using Minikube, run the minikube start command with the following flag:
minikube start --extra-config=apiserver.Authorization.Mode=RBACIf 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
By default, 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--tiller-namespaceor--service-accountflags when runninghelm init, the--serviceaccountflag in the following command needs to be adjusted to reference the appropriate namespace and ServiceAccount name.
Configure Tiller to have cluster-admin access:
kubectl create clusterrolebinding tiller-cluster-admin \
--clusterrole=cluster-admin \
--serviceaccount=kube-system:defaultInstall Service Catalog from the root of the Helm repository using the following command:
helm install svc-cat/catalog \
--name catalog --namespace catalog