8. Cloud Foundry是一个开放的PaaS平台The PaaS of choice for the Cloud era
简单
开发者专注于他们的代码,不锁定于特定中间件
开放
避免锁定在特定的云、框架和服务上
从第一天起就是完全开放的
灵活性和可伸缩性
应用自服务、自动部署、自动伸缩S
可扩展的架构,可以吸收未来云创新的发展
69. User Authentication and AuthorizationRouterDEA Pool Service GatewayAppsService ConnectorHealth ManagerMessagingCloud ControllerBuild PacksCloud Foundry BOSHMicroCloudsPrivateCloudsPublicCloudsService NodesCloud Foundry Components健康管理器
健康管理器 监控应用的正常运行时间/健康度,查找不匹配的应用状态(期望的/实际的). 云控制器提供了期望的状态,DEA提供实际的状态,如果健康管理器发现当前状态和预期的不一致,就会提示云控制器
70. Health Manager主要功能:
维护应用的实际状态
和预期状态对比
发送建议,确保和预期和实际状态相符其他功能:
支持短生命周期的应用
可配置的重启策略
水平扩展
71. Cloud Foundry Components服务网关
服务网关对本地服务或是第三方服务提供了接口,对服务的处理运行于Service Nodes或是外部第三方的SaaS服务 (e.g., email, messaging, database, storage, etc.).User Authentication and AuthorizationRouterDEA Pool Service GatewayAppsService ConnectorHealth ManagerMessagingCloud ControllerBuild PacksCloud Foundry BOSHMicroCloudsPrivateCloudsPublicCloudsService Nodes
72. Service Gateways主要功能:
服务目录
对服务节点的服务进行创建、删除、绑定、解绑
查询现有的实例数,接受云控制器来的绑定要求
SaaS的服务网关其他功能:
支持多节点
支持单一服务
松耦合
73. Cloud Foundry Components服务连接器
服务连接器提供了一个外部服务的接口 (e.g. Oracle DB).
外部服务是不受CF的控制 (也即,没有使用服务节点,提供一个连接字符串 (e.g. JDBC) 给CF,对开发者而言,和其他CF服务是一样的User Authentication and AuthorizationRouterDEA Pool Service GatewayAppsService ConnectorHealth ManagerMessagingCloud ControllerBuild PacksCloud Foundry BOSHMicroCloudsPrivateCloudsPublicCloudsService Nodes
74. Service Connector主要功能:
元数据管理其他功能:
服务类型模板
创建服务类似实例的各种模板(Oracle and SQLServer)
提供选择,使得服务实例可以跨空间共享
75. User Authentication and AuthorizationRouterDEA Pool Service GatewayAppsService ConnectorHealth ManagerMessagingCloud ControllerBuild PacksCloud Foundry BOSHMicroCloudsPrivateCloudsPublicCloudsService NodesCloud Foundry ComponentsUAA
The User Authorization and Authentication system provides user identity, security and authorization services. It manages third party Oauth 2.0 access credentials. It can also provide application access and identity-as-a-service for apps running on Cloud Foundry.
76. UAA and Login ServersResponsibility for:
Token Server
ID Server (User management)
OAuth Scopes (Groups)
Login UI
Access auditingRoadmap:
LDAP Login Server
Active Directory Login Server
Horizontally scalable Login Server
App User Management Service
77. 敏捷开发代码开发App1程序员John的工作环境Other dev apps代码开发App1程序员Mary的开发环境Other dev appsQAQAApp1QA版本Other QA appsProductionPRODUCTIONApp1生产上线版本Other Prod apps无需修改代码和配置!“从有想法到生产上线---一天内”
88. BOSH Logical ViewBOSH
Deploys and manages large scale distributed systems. BOSH provides the means to go from deployment (i.e., Chef/Puppet) to VM creation and management (i.e., cloud CPI). It includes interfaces for vSphere, vCloud, AWS and OpenStack. Additional CPI can be written for alternative IaaS providers.
89.
部署系统
更新配置
版本管理
监控运行
BOSH在Cloud Foundry中的作用
90. BOSH的内部结构
91. BOSH部署原理(1)BOSH CLIOperation
Staff
BOSH BOSH是部署系统的总指挥
管理员通过BOSH CLI工具发送指令给BOSH
93. BOSH部署原理(3)Inner Shell. . .BOSH CLIIaaS
VMOperation
Staff创建虚拟机
VM
VM
VM
BOSH CPIBOSH调用CPI动态生成虚拟机
Inner Shell – 被管理的部分
94. BOSH部署原理(4)Inner Shell. . .BOSH CLIIaaS
VMStemcellOperation
StaffDeployment创建虚拟机
VM
VM
VM
BOSH CPIStemcell提供虚拟机模板
Deployment manifest定义部署细节: IP地址、用户名/密码等