SlideShare ist ein Scribd-Unternehmen logo
1 von 91
BUILT FOR THE SPEED OF BUSINESS
Pivotal CF Architecture 
Key Terminology, Architecture 
Pivotal Korea, 2014 
© Copyright 2013 Pivotal. All rights reserved. 2
목차 
• PCF Key Concept 
• PCF Components 
• Elastic Runtime Architecture 
• PCF Differentiator 
© Copyright 2013 Pivotal. All rights reserved. 3
PCF 용어집 
• Applications 
• Buildpacks 
• Manifests 
• Organizations 
• Spaces 
• Users and Roles 
• Domains 
• Routes 
• Services 
© Copyright 2013 Pivotal. All rights reserved. 4
PCF Key Concepts 
Application, Buildpack, Manifest 
© Copyright 2013 Pivotal. All rights reserved. 5
Cloud Foundry Platform as a Service 
• Application : Deploy의 단위 
– VM,middleware,Container,Process의 추상화 
– Data as a Service 
– Provision하고 배포하는 bottleneck을 제거 
– PaaS는 Application을 효과적으로 배포하기 위해 존재 
– 개발자는 app에만 집중하고 runtime환경이나 service,Infra는 
신경쓰지 않도록 설계 
© Copyright 2013 Pivotal. All rights reserved. 6
VM 중심 배포에서 Application 중심 배포로 
© Copyright 2013 Pivotal. All rights reserved. 7
IaaS: VM 이 배포의 단위 
Scale Out: VM의 신규 생성 혹은 Template을 통한 생성 
© Copyright 2013 Pivotal. All rights reserved. 8
PaaS: Application 중심의 배포 
Scale Out: VM pool 내에 Container 를 생성 
© Copyright 2013 Pivotal. All rights reserved. 9
Cloud 환경상에서 Application 의 Deploy 
Cloud Foundry is Development Agostic 
 다양한 Application Source Code , Framework 
Java/Spring, Ruby/Rails, Java Script for Node.js … 
 Cloud Foundry 상에서는 모두 수행이 가능 
 How? 
© Copyright 2013 Pivotal. All rights reserved. 10
Server Configuration 
개발자에게 필요한 개발환경 제공 = 운영비용, Time To Market  
 OS 
 Software Runtime(Java,Ruby,Python…) 
 Container(Tomcat for JAVA, Apache HTTPD for PHP..) 
 Framework(APM tool..) 
 Application Binary 
 자동화된 Script의 필요 
© Copyright 2013 Pivotal. All rights reserved. 11
Buildpack 
CF상에서 수행될 수 있는 개발환경 생성을 위한 자동화된 Script 
 Runtime, Container, Framework 과 
개발 Application 을 Droplet 에 올리기 위한 
script의 조합 
 Droplet은 Warden Container상에서 구동. 
 Warden Container 는 DEA상에서 구동. 
© Copyright 2013 Pivotal. All rights reserved. 12
Buildpack “builds” the “droplet” to run an 
app. 
= Application Staging 
 Buildpack은 특정 application을 수행하기 위한 droplet을 
어떻게 조합하는지를 정의 
© Copyright 2013 Pivotal. All rights reserved. 13
Buildpack 구조 
일반적으로 ruby script 로 작성되며 3개 파트로 구성 . 
 Detect : 해당 buildpack이 적용되어야 하는지 결정 
 Compile: application의 필요에 따라 code 와 runtime, 
framework, plugin등과 같이 compile 함 
 Release: assign된 DEA 들에 application들을 deploy 
© Copyright 2013 Pivotal. All rights reserved. 14
Deploying CF 
© Copyright 2013 Pivotal. All rights reserved. 15
Staging 
 Buildpack은 application을 위한 machine image를 준비함 
© Copyright 2013 Pivotal. All rights reserved. 16
가용한 Buildpack 
 Buildpack은 CF에 설치되거나, push시 외부에서 load 됨 
 PCF/CF Community 에서 제공된 buildpack을 사용, 혹은 
custom buildpack을 작성해서 사용 
© Copyright 2013 Pivotal. All rights reserved. 17
External Buildpack 
Heroku 및 기타 PaaS의 buildpack과 호환됨. 
© Copyright 2013 Pivotal. All rights reserved. 18
Buildpack 
Runtimes Containers Frameworks 
© Copyright 2013 Pivotal. All rights reserved. 19
Manifest 
 Application 배포의 “Blueprint” 
 배포의 옵션 정보들을 기입 
 Yaml형식으로 작성되며 
App Push시 참조됨 
© Copyright 2013 Pivotal. All rights reserved. 20
PCF Key Concepts 
Organization, Space, User, Role 
© Copyright 2013 Pivotal. All rights reserved. 21
Organization 
• 최상위 관리 단위 
• 일반적으로 회사,부서,App Suite, 
큰 프로젝 단위로 생성 
• 1개 이상의 Domain 정의 가능 
• Quota 지정으로 resource 통제 
© Copyright 2013 Pivotal. All rights reserved. 22
Space 
• Organization은 여러개의 space를 생성 
• 예: 개발, staging, QA, 운영계 
• 유저가 추가적으로 space 생성 
• Application은 Space 내에서 수행 및 Scale In-Out 가능 
© Copyright 2013 Pivotal. All rights reserved. 23
User and Role 
• User = Organization의 멤버 
• Role = Domain과 Space에 대한 접근 권한 제어 
어떤 유저가 Route 관리 
Application Deploy 
add/bind/remove service 권한이 있는지 관리 
© Copyright 2013 Pivotal. All rights reserved. 24
Role 의 종류 
• Organization Role 
– Organization Manager : user 초대/관리, plan 선택/변경, 사용량 조정 
– Organization Auditor : 모든 org/space 접근 정보/셋팅,report에 대한 조회 
• Application Space Role 
– Space Manager : user 초대/관리, 해당 space에 대한 기능 관리 
– Space Developer : application,service 생성/삭제/관리, report,log에 대한 조회 
권한 
– Space Auditor : space에 대한 셋팅정보,report,log에 대한 조회권한 
© Copyright 2013 Pivotal. All rights reserved. 25
PCF Key Concepts 
Domain, Route 
© Copyright 2013 Pivotal. All rights reserved. 26
Domain 
• Deploy된 Application 은 URL을 가짐 
• Cloud Foundry Instance 는 Default Domain을 
가짐(pcf.open-paas.com) 
• Custom Domain을 추가해서 CF에서 관리 가능 
• Subdomain: Application은 Unique한 Sub-domain을 가짐 
– Application URL: subdomain.domain 
– 예: http://myapp.pcf.open-paas.com 
© Copyright 2013 Pivotal. All rights reserved. 27
Route 
• Application의 접근 방법 
– 모든 space의 각 Application은 Unique한 Route 를 가짐 
– CF는 load-balance를 사용하여 incoming request를 알맞은 
application으로 route 시킴 
• 동일한 Application이 여러 space에 mapping 가능 
– 예: dev space route: http://myapptest.pcf.open-paas.com 
– prod space route : http://myapp.pcf.open-paas.com 
© Copyright 2013 Pivotal. All rights reserved. 28
PCF Key Concepts 
Service 
© Copyright 2013 Pivotal. All rights reserved. 29
Cloud Foundry Service 
What is Service? 
 외부의 application dependency 혹은 component 
 Database 
 Message Queue 
 Monitoring App 
 Hadoop Instance 
 Security 
 일반적인 Service Endpoint(Web Service) 
 Other dependent applications 
© Copyright 2013 Pivotal. All rights reserved. 30
Cloud Foundry Service 
Feature & Functionality 
 Provide Functionality to your applications 
 Application의 외부에 존재 – add-on provisioned aloneside 
an application 
 여러 application에서 공유되어 사용 가능(DB, Message 
Queue) 
 Application 에 binding – Service Broker 를 이용 
 Application에 환경변수를 이용하여 접속정보를 
제공(VCAP_SERVICES) 
© Copyright 2013 Pivotal. All rights reserved. 31
Clound Foundry Service 
Why use Service? 
 Application은 deploy의 단위 
모든 application은 self-contained이여야 하며, 나머지 모두는 PaaS에서 
제공되어야 함 : Service 
 Service in a PaaS 
과금이 될 수 있는 단위(IaaS에서 H/W 자원과는 상반됨) 
© Copyright 2013 Pivotal. All rights reserved. 32
Service Type 
 Marketplace Service 
– PCF설치후 곧장 이용할 수 있는 서비스들 
– Marketplace catalog에서 이용 
– PaaS에 instance 가 생성됨 
 User Defined Service 
– 외부의 서비스를 Cloud Foundry에서 이용 
– Connection 정보를 저장하여 연결시 사용 
 Custom Built Service 
© Copyright 2013 Pivotal. All rights reserved. 33
Marketplace Service 
 Easily available via Marketplace 
 Allow you to sign-up, 
select plans, etc 
 Once bound to application, 
can be used easily 
 2014년 4월기준 provider list 
© Copyright 2013 Pivotal. All rights reserved. 34
Pivotal CF Service 
Standard out-of-box service : 계속 추가되고 있음 
© Copyright 2013 Pivotal. All rights reserved. 35
PCF Components 
Ops Manager, Elastic Runtime.. 
© Copyright 2013 Pivotal. All rights reserved. 36
Operations Manager 
 업계 최초의 IaaS와 통합된 PaaS 운영 
관리 UI 
 Ops Manager=the core orchestrating 
component. 
 VM들의 생성, deployment, 기타 PCF 
software와 service들의 lifecycle 관리. 
 PaaS 셋업과 운영 툴 제공 
 Application Downtime 없이 Live Update 제공 
 Ops Manager Web Console 
© Copyright 2013 Pivotal. All rights reserved. 37
Elastic Runtime 
 Scalable Runtime Environment 
 Cloud Foundry itself 
 Application 의 Runtime 환경관리 
 Buildpack 
 Component 별 Sizing /환경 설정 
 Ops Manager를 사용해 IaaS 
관리통제 
© Copyright 2013 Pivotal. All rights reserved. 38
Pivotal Services 
 PCF 는 PHD, RabbitMQ, MySQL Dev 등의 Data Service 를 
제공 
 서비스들은 Message Broker를 통해 Application에 연결되고 
Binding 
© Copyright 2013 Pivotal. All rights reserved. 39
Pivotal CF Architecture 
Ops Manager UI 
Ops Manager Director 
Operations Manager 
Service Broker 
Service Nodes 
Service 
Service Broker 
Service Nodes 
Service 
HA Proxy LB 
Dynamic Router 
Health Manager 
Login Server 
DEA Pool 
Apps 
Messaging (NATS) 
App Log Aggregator 
Cloud Controller 
UAA 
Apps 
Metrics Collection 
Elastic Runtime 
© Copyright 2013 Pivotal. All rights reserved. 40
Architectural 
Components 
© Copyright 2013 Pivotal. All rights reserved. 41
Cloud Foundry 
Architecture 
• The Cloud Foundry platform 
Architecture = 대형 분산 서비스 처리 
아키텍쳐의 표준 
• Cloud Foundry Bosh 를 사용하여 
기반 IaaS 를 관리 및 통제함(e.g., 
VMware, Amazon AWS, OpenStack) 
Underlying 
Infrastructure 
BOSH 
© Copyright 2013 Pivotal. All rights reserved. 42
BOSH 
How It Works: 
• BOSH = 대형 분산 시스템을 
대상으로 한 배포, lifecycle 관리하기 
위한 공개 S/W 
• PCF는 BOSH를 사용하여 Application 
Provisioning 및 infra 제어 등을 
수행함. 
• Cloud Foundry 관리및 배포를 위해 
개발되었으나 일반적인 분산 
시스템에서도 사용 가능 
Responsible For: 
• VM 생성과 관리 
• Continuous and predictive updates 
with minimal downtime 
• BOSH 는 CPI (Cloud Provider 
Interface) 를 사용하여 vSphere, 
vCloud Director, Amazon Web 
Services EC2, OpenStack 등과 같은 
IaaS provider 상에 service를 deploy 
할 수 있음 . 
• Pivotal CF Operations Manager가 
Bosh를 사용함. 직접적으로 access할 
필요가 없음 
© Copyright 2013 Pivotal. All rights reserved. 43
BOSH : 분산시스템 관리 
 BOSH를 통해 Application을 Provisioning 하고 인프라는 제어하는 등의 다양한 
기능을 수행. 구성요소 설명 
CLI BOSH와의 Interaction을 위한 Command Line Interface 
Director VM 생성, Application Deployment, 기타 Lifercycle을 
관리하는 BOSH의 core orchestrating component 
CPI 개별 IaaS를 추상화 시킨 표준적 BOSH Engine 
Blobstore BOSH가 수행하는 Release, Job, Package의 Content가 
저장되는 공간 
Agent Director로부터 명령을 받아 개별 작업을 수행하는, 모든 
VM에 설치된 Agent 
Stemcell 내장된 Agent를 포함한 VM Template 
Health Monitor Agent를 통해 개별 VM의 상태를 체크하고, 이상 발견 시 
조치하는 요소 
NATS Lightweight Pub/Sub, Distributed Queuing Messaging 
System 
Operations 
Staff 
DB Blobstore 
NATS 
Director 
Worker Health Monitor 
Inner 
Shell 
CLI 
Agents 
Outer 
Shell 
CPI 
© Copyright 2013 Pivotal. All rights reserved. 44
BOSH Modules 
© Copyright 2013 Pivotal. All rights reserved. 45
PCF Architecture 의 특징 
 Loosely Coupled 된 독립적인 
System Component들로 구성 
Idempotent Asynchronous 
 표준적 Communication Model, 
쉽게 측정되고 진단 가능 
 Blocking을 유발하지 않는 Event- 
Driven Interaction 모델 
 특정 Operation에 의한 전체 시스템 
성능저하 방지(Consistent) 
 자동 Restart가 가능한 내부 
Watchdog에 의한 지속적 Health 
Checks 
 No single point of failure 
 모든 명령과 제어가 Message 
기반으로 동작 
 언어 독립적 Communication 
 Application Load/Traffic에 대해 
신속한 수평적 확장성 보장 
Scalable Secure 
 공유 인프라에 대한 Resource 
Pooling 
 Application은 분리된 안전한 영역의 
Container에서 실행 
 개별 사용자/그룹에 다른 레벨의 
Security Role을 제공하는 
Organizations & Spaces (CF Command) 
Self 
Healing 
Message 
Based 
© Copyright 2013 Pivotal. All rights reserved. 46
Pivotal CF Elastic Runtime Architecture 
© Copyright 2013 Pivotal. All rights reserved. 47
HA Proxy 
Access 
App 
myapp.<mycfdomain.com> 
DNS 
HA Proxy 
Resolve app and system domain 
names to HA Proxy IP 
Router Router 
Software single-instance LB, for 
non-production purposes 
DEA DEA DEA 
Router 
Pivotal CF Elastic 
Runtime (PaaS) 
© Copyright 2013 Pivotal. All rights reserved. 48
External Load Balancer(HA Proxy 대신 사용 가능) 
Access 
App 
External LB, usually domain names to LB IP 
Load Balancer 
Load Balancer 
myapp.<mycfdomain.com> 
Resolve app and system 
Router Router 
hardware-based (F5 or similar) 
DEA DEA DEA 
Router 
DNS 
Pivotal CF Elastic 
Runtime (PaaS) 
© Copyright 2013 Pivotal. All rights reserved. 49
Router 
How It Works: 
• PCF 의 모든 유입 HTTP traffic 을 
다른 component로 Route함 
 System traffic(cf command) 
 Application traffic 
• 각각의 load balance된 app 
instance 용 dynamic routing 
table 를 관리함 
• 여러 개의 router 를 사용 가능 
Responsible For: 
• Load balancing 
• Maintaining an active routing table 
• Access logs 
• Supports web-sockets 
© Copyright 2013 Pivotal. All rights reserved. 51
Cloud Controller 
How It Works: 
• Client Interface(CF 
CLI,WebUI,STS등), Account 및 
Provisioning Control 등의 명령어 및 
Control System 등을 관리 
• Domain Object(apps, services, 
organizations, spaces, service 
instances, user roles, and more) 와 
통신하기 위한 RESTful interface 를 
제공함. 
Responsible For: 
• Expected App state, state transitions, 
and desired convergence 
• Permissions/Auth 
• Orgs/Spaces/Users 
• Services management 
• App placement 
• Blob storage 
© Copyright 2013 Pivotal. All rights reserved. 52
UAA and Login Servers 
How It Works: 
“User Authorization and 
Authentication” 
identity, security and authorization 
services 를 제공 
It manages 3rd party Oauth 2.0 access 
credentials and can provide application 
access and identity-as-a-service for 
apps running on Cloud Foundry. 
Composed of: UAA Server, Command 
Line Interface, Library. 
Responsible For: 
• Token Server 
• ID Server (User management) 
• OAuth Scopes (Groups) and 
SCIM 
• Login Server 
• UAA Database 
• SAML support (for SSO integration) 
and Active Directory support with 
the VMWare SSO Appliance 
• Access auditing 
© Copyright 2013 Pivotal. All rights reserved. 53
Health Manager 
How It Works: 
• Cloud Controller 에서 발행되는 
Expected State 와 각 DEA 에서 
발행되는Actual State 를 NATS 
message bus 를 통해 
전달받아서, 이를 비교함 
• 문제가 있을 경우(상태값이 
상이한 경우) 이를 Cloud 
Controller 에게 전달함. 
Responsible For: 
• Maintains the actual state of apps 
• Compares to expected state 
• Sends suggestions to make actual 
match expected (cannot make state 
changes itself – only CC can do that!) 
© Copyright 2013 Pivotal. All rights reserved. 54
DEA 
How It Works: 
• “Droplet Execution Agents” 의 
약자. are secure and fully 
isolated containers. 
• DEA는 Apps의 lifecycle을 
관리함: building, starting and 
stopping Apps as instructed. 
• 주기적으로 현재 DEA의 
상태(state)값을 NATS message 
bus를 통해 broadcasting함 
Responsible For: 
• Linux containers (Warden) 관리 
• Resource pools 모니터링 
• Process 
• File system 
• Network 
• Memory 
• App lifecycle 을 관리 
• App log and file streaming 처리 
• DEA heartbeats (NATS to CC, 
HM) 
© Copyright 2013 Pivotal. All rights reserved. 55
Messaging (NATS) 
How It Works: 
• Publish-Subscribe 메커니즘을 
통해 CF 시스템의 각 component 
간의 통신을 가능케 하는 Fast 
internal messaging bus 
Responsible For: 
• Non-Persistent messaging 
• Pub/Sub 
• Queues (app events) 
© Copyright 2013 Pivotal. All rights reserved. 56
Service Broker 
How It Works: 
• Native(Managed Service) 혹은 3rd 
party service 를 위한 interface를 제공 
• Service processes run on Service 
Nodes or with external as-a-service 
providers (e.g., email, database, 
messaging, etc.). 
Responsible For: 
• Advertising service catalog 
• Makes create/delete/bind/unbind calls 
to service nodes 
• Requests inventory of existing 
instances and bindings from cloud 
controller for caching, orphan 
management 
• SaaS marketplace gateway 
© Copyright 2013 Pivotal. All rights reserved. 57
User Provided Service Instances 
How It Works: 
Service Broker 내에 meta data를 
저장하여, Cloud Foundry가 외부의 
CF에서 관리되지 않는 서비스(예: 
OracleDB,DB2,SQLServer등..) 에 연결될 
수 있게 함. 
Responsible For: 
• Metadata management 
© Copyright 2013 Pivotal. All rights reserved. 58
User Provided Service Instances 
and Service Brokers 
Synchronous Synchronous 
Custom 
Service 
Broker 
Service 
Broker 
Service 
Broker 
UPSI Service 
Connector 
IBM DB2 
UPSI Service 
Connector 
ORACLE 
DB 
CF MySQL 
MYSQL DB 
Another 
3rd Party 
Synchronous 
Provider (e.g. 
AppDirect) 
Send 
Grid 
INTERNET 
Mongo Service 
ClearDB 
Lab 
© Copyright 2013 Pivotal. All rights reserved. 59
Creating and Binding a Service Developer 
create service (HTTP) create service (HTTP) reserve resources 
CLI Cloud 
Controller 
Service 
Broker 
bind service (HTTP) bind service (HTTP) obtain connection data 
Router 
Cloud Foundry 
Runtime (PaaS) 
DB 
Service 
credentials 
Data 
Service 
© Copyright 2013 Pivotal. All rights reserved. 60
PCF 구성 요소 
Component 설명 Implementation 
Router Incoming Traffic을 적절한 CF Component로 Routing GoRouter 
Authentication Identity Management Service UAA 
Cloud Controller Application Lifecycle 관리 CCNG, CC_DB, Blob Store 
Health Manager Application Monitoring, Cloud Controller 제어 HM9000 
Application Execution Warden Container 포함, Application Instance 관리 DEA 
Blob Store Application Code, Buildpacks, Droplets 저장 
Buildpacks 언어/프레임워크을 Detect 하고 소스코드를 실행파일로 Compile, DEA 
로 Release 
Ruby/Java/Node 등 
Service Broker Application이 필요로 하는 Database 등의 Service의 Instance를 제공 MySQL 등 
Message Bus 내부 Component간 통신을 위한 lightweight publish-subscribe and 
distributed queueing messaging system 
NATS 
BOSH release engineering, deployment and lifecycle management of 
large scale distributed services 
Agent, Director, CPI, Name 
Server, etc 
© Copyright 2013 Pivotal. All rights reserved. 61
Pivotal CF Elastic Runtime 상의 App Deploy 
① Upload app 
bits and 
metadata 
push app 
Router 
+ app MD 
② Create and bind services 
③ Stage application 
④ Deploy application 
⑤ Manage application health 
Blobstore DB 
Cloud Controller 
Service 
credentials 
Service Broker 
Node(s) 
DEA 
DEA 
DEA 
DEA 
+ = 
Pivotal CF 
Elastic 
Runtime (PaaS) 
© Copyright 2013 Pivotal. All rights reserved. 62
Application Access 
• Deploy된 Application는 DEA(Droplet Execution Agent)의 
Container에서 서비스 
• Application 사용자는 Router를 통해 DEA로 접근하며, 
접근경로(Routing 정보)는 NATS Message Bus를 통해 
지속적으로 최신 정보로 Update됨 
© Copyright 2013 Pivotal. All rights reserved. 63
Operations Manager: Behind the Scenes (BOSH) 
BOSH Director 
Message Bus 
IaaS 
Health Monitor 
Pivotal CF Operations 
Manager Director 
DB 
Blobs 
Deploy my 
Services 
Deployment 
• Packages 
• Jobs 
• Blobs 
• Source 
• Manifest 
Worker VMs 
Messaging 
Target VM Health Manager 
Target VM Cloud Controller 
Target VM 
© Copyright 2013 Pivotal. All rights reserved. 64
Access 
myapp.<mycfdomain.com> 
api.<mycfdomain.com> 
console.<mycfdomain.com> 
External LB, hardware domain names to LB IP 
Load Balancer 
based (F5 or similar) 
Router 
Pivotal CF 
Elastic 
Runtime 
Load Balancer 
Resolve app and system 
Router Router 
DNS 
Monitoring of platform 
components health and KPIs 
Monitoring Tool 
JMX 
Aggregation, storage, filtering 
and analytics on system and 
app logs 
Enterprise Log 
Mgr (e.g. Splunk) 
DDEEAA DEA 
UAA/Login Server 
Health Manager 
CClolouudd C Coonnttrroolllelerr 
JMX Provider 
Collector 
Loggregator 
Service Broker NATS 
HTTP 
Service Broker 
Service Broker 
HTTP 
Git repository 
TCP 
Versioning /configuration 
mgmt of buildpacks and apps 
Custom Service lifecycle 
management and binding 
© Copyright 2013 Pivotal. All rights reserved. 65
PCF High Availability 
© Copyright 2013 Pivotal. All rights reserved. 66
4 Levels of HA in PCF 
Elastic Runtime (ERS): 
 Distribution across availability zones 
 Application health management and 
recovery 
BOSH (cluster management): 
 Process monitoring, recovery and 
alerting 
 Virtual machine health monitoring, 
recovery and alerting 
Pivotal Confidential–Internal Use Only 67
• Application Instance를 
분리된 각 Hardware에 
deploy하여 가용성을 
보장함. 
• 최대 50%까지의 H/W 
failure시에도 downtime 
없이 서비스 가능 
• 여러 data center에 쉽게 
deploy 가능 
DEAs 
1. ERS: Availability Zones 
AZ1 
api.pcf.com 
App 
AZ2 AZ3 AZ4 AZ5 Availability Zones 
Chassi_1 Chassi_2 Chassi_3 
© Copyright 2013 Pivotal. All rights reserved. 68
Application Instances and Availability Zones 
Router 
Zone 1 Zone 2 
DEA 
DEA 
DEA 
App Ops 
Cloud Foundry 
Elastic Runtime 
DEA 
DEA 
DEA 
© Copyright 2013 Pivotal. All rights reserved. 69
Application Instances and Availability Zones 
Router 
App Ops 
Zone 1 Zone 2 Application instances 
DEA 
DEA 
DEA 
are evenly distributed 
over two availability 
zones. 
Cloud Foundry 
Elastic Runtime 
DEA 
DEA 
DEA 
© Copyright 2013 Pivotal. All rights reserved. 70
Application Instances and Availability Zones 
Router 
App Ops 
Zone 1 Zone 2 Application instances 
DEA 
DEA 
DEA 
are evenly distributed 
over two availability 
zones. 
Loosing an AZ keeps 
instances running and 
available. 
Cloud Foundry 
Elastic Runtime 
DEA 
DEA 
DEA 
© Copyright 2013 Pivotal. All rights reserved. 71
2. Application Instance 
 The Health Manager is essential to ensuring that apps 
running on Cloud Foundry remain available. 
– Application 의 상태state (e.g. running, stopped, crashed, etc.) 및 
버전, instance 수를 모니터링 
– Determine applications' expected state, version, and number of 
instances. 
– Reconcile the actual state of applications with their expected state. 
– Application 상태 불안정시 Cloud Controller에게 수정작업을 지시 
Pivotal Confidential–Internal Use Only 72
Failed Application Instances Replaced 
Router 
Blobstore 
Cloud 
Controller 
Health Manager 
Messaging 
(NATS) 
DEA DEA DEA 
App Ops 
Cloud Foundry 
Elastic Runtime 
Pivotal Confidential–Internal Use Only 73
Failed Application Instances Replaced 
Router 
Blobstore 
Cloud 
Controller 
Actual State 
Health Manager 
Messaging 
(NATS) 
DEA DEA DEA 
App Ops 
Cloud Foundry 
Elastic Runtime 
Pivotal Confidential–Internal Use Only 74
Failed Application Instances Replaced 
Router 
Blobstore 
Cloud 
Controller 
Desired State Actual State 
Health Manager 
Messaging 
(NATS) 
DEA DEA DEA 
App Ops 
Cloud Foundry 
Elastic Runtime 
Pivotal Confidential–Internal Use Only 75
Failed Application Instances Replaced 
Router 
Blobstore 
Cloud 
Controller 
Desired State Actual State 
Health Manager 
Messaging 
(NATS) 
DEA DEA DEA 
App Ops 
Cloud Foundry 
Elastic Runtime 
Pivotal Confidential–Internal Use Only 76
Failed Application Instances Replaced 
Router 
Blobstore 
Cloud 
Controller 
Desired State Actual State 
Health Manager 
Messaging 
(NATS) 
DEA DEA DEA 
App Ops 
Cloud Foundry 
Elastic Runtime 
Pivotal Confidential–Internal Use Only 77
3. Platform processes DB 
Blob 
Store 
CLI Director 
Worker NATS 
Health 
Monitor 
CPI 
Inner shell 
Outer shell 
Agents 
Health Monitor 
Health Monitor는 Agent 를 통해 
받는 상태값과 lifecycle event 를 받으며, 
운영자에게 notification plugin(예: email) 
을 통해 alert을 보낼 수 있습니다. 
© Copyright 2013 Pivotal. All rights reserved. 78
ERS Processes are Monitored 
Message Bus 
Health Manager 
DEA 
PaaS Ops 
Cloud Controller 
Cloud Foundry BOSH IaaS 
Health Monitor 
Responders: 
pager 
email 
monitoring 
… 
© Copyright 2013 Pivotal. All rights reserved. 79
ERS Processes are Monitored 
Message Bus 
Health Manager 
DEA 
PaaS Ops 
Cloud Controller 
Cloud Foundry BOSH IaaS 
Health Monitor 
Responders: 
pager 
email 
monitoring 
… 
© Copyright 2013 Pivotal. All rights reserved. 80
ERS Processes are Monitored 
Message Bus 
Health Manager 
DEA 
PaaS Ops 
Cloud Controller 
Cloud Foundry BOSH IaaS 
Health Monitor 
Responders: 
pager 
email 
monitoring 
… 
© Copyright 2013 Pivotal. All rights reserved. 81
4. VM Monitoring: Health Monitor & Resurrector 
• Health Monitor는 BOSH Agent 를 통해 
들어오는 상태값과 lifecycle event를 사용하여 
VM들의 health 상태를 check합니다. Health 
Monitor가 VM의 이상 감지시 notification 
plugin를 통해 alert을 보내던지, BOSH 
Resurrector를 trigger할 수 있습니다. 
• Enable 시 BOSH Resurrector plugin 는 
자동으로 Health Monitor에 의해서 멈추거나 
응답하지 않는 VM들을 재생성합니다. 
NATS 
Health 
Monitor 
✔Ressurector 
Agents 
Re-create 
VMs 
© Copyright 2013 Pivotal. All rights reserved. 82
BOSH Director 
Message Bus 
VMs are Monitored 
DEA 
PaaS Ops 
Cloud Controller 
IaaS 
Actual State 
Health Monitor 
Health Manager 
Responders: 
pager 
email 
monitoring 
resurrector 
… 
Cloud Foundry BOSH 
© Copyright 2013 Pivotal. All rights reserved. 83
BOSH Director 
Message Bus 
VMs are Monitored 
DEA 
PaaS Ops 
Cloud Controller 
IaaS 
Actual State 
Desired State 
Health Monitor 
Health Manager 
Responders: 
pager 
email 
monitoring 
resurrector 
… 
Cloud Foundry BOSH 
© Copyright 2013 Pivotal. All rights reserved. 84
BOSH Director 
Message Bus 
VMs are Monitored 
DEA 
PaaS Ops 
Cloud Controller 
IaaS 
Desired State Actual State 
Health Monitor 
Health Manager 
Responders: 
pager 
email 
monitoring 
resurrector 
… 
Cloud Foundry BOSH 
© Copyright 2013 Pivotal. All rights reserved. 85
BOSH Director 
Message Bus 
VMs are Monitored 
DEA 
PaaS Ops 
Cloud Controller 
IaaS 
Desired State Actual State 
Health Monitor 
Health Manager 
Responders: 
pager 
email 
monitoring 
resurrector 
… 
(CPI) 
Cloud Foundry BOSH 
© Copyright 2013 Pivotal. All rights reserved. 86
Summary 
© Copyright 2013 Pivotal. All rights reserved. 87
Cloud Foundry Project 
Private 
Clouds 
Open 
Source 
Micro 
Clouds 
Public 
Clouds 
CUSTOM 
SERVICES 
http://www.cloudfoundry.org 
© Copyright 2013 Pivotal. All rights reserved. 88
Abstracting and Standardize 
Clouds Runtime/Frameworks 
App Services 
Buildpacks Service Brokers 
… and Custom Runtimes … and Custom Services 
Cloud Provider Interface 
(CPI) 
Open Source 
… and Custom Clouds 
© Copyright 2013 Pivotal. All rights reserved. 89
References 
• Cloud Foundry 
• http://www.cloudfoundry.org 
• http://network.pivotal.io/ 
• http://run.pivotal.io 
• Installing CF on vSphere 
• http://www.youtube.com/watch?v=TLhST6Hmiso 
• Cloud Foundry demo 
• http://www.youtube.com/watch?v=PFZPCwH_OcM 
• Pivotal Academy(free e-training materials!) 
• http://pivotal.biglms.com 
© Copyright 2013 Pivotal. All rights reserved. 90
BUILT FOR THE SPEED OF BUSINESS
Appendix: CF 대비 PCF 추가 기능 
OSS Cloud Foundry 에 기업용 PaaS를 위한 Built-in 기능 추가 
BOSH 
Web Console 
Ops 
Manager 
Elastic 
Runtime 
Data Services 
Core Cloud Foundry 
Components 
Messaging Services 
Mobile Services 
Pivotal Support 
PCF Add Value 
Pivotal Confidential–Internal Use Only 92

Weitere ähnliche Inhalte

Was ist angesagt?

Monitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamics
Monitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamicsMonitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamics
Monitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamicsNima Badiey
 
What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6dektlong
 
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)VMware Tanzu
 
Cloud foundry architecture and deep dive
Cloud foundry architecture and deep diveCloud foundry architecture and deep dive
Cloud foundry architecture and deep diveAnimesh Singh
 
Moving at the speed of startup with Pivotal Cloud Foundry 1.11
Moving at the speed of startup with Pivotal Cloud Foundry 1.11Moving at the speed of startup with Pivotal Cloud Foundry 1.11
Moving at the speed of startup with Pivotal Cloud Foundry 1.11VMware Tanzu
 
Architecture & Operations
Architecture & OperationsArchitecture & Operations
Architecture & OperationsVMware Tanzu
 
Cloud Foundry - Second Generation Code (CCNG). Technical Overview
Cloud Foundry - Second Generation Code (CCNG). Technical Overview Cloud Foundry - Second Generation Code (CCNG). Technical Overview
Cloud Foundry - Second Generation Code (CCNG). Technical Overview Nima Badiey
 
Pivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptxPivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptxSufyaan Kazi
 
Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...
Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...
Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...VMware Tanzu
 
Development on cloud_paa_s_sddc_mkim_20141216_final
Development on cloud_paa_s_sddc_mkim_20141216_finalDevelopment on cloud_paa_s_sddc_mkim_20141216_final
Development on cloud_paa_s_sddc_mkim_20141216_finalminseok kim
 
Devops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational RolesDevops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational Rolescornelia davis
 
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...VMware Tanzu
 
PCF Cloud-Native Workshop Slides
PCF Cloud-Native Workshop SlidesPCF Cloud-Native Workshop Slides
PCF Cloud-Native Workshop SlidesVMware Tanzu
 
Case Study: Orange Labs & Cloud Foundry
 Case Study: Orange Labs & Cloud Foundry  Case Study: Orange Labs & Cloud Foundry
Case Study: Orange Labs & Cloud Foundry Guillaume Berche
 
Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?Sufyaan Kazi
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209minseok kim
 
Dissecting The PaaS Landscape
Dissecting The PaaS LandscapeDissecting The PaaS Landscape
Dissecting The PaaS LandscapeRishidot Research
 
LIVE DEMO: Pivotal Cloud Foundry
LIVE DEMO: Pivotal Cloud FoundryLIVE DEMO: Pivotal Cloud Foundry
LIVE DEMO: Pivotal Cloud FoundryVMware Tanzu
 

Was ist angesagt? (20)

Monitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamics
Monitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamicsMonitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamics
Monitoring Cloud Native Apps on Pivotal Cloud Foundry with AppDynamics
 
What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6
 
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
 
Cloud foundry architecture and deep dive
Cloud foundry architecture and deep diveCloud foundry architecture and deep dive
Cloud foundry architecture and deep dive
 
Moving at the speed of startup with Pivotal Cloud Foundry 1.11
Moving at the speed of startup with Pivotal Cloud Foundry 1.11Moving at the speed of startup with Pivotal Cloud Foundry 1.11
Moving at the speed of startup with Pivotal Cloud Foundry 1.11
 
Pivotal CF on AWS
Pivotal CF on AWSPivotal CF on AWS
Pivotal CF on AWS
 
Architecture & Operations
Architecture & OperationsArchitecture & Operations
Architecture & Operations
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
Cloud Foundry - Second Generation Code (CCNG). Technical Overview
Cloud Foundry - Second Generation Code (CCNG). Technical Overview Cloud Foundry - Second Generation Code (CCNG). Technical Overview
Cloud Foundry - Second Generation Code (CCNG). Technical Overview
 
Pivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptxPivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptx
 
Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...
Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...
Building a University Community PaaS Using Cloud Foundry (Cloud Foundry Summ...
 
Development on cloud_paa_s_sddc_mkim_20141216_final
Development on cloud_paa_s_sddc_mkim_20141216_finalDevelopment on cloud_paa_s_sddc_mkim_20141216_final
Development on cloud_paa_s_sddc_mkim_20141216_final
 
Devops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational RolesDevops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational Roles
 
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
 
PCF Cloud-Native Workshop Slides
PCF Cloud-Native Workshop SlidesPCF Cloud-Native Workshop Slides
PCF Cloud-Native Workshop Slides
 
Case Study: Orange Labs & Cloud Foundry
 Case Study: Orange Labs & Cloud Foundry  Case Study: Orange Labs & Cloud Foundry
Case Study: Orange Labs & Cloud Foundry
 
Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209
 
Dissecting The PaaS Landscape
Dissecting The PaaS LandscapeDissecting The PaaS Landscape
Dissecting The PaaS Landscape
 
LIVE DEMO: Pivotal Cloud Foundry
LIVE DEMO: Pivotal Cloud FoundryLIVE DEMO: Pivotal Cloud Foundry
LIVE DEMO: Pivotal Cloud Foundry
 

Ähnlich wie PCF Architecture

MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017Andrew Ripka
 
Cloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platformCloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platformCodemotion
 
Structure and Opinions - Software Deployments with Cloud Foundry
Structure and Opinions - Software Deployments with Cloud FoundryStructure and Opinions - Software Deployments with Cloud Foundry
Structure and Opinions - Software Deployments with Cloud FoundryAndrew Ripka
 
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...VMworld
 
PCF2.2 update mkim_201807
PCF2.2 update mkim_201807PCF2.2 update mkim_201807
PCF2.2 update mkim_201807minseok kim
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Phil Estes
 
Development on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDCDevelopment on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDCseungdon Choi
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Rohit Kelapure
 
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...jeckels
 
IBM Lightning Talk
IBM Lightning TalkIBM Lightning Talk
IBM Lightning TalkMongoDB
 
Platform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixPlatform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixDavid Currie
 
Pivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystemPivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystemKarthikeyanSambandam2
 
Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques
Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques
Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques VMware Tanzu
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Mee Nam Lee
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixJake Peyser
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixDev_Events
 
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South CoastPlatform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South CoastRobert Nicholson
 
Cloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinarCloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinarCloudify Community
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDBJake Peyser
 

Ähnlich wie PCF Architecture (20)

MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
MNAssociationEnterpriseArchitectsCloudFoundryJuly2017
 
Cloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platformCloud Roundtable | Pivoltal: Agile platform
Cloud Roundtable | Pivoltal: Agile platform
 
Structure and Opinions - Software Deployments with Cloud Foundry
Structure and Opinions - Software Deployments with Cloud FoundryStructure and Opinions - Software Deployments with Cloud Foundry
Structure and Opinions - Software Deployments with Cloud Foundry
 
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
VMworld 2013: Best Practices for Application Lifecycle Management with vCloud...
 
PCF2.2 update mkim_201807
PCF2.2 update mkim_201807PCF2.2 update mkim_201807
PCF2.2 update mkim_201807
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
 
Development on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDCDevelopment on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDC
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
 
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
 
IBM Lightning Talk
IBM Lightning TalkIBM Lightning Talk
IBM Lightning Talk
 
Platform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixPlatform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM Bluemix
 
Pivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystemPivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystem
 
Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques
Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques
Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South CoastPlatform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
 
Cloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinarCloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinar
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDB
 

Mehr von seungdon Choi

Pivotal HD 3.0 설치가이드
Pivotal HD 3.0 설치가이드Pivotal HD 3.0 설치가이드
Pivotal HD 3.0 설치가이드seungdon Choi
 
Pivotal Big Data Suite 소개자료
Pivotal Big Data Suite 소개자료Pivotal Big Data Suite 소개자료
Pivotal Big Data Suite 소개자료seungdon Choi
 
Pivotal 전략 업데이트 2015 Feb
Pivotal 전략 업데이트 2015 FebPivotal 전략 업데이트 2015 Feb
Pivotal 전략 업데이트 2015 Febseungdon Choi
 
PCF installation guide
PCF installation guidePCF installation guide
PCF installation guideseungdon Choi
 
greenplum installation guide - 4 node VM
greenplum installation guide - 4 node VM greenplum installation guide - 4 node VM
greenplum installation guide - 4 node VM seungdon Choi
 
Phd tutorial hawq_v0.1
Phd tutorial hawq_v0.1Phd tutorial hawq_v0.1
Phd tutorial hawq_v0.1seungdon Choi
 
컨테이너 기술 소개 - Warden, Garden, Docker
컨테이너 기술 소개 - Warden, Garden, Docker컨테이너 기술 소개 - Warden, Garden, Docker
컨테이너 기술 소개 - Warden, Garden, Dockerseungdon Choi
 
[Hands on]pws가입하기
[Hands on]pws가입하기[Hands on]pws가입하기
[Hands on]pws가입하기seungdon Choi
 
PCF Roadshow - Learn the past
PCF Roadshow - Learn the pastPCF Roadshow - Learn the past
PCF Roadshow - Learn the pastseungdon Choi
 
PCF Installation Guide
PCF Installation GuidePCF Installation Guide
PCF Installation Guideseungdon Choi
 

Mehr von seungdon Choi (10)

Pivotal HD 3.0 설치가이드
Pivotal HD 3.0 설치가이드Pivotal HD 3.0 설치가이드
Pivotal HD 3.0 설치가이드
 
Pivotal Big Data Suite 소개자료
Pivotal Big Data Suite 소개자료Pivotal Big Data Suite 소개자료
Pivotal Big Data Suite 소개자료
 
Pivotal 전략 업데이트 2015 Feb
Pivotal 전략 업데이트 2015 FebPivotal 전략 업데이트 2015 Feb
Pivotal 전략 업데이트 2015 Feb
 
PCF installation guide
PCF installation guidePCF installation guide
PCF installation guide
 
greenplum installation guide - 4 node VM
greenplum installation guide - 4 node VM greenplum installation guide - 4 node VM
greenplum installation guide - 4 node VM
 
Phd tutorial hawq_v0.1
Phd tutorial hawq_v0.1Phd tutorial hawq_v0.1
Phd tutorial hawq_v0.1
 
컨테이너 기술 소개 - Warden, Garden, Docker
컨테이너 기술 소개 - Warden, Garden, Docker컨테이너 기술 소개 - Warden, Garden, Docker
컨테이너 기술 소개 - Warden, Garden, Docker
 
[Hands on]pws가입하기
[Hands on]pws가입하기[Hands on]pws가입하기
[Hands on]pws가입하기
 
PCF Roadshow - Learn the past
PCF Roadshow - Learn the pastPCF Roadshow - Learn the past
PCF Roadshow - Learn the past
 
PCF Installation Guide
PCF Installation GuidePCF Installation Guide
PCF Installation Guide
 

Kürzlich hochgeladen

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 

Kürzlich hochgeladen (20)

5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 

PCF Architecture

  • 1. BUILT FOR THE SPEED OF BUSINESS
  • 2. Pivotal CF Architecture Key Terminology, Architecture Pivotal Korea, 2014 © Copyright 2013 Pivotal. All rights reserved. 2
  • 3. 목차 • PCF Key Concept • PCF Components • Elastic Runtime Architecture • PCF Differentiator © Copyright 2013 Pivotal. All rights reserved. 3
  • 4. PCF 용어집 • Applications • Buildpacks • Manifests • Organizations • Spaces • Users and Roles • Domains • Routes • Services © Copyright 2013 Pivotal. All rights reserved. 4
  • 5. PCF Key Concepts Application, Buildpack, Manifest © Copyright 2013 Pivotal. All rights reserved. 5
  • 6. Cloud Foundry Platform as a Service • Application : Deploy의 단위 – VM,middleware,Container,Process의 추상화 – Data as a Service – Provision하고 배포하는 bottleneck을 제거 – PaaS는 Application을 효과적으로 배포하기 위해 존재 – 개발자는 app에만 집중하고 runtime환경이나 service,Infra는 신경쓰지 않도록 설계 © Copyright 2013 Pivotal. All rights reserved. 6
  • 7. VM 중심 배포에서 Application 중심 배포로 © Copyright 2013 Pivotal. All rights reserved. 7
  • 8. IaaS: VM 이 배포의 단위 Scale Out: VM의 신규 생성 혹은 Template을 통한 생성 © Copyright 2013 Pivotal. All rights reserved. 8
  • 9. PaaS: Application 중심의 배포 Scale Out: VM pool 내에 Container 를 생성 © Copyright 2013 Pivotal. All rights reserved. 9
  • 10. Cloud 환경상에서 Application 의 Deploy Cloud Foundry is Development Agostic  다양한 Application Source Code , Framework Java/Spring, Ruby/Rails, Java Script for Node.js …  Cloud Foundry 상에서는 모두 수행이 가능  How? © Copyright 2013 Pivotal. All rights reserved. 10
  • 11. Server Configuration 개발자에게 필요한 개발환경 제공 = 운영비용, Time To Market   OS  Software Runtime(Java,Ruby,Python…)  Container(Tomcat for JAVA, Apache HTTPD for PHP..)  Framework(APM tool..)  Application Binary  자동화된 Script의 필요 © Copyright 2013 Pivotal. All rights reserved. 11
  • 12. Buildpack CF상에서 수행될 수 있는 개발환경 생성을 위한 자동화된 Script  Runtime, Container, Framework 과 개발 Application 을 Droplet 에 올리기 위한 script의 조합  Droplet은 Warden Container상에서 구동.  Warden Container 는 DEA상에서 구동. © Copyright 2013 Pivotal. All rights reserved. 12
  • 13. Buildpack “builds” the “droplet” to run an app. = Application Staging  Buildpack은 특정 application을 수행하기 위한 droplet을 어떻게 조합하는지를 정의 © Copyright 2013 Pivotal. All rights reserved. 13
  • 14. Buildpack 구조 일반적으로 ruby script 로 작성되며 3개 파트로 구성 .  Detect : 해당 buildpack이 적용되어야 하는지 결정  Compile: application의 필요에 따라 code 와 runtime, framework, plugin등과 같이 compile 함  Release: assign된 DEA 들에 application들을 deploy © Copyright 2013 Pivotal. All rights reserved. 14
  • 15. Deploying CF © Copyright 2013 Pivotal. All rights reserved. 15
  • 16. Staging  Buildpack은 application을 위한 machine image를 준비함 © Copyright 2013 Pivotal. All rights reserved. 16
  • 17. 가용한 Buildpack  Buildpack은 CF에 설치되거나, push시 외부에서 load 됨  PCF/CF Community 에서 제공된 buildpack을 사용, 혹은 custom buildpack을 작성해서 사용 © Copyright 2013 Pivotal. All rights reserved. 17
  • 18. External Buildpack Heroku 및 기타 PaaS의 buildpack과 호환됨. © Copyright 2013 Pivotal. All rights reserved. 18
  • 19. Buildpack Runtimes Containers Frameworks © Copyright 2013 Pivotal. All rights reserved. 19
  • 20. Manifest  Application 배포의 “Blueprint”  배포의 옵션 정보들을 기입  Yaml형식으로 작성되며 App Push시 참조됨 © Copyright 2013 Pivotal. All rights reserved. 20
  • 21. PCF Key Concepts Organization, Space, User, Role © Copyright 2013 Pivotal. All rights reserved. 21
  • 22. Organization • 최상위 관리 단위 • 일반적으로 회사,부서,App Suite, 큰 프로젝 단위로 생성 • 1개 이상의 Domain 정의 가능 • Quota 지정으로 resource 통제 © Copyright 2013 Pivotal. All rights reserved. 22
  • 23. Space • Organization은 여러개의 space를 생성 • 예: 개발, staging, QA, 운영계 • 유저가 추가적으로 space 생성 • Application은 Space 내에서 수행 및 Scale In-Out 가능 © Copyright 2013 Pivotal. All rights reserved. 23
  • 24. User and Role • User = Organization의 멤버 • Role = Domain과 Space에 대한 접근 권한 제어 어떤 유저가 Route 관리 Application Deploy add/bind/remove service 권한이 있는지 관리 © Copyright 2013 Pivotal. All rights reserved. 24
  • 25. Role 의 종류 • Organization Role – Organization Manager : user 초대/관리, plan 선택/변경, 사용량 조정 – Organization Auditor : 모든 org/space 접근 정보/셋팅,report에 대한 조회 • Application Space Role – Space Manager : user 초대/관리, 해당 space에 대한 기능 관리 – Space Developer : application,service 생성/삭제/관리, report,log에 대한 조회 권한 – Space Auditor : space에 대한 셋팅정보,report,log에 대한 조회권한 © Copyright 2013 Pivotal. All rights reserved. 25
  • 26. PCF Key Concepts Domain, Route © Copyright 2013 Pivotal. All rights reserved. 26
  • 27. Domain • Deploy된 Application 은 URL을 가짐 • Cloud Foundry Instance 는 Default Domain을 가짐(pcf.open-paas.com) • Custom Domain을 추가해서 CF에서 관리 가능 • Subdomain: Application은 Unique한 Sub-domain을 가짐 – Application URL: subdomain.domain – 예: http://myapp.pcf.open-paas.com © Copyright 2013 Pivotal. All rights reserved. 27
  • 28. Route • Application의 접근 방법 – 모든 space의 각 Application은 Unique한 Route 를 가짐 – CF는 load-balance를 사용하여 incoming request를 알맞은 application으로 route 시킴 • 동일한 Application이 여러 space에 mapping 가능 – 예: dev space route: http://myapptest.pcf.open-paas.com – prod space route : http://myapp.pcf.open-paas.com © Copyright 2013 Pivotal. All rights reserved. 28
  • 29. PCF Key Concepts Service © Copyright 2013 Pivotal. All rights reserved. 29
  • 30. Cloud Foundry Service What is Service?  외부의 application dependency 혹은 component  Database  Message Queue  Monitoring App  Hadoop Instance  Security  일반적인 Service Endpoint(Web Service)  Other dependent applications © Copyright 2013 Pivotal. All rights reserved. 30
  • 31. Cloud Foundry Service Feature & Functionality  Provide Functionality to your applications  Application의 외부에 존재 – add-on provisioned aloneside an application  여러 application에서 공유되어 사용 가능(DB, Message Queue)  Application 에 binding – Service Broker 를 이용  Application에 환경변수를 이용하여 접속정보를 제공(VCAP_SERVICES) © Copyright 2013 Pivotal. All rights reserved. 31
  • 32. Clound Foundry Service Why use Service?  Application은 deploy의 단위 모든 application은 self-contained이여야 하며, 나머지 모두는 PaaS에서 제공되어야 함 : Service  Service in a PaaS 과금이 될 수 있는 단위(IaaS에서 H/W 자원과는 상반됨) © Copyright 2013 Pivotal. All rights reserved. 32
  • 33. Service Type  Marketplace Service – PCF설치후 곧장 이용할 수 있는 서비스들 – Marketplace catalog에서 이용 – PaaS에 instance 가 생성됨  User Defined Service – 외부의 서비스를 Cloud Foundry에서 이용 – Connection 정보를 저장하여 연결시 사용  Custom Built Service © Copyright 2013 Pivotal. All rights reserved. 33
  • 34. Marketplace Service  Easily available via Marketplace  Allow you to sign-up, select plans, etc  Once bound to application, can be used easily  2014년 4월기준 provider list © Copyright 2013 Pivotal. All rights reserved. 34
  • 35. Pivotal CF Service Standard out-of-box service : 계속 추가되고 있음 © Copyright 2013 Pivotal. All rights reserved. 35
  • 36. PCF Components Ops Manager, Elastic Runtime.. © Copyright 2013 Pivotal. All rights reserved. 36
  • 37. Operations Manager  업계 최초의 IaaS와 통합된 PaaS 운영 관리 UI  Ops Manager=the core orchestrating component.  VM들의 생성, deployment, 기타 PCF software와 service들의 lifecycle 관리.  PaaS 셋업과 운영 툴 제공  Application Downtime 없이 Live Update 제공  Ops Manager Web Console © Copyright 2013 Pivotal. All rights reserved. 37
  • 38. Elastic Runtime  Scalable Runtime Environment  Cloud Foundry itself  Application 의 Runtime 환경관리  Buildpack  Component 별 Sizing /환경 설정  Ops Manager를 사용해 IaaS 관리통제 © Copyright 2013 Pivotal. All rights reserved. 38
  • 39. Pivotal Services  PCF 는 PHD, RabbitMQ, MySQL Dev 등의 Data Service 를 제공  서비스들은 Message Broker를 통해 Application에 연결되고 Binding © Copyright 2013 Pivotal. All rights reserved. 39
  • 40. Pivotal CF Architecture Ops Manager UI Ops Manager Director Operations Manager Service Broker Service Nodes Service Service Broker Service Nodes Service HA Proxy LB Dynamic Router Health Manager Login Server DEA Pool Apps Messaging (NATS) App Log Aggregator Cloud Controller UAA Apps Metrics Collection Elastic Runtime © Copyright 2013 Pivotal. All rights reserved. 40
  • 41. Architectural Components © Copyright 2013 Pivotal. All rights reserved. 41
  • 42. Cloud Foundry Architecture • The Cloud Foundry platform Architecture = 대형 분산 서비스 처리 아키텍쳐의 표준 • Cloud Foundry Bosh 를 사용하여 기반 IaaS 를 관리 및 통제함(e.g., VMware, Amazon AWS, OpenStack) Underlying Infrastructure BOSH © Copyright 2013 Pivotal. All rights reserved. 42
  • 43. BOSH How It Works: • BOSH = 대형 분산 시스템을 대상으로 한 배포, lifecycle 관리하기 위한 공개 S/W • PCF는 BOSH를 사용하여 Application Provisioning 및 infra 제어 등을 수행함. • Cloud Foundry 관리및 배포를 위해 개발되었으나 일반적인 분산 시스템에서도 사용 가능 Responsible For: • VM 생성과 관리 • Continuous and predictive updates with minimal downtime • BOSH 는 CPI (Cloud Provider Interface) 를 사용하여 vSphere, vCloud Director, Amazon Web Services EC2, OpenStack 등과 같은 IaaS provider 상에 service를 deploy 할 수 있음 . • Pivotal CF Operations Manager가 Bosh를 사용함. 직접적으로 access할 필요가 없음 © Copyright 2013 Pivotal. All rights reserved. 43
  • 44. BOSH : 분산시스템 관리  BOSH를 통해 Application을 Provisioning 하고 인프라는 제어하는 등의 다양한 기능을 수행. 구성요소 설명 CLI BOSH와의 Interaction을 위한 Command Line Interface Director VM 생성, Application Deployment, 기타 Lifercycle을 관리하는 BOSH의 core orchestrating component CPI 개별 IaaS를 추상화 시킨 표준적 BOSH Engine Blobstore BOSH가 수행하는 Release, Job, Package의 Content가 저장되는 공간 Agent Director로부터 명령을 받아 개별 작업을 수행하는, 모든 VM에 설치된 Agent Stemcell 내장된 Agent를 포함한 VM Template Health Monitor Agent를 통해 개별 VM의 상태를 체크하고, 이상 발견 시 조치하는 요소 NATS Lightweight Pub/Sub, Distributed Queuing Messaging System Operations Staff DB Blobstore NATS Director Worker Health Monitor Inner Shell CLI Agents Outer Shell CPI © Copyright 2013 Pivotal. All rights reserved. 44
  • 45. BOSH Modules © Copyright 2013 Pivotal. All rights reserved. 45
  • 46. PCF Architecture 의 특징  Loosely Coupled 된 독립적인 System Component들로 구성 Idempotent Asynchronous  표준적 Communication Model, 쉽게 측정되고 진단 가능  Blocking을 유발하지 않는 Event- Driven Interaction 모델  특정 Operation에 의한 전체 시스템 성능저하 방지(Consistent)  자동 Restart가 가능한 내부 Watchdog에 의한 지속적 Health Checks  No single point of failure  모든 명령과 제어가 Message 기반으로 동작  언어 독립적 Communication  Application Load/Traffic에 대해 신속한 수평적 확장성 보장 Scalable Secure  공유 인프라에 대한 Resource Pooling  Application은 분리된 안전한 영역의 Container에서 실행  개별 사용자/그룹에 다른 레벨의 Security Role을 제공하는 Organizations & Spaces (CF Command) Self Healing Message Based © Copyright 2013 Pivotal. All rights reserved. 46
  • 47. Pivotal CF Elastic Runtime Architecture © Copyright 2013 Pivotal. All rights reserved. 47
  • 48. HA Proxy Access App myapp.<mycfdomain.com> DNS HA Proxy Resolve app and system domain names to HA Proxy IP Router Router Software single-instance LB, for non-production purposes DEA DEA DEA Router Pivotal CF Elastic Runtime (PaaS) © Copyright 2013 Pivotal. All rights reserved. 48
  • 49. External Load Balancer(HA Proxy 대신 사용 가능) Access App External LB, usually domain names to LB IP Load Balancer Load Balancer myapp.<mycfdomain.com> Resolve app and system Router Router hardware-based (F5 or similar) DEA DEA DEA Router DNS Pivotal CF Elastic Runtime (PaaS) © Copyright 2013 Pivotal. All rights reserved. 49
  • 50. Router How It Works: • PCF 의 모든 유입 HTTP traffic 을 다른 component로 Route함  System traffic(cf command)  Application traffic • 각각의 load balance된 app instance 용 dynamic routing table 를 관리함 • 여러 개의 router 를 사용 가능 Responsible For: • Load balancing • Maintaining an active routing table • Access logs • Supports web-sockets © Copyright 2013 Pivotal. All rights reserved. 51
  • 51. Cloud Controller How It Works: • Client Interface(CF CLI,WebUI,STS등), Account 및 Provisioning Control 등의 명령어 및 Control System 등을 관리 • Domain Object(apps, services, organizations, spaces, service instances, user roles, and more) 와 통신하기 위한 RESTful interface 를 제공함. Responsible For: • Expected App state, state transitions, and desired convergence • Permissions/Auth • Orgs/Spaces/Users • Services management • App placement • Blob storage © Copyright 2013 Pivotal. All rights reserved. 52
  • 52. UAA and Login Servers How It Works: “User Authorization and Authentication” identity, security and authorization services 를 제공 It manages 3rd party Oauth 2.0 access credentials and can provide application access and identity-as-a-service for apps running on Cloud Foundry. Composed of: UAA Server, Command Line Interface, Library. Responsible For: • Token Server • ID Server (User management) • OAuth Scopes (Groups) and SCIM • Login Server • UAA Database • SAML support (for SSO integration) and Active Directory support with the VMWare SSO Appliance • Access auditing © Copyright 2013 Pivotal. All rights reserved. 53
  • 53. Health Manager How It Works: • Cloud Controller 에서 발행되는 Expected State 와 각 DEA 에서 발행되는Actual State 를 NATS message bus 를 통해 전달받아서, 이를 비교함 • 문제가 있을 경우(상태값이 상이한 경우) 이를 Cloud Controller 에게 전달함. Responsible For: • Maintains the actual state of apps • Compares to expected state • Sends suggestions to make actual match expected (cannot make state changes itself – only CC can do that!) © Copyright 2013 Pivotal. All rights reserved. 54
  • 54. DEA How It Works: • “Droplet Execution Agents” 의 약자. are secure and fully isolated containers. • DEA는 Apps의 lifecycle을 관리함: building, starting and stopping Apps as instructed. • 주기적으로 현재 DEA의 상태(state)값을 NATS message bus를 통해 broadcasting함 Responsible For: • Linux containers (Warden) 관리 • Resource pools 모니터링 • Process • File system • Network • Memory • App lifecycle 을 관리 • App log and file streaming 처리 • DEA heartbeats (NATS to CC, HM) © Copyright 2013 Pivotal. All rights reserved. 55
  • 55. Messaging (NATS) How It Works: • Publish-Subscribe 메커니즘을 통해 CF 시스템의 각 component 간의 통신을 가능케 하는 Fast internal messaging bus Responsible For: • Non-Persistent messaging • Pub/Sub • Queues (app events) © Copyright 2013 Pivotal. All rights reserved. 56
  • 56. Service Broker How It Works: • Native(Managed Service) 혹은 3rd party service 를 위한 interface를 제공 • Service processes run on Service Nodes or with external as-a-service providers (e.g., email, database, messaging, etc.). Responsible For: • Advertising service catalog • Makes create/delete/bind/unbind calls to service nodes • Requests inventory of existing instances and bindings from cloud controller for caching, orphan management • SaaS marketplace gateway © Copyright 2013 Pivotal. All rights reserved. 57
  • 57. User Provided Service Instances How It Works: Service Broker 내에 meta data를 저장하여, Cloud Foundry가 외부의 CF에서 관리되지 않는 서비스(예: OracleDB,DB2,SQLServer등..) 에 연결될 수 있게 함. Responsible For: • Metadata management © Copyright 2013 Pivotal. All rights reserved. 58
  • 58. User Provided Service Instances and Service Brokers Synchronous Synchronous Custom Service Broker Service Broker Service Broker UPSI Service Connector IBM DB2 UPSI Service Connector ORACLE DB CF MySQL MYSQL DB Another 3rd Party Synchronous Provider (e.g. AppDirect) Send Grid INTERNET Mongo Service ClearDB Lab © Copyright 2013 Pivotal. All rights reserved. 59
  • 59. Creating and Binding a Service Developer create service (HTTP) create service (HTTP) reserve resources CLI Cloud Controller Service Broker bind service (HTTP) bind service (HTTP) obtain connection data Router Cloud Foundry Runtime (PaaS) DB Service credentials Data Service © Copyright 2013 Pivotal. All rights reserved. 60
  • 60. PCF 구성 요소 Component 설명 Implementation Router Incoming Traffic을 적절한 CF Component로 Routing GoRouter Authentication Identity Management Service UAA Cloud Controller Application Lifecycle 관리 CCNG, CC_DB, Blob Store Health Manager Application Monitoring, Cloud Controller 제어 HM9000 Application Execution Warden Container 포함, Application Instance 관리 DEA Blob Store Application Code, Buildpacks, Droplets 저장 Buildpacks 언어/프레임워크을 Detect 하고 소스코드를 실행파일로 Compile, DEA 로 Release Ruby/Java/Node 등 Service Broker Application이 필요로 하는 Database 등의 Service의 Instance를 제공 MySQL 등 Message Bus 내부 Component간 통신을 위한 lightweight publish-subscribe and distributed queueing messaging system NATS BOSH release engineering, deployment and lifecycle management of large scale distributed services Agent, Director, CPI, Name Server, etc © Copyright 2013 Pivotal. All rights reserved. 61
  • 61. Pivotal CF Elastic Runtime 상의 App Deploy ① Upload app bits and metadata push app Router + app MD ② Create and bind services ③ Stage application ④ Deploy application ⑤ Manage application health Blobstore DB Cloud Controller Service credentials Service Broker Node(s) DEA DEA DEA DEA + = Pivotal CF Elastic Runtime (PaaS) © Copyright 2013 Pivotal. All rights reserved. 62
  • 62. Application Access • Deploy된 Application는 DEA(Droplet Execution Agent)의 Container에서 서비스 • Application 사용자는 Router를 통해 DEA로 접근하며, 접근경로(Routing 정보)는 NATS Message Bus를 통해 지속적으로 최신 정보로 Update됨 © Copyright 2013 Pivotal. All rights reserved. 63
  • 63. Operations Manager: Behind the Scenes (BOSH) BOSH Director Message Bus IaaS Health Monitor Pivotal CF Operations Manager Director DB Blobs Deploy my Services Deployment • Packages • Jobs • Blobs • Source • Manifest Worker VMs Messaging Target VM Health Manager Target VM Cloud Controller Target VM © Copyright 2013 Pivotal. All rights reserved. 64
  • 64. Access myapp.<mycfdomain.com> api.<mycfdomain.com> console.<mycfdomain.com> External LB, hardware domain names to LB IP Load Balancer based (F5 or similar) Router Pivotal CF Elastic Runtime Load Balancer Resolve app and system Router Router DNS Monitoring of platform components health and KPIs Monitoring Tool JMX Aggregation, storage, filtering and analytics on system and app logs Enterprise Log Mgr (e.g. Splunk) DDEEAA DEA UAA/Login Server Health Manager CClolouudd C Coonnttrroolllelerr JMX Provider Collector Loggregator Service Broker NATS HTTP Service Broker Service Broker HTTP Git repository TCP Versioning /configuration mgmt of buildpacks and apps Custom Service lifecycle management and binding © Copyright 2013 Pivotal. All rights reserved. 65
  • 65. PCF High Availability © Copyright 2013 Pivotal. All rights reserved. 66
  • 66. 4 Levels of HA in PCF Elastic Runtime (ERS):  Distribution across availability zones  Application health management and recovery BOSH (cluster management):  Process monitoring, recovery and alerting  Virtual machine health monitoring, recovery and alerting Pivotal Confidential–Internal Use Only 67
  • 67. • Application Instance를 분리된 각 Hardware에 deploy하여 가용성을 보장함. • 최대 50%까지의 H/W failure시에도 downtime 없이 서비스 가능 • 여러 data center에 쉽게 deploy 가능 DEAs 1. ERS: Availability Zones AZ1 api.pcf.com App AZ2 AZ3 AZ4 AZ5 Availability Zones Chassi_1 Chassi_2 Chassi_3 © Copyright 2013 Pivotal. All rights reserved. 68
  • 68. Application Instances and Availability Zones Router Zone 1 Zone 2 DEA DEA DEA App Ops Cloud Foundry Elastic Runtime DEA DEA DEA © Copyright 2013 Pivotal. All rights reserved. 69
  • 69. Application Instances and Availability Zones Router App Ops Zone 1 Zone 2 Application instances DEA DEA DEA are evenly distributed over two availability zones. Cloud Foundry Elastic Runtime DEA DEA DEA © Copyright 2013 Pivotal. All rights reserved. 70
  • 70. Application Instances and Availability Zones Router App Ops Zone 1 Zone 2 Application instances DEA DEA DEA are evenly distributed over two availability zones. Loosing an AZ keeps instances running and available. Cloud Foundry Elastic Runtime DEA DEA DEA © Copyright 2013 Pivotal. All rights reserved. 71
  • 71. 2. Application Instance  The Health Manager is essential to ensuring that apps running on Cloud Foundry remain available. – Application 의 상태state (e.g. running, stopped, crashed, etc.) 및 버전, instance 수를 모니터링 – Determine applications' expected state, version, and number of instances. – Reconcile the actual state of applications with their expected state. – Application 상태 불안정시 Cloud Controller에게 수정작업을 지시 Pivotal Confidential–Internal Use Only 72
  • 72. Failed Application Instances Replaced Router Blobstore Cloud Controller Health Manager Messaging (NATS) DEA DEA DEA App Ops Cloud Foundry Elastic Runtime Pivotal Confidential–Internal Use Only 73
  • 73. Failed Application Instances Replaced Router Blobstore Cloud Controller Actual State Health Manager Messaging (NATS) DEA DEA DEA App Ops Cloud Foundry Elastic Runtime Pivotal Confidential–Internal Use Only 74
  • 74. Failed Application Instances Replaced Router Blobstore Cloud Controller Desired State Actual State Health Manager Messaging (NATS) DEA DEA DEA App Ops Cloud Foundry Elastic Runtime Pivotal Confidential–Internal Use Only 75
  • 75. Failed Application Instances Replaced Router Blobstore Cloud Controller Desired State Actual State Health Manager Messaging (NATS) DEA DEA DEA App Ops Cloud Foundry Elastic Runtime Pivotal Confidential–Internal Use Only 76
  • 76. Failed Application Instances Replaced Router Blobstore Cloud Controller Desired State Actual State Health Manager Messaging (NATS) DEA DEA DEA App Ops Cloud Foundry Elastic Runtime Pivotal Confidential–Internal Use Only 77
  • 77. 3. Platform processes DB Blob Store CLI Director Worker NATS Health Monitor CPI Inner shell Outer shell Agents Health Monitor Health Monitor는 Agent 를 통해 받는 상태값과 lifecycle event 를 받으며, 운영자에게 notification plugin(예: email) 을 통해 alert을 보낼 수 있습니다. © Copyright 2013 Pivotal. All rights reserved. 78
  • 78. ERS Processes are Monitored Message Bus Health Manager DEA PaaS Ops Cloud Controller Cloud Foundry BOSH IaaS Health Monitor Responders: pager email monitoring … © Copyright 2013 Pivotal. All rights reserved. 79
  • 79. ERS Processes are Monitored Message Bus Health Manager DEA PaaS Ops Cloud Controller Cloud Foundry BOSH IaaS Health Monitor Responders: pager email monitoring … © Copyright 2013 Pivotal. All rights reserved. 80
  • 80. ERS Processes are Monitored Message Bus Health Manager DEA PaaS Ops Cloud Controller Cloud Foundry BOSH IaaS Health Monitor Responders: pager email monitoring … © Copyright 2013 Pivotal. All rights reserved. 81
  • 81. 4. VM Monitoring: Health Monitor & Resurrector • Health Monitor는 BOSH Agent 를 통해 들어오는 상태값과 lifecycle event를 사용하여 VM들의 health 상태를 check합니다. Health Monitor가 VM의 이상 감지시 notification plugin를 통해 alert을 보내던지, BOSH Resurrector를 trigger할 수 있습니다. • Enable 시 BOSH Resurrector plugin 는 자동으로 Health Monitor에 의해서 멈추거나 응답하지 않는 VM들을 재생성합니다. NATS Health Monitor ✔Ressurector Agents Re-create VMs © Copyright 2013 Pivotal. All rights reserved. 82
  • 82. BOSH Director Message Bus VMs are Monitored DEA PaaS Ops Cloud Controller IaaS Actual State Health Monitor Health Manager Responders: pager email monitoring resurrector … Cloud Foundry BOSH © Copyright 2013 Pivotal. All rights reserved. 83
  • 83. BOSH Director Message Bus VMs are Monitored DEA PaaS Ops Cloud Controller IaaS Actual State Desired State Health Monitor Health Manager Responders: pager email monitoring resurrector … Cloud Foundry BOSH © Copyright 2013 Pivotal. All rights reserved. 84
  • 84. BOSH Director Message Bus VMs are Monitored DEA PaaS Ops Cloud Controller IaaS Desired State Actual State Health Monitor Health Manager Responders: pager email monitoring resurrector … Cloud Foundry BOSH © Copyright 2013 Pivotal. All rights reserved. 85
  • 85. BOSH Director Message Bus VMs are Monitored DEA PaaS Ops Cloud Controller IaaS Desired State Actual State Health Monitor Health Manager Responders: pager email monitoring resurrector … (CPI) Cloud Foundry BOSH © Copyright 2013 Pivotal. All rights reserved. 86
  • 86. Summary © Copyright 2013 Pivotal. All rights reserved. 87
  • 87. Cloud Foundry Project Private Clouds Open Source Micro Clouds Public Clouds CUSTOM SERVICES http://www.cloudfoundry.org © Copyright 2013 Pivotal. All rights reserved. 88
  • 88. Abstracting and Standardize Clouds Runtime/Frameworks App Services Buildpacks Service Brokers … and Custom Runtimes … and Custom Services Cloud Provider Interface (CPI) Open Source … and Custom Clouds © Copyright 2013 Pivotal. All rights reserved. 89
  • 89. References • Cloud Foundry • http://www.cloudfoundry.org • http://network.pivotal.io/ • http://run.pivotal.io • Installing CF on vSphere • http://www.youtube.com/watch?v=TLhST6Hmiso • Cloud Foundry demo • http://www.youtube.com/watch?v=PFZPCwH_OcM • Pivotal Academy(free e-training materials!) • http://pivotal.biglms.com © Copyright 2013 Pivotal. All rights reserved. 90
  • 90. BUILT FOR THE SPEED OF BUSINESS
  • 91. Appendix: CF 대비 PCF 추가 기능 OSS Cloud Foundry 에 기업용 PaaS를 위한 Built-in 기능 추가 BOSH Web Console Ops Manager Elastic Runtime Data Services Core Cloud Foundry Components Messaging Services Mobile Services Pivotal Support PCF Add Value Pivotal Confidential–Internal Use Only 92

Hinweis der Redaktion

  1. Cloud Foundry PaaS An application runs in a DEA, which is a droplet execution agent. The Cloud Controller orchestrates the routing and lifecycle of all DEAs in the pool. Routers manage application traffic. Health Manager reports mismatched application states to the CC. A service gateway provides an interface for services (native or external). A messaging bus manages all system communication. Apps are accessed directly through the router while web and CLI clients (e.g., vmc, STS) access Cloud Controller via RESTful services.
  2. Cloud Foundry PaaS An application runs in a DEA, which is a droplet execution agent. The Cloud Controller orchestrates the routing and lifecycle of all DEAs in the pool. Routers manage application traffic. Health Manager reports mismatched application states to the CC. A service gateway provides an interface for services (native or external). A messaging bus manages all system communication. Apps are accessed directly through the router while web and CLI clients (e.g., vmc, STS) access Cloud Controller via RESTful services.
  3. Cloud Foundry PaaS An application runs in a DEA, which is a droplet execution agent. The Cloud Controller orchestrates the routing and lifecycle of all DEAs in the pool. Routers manage application traffic. Health Manager reports mismatched application states to the CC. A service gateway provides an interface for services (native or external). A messaging bus manages all system communication. Apps are accessed directly through the router while web and CLI clients (e.g., vmc, STS) access Cloud Controller via RESTful services.
  4. Services: e.g. Elastic Runtime, HD, Rabbit, 3rd party “BOSH enabled” services, all the same operational experience
  5. No need to monitor all aspects in detail. Cloud Foundry is to simplify the live of the people in charge of platform and application operations. Cloud Foundry can be seen as a black box that takes care of the availability of itself, the provisioned applications.