【php精品源码栏目提醒】:网学会员,鉴于大家对php精品源码十分关注,论文会员在此为大家搜集整理了“Cloud Foundry的弹性设计-喻勇 - 其它资料”一文,供大家参考学习!
c S mmi全球架构师峰会!感谢您参加本次Ar h u t大会官方网站与资料下载地址: ar hs tcwww. c um m i . omCloud Foundry的弹性设计 喻 勇 Frank Yu yufvmware.com 高级经理 VMware上海研发中心 2012 VMware Inc. All rights reserved内容提要§ Cloud Foundry产品概述§ Cloud Foundry架构剖析§ Cloud Foundry的NATS模块§ Cloud Foundry的Router模块§ Warden Container§ QA CONFIDENTIAL 2Cloud Foundry产品概述 CONFIDENTIAL 3云计算的三个层次 SaaS Software as a Service PaaS Platform as a Service IaaS Infrastructure as a Service IaaS: 硬件的自动化管理,人与机器的解耦合 获得效率/牺 牲性能 PaaS: 应用的自动化管理,应用与OS的解耦合 获得弹性/牺牲控制 CONFIDENTIAL 4Cloud Foundry的元素 OSS community vFabricPostgres Private Clouds Data Services vFabric Public Clouds RabbitMQTM Msg Services Micro Clouds Other Services Additional partners services … CONFIDENTIAL Apache2 License 5演 示 CONFIDENTIAL 6vmc 工具 vmc target vmc login vmc push bind services Yes vmc update vmc instances 100 CONFIDENTIAL 7应用平台支持: 不断增多§ Java平台 § Python平台 Grails模仿Rails的Java平台实现 Django 最流行的PythonWeb框架 Java_web 普通Java web程序 Wsgi Python的CGI Lift基于Scale的web框架 Spring 流行的Java框架 § 其他平台 Static page 静态页面§ Ruby平台 node.js 异步Web框架 Rack 最小化的Ruby Web框架 Erlang Rails3 一站式的Ruby Web框架 Php Sinatra 极简主义的Ruby Web框架 Microsoft .net standalone 独立的程序 CONFIDENTIAL 8服务平台支持:不断增多§ 主流服务 § 存储 Mongodb Atmos EMC专业存储 最流行的Nosql数据库 FileSystem 远程NFS支持 MySQL Vblob 提供Amazon S3支持 传统开源关系数据库 Postgresql § 消息 MySQL的有力竞争者 RabbitMQ 出色的Erlang队列系统 Redis 极快的内存KV数据库 § 大数据 Neo4j Hadoop集成 图数据库 Project Serengeti http://serengeti.cloudfoundry.com CONFIDENTIAL 9Cloud Foundry的特点§ 开源 Github上开放源码,并鼓励社区贡献和check-in 目前所有核心模块都已经开源 开放的开发平台和流程,VMware RD与社区开发者采用相同的代码审核和签入流程 Apache 2开源许可协议§ 开放 支持多种语言、框架、服务和底层IaaS基础平台 支持多种运维方式,公有,私有,cloudfoundry.com§ 自动化 应用和服务的自动化配置 CONFIDENTIAL 10Cloud Foundry架构剖析 CONFIDENTIAL 11Cloud Foundry的设计理念§ 前提 § 设计 假设失败 组件的松耦合 为MTTR优化,而不是MTBF 更少的类,更多的实例 快速失效,自我修复 消息是基础 横向扩展的组件 寻址和组件发现 命令和控制 分布式状态,没有单点故障 JSON 极度简单 数据通过HTTP或File/Blob传递§ 模式 § 内核组件的特点 事件驱动 动态发现 异步 无依赖性和启动顺序 非堵塞 通过HTTP/JSON监控 独立 位置独立性 消息传递 最终一致性 CONFIDENTIAL 12the closer to the center of the system the dumber the code should be CONFIDENTIAL 13Cloud Foundry架构的逻辑视图 CONFIDENTIAL 14消息总线§ 寻址和发现 不需要静态IP和DNS查询 Layer 4协议§ 命令和控制§ 中央通讯系统§ Dial tone fire and forget§ Protects itself at all costs§ Idempotent Semantics CONFIDENTIAL 15路由引擎§ 处理所有HTTP流量§ 从DEAs获得信息并实时更新路由表§ 维护分布式路由状态§ 将对URL的访问路由至具体的应用§ 在应用实例之间分发流量(均衡负载) CONFIDENTIAL 16大管家:Cloud Controller§ 处理所有的状态(state)变化§ 控制用户、应用和服务§ 对应用进行打包和预处理§ 将服务绑定到应用§ 对外提供REST API接口 可在Github中查看 https://github.com/cloudfoundry/cloud_controller/blob/master/cloud_controller/config/ routes.rb CONFIDENTIAL 17小护士:HealthManager§ 负责监控应用和服务的状态§ 如果出现状态异常,通知CloudController§ 没有改变应用或服务状态的权力(只读)§ Initial value with real-time delta updates to intended vs. real§ Determines drift CONFIDENTIAL 18DEA§ Droplet 和 Droplet Execution Agent§ 负责运行所有的应用§ 监控应用的具体运行参数 CPU,内存,IO,线程,磁盘,等等§ 对于DEA来说,所有应用都是一样的§ “concept” of ability and desire to run an application runtimes options cluster avoidance memory/cpu§ Alerts on any change in state of applications§ Provides secure/constrained OS runtime Hypervisor Unix File and User Linux Containers Single or Multi-Tenant CONFIDENTIAL 19上一篇:MongoDB数据库一(MongoDB数据库管理)