淡成-Cloud Foundry PaaS平台对软件开发的影响


Cloud Foundry PaaS平台对软件开发的影响 What is PaaS? “The capability [...] to deploy onto the cloud infrastructure [...] applications created using programming languages, libraries, services, and tools supported by the provider.” The NIST Definition of Cloud Computing Why PaaS? • 快速响应市场,缩短反馈周期(Time to Market) • 开发人员专注于业务开发(NoOps) • 水平扩展性 • 统一开发、运维环境 应用部署环境发展 2012 NoOps(Cloudfoundry, Appfog, Openshift, Heroku) 2011 SysOps(Chef, Puppet) 2006 AWS (APIs) 2004 虚拟化 1990s 数据中心 SysOps-40%工作量 NoOps-5%工作量 •生产率提高 •成本降低 云环境开发特点 • 安全 • 服务(数据库, nosql, messaging) • 本地资源(文件系统, 端口) • Share nothing • 数据备份 • Service orientate • 移植 What is CloudFoundry? CloudFoundry.com vs CloudFoundry OSS • CloudFoundry.com是Vmware公司运营的 • 运行在vSphere上 • 目前是公测版(年底推出正式版) • CloudFoundry开源版是Vmware公司创立的 • http://github.com/cloudfoundry • CloudFoundry.com, AppFog等公有云PaaS实例 9 CONFIDENTIAL Cloud Foundry 开放云应用平台 – 丰富编程框架 OSS community 10 CONFIDENTIAL Data Services Other Services Msg Services Cloud Foundry 开放云应用平台 – 多样的服务 vFabric Postgres vFabric RabbitMQTM Additional partners services … 11 CONFIDENTIAL Data Services Other Services Msg Services Cloud Foundry 开放云应用平台 – 多平台支持 Private Clouds Public Clouds Micro Clouds 12 CONFIDENTIAL . 开源 • Github上开放源码,并鼓励社区贡献和check-in • 目前所有核心模块都已经开源 • 开放的开发平台和流程,VMware R&D与社区开发者采用相同的代码审核和签入流程 • Apache 2开源许可协议 . 开放 • 支持多种语言、框架、服务和底层IaaS基础平台 • 支持多种运维方式,公有,私有,CF.com . 自动化 • 应用和服务的自动化配置 Cloud Foundry的特点 13 CONFIDENTIAL . Java平台 • Grails模仿Rails的Java平台实现 • Java_web 普通Java web程序 • Lift基于Scale的web框架 • Spring 流行的Java框架 . Ruby平台 • Rack 最小化的Ruby Web框架 • Rails3 一站式的Ruby Web框架 • Sinatra 极简主义的Ruby Web框架 . Python平台 • Django 最流行的PythonWeb框架 • Wsgi Python的CGI . 其他平台 • Static page 静态页面 • node.js 异步Web框架 • Erlang • php • standalone 独立的程序 应用平台支持: 不断增多 14 CONFIDENTIAL . 主流服务 • Mongodb 最流行的Nosql数据库 • Mysql传统开源关系数据库 • Neo4j图数据库 • Postgresql Mysql的有力竞争者 • Redis极快的内存KV数据库 . 存储 • Atmos EMC专业存储 • FileSystem 远程NFS支持 • Vblob 提供Amazon S3支持 . 消息 • RabbitMQ 出色的Erlang队列系统 . 大数据 • Hadoop集成 服务平台支持:不断增多 15 CONFIDENTIAL . dev_setup • Ubuntu 10.04 • 适合小规模的试验环境 • 每台机器需要手工安装和修改配置文 件 . Github上: https://github.com/cloudfoundry/oss- docs/tree/master/vcap/single_and_multi_n ode_deployments_with_dev_setup . 博客: http://qing.weibo.com/2294942122/88ca0 9aa330004r8.html 和 http://qing.weibo.com/2294942122/88ca0 9aa33000975.html . BOSH • 大规模的部署 • 集中式的配置文件 • 支持自动化扩容 • 对各类IaaS平台集成 . Git上的文档+源码 . https://github.com/cloudfoundry/oss- docs/blob/master/bosh/documentation/d ocumentation.md . https://github.com/cloudfoundry/oss- docs/tree/master/bosh . 博客文章 . http://www.brianmmcclain.com/ (必读) . http://drnicwilliams.com/2012/04/16/creat ing-a-bosh-from-scratch-on-aws/ 如何在私有云环境中安装Cloud Foundry 通过BOSH扩展Cloud Foundry对IaaS的支持 LINUX OF THE CLOUD cloud foundry os layering eucalyptus OpenStack cloudstack vSphere Hyper-V Azure aws google multi-blade, multi-core, large memory x86, unlimited net, storage, dc vcap core: - REST control api, uniform syscall API across all cloud foundry instances - highly portable application model, URL addressable apps - service layer: uniform access to files, databases, kv stores, etc. uniform - IaaS/HAL abstraction orchestrated by BOSH - OSS with liberal licensing Apache2 vmc shell: - scriptable CLI - thin UI layer above REST API - STS plugin for integration into Eclipse, Cloud9 IDE, etc. cloud foundry syscall OS syscall service management: - next-gen “I/O” system - unified discovery/binding - REST api - vmc services - vmc create-service - vmc delete-service - vmc bind-service - vmc unbind-service REST control API: app management service management user/system management app management: - http url addressable apps - simple horizontal scale out - REST api - vmc push; vmc update - vmc stop; vmc start - vmc mem; vmc map - vmc instances - vmc {files, logs, crashlogs} Hardware Abstraction Layer $ vmc target $ vmc login $ vmc push > bind services? Yes $ vmc update $ vmc instances +100 vmc命令 21 CONFIDENTIAL How Apps are Accessed on Cloud Foundry Web App DB App Instance Service RequestLoad Balancing and Routing Response “vmc push MyApp” Web Interface Access Cloud Foundry Chinese Blog for more details http://cnblog.cloudfoundry.com 22 CONFIDENTIAL How Apps are Scaled on Cloud Foundry Web App DB App Instances Service Request Response Load Balancing and Routing Web App Web App “vmc instances MyApp 3” 23 CONFIDENTIAL How Apps are Updated on Cloud Foundry Web App DB Service Web App DB Service Web App Web App Previous Version Instance Stopped Updated Code New Version “vmc update MyApp” 24 CONFIDENTIAL . 越核心的代码应该越简洁 . 为MTTR优化,而不是MTBF . 消息驱动,组件松耦合 . 组件间动态发现,无依赖性 CloudFoundry架构理念 25 CONFIDENTIAL Cloud Foundry Logical View VMC client STS plugin Browser (user app access) Routers CloudControllers App Services App HealthManager DEA Pool Messaging .网站:http://www.cloudfoundry.cn/ .博客:http://cnblog.cloudfoundry.com/ .社区:http://cloudfoundry.csdn.net/ .微博:@cloudfoundry .视频:http://u.youku.com/CloudFoundryCN Cloud Foundry中文资源 Q&A 更多内容,PPT下载 请关注官方微博 @CloudFoundry
还剩26页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 6 金币 [ 分享pdf获得金币 ] 0 人已下载

下载pdf

pdf贡献者

bnw88

贡献于2016-01-01

下载需要 6 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf