Más contenido relacionado
La actualidad más candente (20)
Similar a OpenStack + Cloud Foundry for the OpenStack Boston Meetup (20)
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
- 1. 1© Copyright 2015 EMC Corporation. All rights reserved.
IT’s WHAT’S ON THE STACK THAT
MATTERS: Cloud Foundry
RAGHAVAN N. SRINIVAS @ragss #OSBOS
- 2. 2© Copyright 2015 EMC Corporation. All rights reserved.
• Rags (not to Riches) and work for EMC CODE
(emccode.github.io)
• Middleware and Application programmer
• Architect and Evangelist
• Part time teaching at UML and writing at InfoQ
• Philosophy: It’s better to have an unanswered question than a
unquestioned answer
Who am I?
- 3. 3© Copyright 2015 EMC Corporation. All rights reserved.
• Overview and Architecture
• Deploying and Managing Cloud Foundry
• Applications and Services
• Health Management – Applications and Platform
• Resources and Summary
Agenda
- 4. 4© Copyright 2015 EMC Corporation. All rights reserved.
Cloud Foundry and OpenStack
- 5. 5© Copyright 2015 EMC Corporation. All rights reserved.
Business Expectations Exceed IT
Capabilities
Cloud
IT Technology Eras
Mainframe Client-Server
The exponential
increase in
business
expectations is
unsustainable for
IT
MILLIONS OF
APPS BILLIONS
OF USERS
* Source: Gartner, 2013: “Hunting and Harvesting in a Digital World: The 2013 CIO Agenda”
$ $ $ $ $ $
ABILITY OF IT TO
DELIVER S/W
STEADY IT
BUDGETS*
BUSINESS
EXPECTATIONS
- 6. 6© Copyright 2015 EMC Corporation. All rights reserved.
PaaS (On Premise & Off Premise)
Traditional IT
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
YouManage
O/S
IaaS
Storage
Servers
Networking
Middleware
Virtualization
Data
Applications
Runtime
YouManage
IaaS
Business
Value,
Agility
&
Cost
Savings
PaaS
Storage
Servers
Networking
Middleware
Virtualization
Data
Applications
Runtime
O/S Cloud
Foundry
+
OpenStack
You
Manage
- 8. 8© Copyright 2015 EMC Corporation. All rights reserved.
• Microservices: a radical departure from traditional
monolithic applications
• 12 Factor Linux applications
• In both cases, the enterprise is
forced to “think different.”
Microservices Architectures
- 9. 9© Copyright 2015 EMC Corporation. All rights reserved.
How are things the same?
OpenStack & Cloud Foundry
License Apache v2.0
Community Vendors, Users, and Developers
Architecture API-based services and message-passing
- 10. 10© Copyright 2015 EMC Corporation. All rights reserved.
OpenStack and Cloud Foundry: Shared Ecosystem
- 11. 11© Copyright 2015 EMC Corporation. All rights reserved.
How are things different?
OpenStack Cloud Foundry
Language Python Go and Ruby
Release Cycle 6 months, integrated 2 weeks, parallel
Governance Dedicated Foundation Linux Foundation
project
Installation tools Various BOSH or Juju
Communication Hub IRC (#openstack-dev) Mailing lists
Source code & review Gerritt & Private Git GitHub & pull requests
Adoption Mostly OSS trials and
dev/test environments
Mostly commercial
production
deployments
- 12. 12© Copyright 2015 EMC Corporation. All rights reserved.
Different strokes for different folks
• Better SLAs
• Flexibility
• Speed
• Availability
• Faster Time To
Market
• Mobile + Data
Services
• Agile and Iterative
• Leverage OSS
• Continuous Delivery
• No Downtime
• Instant scaling
• Consistency &
Automation
PaaS Dev PaaS OpsIaaS
- 13. 13© Copyright 2015 EMC Corporation. All rights reserved.
Removing Developer and Operator
Constrains
BUILD
APPLICATION
PUSH FIRST
RELEASE
MAINTAIN
APPLICATION
UPDATE
APPLICATIONS
RETIRE
APPLICATIONS
• Auto-detect frameworks
• Link to PaaS
• Self-service deploy
• Dynamic routing
• CI/CD
• Elastic scale
• Integrated HA
• Autoscaling and APM
• Log aggregation
• Policy and Auth
• A/B versioning
• Live upgrades
• Self-service
removal
- 14. 14© Copyright 2015 EMC Corporation. All rights reserved.
Cloud Foundry
Enterprise Capabilities At A Glance
Application Containerization
Monitoring, Logs
and Performance
as-a-Service
Integrated
Services: Data, Mobile,
Platform
High Availability and
Scaling
Network Isolation
and Security
Groups
Automatic Middleware
Configuration
Simple
Service Binding
Automatic IaaS
Provisioning
Roles and Policy
Management
Running on top of
- 15. 15© Copyright 2015 EMC Corporation. All rights reserved.
Gold
Silver
Cloud Foundry Foundation
- 16. 16© Copyright 2015 EMC Corporation. All rights reserved.
Runtime Architecture
Ops
Manager
UI
Ops
Manager
Director
Operations Manager
Service
Service
Broker
Service
Nodes
Service
Broker
Service
Nodes
Service
App
Log
Aggregator
Login
Server
Dynamic
Router
Cloud
Controller
UAA
Health
Manager
DEA
Pool
Messaging
(NATS)
Apps
Metrics
CollecJon
Apps
HA
Proxy
LB
Elastic Runtime
- 17. 17© Copyright 2015 EMC Corporation. All rights reserved.
Deploying and Managing Cloud
Foundry
- 18. 18© Copyright 2015 EMC Corporation. All rights reserved.
BOSH DB
Blob
Store
Worker NATS
Health
Monitor
CPI
DirectorCLI
Inner
shell
Outer
shell
Agents
When you deploy Cloud Foundry the
following sequence of steps occur:
1. Target a BOSH director using CLI
2. Upload a Stemcell
3. Get a Release from a repo
4. Create a deployment manifest
5. BOSH Deploy Cloud Foundry:
• Prepare deployment
• Compile packages
• Create and bind VMs
• Pull in job configurations
• Create needed job
instances – this is where
things get pushed live
(canary style)
- 19. 19© Copyright 2015 EMC Corporation. All rights reserved.
Message Bus
Behind the Scenes - BOSH
IaaS
DB
BOSH
Director
Blobs
Health
Monitor
Deploy
Worker VMs
Messaging
Target VMHealth Manager
Target VMCloud Controller
Target VM
PaaS
Ops
Deployment
• Packages
• Blobs
• Source
• Jobs
• Manifest
- 21. 21© Copyright 2015 EMC Corporation. All rights reserved.
Stage an Application
Router
Blobstore DB
DEA
Detect Compile Upload
NoYes
System
Buildpacks
+ =
Cloud
Controller
App
Ops
Pivotal
CF
ElasJc
RunJme
- 22. 22© Copyright 2015 EMC Corporation. All rights reserved.
Application Deployment Overview
App
Ops
① Upload app
bits and
metadata
push app
Router
② Create and bind services
③ Stage application
④ Deploy application
Cloud
Foundry
ElasJc
RunJme
Blobstore DB
Cloud
Controller
Service
Broker
Node(s)
DEA
DEA
DEA
DEA
+ app MD
+ =
Service
credentials
- 23. 23© Copyright 2015 EMC Corporation. All rights reserved.
Creating and Binding a Service
Router
Cloud
Foundry
RunJme
(ERS)
DB
Service
credentials
reserve resources
create service
(HTTP)
create service
(HTTP)
bind service
(HTTP)
bind service
(HTTP)
obtain connection
data
CLI Cloud
Controller
Service
Broker
Data
Service
App
Ops
- 24. 24© Copyright 2015 EMC Corporation. All rights reserved.
DEA
Apps
Service
Broker
Service
Nodes
Cloud
Controller
create
bind
Service Brokers generate
connection details and credentials
for managed services
CC encrypts and stores
credentials in CCDB
Credentials are exposed to bound
applications via
VCAP_SERVICES environment
variable
connect
Managed Services
- 25. 25© Copyright 2015 EMC Corporation. All rights reserved.
VCAP_SERVICES
environment variable is
visible only to members
of the org and space
containing the service
instance
VCAP_SERVICES=" {
"p-mysql": [
{
"name": "music-db",
"label": "p-mysql",
"tags": [ "mysql", "relational” ],
"plan": "100mb-dev",
"credentials": {
"hostname": "192.168.1.147",
"port": 3306,
"name": "cf_aceae021_7f27_48db_9844_d7c151f29195",
"username": "Tr12ZI4hPu4OPJPY",
"password": "fuTWBqpGeyvv0qge",
"uri": "mysql://Tr12ZI4hPu4OPJPY:fuTWBqpGeyvv0qge@192.168.1.147:3306/
cf_aceae021_7f27_48db_9844_d7c151f29195?reconnect=true”
}
}
]
} "
Managed Services
- 26. 26© Copyright 2015 EMC Corporation. All rights reserved.
Blue/Green Deployments (step 1)
cf push Blue -n demo-time
- 27. 27© Copyright 2015 EMC Corporation. All rights reserved.
Blue/Green Deployments (step 2)
cf push Green -n demo-time-temp
- 28. 28© Copyright 2015 EMC Corporation. All rights reserved.
Blue/Green Deployments (step 3)
cf map-route Green example.com -n demo-time
- 29. 29© Copyright 2015 EMC Corporation. All rights reserved.
Blue/Green Deployments (step 4)
cf unmap-route Blue example.com -n demo-time
- 30. 30© Copyright 2015 EMC Corporation. All rights reserved.
Blue/Green Deployments (step 5)
cf unmap-route Blue example.com -n demo-time-temp
- 31. 31© Copyright 2015 EMC Corporation. All rights reserved.
Health Management
Applications and Platform
- 32. 32© Copyright 2015 EMC Corporation. All rights reserved.
Multiple Availability Zones for HA
requirements
• Application and the Platform
itself are automatically balanced
across availability zones
– Enhanced availability for
applications
– Tolerate significant infrastructure
failures with continuous
availability
- 33. 33© Copyright 2015 EMC Corporation. All rights reserved.
Application Instances and Availability
Zones
Router
DEA
DEA
DEA
DEA
DEA
DEA
Zone 1 Zone 2 Application
instances are
evenly distributed
over two availability
zones.
Losing an AZ keeps
instances running
and available.
App
Ops
CF
ElasJc
RunJme
- 34. 34© Copyright 2015 EMC Corporation. All rights reserved.
Router
Failed Application Instances Replaced
Blobstore
Cloud
Controller
Health
Manager
Actual StateDesired State
Messaging
(NATS)
DEA DEA DEA
App
Ops
CF
ElasJc
RunJme
- 35. 35© Copyright 2015 EMC Corporation. All rights reserved.
Monitoring CF Components
Cloud
Controller
Health Monitor
Messaging
(NATS)
Collector
DEA
/varz
/varz
/varz
/varz
Customer
Monitoring JMX-
compatible tool of
choice
Datadog
(~1.0)
JMX (1.1)
PaaS
Ops
CF
ElasJc
RunJme
- 36. 36© Copyright 2015 EMC Corporation. All rights reserved.
Message Bus
Monitoring Processes (Elastic Runtime
Example)
IaaS
Health
Monitor Health Manager
DEA
Cloud Controller
Responder
s:
pager
email
monitoring
…
PaaS
Ops
OperaJon
Manager
- 37. 37© Copyright 2015 EMC Corporation. All rights reserved.
Message Bus
Monitoring VMs (Elastic Runtime Example)
IaaS
Health
Monitor Messaging
Cloud Controller
DEA
Responder
s:
pager
email
monitoring
resurrector
…
BOSH
Director
(CPI)
Actual StateDesired State
DEA
PaaS
Ops
OperaJon
Manager
- 38. 38© Copyright 2015 EMC Corporation. All rights reserved.
Log Aggregation
Cloud
Controller
Health Monitor
Messaging
(NATS)
Syslog
Aggregator
DEA
Syslog
Syslog
Syslog
Syslog
Logstash
Splunk
…
• Log files from /var/vcap/sys/log
• Support for external syslog endpoints in PCF 1.2
PaaS
Ops
Pivotal
CF
ElasJc
RunJme
- 40. 40© Copyright 2015 EMC Corporation. All rights reserved.
How to learn more about EMC {code}
emccode.github.io Subscribe to our
newsletter
Link is on the CODE GitHub
page
Follow us on
Twitter
@emccodeProjects, code, and training
- 41. 41© Copyright 2015 EMC Corporation. All rights reserved.
Language, Service and IaaS Agnostic
……
…
(Crust)(Sauce)(Toppings)
- 42. 42© Copyright 2015 EMC Corporation. All rights reserved.
Ÿ Install MicroBOSH
Ÿ Deploy BOSH with MicroBOSH
Ÿ Deploy Cloud Foundry with BOSH
Installing Cloud Foundry on OpenStack
- 43. 43© Copyright 2015 EMC Corporation. All rights reserved.
Ÿ Sign up for the CF and BOSH mailing lists.
Ÿ Install Cloud Foundry on OpenStack (blog out soon)
Ÿ Learn how to write 12-factor applications.
Ÿ Free workshop and roadshows. CFAD!
Ÿ Register for the next Cloud Foundry Summit (May)
Ÿ Try out Pivotal Web Services (http://run.pivotal.io)
Ÿ Join the Cloud Foundry Community Boston.
Call for Action
- 44. 44© Copyright 2015 EMC Corporation. All rights reserved.
https://ace.ng.bluemix.net/
http://www.hpcloud.com/products-services/
application-paas
http://www.anynines.com/
https://run.pivotal.io/
Resources
https://express.mirantis.com/
- 45. 45© Copyright 2015 EMC Corporation. All rights reserved.
Shameless plug(1) – Vote early and often!
emc.im/17rzoiZ
- 46. 46© Copyright 2015 EMC Corporation. All rights reserved.
Shameless plug(2) – Architect Con!
http://softwarearchitecturecon.com/sa2015/public/content/
cloud-native-application-architectures
Matt Stine of Pivotal (2-day
training: