HC5351112 - 6 2 Cinder业务流程与开发实践_第1页
HC5351112 - 6 2 Cinder业务流程与开发实践_第2页
HC5351112 - 6 2 Cinder业务流程与开发实践_第3页
HC5351112 - 6 2 Cinder业务流程与开发实践_第4页
HC5351112 - 6 2 Cinder业务流程与开发实践_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

HC53511,云计算,V1R6,1.0,肖东,2017-08,杨力凡,新开发,第六章第二节Cinder业务流程与开发实践,Cinder主要业务流程CinderAPI开发实践,Cinder卷管理,Cinder创卷流程,创建流程:a.Client发送请求,通过RESTFUL接口访问cinder-api。b.Api解析响应请求,api解析由Client发送来的请求,并通过rpc进一步调用cinder-scheduler。c.Scheduler对资源进行调度,scheduler选择合适的节点进行。d.Volume调用Driver创建卷,volume通过指定Driver进行卷的创建。整体处理流程包括三大部分,分别是API、Scheduler、Volume三部分,Scheduler节点,API节点,Cinder创卷流程(Cinder-API),VolumeController.creatVolumeController.create函数对创建请求进行响应,从request中抽出volume_type,metadata,原卷,镜像,Snapshot等信息进行检查。调用Cindervolume(api)的create方法调用CinderVolume(api)的create方法条件检查(如指定原卷和volume_type但不一致)生成create_what字典用于创建卷生成用于创建卷的taskflow并执行。创建卷的taskflow(CinderAPI)ExtractVolumeRequestTask:实现提取并验证输入的请求信息,并返回经过验证的参数信息QuotaReserveTask:对资源配额信息进行检测,检测建立卷的可行性EntryCreateTask:在数据库中为给定的卷建立相关条目QuotaCommitTask:提交新的资源配额的预留信息到数据库中VolumeCastTask:远程调用实现卷的建立操作VolumeCastTask通过消息队列服务将请求发送给CinderScheduler。,Cinder-API(VolumeController),Cinder-Volume(API),call,Cinder-Schedule(Manager),call,RPC,Cinder-Schedule(rpcapi),Volume节点,Scheduler节点,Cinder-Schedule(Manager).creat:生成用于创建卷的taskflow并执行。创建卷的taskflow(Scheduler)ExtractSchedulerSpecTask:抽出创建卷的规格ScheduleCreateVolumeTask:执行创建卷ScheduleCreateVolumeTask对所有的host(backend)进行过滤和称重,选取最合适的host。将请求发送给指定的host,Cinder-Schedule(Manager),Cinder-Volume(Manager),Cinder-Volume(rpcapi),call,RPC,Cinder创卷流程(Cinder-Scheduler),Volume节点,Cinder-Volume(VolumeManager)生成用于创建卷的taskflow并执行。创建卷的taskflow(Volume)ExtractVolumeRefTask:从数据库中取出卷信息ExtractVolumeSpecTask:抽出创建卷的规格NotifyVolumeActionTask:标识开始创卷动作CreateVolumeFromSpecTask:调用VolumeDriver执行创建卷操作,并更新数据库信息。CreateVolumeOnFinishTask:标识创卷完成动作CreateVolumeFromSpecTask调用VolumeDriver进行创建卷的操作。VolumeDriver通过SSH/SMIS等协议实现卷的创建,并把卷的标示等信息传回给Cinder-volume用于数据库的更新。,Cinder-Volume(Manager),backend,VolumeDriver,call,xxx,Cinder创卷流程(Cinder-Volume),Nova调用CinderAPI创建卷,传递主机的信息,如hostname,iSCSIinitiatorname,FCWWPNsCinderAPI将该信息传递给CinderVolume。Cindervolume通过创建卷时保存的host信息找到对应的CinderDriver。CinderDriver通知存储允许该主机访问该卷,并返回该存储的连接信息(如iSCSIiqn,portal,FCTargetWWPN,NFSpath等)Nova调用针对于不同存储类型进行主机识别磁盘的代码(Cinder提供了brick模块用于参考)实现识别磁盘或者文件设备。Nova通知Cinder已经进行了挂载。Nova将主机的设备信息传递给hypervisor来实现虚拟机挂载磁盘。,Cinder的挂卷流程(Attachvolume),Cinder创卷流程,Cinder主要业务流程CinderAPI开发实践,创卷准备获取Token获取imageRef(所用镜像的UUID,可选,当创建镜像卷时携带),Cinder创卷流程-Rest接口,获取Token-请求,获取Token-返回,获取imageRef,创建卷-请求,创建卷-返回,Cinder的主要API(V2),volume:size:40/必选name:openapi_vol01,/必选description:createforapitest,/必选imageRef:027cf713-45a6-45f0-ac1b-0ccc57ac12e2,multiattach:false,/多服务器挂载availability_zone:eu-de-01,source_volid:null,volume_type:SATA,metadata:volume_owner:openapi,consistencygroup_id:null,/所属一致性组IDsnapshot_id:null,OS-SCH-HNT:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论