www.oasis-open.org TOSCA* & The Government Sector * Topology and Orchestration Specification for Cloud Applications 云应用程序的拓扑结构和业务流程规范技术委员会 Tobias Kunze, Red Hat Motivation 动机 Why Standards? Government Needs 政府需求 Outsourcing外包服务 ⇦ Agility敏捷 ⇦ Cost Savings 节约开支 Quality 质量 Vendor Neutrality 供应商中立 ⇦ ⇦ Standards Provide 提供的标准 Defined Contracts 定义的合同 Speed through Reuse 加速重复使用 Insurance against Failure确保减低失败 State-of-the-Art Services周到的服务 Vendor Neutrality 供应商中立 Interoperability互操作性 ⇦ Interoperability互操作性 ⇦ Use Cases 案例 Use Cases Addressed 案例分析研究 ‣ Deploy配置: Dependency resolution, Install, Configuration, Orchestration 依赖性决议,安装,配置,业务流程 ‣ Operate操作: Start, Stop, Patch, Scale 开始,停止,补丁,规范 ‣ Migrate迁移: Disaster Recovery, GeoRedundancy, Cost Optimization, Promotion 灾难恢复,Geo-冗余 ,成本优化,提升 Other Scenarios: Creating a Market For Cloud Applications 其它情况:为云计算应用程序建立一个市场 3. Browse and Select浏览和选择 Service Catalog 5. Use使用 4. Provision 规定 服务种类 Service Instance 服务保证 2. Publish出版 Service Template 服务模板 1. Create用户 6 How it Works 如何工作 What Is “(Cloud) Service Template” All About? ”云服务模板”是关于什么的? A new language (“metamodel”) to specify指定一个新的语言 Node Types 节点类型 Rel.ship Types 关系类型 Group Template 团体模板 the building blocks of your application应用程序的基石 the management functions these building blocks offer to be managed 这些基石提供的用来管理的管理方程 Topology the relations between these building blocks这些基石之间的关系 拓扑 (Template) Collection of node types and relationship types (for reuse purposes)节点点类型和关系类型的集合(为重复使用) the procedures to follow in order to manage your application as a whole为了全面管理你的应用程序而需遵从的程序 (Cloud) Service Template Plans 计划 8 Graphical Representation图形化表达 Service Template服务 Node Types节点类型 Topology Template拓扑 Node Type Properties Relationship Template 模板关系 Interfaces type for type for Node Template 节点模板 Properties Relationship Types关系类型 Relationship Type Plans计划 Group Template 团体模板 9 How Plans and Nodes Fit Together 计划和节点如何结合在一起 … Create Cluster建立 … …refers to… …指… Task of a plan refers to interface of a topology node 一个计划的任务指的是一个拓扑节点的界面 Topology node specifies all interfaces offered to manage it 拓扑节点指被分配来管理它的所有界面 Interface is bound to a concrete implementation 界面被绑定到一个具体的实施 WebSphere Cell … …bound to… …势必… Script ------------------------------------------------------------------ Implementation already available at providers side, or 实施已经在提供商方存在 Implementation is copied from somewhere, or 或者实施可以从其它地方复制过来 A standardized Cloud Interface (Iaas, PaaS, SaaS) is used, or ... 标准化的云界面在使用(Iaas, PaaS, SaaS) ,或… 10 More Colorful… 再加点色彩,从另个角度讲… Topology 拓扑结构 Orchestration (Plans) 业务流程(计划) 11 Refined View 更细致的解说 How ...如何 ---- BPEL EAR (EJBs,…) The business processes of The business logic of the the application (BPEL, application, e.g. EJBs, BPMN, Human Tasks,…)应 JSPs, JPEG,… 应用程序的商业逻辑 用程序的商业过程 OVF OVF OVF The images of the middleware (DB2, Websphere,…) required to run the application 运行这个应用程序要求 的中间件图像 ---- ------- ---- ---- With ...用什么 ---- ---Scripts ---- (Existing) scripts used by task of plans to manage the cloud application 计划任务用来管理本云 应用程序而 调用的(现有的)程序 Workflows (Existing) workflows used by subprocess-tasks of plans 子任务计划调用的(现有的)工作 流 12 Baseline 基本点 TOSCA is modular and composable TOSCA是模块化的和可组合的 It does not reinvent the wheel, i.e. it uses existing standards wherever possible 它并不是重新开创这个领域,例如,它会尽量利用现有的标准 E.g. WSDL, BPMN, OVF,… 13 The Service Template 服务模板 <ServiceTemplate …> YAML as well <Extensions/>? <Import />* <Types/>? ( <TopologyTemplate/> | <TopologyTemplateReference/> )? <NodeTypes/>? <RelationshipTypes/>? <Plans/>? </ServiceTemplate> 14 Effort 付出 History 历史 Industry consortium formed产业界联合(IBM, SAP, Red Hat, CA, Citrix, WSO2) Addt’l members另外的成员: Capgemini, Cisco, Citrix, EMC, NetApp, PwC, Software AG, Virtunomic Charter submitted to OASIS 宣言发到OSIS Renamed TOSCA 成立TOSCA May 2011 2011年5月 Call for Participation 呼吁参加 First TC meeting 第一次会议 Sep 2011 Oct 2011 Nov 2011 Dec 2011 2011年9月 2011年10月 2011年11月 2011年12月 Members TOSCA标准委员会成员 Future 未来计划 Public Draft 公示草案 Public Review 公示 Initial Draft 起始草案 Mar 2012 2012年3月 Draft 2 第二版 Candidate Standard 候选标准 Candidate Standard 候选标准 Public Review 公示 … Draft n …第n版 Jul 2012 Aug 2012 Sep 2012 Oct 2012 Nov 2012 Dec 2012 6月 10月 11月 12月 8月 9月 Q&A 回答问题 Appendix: Examples 附:事例 Example: High Level View 事例:高层面看 BPEL Files Uses 使用 WSDL Files implemented by 实施 deployedOn 部署 EJBs deployedOn 部署 deployedOn 部署 Node Template 节点模板 Relationship Template 关系模板 WebSphere Process Server Requires要求 …and this is a WebSphere Cell bit more clomplex… requires DB2 Server 21 Example实例: WebSphere Cell Refined细节 WebSphere Cell DB2 Server Properties, e.g.: WAS install location, Profile name, Node name 属性,如WAS安装, 配置文件名,节点名 WebSphere Cell DB2 Server 1..* IHS Node WAS ND DeployMgr Node WAS ND Managed Node 1..* DB2 Database Instance Cluster exists "cluster" "database" Application Server Instance Properties, e.g.: ports, servername, weight 属性,如端口,服务 器名,重量 22 Example: Overall Topology Template 拓扑模板总体观 BPEL Files WSDL Files WebSphere Process Server EJBs WebSphere Cell 1..* IHS Node WAS ND DeployMgr Node WAS ND Managed Node Cluster 1..* DB2 Server Application Server Instance DB2 Database Instance 23 Example实例: Amazon亚马逊 BPEL Files Uses使用 WSDL Files implemented by 实施 deployedOn部署 WebSphere Process deployedOn部署 Server Amazon requires EJBs deployedOn部署WebSphere Cell requires DB2 Server 24 …Which is the “Interoperable Service Templates” Scenario (see later) 也就是“可互操作服务模板”场景 BPEL Files BPEL文件 WSDL Files WSDL文件 WebSphere Process Server EJBs Amazon WebSphere Cell DB2 Server DB2服务器 25 Example: Amazon – Refined Scenario 亚马逊实例-细节描述 WSDL Files Implemented by实施 On Premise 在经营场所 EJBs deployedOn WebSphere Cell requires DB2 Server (ApplicationDat a) Uses使用 BPEL Files deployedOn WebSphere Process Server requires Amazon 亚马逊 WebSphere Cell requires DB2 Server (WAS Data) 26 Example: Amazon – Refined Scenario (Details)亚马逊实例-细节描述 The Web Services required by the BPEL processes are hosted on premise BPEL进程要求的网络服务托管在经营场所 The EJBs (e.g.) implementing the Web Services are deployed on WebSphere hosted on premise实施网络服务的EJB部署在 进程服务器等在亚马逊的EC2上安装和管理 WebSphere,托管在经营场所. The application data of the WS/EJBs are stored in DB2 on premise 在经营场所储藏的DB2 WS/EJB应用程序数据 This ensures compliance with data privacy/confidentiality rules这可以确保遵守数据 uses WSDL Files 的隐私权/保密规则 Implemented by EJBs On Premise deployedOn WebSphere Cell requires DB2 Server (ApplicationData) Process Server etc is installed and managed at Amazon’s EC2 The corresponding middleware is provided as AMIs 相应的中间件以AMI形式提供 The process models are deployed on Process Server进程模型在进程服务器上部署 Process Server maintains state data in DB2 also running in EC2 进程服务器在DB2上保存数据,也在EC2上运行 BPEL Files deployedOn WebSphere Process Server Amazon requires WebSphere Cell requires DB2 Server (WAS Data) 27 Example: Reusing Existing Services 实例:重新使用现有服务 „somewhere1“ BPEL Files WS2 bound to „somewhere2“ 间件在所知云端进行管理 Uses使用 WS1 WSDL Files deployedOn部署 WSn WebSphere Process deployedOn部署 Server WebSphere Cell Requires要求 DB2 Server „somewheren“ The Web Services needed by the BPEL processes are reused “wherever” they are 网络服务所需的BPEL流程可以在任何 地方再利用 Requires要求 … Only the processes and required middleware is managed on a “known” cloud只有流程和要求的中 The existing Web Services are bound to the BPEL process by the established mechanisms 现存的网络服务被建立的机制绑定到 BPEL流程 Specifying binding details can be part of the build plan of the application’s Service Template (.ste) 绑定细节可以是建立计划的应用程序 服务模板的一部分 28 Example: SAP SAP实例 BPEL Files Uses使用 deployedOn WSDL Files implemented by实施 SAP Workflow deployedOn部属 SAP requires EJB deployedOn部属 Netweaver requires Oracle 29 Example: Microsoft 微软实例 BPEL Files Uses使用 deployedOn WSDL Files implemented by实施 deployedOn部署 BizTalk Azure requires .Net Assemblies deployedOn部署 .Net requires SQL Server 30 Example: Different Hosters of a Particular Application 某一个应用程序的不同托管主机 BPEL Files Uses使用 IBM deployedOn部署 WSDL Files implemented by实施 SAP Workflow AT&T T-Systems deployedOn部署 Requires要求 EJB ... deployedOn部署 Netweaver Requires要求 Oracle 31