对弹性计算云系统升级的装置、方法及系统制造方法及图纸

技术编号:7575819 阅读:214 留言:0更新日期:2012-07-18 19:39
本申请公开了一种弹性计算云系统中的服务器,包括块设备驱动装置和至少一个块设备服务装置,块设备驱动装置用于在接收到对应一个块设备服务装置的数据读写请求时,将接收到的数据读写请求放置到为该块设备服务装置预先维护的等待队列中,并从等待队列中提取数据读写请求移置到为该块设备服务装置预先维护的未决队列中,并将未决队列中的数据读写请求转发给该块设备服务装置处理;并在确定出该块设备服务装置将升级时,停止将未决队列中的数据读写请求转发给该块设备服务,以及在确定出业务升级完成后,将未决队列中的数据读写请求移置回等待队列中;块设备服务装置根据块设备驱动装置发来的数据读写请求,进行对应请求数据的读写操作。

【技术实现步骤摘要】

本申请涉及弾性计算云
和块设备的存储服务
,尤其是涉及ー种对基于块设备存储服务实现数据存储的弾性计算云系统进行升级的装置、方法及系统。
技术介绍
弾性计算云(Elastic Computing Cloud)是ー种云计算服务,即基于虚拟化技术, 将本地的物理服务器虚拟化成多个虚拟服务器来使用,以此来提高资源的使用率,压缩成本。其中基于弹性计算云技术虚拟出来的虚拟服务器(即虚拟机)的存储服务都是基于块设备的远程存储服务,业界称之为弹性块存储服务(Elastic Block Storage) 0块设备的远程存储服务,是基于块设备驱动(Block Device Driver)提供的ー种块级别的存储服务。本地的物理服务器和/或虚拟服务器可以将服务器的数据基于块的方式存储到远程的存储资源池中,从而节约本地的存储资源。简而言之,块设备的远程存储服务提供了一个类似物理裸硬盘的服务来存储本地的物理服务器和/或虚拟服务器的数据, 且对数据的格式、文件系统的格式没有任何限制。随着弹性计算云技术的快速发展,弾性块存储服务对远程存储服务的高可用性提出了更高的要求。通常情况下,基于弹性计算云技术虚拟出来的虚拟服务器都数以万计,并将虚拟出来的这数以万计的虚拟服务器提供给第三方使用(例如政府部门、传统大中小型企业、互联网中小站长、个人用户等)。而众多的虚拟服务器组成的集群都是依托块设备的远程存储服务而运转起来的,显然,远程存储服务承载并流转着整个弹性计算云系统的数据,远程存储服务的可用性关系到整个弹性计算云系统的可用性。现有技术中,对基于块设备的远程存储服务实现数据存储的弾性计算云系统进行升级时,需要首先通知服务使用用户因升级过程将导致服务暂停,然后将整个弹性计算云系统中的各个虚拟机服务器的服务暂停,这样才能对存储服务进行服务升级(例如BUG的修复以及提供新的功能等),在重新部署后的服务正常工作后,再将整个弾性计算云系统中的虚拟机服务器恢复正常运转,从而完成ー个升级过程。此外在升级过程中,如果用户正在使用弾性计算云系统中的虚拟服务器提供的Web服务访问Web网页吋,就会导致用户不能继续访问Web网页,而如果用户正在使用弾性计算云系统中的虚拟服务器进行分布式计算吋,也会导致用户不得不终止当前正在进行的分布式计算。由此可见,现有技术中对基于块设备的远程存储服务实现数据存储的弾性计算云系统进行升级时,其升级过程十分繁琐,升级过程中需要耗费较长时间,一般需要几个小时的时间才能完成升级操作,升级效率比较低,并且还会导致用户在升级过程中不得不中断当前正在进行处理的业务,因此不能保证在升级过程中为用户提供高可用的服务,降低了用户的使用体验。
技术实现思路
本申请实施例提供一种对基于块设备存储服务实现数据存储的弾性计算云系统进行升级的装置、方法及系统,以通过在线升级的方式提高升级效率,且避免升级对用户正在使用的业务中断所导致的用户使用体验差的问题。为解决上述问题,本申请实施例提供了一种基于块设备存储服务实现数据存储的弾性计算云系统中的服务器,包括块设备驱动装置和至少ー个块设备服务装置,其中块设备驱动装置,用于在接收到对应ー个块设备服务装置的数据读写请求吋,将接收到的数据读写请求放置到为该块设备服务装置预先维护的等待队列中,并从所述等待队列中提取数据读写请求并移置到为该块设备服务装置预先维护的未决队列中,并将所述未决队列中的数据读写请求转发给该块设备服务装置进行处理,并在接收到该块设备服务装置对接收到的数据读写请求的处理结果后,将转发的数据读写请求从所述未决队列中删除;并在确定出该块设备服务装置将进行业务升级时,停止将所述未决队列中的数据读写请求转发给该块设备服务进行处理,以及在确定出将进行业务升级或者业务升级完成后,将所述未决队列中的数据读写请求移置回所述等待队列中;块设备服务装置,用于根据块设备驱动装置转发来的数据读写请求,针对块设备存储资源池进行对应请求数据的读写操作。为解决上述问题,本申请实施例还提供了一种对基于块设备存储服务实现数据存储的弹性计算云系统进行升级的方法,包括在毎次接收到对应ー个块设备服务的数据读写请求吋,将接收到的数据读写请求放置到为该块设备服务预先维护的等待队列中;从所述等待队列中提取数据读写请求并移置到为该块设备服务预先维护的未决队列中,并将所述未决队列中的数据读写请求转发给该块设备服务进行处理,并在接收到该块设备服务对接收到的数据读写请求的处理结果后,将转发的数据读写请求从所述未决队列中删除;以及在确定出该块设备服务将进行业务升级时,停止将所述未决队列中的数据读写请求转发给该块设备服务进行处理;以及在确定出将进行业务升级或者业务升级完成后,将所述未决队列中的数据读写请求移置回所述等待队列中。为解决上述问题,本申请实施例还提供了一种对基于块设备存储服务实现数据存储的弹性计算云系统进行升级的装置,包括等待队列维护单元,用于在每次接收到对应ー 个块设备服务的数据读写请求吋,将接收到的数据读写请求放置到为该块设备服务预先维护的等待队列中;未决队列维护单元,用于从所述等待队列维护单元维护的等待队列中提取数据读写请求并移置到为该块设备服务预先维护的未决队列中;读写请求处理单元,用于将所述未决队列维护单元维护的未决队列中的数据读写请求转发给该块设备服务进行处理,并在接收到该块设备服务对接收到的数据读写请求的处理结果后,将转发的数据读写请求从所述未决队列中删除;并在确定出该块设备服务将进行业务升级时,停止将所述未决队列中的数据读写请求转发给该块设备服务进行处理,以及在确定出将进行业务升级或者业务升级完成后,将所述未决队列中的数据读写请求移置回所述等待队列中。为解决上述问题,本申请实施例提供了一种基于块设备存储服务实现数据存储的弾性计算云系统,包括存储资源池,用于基于块设备存储服务方式存储弹性计算云系统中的数据;和至少ー个物理服务器,用于在每次接收到对应ー个块设备服务的数据读写请求吋,将接收到的数据读写请求放置到为该块设备服务预先维护的等待队列中,并从所述等待队列中提取数据读写请求并移置到为该块设备服务预先维护的未决队列中,井根据所述未决队列中的数据读写请求,针对所述存储资源池进行对应请求数据的读写操作;并在确定出该块设备服务将进行业务升级时,停止对所述未决队列中的数据读写请求进行处理,以及在将进行业务升级或者业务升级完成后,将所述未决队列中的数据读写请求移置回所述等待队列中。本申请实施例提出的技术方案,在基于块设备存储服务实现数据存储的弾性计算云系统中的物理服务器中,通过分别为每个虚拟出来的块设备服务维护两个队列,ー个是数据读写请求等待(Waiting)队列,用来维护针对ー个发向块设备服务并等待其处理的数据读写请求,另ー个是悬而未决(Pending)队列,用来维护物理服务器针该对块设备服务当前正在处理的数据读写请求,在该块设备服务需要进行升级时,停止对为该块设备服务维护的Pending队列中的数据读写请求进行处理,并在该块设备服务升级完成并恢复运作后,将Pending队列中正在处理的数据读写请求再次放入到Waiting队列中重新接受调度处理,从而实现了在不中断存储服务的情况下完成对弹性计算云系统中存储服务的业务升本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:陈伟才陈波康华
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术