使用 Helm 安装 Service Catalog
Service Catalog is 服务目录(Service Catalog)是一种扩展 API,它能让 Kubernetes 集群中运行的应用易于使用外部托管的的软件服务,例如云供应商提供的数据仓库服务。
服务目录可以检索、供应、和绑定由 服务代理人(Service Brokers)由第三方提供并维护的一组托管服务的访问端点。 提供的外部 托管服务由第三方供应商负责维护的一种软件产品。 ,而无需知道那些服务具体是怎样创建和托管的。
使用 Helm 在 Kubernetes 集群上安装 Service Catalog。 要获取有关此过程的最新信息,请浏览 kubernetes-incubator/service-catalog 仓库。
准备开始
- 理解 Service Catalog 的关键概念。
- Service Catalog 需要 Kubernetes 集群版本在 1.7 或更高版本。
- 您必须启用 Kubernetes 集群的 DNS 功能。
- 如果使用基于云的 Kubernetes 集群或 MinikubeMinikube 是用来在本地运行 Kubernetes 的一种工具。 ,则可能已经启用了集群 DNS。
- 如果您正在使用
hack/local-up-cluster.sh
,请确保设置了KUBE_ENABLE_CLUSTER_DNS
环境变量,然后运行安装脚本。
- 安装和设置 v1.7 或更高版本的 kubectl,确保将其配置为连接到 Kubernetes 集群。
- 安装 v2.7.0 或更高版本的 Helm。
- 遵照 Helm 安装说明。
- 如果已经安装了适当版本的 Helm,请执行
helm init
来安装 Helm 的服务器端组件 Tiller。
添加 service-catalog Helm 仓库
安装 Helm 后,通过执行以下命令将 service-catalog Helm 存储库添加到本地计算机:
helm repo add svc-cat https://svc-catalog-charts.storage.googleapis.com
通过执行以下命令进行检查,以确保安装成功:
helm search service-catalog
如果安装成功,该命令应输出以下内容:
NAME VERSION DESCRIPTION
svc-cat/catalog 0.0.1 service-catalog API server and controller-manag...
启用 RBAC
您的 Kubernetes 集群必须启用 RBAC,这需要您的 Tiller Pod 具有 cluster-admin
访问权限。
如果您使用的是 Minikube,请使用以下参数运行 minikube start
命令:
minikube start --extra-config=apiserver.Authorization.Mode=RBAC
如果您使用 hack/local-up-cluster.sh
,请使用以下值设置 AUTHORIZATION_MODE
环境变量:
AUTHORIZATION_MODE=Node,RBAC hack/local-up-cluster.sh -O
默认情况下,helm init
将 Tiller Pod 安装到 kube-system
命名空间,Tiller 配置为使用 default
服务帐户。
注意:如果在运行
helm init
时使用了--tiller-namespace
或--service-account
参数,则需要调整以下命令中的--serviceaccount
参数以引用相应的 namespace 和 ServiceAccount 名称。
配置 Tiller 以获得 cluster-admin
访问权限:
kubectl create clusterrolebinding tiller-cluster-admin \
--clusterrole=cluster-admin \
--serviceaccount=kube-system:default
在 Kubernetes 集群中安装 Service Catalog
使用以下命令从 Helm 存储库的根目录安装 Service Catalog:
helm install svc-cat/catalog \
--name catalog --namespace catalog
接下来
- 查看示例服务代理。
- 探索 kubernetes-incubator/service-catalog 项目。
反馈
此页是否对您有帮助?
感谢反馈。如果您有一个关于如何使用 Kubernetes 的特定的、需要答案的问题,可以访问 Stack Overflow. 在 GitHub 仓库上登记新的问题 报告问题 或者 提出改进建议.