https://github.com/tmax-cloud/template-service-broker-go
https://github.com/tmax-cloud/template-service-broker-go
Last synced: 12 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/tmax-cloud/template-service-broker-go
- Owner: tmax-cloud
- Created: 2020-10-08T08:41:32.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-02-06T23:56:06.000Z (over 3 years ago)
- Last Synced: 2025-04-19T10:10:10.102Z (over 1 year ago)
- Language: Go
- Size: 8.28 MB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Template-Service-Broker
Template operator Service를 Service Catalog를 통해 외부 클러스터에 제공하기 위한 Template Service Broker.
Template operator Service를 제공하는 클러스터에 TSB / Template-operator를 설치 후,
Template operator Service를 사용하고자 하는 클러스터에 Service catalog (카탈로그 컨트롤러)를 설치 후 Provision된 Service를 binding 하여 사용함.

①: 카탈로그 컨트롤러
②: Template Service Broker에 해당
③: Template Service Broker로 생성된 Template Instance에 해당
## prerequisite Install
- Template-Operator
- CatalogController
## Install Cluster-Template-Service-Broker
> 사용자가 공통으로 사용하는 ClusterTemplate 서비스를 제공하기 위한 Broker 입니다.
1. Cluster-Template-Service-Broker를 설치하기 위한 네임스페이스를 생성 합니다.
- kubectl create namespace {YOUR_NAMESPACE}
2. 아래의 command로 Cluster-Template-Service-Broker를 생성 합니다.
- kubectl apply -f cluster_tsb.yaml -n {YOUR_NAMESPACE} ([파일](./deploy/cluster_tsb.yaml))
- 비고: 단, 파일 내부 ClusterRoleBinding의 namespace를 {YOUR_NAMESPACE}로 변경 해야 합니다.
- 비고: deployment 내부의 image 경로는 사용자 환경에 맞게 수정 해야 합니다.
---
## Install Namespaced-Template-Service-Broker
> 사용자가 직접 만든 Template 서비스를 제공하기 위한 Broker 입니다.
>> 비고: Template 생성한 네임스페이스에 Broker를 생성 해야 합니다.
1. Namespaced-Template-Service-Broker를 설치하기 위한 네임스페이스를 생성 합니다.
- kubectl create namespace {YOUR_NAMESPACE}
2. 아래의 command로 Namespaced-Template-Service-Broker를 생성 합니다.
- kubectl apply -f tsb.yaml -n {YOUR_TEMPLATE_NAMESPACE} ([파일](./deploy/tsb.yaml))
- 비고: deployment 내부의 image 경로는 사용자 환경에 맞게 수정 해야 합니다.
---
## Delete Cluster-Template-Service-Broker
1. Cluster-Template-Service-Broker를 삭제 합니다.
- kubectl delete -f cluster_tsb.yaml -n {YOUR_NAMESPACE} ([파일](./deploy/cluster_tsb.yaml))
- 비고: {YOUR_NAMESPACE}는 설치 시의 namespace 입니다.
2. Cluster-Template-Service-Broker를 설치한 namespace를 삭제 합니다.
- kubectl delete namespace {YOUR_NAMESPACE}
- 비고: {YOUR_NAMESPACE}는 설치 시의 namespace 입니다.
---
## Delete Namespaced-Template-Service-Broker
1. Namespaced-Template-Service-Broker를 삭제 합니다.
- kubectl delete -f tsb.yaml -n {YOUR_TEMPLATE_NAMESPACE} ([파일](./deploy/tsb.yaml))
- 비고: {YOUR_NAMESPACE}는 설치 시의 namespace 입니다.
2. Namespaced-Template-Service-Broker를 설치한 namespace를 삭제 합니다.
- kubectl delete namespace {YOUR_NAMESPACE}
- 비고: {YOUR_NAMESPACE}는 설치 시의 namespace 입니다.
---
## Test
```shell
$ curl -X GET http://{SERVER_IP}:{SERVER_PORT}/v2/catalog
```
## ServiceBroker 등록
1. Cluster-Service-Broker
```yaml
apiVersion: servicecatalog.k8s.io/v1beta1
kind: ClusterServiceBroker
metadata:
name: hyperbroker5
spec:
url: 'http://{SERVER_IP}:{SERVER_PORT}'
```
2. Namespace-Service-Broker
```yaml
apiVersion: servicecatalog.k8s.io/v1beta1
kind: ServiceBroker
metadata:
name: hyperbroker5
namespace: {YOUR_TEMPLATE_NAMESPACE}
spec:
url: 'http://{SERVER_IP}:{SERVER_PORT}'
```