K-PaaS

  • github
    K-PaaS github
    Millions of developers use Github to build personal projects, support businesses, and collaborate with open source technologies.
  • K-PaaS incubator
    K-PaaS Incubator
    We are helping companies utilize K-PaaS.
  • cloudfoundry
    Cloud Foundry
    Cloud Foundry gives businesses the speed, simplicity, and control they need to quickly and easily develop and deploy applications.
  • youtube
    Youtube
    We support open cloud platform K-PaaS related videos.
닫기
Application Platform - Services
This is the configuration diagram of the application platform of the open cloud platform K-PaaS.
Shows the service and service broker API architecture.

Service

1.어플리케이션 플랫폼:Cloud Controller에서 set VCAP_SERVICES를 통해 App A(App environment VCAP_SERVICES:-inst0 : url, credentials에 연결 후 binding하여 Service의 service back-end(service Instance 0)에 연결
					
						2.어플리케이션 플랫폼:Cloud Controller에서 set VCAP_SERVICES를 통해 App B(App environment VCAP_SERVICES : -inst0 : url, credentials, inst-0 : url,credentials)에 연결 후 binding하여 Service의 service back-end(service Instance 0과 service Instance 1)에 연결
											
						3.어플리케이션 플랫폼:Cloud Controller에서 Service broker API(catalog, Provision, Updateprovision, Bind, Unbind, Deprovision)로 연결 그 다음 Service(Service broker)로 연결 후 service back-end(service Instance 0과 service Instance 1)에 연결

Functions and roles of the components

K-PaaS service API defines the protocols (catalog, provision, unprovision, updateprovision, bind, unbind) between Cloud Controller and the service broker.
The broker is implemented as a RESTful API in the form of an HTTP (or HTTPS) endpoints URI. One or more services can be provided by a single broker, and can scale horizontally with load balancing.
Also, service instances in multiple execution environments can be supported by a single broker using different URL prefixes and credentials.
The service is used in the execution environment by implementing the cloud controller client API called the service broker API.
The service API is an independent version of the cloud controllerAPI.
This makes external applications available on the platform (database, message queue, rest endpoint, etc).

Service Broker API Architecture

1.목록 중 cf create-service-broker를 router로 2.Cloud Controller로 보낸 후 3.Service API(Fetch catalog(GET/v2/catalog))로 4.MySQL Broker(previously Gateway)와 상호작용, 
						1.목록 중 cf marketplace는 router없음, 
						1.목록 중 cf create-service는 2.Cloud Controller로 보낸 후 3.Service API(Provision Instance(PUT/v2/service Instance/:id))로, 
						1.목록 중 cf update-service는 2.Cloud Controller로 보낸 후 3.Service API(Update Provision Plan(PATCH/v2/service Instance/:id))로, 
						1.목록 중 cf unbind-service는 2.Cloud Controller로 보낸 후 3.Service API(Create Binding(PUT/v2/service Instance/:instance id/service_bindings/:id))로, 
						1.목록 중 cf unbind-service는 2.Cloud Controller로 보낸 후 3.Service API(Remove Binding(DELETE/v2/service Instance/:instance id/service_bindings/:id))로, 
						1.목록 중 cf delete service는 2.Cloud Controller로 보낸 후 3.Service API(Remove Instance(DELETE/v2/service Instance/:id))로 4.MySQL Broker(previously Gateway)와 상호작용

Open Source List

Open Source List
Service Group Service Name Opensource Name License Remark
DBMS Mysql kpaas-mysql GPLv2 Self-Development
kpaas-mysql-java-broker Apache 2.0 Self-Development
NOSQL MongoDB kpaas-mongodb-shard AGPL-3.0 Self-Development
mongodb_broker Apache 2.0 Self-Development
Redis kpaas-on-demand-redis-release BSD Self-Development
kpaas-on-demand-broker Apache 2.0 Self-Development
Stroage Glusterfs kpaas-glusterfs GPLv2 Self-Development
kpaas-glusterfs-broker Apache 2.0 Self-Development
MessageQueue RabbitMQ kpaas-rabbitmq MPL 1.1 Self-Development
kpaas-rmq-broker Apache 2.0 Self-Development
Applicatoin Gateway Service Application Gateway Service kpaas-api-gateway-service-release Apache 2.0 development
api-gateway-service-broker Apache 2.0 development
APM Pinpoint kpaas-pinpoint-release Apache 2.0 development
pinpoint-service-brokere Apache 2.0 development
WEB-IDE eclipse-che kpaas-webide-release Apache 2.0 development
webide-broker Apache 2.0 Self-Development
Container as a service CaaS kpaas-container-service-projects-release Apache 2.0 Self-Development
kpaas-container-service Apache 2.0 Self-Development
container-service-broker Apache 2.0 Self-Development
Integrated Development Tool Deployment Pipeline kpaas-delivery-pipeline-release Apache 2.0 Self-Development
delivery-pipeline-service-broker Apache 2.0 Self-Development
Configuration Management kpaas-sourcecontrol-release Apache 2.0 Self-Development
sourcecontrol-broker Apache 2.0 Self-Development
Lifecycle Management kpaas-app-lifecycle-service-release Apache 2.0 Self-Development
app-lifecycle-service-broker Apache 2.0 Self-Development