JP2014501995A - Elastic computing cloud system upgrade - Google Patents

Elastic computing cloud system upgrade Download PDF

Info

Publication number
JP2014501995A
JP2014501995A JP2013548460A JP2013548460A JP2014501995A JP 2014501995 A JP2014501995 A JP 2014501995A JP 2013548460 A JP2013548460 A JP 2013548460A JP 2013548460 A JP2013548460 A JP 2013548460A JP 2014501995 A JP2014501995 A JP 2014501995A
Authority
JP
Japan
Prior art keywords
service
block device
write
data
read request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013548460A
Other languages
Japanese (ja)
Other versions
JP5931919B2 (en
Inventor
ウェイツァイ チェン
ボー チェン
ホワ コン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2014501995A publication Critical patent/JP2014501995A/en
Application granted granted Critical
Publication of JP5931919B2 publication Critical patent/JP5931919B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

エラスティックコンピューティングクラウドシステムのサーバは、ブロックデバイスドライバ装置および少なくとも1つのブロックデバイスサービス装置を含む。サーバは、記憶サービスを中断することなく記憶サービスのアップグレードを行うことができるように、記憶サービスにホットデプロイメントを実施する。ブロックデバイスドライバ装置は、それぞれの記憶サービスのために、待機待ち行列および保留待ち行列を維持する。記憶サービスがアップグレードを行うという判定に応答して、ブロックデバイスドライバ装置は、サービスのために保留待ち行列内に維持されているデータの書き込み/読み取り要求の処理を停止して、保留待ち行列内で目下処理中のデータの書き込み/読み取り要求を、再ディスパッチのために待機待ち行列に戻し、それにより、記憶サービスを中断することなく、エラスティックコンピューティングクラウドシステムにおける記憶サービスのアップグレードの処理完了が実現される。The server of the elastic computing cloud system includes a block device driver device and at least one block device service device. The server performs hot deployment on the storage service so that the storage service can be upgraded without interrupting the storage service. The block device driver device maintains a waiting queue and a pending queue for each storage service. In response to the determination that the storage service is performing an upgrade, the block device driver device stops processing write / read requests for data that is maintained in the hold queue for the service and waits in the hold queue. Returning the current data write / read request back to the wait queue for redispatch, thereby completing the storage service upgrade process in the elastic computing cloud system without interrupting the storage service Is done.

Description

本開示は、ブロックデバイスに関連付けられたエラスティックコンピューティングクラウドおよび記憶サービスの技術分野に関し、具体的には、ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施する、エラスティックコンピューティングクラウドシステムをアップグレードするための装置、方法、およびシステムに関する。   The present disclosure relates to the technical field of elastic computing cloud and storage services associated with block devices, and in particular, elastic computing that implements storage of data based on storage services associated with block devices. The present invention relates to an apparatus, a method, and a system for upgrading a cloud system.

(関連出願の相互参照)
本出願は、2011年1月5日に出願された、「Apparatus,Method and System of Upgrading Elastic Computing Cloud System」という題名の中国特許出願第201110001297.X号の優先権を主張し、その全体が、参照により本明細書に組み込まれる。
(Cross-reference of related applications)
This application is filed on January 5, 2011, Chinese Patent Application 201110001297, entitled “Apparatus, Method and System of Upgrading Elastic Computing System”. Claim X priority, which is incorporated herein by reference in its entirety.

エラスティックコンピューティングクラウドは、リソース使用率を改善するため、およびコストを削減するために、仮想化技術に基づいて、ローカル物理サーバを、使用用の複数の仮想サーバとして仮想化するコンピューティングクラウドサービスである。エラスティックコンピューティングクラウド技術に基づいて仮想化された、仮想サーバ(すなわち、仮想マシン)の記憶サービスは、ブロックデバイスベースの遠隔記憶サービスであり、これは業界において、エラスティックブロック記憶と呼ばれる。   Elastic computing cloud is a computing cloud service that virtualizes local physical servers as multiple virtual servers for use based on virtualization technology to improve resource utilization and reduce costs It is. A virtual server (ie, virtual machine) storage service virtualized based on elastic computing cloud technology is a block device-based remote storage service, referred to in the industry as elastic block storage.

ブロックデバイスの遠隔記憶サービスは、ブロックデバイスドライバによって提供されるブロックレベルの記憶サービスである。ローカル物理サーバおよび/または仮想サーバは、サーバのデータを遠隔記憶リソースプール内にブロックの単位で記憶することができ、それによりローカル記憶リソースを節約する。つまり、ブロックデバイスの遠隔記憶サービスは、ローカル物理サーバおよび/または仮想サーバのデータを格納するための物理ハードドライブに類似したサービスを提供し、データフォーマットおよびファイルシステムフォーマットに制限がない。   A block device remote storage service is a block level storage service provided by a block device driver. The local physical server and / or virtual server can store the server's data in blocks in the remote storage resource pool, thereby conserving local storage resources. In other words, the remote storage service of the block device provides a service similar to a physical hard drive for storing data of a local physical server and / or virtual server, and there is no restriction on the data format and the file system format.

エラスティックコンピューティングクラウド技術の急速な発展に伴い、エラスティックブロック記憶サービスは、遠隔記憶サービスの高可用性について高い基準を有する。一般に、エラスティックコンピューティングクラウドに基づいて仮想化された仮想サーバが何万とある。これらの何万もの仮想サーバは、第三者(政府機関、従来の大企業、および中小企業、小規模および中規模のインターネットのウェブマスター、個人ユーザ、等)に使用してもらうために提供される。複数の仮想サーバから形成されるクラスタは、動作のために、ブロックデバイスの遠隔記憶サービスに依存する。遠隔記憶は、エラスティックコンピューティングクラウドシステム全体のデータを保持し、循環させる。遠隔記憶サービスの可用性は、エラスティックコンピューティングクラウドシステム全体の可用性に関連する。   With the rapid development of elastic computing cloud technology, elastic block storage services have high standards for the high availability of remote storage services. In general, there are tens of thousands of virtual servers virtualized based on the elastic computing cloud. These tens of thousands of virtual servers are provided for use by third parties (government agencies, traditional large enterprises, and small businesses, small and medium internet webmasters, individual users, etc.) The Clusters formed from multiple virtual servers rely on block device remote storage services for operation. Remote storage holds and circulates data for the entire elastic computing cloud system. The availability of the remote storage service is related to the overall availability of the elastic computing cloud system.

ブロックデバイスの遠隔記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムをアップグレードする際、既存の技術は、まずサービスのユーザに、アップグレード処理のためにサービスが一時的に使用不能となることを通知して、記憶サービスのサービスアップグレード(例えば、バグの修復または新機能の提供、等)を行うために、エラスティックコンピューティングクラウドシステム全体のそれぞれの仮想サーバのサービスを一時的に中断する必要がある。再展開されたサービスが正常に動作した後、エラスティックコンピューティングクラウドシステム全体の仮想サーバは通常の動作に戻ることができ、それによりアップグレード処理が完了する。アップグレード処理は、ユーザがエラスティックコンピューティングクラウドシステムの仮想サーバによって提供されたウェブサービスを使用するウェブページにアクセスし続けることを防止する、つまりユーザが分散コンピューティングを行うためにエラスティックコンピューティングクラウドシステムの仮想サーバを使用している場合に、ユーザに対して進行中の分散コンピューティングを終了するように強要する。   When upgrading an elastic computing cloud system that performs storage of data based on a block device remote storage service, existing technology will first inform the service user that the service is temporarily unavailable for the upgrade process. And temporarily suspend the services of each virtual server in the entire elastic computing cloud system to perform storage upgrade service upgrades (eg, fix bugs or provide new features) There is a need to. After the redeployed service operates normally, the virtual server of the entire elastic computing cloud system can return to normal operation, thereby completing the upgrade process. The upgrade process prevents the user from continuing to access web pages that use web services provided by the virtual server of the elastic computing cloud system, i.e., the elastic computing cloud for the user to perform distributed computing. When using the system's virtual server, it forces the user to terminate the ongoing distributed computing.

以上のように、ブロックデバイスの遠隔記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムを既存の技術でアップグレードする場合、関連するアップグレード処理は非常に複雑である。アップグレード処理は、比較的長い時間がかかり、一般にアップグレード作業の完了には数時間を要するため、アップグレードの効率は比較的低い。さらに、アップグレードの処理中、ユーザは進行中のトランザクションを終了するように強要される場合があるため、ユーザに対してサービスの高可用性を提供することを保障できず、ユーザの使用経験を悪化させる。   As described above, when an elastic computing cloud system that performs data storage based on a remote storage service of a block device is upgraded with existing technology, the related upgrade process is very complicated. The upgrade process takes a relatively long time and generally requires several hours to complete the upgrade operation, so the efficiency of the upgrade is relatively low. In addition, during the upgrade process, the user may be forced to terminate an ongoing transaction, so it cannot be guaranteed to provide high service availability to the user and will deteriorate the user experience. .

本開示の例示的な実施形態は、オンラインアップグレードの技法を通じてアップグレードの効率を改善し、アップグレード中に、ユーザによって目下使用されているトランザクションが終了されることに起因するユーザの悪い使用経験の問題を回避するために、ブロックデバイスの遠隔記憶に基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムをアップグレードするための装置、方法、およびシステムを提供する。   The exemplary embodiments of the present disclosure improve the efficiency of the upgrade through online upgrade techniques and address the problem of poor user experience due to the transactions currently being used by the user being terminated during the upgrade. To avoid, an apparatus, method, and system for upgrading an elastic computing cloud system that implements storage of data based on remote storage of block devices is provided.

本開示の第1の態様によると、本開示の例示的な実施形態は、ブロックデバイスの記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムのサーバを提供する。一実施形態において、サーバには、ブロックデバイスドライバ装置、および少なくとも1つのブロックデバイスサービス装置が含まれる。ブロックデバイスドライバ装置は、ブロックデバイスサービス装置に対応するデータの書き込み/読み取り要求の受信に応答して、受信したデータの書き込み/読み取り要求を、ブロックデバイスサービス装置のために事前に維持されている待機待ち行列内に置くように構成される。   According to a first aspect of the present disclosure, exemplary embodiments of the present disclosure provide a server of an elastic computing cloud system that implements data storage based on a block device storage service. In one embodiment, the server includes a block device driver device and at least one block device service device. In response to receiving the data write / read request corresponding to the block device service device, the block device driver device waits for the block device service device to receive the received data write / read request in advance. Configured to be placed in a queue.

加えて、ブロックデバイスドライバ装置はさらに、待機待ち行列からデータの書き込み/読み取り要求をフェッチして、フェッチされた要求を、ブロックデバイスサービス装置のために事前に維持されている保留待ち行列に転送し、保留待ち行列内のデータの書き込み/読み取り要求を、処理のためにブロックデバイスサービス装置に送信することができる。受信したデータの書き込み/読み取り要求についての、ブロックデバイスサービス装置からの処理結果の受信に応答して、ブロックデバイスドライバ装置は、送信されたデータの書き込み/読み取り要求を保留待ち行列から削除することができる。   In addition, the block device driver device further fetches data write / read requests from the wait queue and forwards the fetched requests to a pending queue that is maintained in advance for the block device service device. A request to write / read data in the hold queue can be sent to the block device service device for processing. In response to receiving the processing result from the block device service apparatus for the received data write / read request, the block device driver apparatus may delete the transmitted data write / read request from the pending queue. it can.

一実施形態では、ブロックデバイスドライバ装置は、ブロックデバイスサービス装置がサービスアップグレードを行うという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、処理のためにブロックデバイスサービス装置に送信することを停止することができ、サービスアップグレードが行われる、または完了したという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を待機待ち行列に転送し戻すことができる。   In one embodiment, the block device driver device sends a write / read request for data in the pending queue to the block device service device for processing in response to a determination that the block device service device performs a service upgrade. In response to a determination that a service upgrade has been or has been completed, a write / read request for data in the pending queue can be transferred back to the waiting queue.

さらに、ブロックデバイスサービス装置は、ブロックデバイスドライバ装置から送信されたデータの書き込み/読み取り要求に基づいて、ブロックデバイスの記憶リソースプールのために要求されたデータに対応する読み込みおよび書き込みの動作を行うように構成されてもよい。   Further, the block device service apparatus performs read and write operations corresponding to the data requested for the storage resource pool of the block device based on the data write / read request transmitted from the block device driver apparatus. May be configured.

本開示の第2の態様によると、本開示の例示的な実施形態は、ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムをアップグレードする方法をさらに提供する。一実施形態において、本方法には、ブロックデバイスに関連付けられたサービスに対応するデータの書き込み/読み取り要求の受信に応答して、その都度、ブロックデバイスに関連付けられたサービスのために事前に維持されている待機待ち行列内に、受信したデータの書き込み/読み取り要求を置くことが含まれる。本方法はさらに、待機待ち行列からデータの書き込み/読み取り要求をフェッチして、フェッチされた要求を、ブロックデバイスに関連付けられたサービスのために事前に維持されている保留待ち行列に転送することができる。   According to a second aspect of the present disclosure, exemplary embodiments of the present disclosure further provide a method for upgrading an elastic computing cloud system that performs storage of data based on a storage service associated with a block device. To do. In one embodiment, the method is pre-maintained for a service associated with a block device each time in response to receiving a data write / read request corresponding to the service associated with the block device. Placing a write / read request for received data in a waiting queue. The method may further fetch data write / read requests from the waiting queue and forward the fetched requests to a pending queue that is pre-maintained for services associated with the block device. it can.

一実施形態において、本方法は、保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、ブロックデバイスに関連付けられたサービスに送信し、受信したデータの書き込み/読み取り要求についての、ブロックデバイスに関連付けられたサービスからの処理結果の受信に応答して、送信されたデータの書き込み/読み取り要求を保留待ち行列から削除する。いくつかの実施形態では、本方法は、ブロックデバイスに関連付けられたサービスがサービスアップグレードを行うという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、処理のためにブロックデバイスに関連付けられたサービスに送信することを停止することができ、サービスアップグレードが行われる、または完了したという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を待機待ち行列に転送し戻すことができる。   In one embodiment, the method sends a write / read request for data in the pending queue to a service associated with the block device for processing and a block for the received write / read request for data. In response to receiving a processing result from the service associated with the device, the transmitted data write / read request is deleted from the pending queue. In some embodiments, the method responds to a determination that a service associated with the block device performs a service upgrade by sending a write / read request for data in the pending queue to the block device for processing. In response to a determination that a service upgrade has occurred or has been completed, sending data write / read requests in the pending queue back to the waiting queue can stop sending to the associated service be able to.

本開示の第3の態様によると、本開示の例示的な実施形態は、ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムをアップグレードするための装置をさらに提供する。一実施形態において、本装置には、ブロックデバイスに関連付けられたサービスに対応するデータの書き込み/読み取り要求の受信に応答して、その都度、受信したデータの書き込み/読み取り要求を、ブロックデバイスに関連付けられたサービスのために事前に維持されている待機待ち行列内に置くように構成される、待機待ち行列維持ユニットが含まれる。   According to a third aspect of the present disclosure, an exemplary embodiment of the present disclosure provides an apparatus for upgrading an elastic computing cloud system that performs storage of data based on a storage service associated with a block device. Provide further. In one embodiment, the apparatus associates a received data write / read request with the block device each time in response to receiving a data write / read request corresponding to a service associated with the block device. A wait queue maintenance unit is included that is configured to be placed in a wait queue that is pre-maintained for a given service.

加えて、本装置には、待機待ち行列からデータの書き込み/読み取り要求をフェッチして、フェッチされた要求を、ブロックデバイスと関連付けられたサービスのために事前に維持されている保留待ち行列に転送するように構成される、保留待ち行列維持ユニットがさらに含まれてもよい。   In addition, the device fetches data write / read requests from the standby queue and forwards the fetched requests to a pending queue that is pre-maintained for services associated with the block device. A hold queue maintenance unit may be further included that is configured to:

いくつかの実施形態において、本装置には、保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、ブロックデバイスに関連付けられたサービスに送信するように構成される、書き込み/読み取り要求処理ユニットがさらに含まれてもよい。書き込み/読み取り要求処理ユニットは、受信したデータの書き込み/読み取り要求についての、ブロックデバイスに関連付けられたサービスからの処理結果の受信に応答して、送信されたデータの書き込み/読み取り要求を保留待ち行列から削除するようにさらに構成されてもよい。一実施形態では、書き込み/読み取り要求処理ユニットは、ブロックデバイスに関連付けられたサービスが、サービスアップグレードを行うという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、処理のためにブロックデバイスに関連付けられたサービスに送信することを停止することができ、サービスアップグレードが行われる、または完了したという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、待機待ち行列に転送し戻すことができる。   In some embodiments, the apparatus includes a write / read request configured to send a write / read request for data in the pending queue to a service associated with the block device for processing. A processing unit may further be included. The write / read request processing unit is responsive to receiving a processing result from the service associated with the block device for the received data write / read request, and holds the transmitted data write / read request in a pending queue. It may be further configured to be deleted from In one embodiment, the write / read request processing unit is responsive to a determination that a service associated with the block device is performing a service upgrade to process a write / read request for data in the pending queue for processing. In response to a determination that a service upgrade has occurred or has been completed, a write / read request for data in the pending queue can be stopped from being sent to the service associated with the block device. Can be transferred back to.

本開示の第4の態様によると、本開示の例示的な実施形態は、ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムをアップグレードするためのシステムをさらに提供する。一実施形態において、本システムには、ブロックデバイスに関連付けられた記憶サービスに基づいてエラスティックコンピューティングクラウドシステムのデータを記憶するように構成される、記憶リソースプールが含まれてもよい。   According to a fourth aspect of the present disclosure, an exemplary embodiment of the present disclosure provides a system for upgrading an elastic computing cloud system that performs storage of data based on a storage service associated with a block device. Provide further. In one embodiment, the system may include a storage resource pool configured to store data for the elastic computing cloud system based on a storage service associated with the block device.

加えて、本システムには、少なくとも1つの物理サーバがさらに含まれてもよい。少なくとも1つの物理サーバは、ブロックデバイスに関連付けられたサービスに対応するデータの書き込み/読み取り要求の受信に応答して、その都度、受信したデータの書き込み/読み取り要求を、ブロックデバイスに関連付けられたサービスのために、事前に維持されている待機待ち行列内に置くように構成されてもよい。   In addition, the system may further include at least one physical server. In response to receiving a data write / read request corresponding to a service associated with the block device, the at least one physical server sends the received data write / read request to the service associated with the block device each time. May be configured to be placed in a pre-maintained waiting queue.

さらに、少なくとも1つの物理サーバは、待機待ち行列からデータの書き込み/読み取り要求をフェッチして、フェッチされた要求を、ブロックデバイスに関連付けられたサービスのために、事前に維持されている保留待ち行列に転送し、保留待ち行列内のデータの書き込み/読み取り要求に基づいて、記憶リソースプールのために要求されたデータに対応する読み込みおよび書き込みの動作を行うことができる。   In addition, the at least one physical server fetches data write / read requests from the wait queue and places the fetched requests in a pending queue that is pre-maintained for services associated with the block device. And read and write operations corresponding to the requested data for the storage resource pool can be performed based on write / read requests for data in the pending queue.

いくつかの実施形態において、少なくとも1つの物理サーバは、ブロックデバイスに関連付けられたサービスが、サービスアップグレードを行うという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、処理のためにブロックデバイスに関連付けられたサービスに送信することを停止し、サービスアップグレードが行われる、または完了したという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、待機待ち行列に転送し戻すことができる。   In some embodiments, at least one physical server is responsive to a determination that a service associated with the block device performs a service upgrade to process a write / read request for data in a pending queue. In response to a determination that a service upgrade has occurred or has been completed and forwards write / read requests for data in the pending queue to the waiting queue. You can go back.

ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムの物理サーバにおいて、本開示の例示的な実施形態によって提案される技術的な構想は、ブロックデバイスの各仮想化されたサービスに対して2つの待ち行列を個々に維持する。1つはデータの書き込み/読み取り要求のための待機待ち行列であり、ブロックデバイスに関連付けられたサービスに送信されて処理を待つデータの書き込み/読み取り要求を維持するために使用される。もう1つは、ブロックデバイスに関連付けられたサービスによって目下処理中であるデータの書き込み/読み取り要求を維持するために、物理サーバによって使用される、保留待ち行列である。   In a physical server of an elastic computing cloud system that implements storage of data based on a storage service associated with a block device, the technical concept proposed by the exemplary embodiment of the present disclosure is for each block device Two queues are maintained individually for virtualized services. One is a wait queue for data write / read requests and is used to maintain data write / read requests sent to the service associated with the block device and awaiting processing. The other is a pending queue used by the physical server to maintain data write / read requests that are currently being processed by services associated with the block device.

この技術的な構想は、ブロックデバイスに関連付けられたサービスがアップグレードされる必要のある時に、ブロックデバイスに関連付けられたサービスのために、保留待ち行列内に維持されているデータの書き込み/読み取り要求の処理を停止し、保留待ち行列内で目下処理中であるデータの書き込み/読み取り要求を、再ディスパッチのために待機待ち行列内に戻し、それにより、記憶サービスを中断することなく、エラスティックコンピューティングクラウドシステムにおける記憶サービスの、サービスアップグレードの処理完了が実現される。これは、サービスアップグレードの効率を向上させ、ユーザによって目下使用されているトランザクションの中断を回避し、アップグレード処理中に高可用性のサービスを提供し、それにより、ユーザの使用経験が向上される。   This technical concept is for a request to write / read data that is maintained in a pending queue for a service associated with a block device when the service associated with the block device needs to be upgraded. Elastic computing without stopping processing and returning data write / read requests that are currently being processed in the pending queue back to the wait queue for redispatching, without interrupting storage services Completion of the service upgrade processing of the storage service in the cloud system is realized. This improves the efficiency of service upgrades, avoids interruption of transactions currently used by users, and provides highly available services during the upgrade process, thereby improving the user experience.

本開示の例示的な実施形態によって提案される技術的な構想によって使用されるブロックデバイスの記憶サービスに基づいてデータの記憶を実施する、エラスティックコンピューティングクラウドシステムのトポロジーを例示する構造図である。FIG. 3 is a structural diagram illustrating the topology of an elastic computing cloud system that implements data storage based on block device storage services used by the technical concept proposed by the exemplary embodiments of the present disclosure. . 本開示の例示的な実施形態による、改善された物理サーバを例示する構造図である。FIG. 3 is a structural diagram illustrating an improved physical server, according to an exemplary embodiment of the present disclosure. 本開示の例示的な実施形態による、ローカルまたは遠隔記憶リソースプールにおけるデータの読み取りおよび書き込みのための、改善された物理サーバの内部処理を例示する流れ図である。5 is a flow diagram illustrating improved physical server internal processing for reading and writing data in a local or remote storage resource pool, according to an exemplary embodiment of the present disclosure. 本開示の例示的な実施形態による、改善された物理サーバにおけるブロックデバイスドライバ装置の動作の詳細を例示する流れ図である。5 is a flow diagram illustrating details of the operation of a block device driver apparatus in an improved physical server, according to an exemplary embodiment of the present disclosure. 本開示の例示的な実施形態によるブロックデバイスサービス装置のサービスアップグレードの前または後に、改善された物理サーバのブロックデバイスドライバ装置が、それによって維持されている待機待ち行列および保留待ち行列のためにディスパッチを行うための処理を例示する概略図である。Before or after a service upgrade of a block device service device according to an exemplary embodiment of the present disclosure, an improved physical server block device driver device dispatches for the wait and hold queues maintained thereby It is the schematic which illustrates the process for performing. 本開示の例示的な実施形態による、改善されたサーバの新しいブロックデバイスドライバ装置を例示する構造図である。FIG. 3 is a structural diagram illustrating a new block device driver apparatus of an improved server, according to an exemplary embodiment of the present disclosure. 本開示の例示的な実施形態による、サーバのサービスアップグレードを行う時に、物理サーバのブロックデバイスドライバ装置を制御する動作を例示する概略図である。FIG. 3 is a schematic diagram illustrating operations for controlling a block device driver device of a physical server when performing a service upgrade of the server according to an exemplary embodiment of the present disclosure. 図6で説明する例示的な装置をより詳細に例示する図である。FIG. 7 illustrates the exemplary device described in FIG. 6 in more detail.

既存の技術における、オンラインアップグレードを実現するためのホットデプロイメントの欠如に起因して、ブロックデバイスの記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムがアップグレードされる際、エラスティックコンピューティングクラウドシステムにおける各仮想サーバは、サービスアップグレードのためにシャットダウンし、アップグレードが完了した上で再起動する必要がある。記憶サービスの提供者または記憶サービスのユーザにとって、このことは、大いに、維持コストを増大させ、関連するサービスの可用性を低下させる。この問題を考慮して、本開示は、記憶サービスのオンラインアップグレードを実現するために、ブロックデバイスの記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムにおけるブロックデバイスの記憶サービスのために、ホットデプロイメントの実施を提案する。具体的には、記憶サービスのアップグレードは、記憶サービスを中断することなく行われる。したがって、サービス提供者の記憶サービスの可用性、および記憶サービスの透明性が向上し、記憶サービスのユーザが、バックエンドサービスのアップグレード処理を懸念する必要がなくなる。   When an elastic computing cloud system that performs data storage based on block device storage services is upgraded due to the lack of hot deployment to achieve online upgrades in existing technologies, Each virtual server in the cloud cloud system needs to be shut down for service upgrade, and restarted after the upgrade is completed. For storage service providers or storage service users, this greatly increases maintenance costs and reduces the availability of related services. In view of this problem, the present disclosure is for a block device storage service in an elastic computing cloud system that performs data storage based on the block device storage service to achieve an online upgrade of the storage service. In addition, we propose the implementation of hot deployment. Specifically, the storage service upgrade is performed without interrupting the storage service. Accordingly, the availability of the storage service of the service provider and the transparency of the storage service are improved, and the storage service user does not have to worry about the back-end service upgrade process.

ブロックデバイスの記憶サービスのホットデプロイメントは、ブロックデバイスのサービスのオンラインアップグレードの技法である。ブロックデバイスの記憶サービスは、ブロックデバイスドライバ技術に基づくため、エラスティックコンピューティングクラウドシステムの物理サーバには、カーネルモードのブロックデバイスドライバのサービスプログラムが含まれる。ブロックデバイスドライバのカーネルモードサービスプログラムは、データの書き込み/読み取り要求を、物理サーバに含まれるブロックデバイスのユーザモードサービスプログラムに転送する必要があり、ブロックデバイスのユーザモードサービスプログラムは、書き込み/読み取り要求を、処理のために、遠隔ネットワークの記憶リソースプール、またはローカル物理ディスクの記憶リソースプール等に転送する。ブロックデバイスドライバのカーネルモードサービスプログラムは、ブロックデバイスのユーザモードサービスプログラムに比べて、より安定している。ブロックデバイスのユーザモードサービスプログラムは、より良い品質の記憶サービスを提供するために、バージョンのアップグレードを頻繁に必要とする。本開示の例示的な実施形態において提供される技術的な構想に基づいて、オンラインアップグレードを支持することのできるブロックデバイスドライバのサービスプログラムは、記憶サービスの可用性を強化するため、およびユーザの使用経験を向上させるために、エラスティックコンピューティングクラウドシステムの物理サーバ内に提供される。   Hot deployment of block device storage services is a technique for online upgrade of block device services. Since the block device storage service is based on the block device driver technology, the physical server of the elastic computing cloud system includes a kernel mode block device driver service program. The kernel mode service program of the block device driver needs to transfer the data write / read request to the user mode service program of the block device included in the physical server, and the user mode service program of the block device Are transferred to a storage resource pool of a remote network, a storage resource pool of a local physical disk, or the like for processing. The kernel mode service program of the block device driver is more stable than the user mode service program of the block device. Block device user mode service programs frequently require version upgrades to provide better quality storage services. Based on the technical concept provided in the exemplary embodiments of the present disclosure, a block device driver service program capable of supporting an online upgrade is provided to enhance the availability of storage services and user experience Is provided within the physical server of the elastic computing cloud system.

図1は、本開示の例示的な実施形態によって提案される技術的な構想で使用される、ブロックデバイスの記憶サービスに基づいてデータの記憶を実施するエラスティックコンピューティングクラウドシステムのトポロジーを例示する構造図を示している。エラスティックコンピューティングクラウドシステムには、エラスティックコンピューティングクラウド技術に基づいてローカル物理サーバから仮想化された、複数の仮想サーバ(図1の仮想サーバ1、仮想サーバ2、仮想サーバ3、……、仮想サーバn)が含まれる。それぞれの仮想サーバは、ブロックデバイスの記憶サービス技術に基づき、遠隔記憶リソースプールまたはローカル記憶リソースプールを使用して、ローカルに提供されるデータの記憶サービスを実施する。具体的には、それぞれの仮想サーバは、遠隔記憶リソースプールまたはローカル記憶リソースプール内にローカルに格納される必要のあるデータを格納し、その後に関連データを読み取る要求が提示された時に、遠隔記憶リソースプールまたはローカル記憶リソースプールからそのデータを読み取る。このようにして、それぞれの物理サーバは、ローカル物理サーバ自体の記憶リソースを占領することなく、遠隔にまたはローカルに設定される記憶リソースプールを共有することができるため、エラスティックコンピューティングクラウドシステムのリソース使用率が改善される。   FIG. 1 illustrates the topology of an elastic computing cloud system that implements storage of data based on block device storage services used in the technical concept proposed by the exemplary embodiments of the present disclosure. A structural diagram is shown. The elastic computing cloud system includes a plurality of virtual servers (virtual server 1, virtual server 2, virtual server 3,..., Virtualized from a local physical server based on the elastic computing cloud technology. Virtual server n) is included. Each virtual server implements locally provided data storage services using remote storage resource pools or local storage resource pools based on block device storage service technology. Specifically, each virtual server stores data that needs to be stored locally in a remote storage resource pool or a local storage resource pool, and then remote storage when presented with a request to read the relevant data. Read the data from the resource pool or local storage resource pool. In this way, each physical server can share a storage resource pool that is set up remotely or locally without occupying the storage resources of the local physical server itself. Resource utilization is improved.

本開示において提供される技術的な構想を実施するために、上記で説明されるエラスティックコンピューティングクラウドシステムの物理サーバの機能は、記憶サービスのためのオンラインアップグレードを行うという目的を達成するために、改善される必要がある。   In order to implement the technical concept provided in this disclosure, the physical server functionality of the elastic computing cloud system described above is to achieve the objective of performing an online upgrade for storage services. Need to be improved.

図2は、本開示の例示的な実施形態による、改善された物理サーバを例示する構造図を示し、具体的には、カーネルモードのブロックデバイスドライバ装置20,ユーザモードのクライアント装置21、および少なくとも1つのブロックデバイスサービス装置22、ならびにローカルまたは遠隔記憶リソースプール23が含まれている。ブロックデバイスドライバ装置20は、複数のブロックデバイスサービス装置22のジョブを制御することができる。それぞれの構成要素は、下記の動作原理に基づいて、記憶サービスのオンラインアップグレードを実現する。   FIG. 2 shows a structural diagram illustrating an improved physical server according to an exemplary embodiment of the present disclosure, specifically a kernel mode block device driver device 20, a user mode client device 21, and at least One block device service device 22 and a local or remote storage resource pool 23 are included. The block device driver apparatus 20 can control jobs of a plurality of block device service apparatuses 22. Each component implements an online upgrade of the storage service based on the following operating principle.

カーネルモードのブロックデバイスドライバ装置20は、物理サーバの最下層の書き込み/読み取りディスパッチ層からデータの書き込み/読み取り要求を受信し、データの書き込み/読み取り要求を、例えばTCPプロトコルを介して、ユーザモードのブロックデバイスサービス装置22に転送する。ホットデプロイメントを支持するオンラインアップグレード機能を実施するために、ブロックデバイスドライバ装置20は、物理サーバから仮想化される、それぞれのブロックデバイスサービス装置22に対して2つの待ち行列を維持し、その1つは待機待ち行列である。物理サーバの最下層の書き込み/読み取りディスパッチ層から、特定のブロックデバイスサービス装置22に対応するデータの書き込み/読み取り要求が受信されると、その都度、ブロックデバイスドライバ装置20は、受信した書き込み/読み取り要求を、後続の処理を待つように、ブロックデバイスサービス装置22のために事前に維持されている待機待ち行列内に入れる。もう1つは、保留待ち行列である。そのブロックデバイスサービス装置22の、データの書き込み/読み取り要求を処理する時に、その都度、ブロックデバイスドライバ装置20はまず、ブロックデバイスサービス装置22のために事前に維持されている待機待ち行列からデータの書き込み/読み取り要求をフェッチして、この要求を、ブロックデバイスサービス装置22のために事前に維持されている保留待ち行列に転送し、処理のために、保留待ち行列内のこの要求をブロックデバイスサービス装置22に送信する。以上から分かるように、保留待ち行列内のすべての書き込み/読み取り要求は、物理サーバによって目下処理中である書き込み/読み取り要求である。ブロックデバイスドライバ装置20から送信された、保留待ち行列の書き込み/読み取り要求が適切に完了した後、ブロックデバイスサービス装置22は、適切に処理がなされた結果をブロックデバイスドライバ装置20に送信する。適切に処理がなされた結果の受信に応答して、ブロックデバイスドライバ装置20は、送信され、かつ完全に処理された書き込み/読み取り要求を、保留待ち行列から取り除き、保留待ち行列内のその他の書き込み/読み取り要求を処理する等のことをする。その後、ブロックデバイスサービス装置22がサービスアップグレードを行うという判定に応答して、ブロックデバイスドライバ装置20は、そのブロックデバイスサービス装置22のために維持されている保留待ち行列内のデータの書き込み/読み取り要求を、そのブロックデバイスサービス装置22に送信することを停止する。さらに、サービスアップグレードが行われる、または完了したと判定されると、ブロックデバイスドライバ装置20は、ブロックデバイスサービス装置22のために事前に維持されている保留待ち行列内のデータの書き込み/読み取り要求を、後続の再ディスパッチおよび処理を待つように、ブロックデバイスサービス装置22のために事前に維持されている待機待ち行列に戻して追加する。   The block device driver device 20 in the kernel mode receives a data write / read request from the write / read dispatch layer at the lowest layer of the physical server, and sends the data write / read request to the user mode via the TCP protocol, for example. Transfer to the block device service device 22. In order to implement an online upgrade function that supports hot deployment, the block device driver device 20 maintains two queues for each block device service device 22 that are virtualized from the physical server, one of which Is a wait queue. Each time a data write / read request corresponding to a specific block device service device 22 is received from the write / read dispatch layer at the lowest layer of the physical server, the block device driver device 20 receives the received write / read. The request is placed in a wait queue that is maintained in advance for the block device service device 22 to wait for subsequent processing. The other is a hold queue. Each time the block device service device 22 processes a data write / read request, the block device driver device 20 first begins to receive data from a wait queue maintained in advance for the block device service device 22. Fetch a write / read request, forward the request to a pending queue that is maintained in advance for the block device service device 22, and process the request in the pending queue for processing by the block device service. Transmit to device 22. As can be seen, all write / read requests in the pending queue are write / read requests that are currently being processed by the physical server. After the pending queue write / read request transmitted from the block device driver apparatus 20 is properly completed, the block device service apparatus 22 transmits the result of the appropriate processing to the block device driver apparatus 20. In response to receiving the properly processed result, the block device driver device 20 removes the transmitted and fully processed write / read request from the pending queue and writes other writes in the pending queue. / Process read requests, etc. Thereafter, in response to the determination that the block device service device 22 performs a service upgrade, the block device driver device 20 requests to write / read data in the hold queue maintained for the block device service device 22. To the block device service apparatus 22 is stopped. Further, when it is determined that a service upgrade has been performed or has been completed, the block device driver device 20 issues a write / read request for data in a pending queue that is maintained in advance for the block device service device 22. Add back to the wait queue previously maintained for the block device service device 22 to wait for subsequent redispatch and processing.

好適には、ブロックデバイスドライバ装置20は、ブロックデバイスドライバ装置20自身とブロックデバイスサービス装置22との間のTCP通信接続が正常かどうかを検査することによって、ブロックデバイスサービス装置22がアップグレードの動作を行う、またはアップグレードを完了したかどうかを判定することができる。ブロックデバイスドライバ装置20とブロックデバイスサービス装置22との間のTCP通信接続が切断されている場合、ブロックデバイスドライバ装置20は、ブロックデバイスサービス装置22がサービスアップグレードを行うと判定することができる。ブロックデバイスドライバ装置20とブロックデバイスサービス装置22との間のTCP通信接続が、接続のために回復されている場合、ブロックデバイスドライバ装置20は、ブロックデバイスサービス装置22のサービスアップグレードが完了したと判定することができる。   Preferably, the block device driver apparatus 20 checks whether the TCP communication connection between the block device driver apparatus 20 itself and the block device service apparatus 22 is normal, so that the block device service apparatus 22 performs the upgrade operation. It can be determined whether to perform or complete the upgrade. When the TCP communication connection between the block device driver apparatus 20 and the block device service apparatus 22 is disconnected, the block device driver apparatus 20 can determine that the block device service apparatus 22 performs a service upgrade. When the TCP communication connection between the block device driver apparatus 20 and the block device service apparatus 22 is recovered for the connection, the block device driver apparatus 20 determines that the service upgrade of the block device service apparatus 22 has been completed. can do.

ユーザモードのブロックデバイスサービス装置22は、ブロックデバイスドライバ装置20から送信されたデータの書き込み/読み取り要求を、例えば、TCPプロトコルを介して受信する。具体的には、ユーザモードのブロックデバイスサービス装置22は、ブロックデバイスドライバ装置20によって処理されたデータの書き込み/読み取り要求を、ブロックデバイスサービス装置22のために事前に維持されている保留待ち行列内に受信する。書き込み/読み取り要求を受信すると、ユーザモードのブロックデバイスサービス装置22は、書き込み/読み取り要求が正当なものであるかどうか、それが読み取り要求または書き込み要求のどちらであるか、書き込み/読み取り要求の開始位置および長さの情報、等を分析(検証を含む)することによって、要求についての分析動作を行い、分析結果に基づいて、ローカルまたは遠隔記憶リソースプール上の読み取りまたは書き込み動作を行う。要求が読み取り要求である場合、ユーザモードのブロックデバイスサービス装置22は、要求されたデータを、ローカルまたは遠隔記憶リソースプール23から読み取り、読み取ったデータおよび処理結果をカーネルモードのブロックデバイスドライバ装置20に、例えばTCPプロトコルを介して、戻す。要求が書き込み要求である場合、ユーザモードのブロックデバイスサービス装置22は、ローカルまたは遠隔記憶リソースプール23に書き込まれるように要求されたデータを格納し、書き込み要求の処理結果をカーネルモードのブロックデバイスドライバ装置20に、例えばTCPプロトコルを介して、戻す。   The block device service apparatus 22 in the user mode receives a data write / read request transmitted from the block device driver apparatus 20 via, for example, the TCP protocol. Specifically, the block device service device 22 in the user mode sends a write / read request for data processed by the block device driver device 20 in a hold queue that is maintained in advance for the block device service device 22. To receive. Upon receiving the write / read request, the user mode block device service device 22 determines whether the write / read request is legitimate, whether it is a read request or a write request, and initiates the write / read request. Analyzing (including verifying) location and length information, etc., performs an analysis operation on the request, and performs a read or write operation on the local or remote storage resource pool based on the analysis result. When the request is a read request, the block device service device 22 in the user mode reads the requested data from the local or remote storage resource pool 23, and the read data and the processing result are sent to the block device driver device 20 in the kernel mode. Return, for example, via the TCP protocol. When the request is a write request, the block device service device 22 in the user mode stores the data requested to be written to the local or remote storage resource pool 23, and the processing result of the write request is stored in the block device driver in the kernel mode. Return to device 20 via, for example, TCP protocol.

ユーザモードのクライアント装置21は、カーネルモードのブロックデバイスドライバ装置20を介して、ジョブを開始または停止するように、それぞれのブロックデバイスサービス装置22を制御することができる。ジョブを開始するようにブロックデバイスサービス装置22を制御する場合、クライアント装置21はまず、ユーザがクライアント装置21を介してブロックデバイスのサービスの要求の作成を始めた後に、ブロックデバイスサービス装置とのTCP接続を確立し、作成されたTCPのソケットハンドルを、ioctlコマンドを通じてブロックデバイスドライバ装置20に伝送する。その後、クライアント装置21は、TCPソケットを閉じることができる。このようにして、クライアント装置21は、カーネルモードのブロックデバイスドライバ装置20とユーザモードのブロックデバイスサービス装置22との間のTCP接続を実現する。ブロックデバイスドライバ装置20に送信される、すべての後続のデータの書き込み/読み取り要求は、ブロックデバイスサービス装置22に、TCP接続を介して送信され得る。ジョブを停止するようにブロックデバイスサービス装置22を制御する場合、クライアント装置21は、ユーザがクライアント装置21を介してブロックデバイスのサービスを停止するための要求を始めた後に、停止要求を、ioctlコマンドを通じてブロックデバイスドライバ装置20に送信する。要求を受信すると、ブロックデバイスドライバ装置20はまず、停止要求をブロックデバイスサービス装置22に送信する。この要求の受信に応答して、ブロックデバイスサービス装置22はTCPソケットを閉じた上で、安全に終了する。ブロックデバイスサービス装置22から停止応答を受信した後に、ブロックデバイスドライバ装置20は、関連する保留待ち行列内の書き込み/読み取り要求の処理を停止する。結果として、ブロックデバイスサービス装置22は動作を停止する。ブロックデバイスサービス装置22がアップグレードの処理中である場合、クライアント装置21は、ブロックデバイスサービス装置22とのTCPリンクの確立を一秒ごとに試みることができる。新しいTCPリンクが首尾よく確立されると、これは、ブロックデバイスサービス装置22が首尾よくアップグレードされたことを示し、クライアント装置21は、新しく作成されたTCPのソケットハンドルを、ioctlコマンドを通じてブロックデバイスドライバ装置20に伝送する。このようにして、ブロックデバイスサービス装置22がアップグレードされた後、ブロックデバイスドライバ装置20およびブロックデバイスサービス装置22は、データの書き込み/読み取り要求を通信するための新しいTCPリンクを確立する。   The user mode client device 21 can control each block device service device 22 to start or stop a job via the kernel mode block device driver device 20. When the block device service apparatus 22 is controlled to start a job, the client apparatus 21 first starts TCP request with the block device service apparatus after the user starts creating a request for a block device service via the client apparatus 21. The connection is established, and the created TCP socket handle is transmitted to the block device driver apparatus 20 through an ioctl command. Thereafter, the client device 21 can close the TCP socket. In this manner, the client device 21 realizes a TCP connection between the block device driver device 20 in the kernel mode and the block device service device 22 in the user mode. All subsequent data write / read requests sent to the block device driver device 20 may be sent to the block device service device 22 via a TCP connection. When controlling the block device service apparatus 22 to stop the job, the client apparatus 21 sends a stop request to the ioctl command after the user starts a request for stopping the service of the block device via the client apparatus 21. To the block device driver device 20. When receiving the request, the block device driver apparatus 20 first transmits a stop request to the block device service apparatus 22. In response to the reception of this request, the block device service device 22 closes the TCP socket and ends safely. After receiving a stop response from the block device service device 22, the block device driver device 20 stops processing the write / read request in the associated pending queue. As a result, the block device service apparatus 22 stops operating. When the block device service apparatus 22 is in the process of upgrading, the client apparatus 21 can try to establish a TCP link with the block device service apparatus 22 every second. If the new TCP link is successfully established, this indicates that the block device service device 22 has been successfully upgraded, and the client device 21 can send the newly created TCP socket handle to the block device driver via the ioctl command. Transmit to device 20. Thus, after the block device service device 22 is upgraded, the block device driver device 20 and the block device service device 22 establish a new TCP link for communicating data write / read requests.

クライアント装置21は、本開示における物理サーバの、オプションの構成要素とすることができる。ユーザモードのブロックデバイスサービス装置22の動作モードのユーザ制御を実現するために、クライアント装置21を使用する他には、タイミング機能、イベントトリガー機能等の他のトリガーメカニズムを使用して、ユーザモードのブロックデバイスサービス装置22の動作モードを自動的に制御することができる。   The client device 21 can be an optional component of the physical server in the present disclosure. In order to realize the user control of the operation mode of the block device service device 22 in the user mode, in addition to using the client device 21, other trigger mechanisms such as a timing function and an event trigger function are used to The operation mode of the block device service device 22 can be automatically controlled.

一般に、ローカルまたは遠隔記憶リソースプール23は、分散ファイルシステムまたは類似のものの、記憶サーバである。このリソースプール23は、ローカルに、または遠隔に展開することができ、大抵の場合、遠隔に展開された記憶リソースプールである。記憶リソースプール23は、エラスティックコンピューティングクラウドシステムの、それぞれの仮想サーバのサービスのデータを格納する。具体的には、物理サーバの特定のブロックデバイスサービス装置22からデータの読み取り要求を受信した場合、記憶リソースプール23は、要求に関連するデータをそこから読み取り、読み取ったデータをブロックデバイスサービス装置22にフィードバックする。物理サーバの特定のブロックデバイスサービス装置22からデータの書き込み要求を受信した場合、記憶リソースプール23は、書き込まれるように要求されたデータをそこに格納する。   In general, the local or remote storage resource pool 23 is a storage server of a distributed file system or the like. This resource pool 23 can be deployed locally or remotely, and in most cases is a remotely deployed storage resource pool. The storage resource pool 23 stores service data of each virtual server in the elastic computing cloud system. Specifically, when a data read request is received from a specific block device service device 22 of a physical server, the storage resource pool 23 reads data related to the request from the data, and reads the read data from the block device service device 22. To give feedback. When a data write request is received from a specific block device service device 22 of a physical server, the storage resource pool 23 stores the data requested to be written therein.

図3は、本開示の例示的な実施形態による、ローカルまたは遠隔記憶リソースプールにおけるデータの読み取りおよび書き込みのための、改善された物理サーバの内部処理を例示する流れ図を示している。一実施形態において、データの読み取りの処理には以下が含まれてもよい。   FIG. 3 shows a flow diagram illustrating improved physical server internal processing for reading and writing data in a local or remote storage resource pool, according to an exemplary embodiment of the present disclosure. In one embodiment, the process of reading data may include:

ローカル物理サーバのファイルシステム層が、特定のブロックデバイスサービス装置のデータの読み取り要求を、汎用ブロック層および書き込み/読み取りディスパッチ層を介してブロックデバイスドライバ装置に送信した後、ブロックデバイスドライバ装置は、この要求を、後続の処理を待つように、ブロックデバイスサービス装置のために事前に維持されている待機待ち行列内に置き、その後に、データの読み取り要求を、待ち行列から、ブロックデバイスサービス装置のために事前に維持されている保留待ち行列内にフェッチして、読み取り要求を処理、すなわち、読み取り要求をブロックデバイスサービス装置に送信する。ブロックデバイスサービス装置は、読み取り要求に従って、要求に関連するデータを記憶プールから読み取り、読み取り結果を、ブロックデバイスドライバ装置に、TCP接続を介して戻す。ブロックデバイスドライバ装置は、読み取り結果を、ファイルシステム層に、汎用ブロック層および書き込み/読み取りディスパッチ層を介して伝送し、ファイルシステム層は、読み取り結果を、ディスパッチのためにシステムに戻す。   After the file system layer of the local physical server sends a read request for data of a specific block device service device to the block device driver device via the general block layer and the write / read dispatch layer, the block device driver device Place the request in a wait queue that is pre-maintained for the block device service device to wait for subsequent processing, after which a request to read data is sent from the queue to the block device service device. Fetch into a pending queue that is maintained in advance and process the read request, ie send the read request to the block device service device. The block device service device reads data related to the request from the storage pool according to the read request, and returns the read result to the block device driver device via the TCP connection. The block device driver device transmits the read result to the file system layer via the general block layer and the write / read dispatch layer, and the file system layer returns the read result to the system for dispatch.

一実施形態において、データの書き込み処理には、以下が含まれてもよい。   In one embodiment, the data writing process may include:

ローカル物理サーバは、データの書き込み要求と、システムによって呼び出される、ファイルシステム層、汎用ブロック層、および書き込み/読み取りディスパッチ層を介して、ブロックデバイスドライバ装置に書き込まれるように要求されているデータとを、格納する。ブロックデバイスドライバ装置は、書き込み要求を、後続の処理を待つように、ブロックデバイスサービス装置のために事前に維持されている待機待ち行列内に置き、その後に、待ち行列からデータの書き込み要求をフェッチして、この要求を、ブロックデバイスサービス装置のために事前に維持されている保留待ち行列に置き、書き込み要求を処理、すなわちデータの書き込み要求および書き込まれるデータを、ブロックデバイスサービス装置に送信する。ブロックデバイスサービス装置は、書き込まれるデータの、記憶リソースプール内への格納を達成するために、データの書き込み要求を分析する。   The local physical server sends the data write request and the data that is requested to be written to the block device driver device via the file system layer, general block layer, and write / read dispatch layer called by the system. ,Store. The block device driver device places the write request in a wait queue that is maintained in advance for the block device service device to wait for subsequent processing, and then fetches the write request for data from the queue. This request is then placed in a pending queue that is maintained in advance for the block device service device, and the write request is processed, ie, the data write request and the data to be written are sent to the block device service device. The block device service device analyzes the data write request to achieve storage of the data to be written in the storage resource pool.

図4は、本開示の例示的な実施形態による、改善された物理サーバにおけるブロックデバイスドライバ装置の動作の詳細を例示する流れ図を示している。ブロックデバイスドライバ装置は、それぞれのブロックデバイスサービス装置に対して、2つの待ち行列を個々に維持し、待ち行列の1つは待機待ち行列であり、送信され、かつ、対応するブロックデバイスサービス装置による処理を待つ、データの書き込み/読み取り要求を、この待機待ち行列内に置くため、およびこの要求を、処理を待つ待ち行列の状態に入らせるために、使用され、もう1つの待ち行列は保留待ち行列であり、対応するブロックデバイスサービス装置によって目下処理中である、データの書き込み/読み取り要求を、この保留待ち行列内に置くために使用される。これらの維持されている2つの待ち行列に基づく、ブロックデバイスドライバ装置の具体的な動作原理は以下の通りである。   FIG. 4 shows a flowchart illustrating details of the operation of a block device driver apparatus in an improved physical server, according to an exemplary embodiment of the present disclosure. The block device driver device maintains two queues individually for each block device service device, one of the queues being a wait queue, transmitted and by the corresponding block device service device Used to wait for processing, put a data write / read request in this wait queue, and place this request in a queue waiting for processing, the other queue is pending It is used to place in the pending queue data write / read requests that are queues and are currently being processed by the corresponding block device service device. The specific operation principle of the block device driver device based on these two maintained queues is as follows.

40において、物理サーバの最下層から、特定のブロックデバイスサービス装置に対応するデータの書き込み/読み取り要求が受信されると、その都度、ブロックデバイスドライバ装置は、受信したデータの書き込み/読み取り要求を待たせるために、そのブロックデバイスサービス装置のために事前に維持されている待機待ち行列内に置く。   In 40, each time a data write / read request corresponding to a specific block device service device is received from the lowest layer of the physical server, the block device driver device waits for the received data write / read request. Place it in a wait queue that is maintained in advance for that block device service device.

42において、ブロックデバイスサービス装置に対応するデータの書き込み/読み取り要求を処理する時に、ブロックデバイスドライバ装置はまず、待機待ち行列からデータの書き込み/読み取り要求をフェッチして、この要求を、ブロックデバイスサービス装置のために事前に維持されている保留待ち行列に転送し、保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、ユーザモードのブロックデバイスサービス装置に送信し、ブロックデバイスサービス装置からの、受信したデータの書き込み/読み取り要求の適切な処理結果の受信に応答して、送信されたデータの書き込み/読み取り要求を保留待ち行列から削除する。   At 42, when processing a data write / read request corresponding to the block device service device, the block device driver device first fetches the data write / read request from the wait queue and passes the request to the block device service device. Block device service device that forwards to a hold queue that is maintained in advance for the device, and sends write / read requests for data in the hold queue to the block device service device in user mode for processing In response to receiving an appropriate processing result of the received data write / read request from the server, the transmitted data write / read request is deleted from the pending queue.

44において、ブロックデバイスサービス装置がサービスアップグレードを行うという判定に応答して、ブロックデバイスドライバ装置は、保留待ち行列内のすべてのデータの書き込み/読み取り要求を、処理のためにブロックデバイスサービス装置に送信することを停止する。   At 44, in response to the determination that the block device service device is performing a service upgrade, the block device driver device sends a write / read request for all data in the pending queue to the block device service device for processing. To stop doing.

46において、サービスアップグレードが行われる、または完了したと判定されると、ブロックデバイスドライバ装置は、保留待ち行列内のデータの書き込み/読み取り要求を、後続の再ディスパッチおよび処理を待つように、待機待ち行列に転送し戻す。具体的には、ブロックデバイスドライバ装置は、ブロックデバイスサービス装置がサービスアップグレードを行う、またはサービスアップグレードを完了したかどうかを、ブロックデバイスドライバ装置自身とブロックデバイスサービス装置との間の通信接続の状態を検査することによって判定することができる。より具体的には、ブロックデバイスドライバ装置自身とブロックデバイスサービス装置との間の通信接続が切断されたことを検知すると、ブロックデバイスドライバ装置は、ブロックデバイスサービス装置がサービスアップグレードを行うと判定することができる。さらに、ブロックデバイスドライバ装置自身とブロックデバイスサービス装置との間の通信接続が回復されたと検知すると、ブロックデバイスドライバ装置は、ブロックデバイスサービス装置がサービスアップグレードを完了したと判定することができる。   If it is determined at 46 that a service upgrade has occurred or has been completed, the block device driver device waits for a write / read request for data in the pending queue to wait for subsequent redispatch and processing. Transfer back to the queue. Specifically, the block device driver apparatus determines whether the block device service apparatus performs a service upgrade or completes the service upgrade, and indicates the state of the communication connection between the block device driver apparatus itself and the block device service apparatus. This can be determined by inspection. More specifically, upon detecting that the communication connection between the block device driver apparatus itself and the block device service apparatus has been disconnected, the block device driver apparatus determines that the block device service apparatus performs a service upgrade. Can do. Further, when detecting that the communication connection between the block device driver apparatus itself and the block device service apparatus has been recovered, the block device driver apparatus can determine that the block device service apparatus has completed the service upgrade.

図5は、本開示の例示的な実施形態によるブロックデバイスサービス装置のサービスアップグレードの前または後に、改善された物理サーバのブロックデバイスドライバ装置が、それによって維持されている待機待ち行列および保留待ち行列のためにディスパッチを行うための処理を例示する概略図を示している。ブロックデバイスサービス装置のホットデプロイメント(すなわち、オンラインアップグレード)を支持するために、カーネルモードのブロックデバイスドライバ装置は、受信したデータの書き込み/読み取り要求を維持する必要がある。ブロックデバイスドライバ装置は、それぞれのブロックデバイスサービス装置に対して、2つの、データの読み取りおよび書き込み待ち行列を個々に使用して、書き込み/読み取り要求の状態を維持する。1つは、待機待ち行列であり、それぞれのブロックデバイスサービス装置のための物理サーバ内の書き込み/読み取りディスパッチ層から送信される、書き込み/読み取り要求を維持するために使用され、これらの要求は、ブロックデバイスドライバ装置による後続の処理を待つように、待機待ち行列内に並ぶ。もう1つは、保留待ち行列であり、それぞれのブロックデバイスサービス装置のために、ブロックデバイスドライバ装置によって目下処理中である、書き込み/読み取り要求を維持するために使用される。これらの、保留待ち行列内の書き込み/読み取り要求は、完全に処理されておらず、ブロックデバイスドライバ装置が、対応するブロックデバイスサービス装置の処理応答を待っている状況である場合がある。特定のブロックデバイスサービス装置がサービスアップグレードを行っていない場合、ブロックデバイスドライバ装置はまず、書き込み/読み取り要求を処理する際に、ブロックデバイスサービス装置のために事前に維持されている待機待ち行列の先頭から書き込み/読み取り要求をフェッチして、フェッチされた書き込み/読み取り要求を待機待ち行列から削除し、書き込み/読み取り要求を、ブロックデバイスサービス装置のために事前に維持されている保留待ち行列の先頭に置き、保留待ち行列内の各書き込み/読み取り要求を、処理のために、ブロックデバイスサービス装置に送信し、ブロックデバイスサービス装置から、受信した書き込み/読み取り要求の適切な処理結果を受信した後で、送信された書き込み/読み取り要求を、保留待ち行列から削除する。ブロックデバイスサービス装置がサービスアップグレードを必要とする時、ブロックデバイスドライバ装置は、保留待ち行列内の書き込み/読み取り要求を、処理のために、ブロックデバイスサービス装置に送信することを停止する、すなわち、新しい書き込み/読み取り要求をブロックデバイスサービス装置に送信することを停止する。ブロックデバイスサービス装置がアップグレードを行う、またはアップグレードを完了した後に、ブロックデバイスドライバ装置は、対応する保留待ち行列内のすべての書き込み/読み取り要求(図5に、1、2、3、4、5、6、……と示されている要求等)を、ブロックデバイスドライバ装置による後続の再ディスパッチのために、対応する待機待ち行列に戻して置く。   FIG. 5 illustrates a wait queue and a hold queue with which an improved physical server block device driver device is maintained before or after a service upgrade of a block device service device according to an exemplary embodiment of the present disclosure. FIG. 2 shows a schematic diagram illustrating a process for performing dispatch for the purpose of FIG. In order to support hot deployment (ie, online upgrade) of the block device service device, the kernel mode block device driver device needs to maintain write / read requests for received data. The block device driver device uses the two data read and write queues individually for each block device service device to maintain the state of the write / read request. One is a wait queue that is used to maintain write / read requests sent from the write / read dispatch layer in the physical server for each block device service device, A queue is placed in the wait queue to wait for subsequent processing by the block device driver device. The other is a pending queue that is used to maintain write / read requests that are currently being processed by the block device driver device for each block device service device. These write / read requests in the pending queue may not be completely processed and the block device driver device may be waiting for a processing response from the corresponding block device service device. If a particular block device service device is not performing a service upgrade, the block device driver device first begins the wait queue that is maintained in advance for the block device service device when processing a write / read request. Fetches the write / read request from the queue, deletes the fetched write / read request from the wait queue, and places the write / read request at the head of the pending queue that is maintained in advance for the block device service device. Each write / read request in the hold queue is sent to the block device service device for processing and after receiving the appropriate processing result of the received write / read request from the block device service device, The sent write / read request To remove from the distillate queue. When the block device service device needs a service upgrade, the block device driver device stops sending write / read requests in the pending queue to the block device service device for processing, i.e., new Stop sending the write / read request to the block device service device. After the block device service device performs an upgrade or completes the upgrade, the block device driver device will request all write / read requests in the corresponding pending queue (FIGS. 1, 2, 3, 4, 5, 6... Are put back into the corresponding wait queue for subsequent redispatch by the block device driver device.

以上のように、ブロックデバイスドライバ装置をエラスティックコンピューティングクラウドシステムの物理サーバに追加することによって、およびそれぞれのブロックデバイスサービス装置のために事前に維持されている2つの待ち行列を介して、ブロックデバイスドライバ装置によるディスパッチをすることによって、バックエンド記憶サービスのサービスアップグレードは、データ記憶のユーザに対する記憶サービスの提供を中断することなく完了することができるため、エラスティックコンピューティングクラウドシステムにおけるデータ記憶の可用性が向上する。さらに、前述の構想は、データ記憶のユーザが、記憶サービスのサービスアップグレードに起因するデータ記憶のトランザクションへのあらゆる影響をほとんど感じないように、ユーザにとって透過的であるため、ユーザの使用経験が改善される。   As described above, by adding a block device driver device to the physical server of the elastic computing cloud system and through two queues that are maintained in advance for each block device service device By dispatching the device driver device, the service upgrade of the back-end storage service can be completed without interrupting the provision of the storage service to the data storage user, so that the data storage in the elastic computing cloud system can be completed. Increases availability. In addition, the aforementioned concept is transparent to the user so that the data storage user feels almost no impact on the data storage transaction due to the service upgrade of the storage service, thus improving the user experience. Is done.

これに対応して、図6は、本開示の例示的な実施形態による、改善された物理サーバの新しいブロックデバイスドライバ装置を例示する構造図を示している。一実施形態において、本装置には、各ブロックデバイスサービス装置のために、待機待ち行列を個別に維持するために使用される、待機待ち行列維持ユニット60が含まれてもよく、この待機待ち行列内には、それぞれのブロックデバイスサービス装置のためのデータの書き込み/読み取り要求が、処理を待つ待ち行列の状態に入るように置かれる。加えて、本装置には、各ブロックデバイスサービス装置のために、別の保留待ち行列を個別に維持するために使用される、保留待ち行列維持ユニット61がさらに含まれてもよく、この別の保留待ち行列内には、それぞれのブロックデバイスサービス装置のための、目下処理中であるデータの書き込み/読み取り要求が置かれる。   Correspondingly, FIG. 6 shows a structural diagram illustrating a new block device driver apparatus for an improved physical server, according to an exemplary embodiment of the present disclosure. In one embodiment, the apparatus may include a wait queue maintenance unit 60 that is used to maintain a wait queue for each block device service device individually. Within it, data write / read requests for each block device service device are placed into a queue waiting for processing. In addition, the apparatus may further include a hold queue maintenance unit 61 that is used to maintain a separate hold queue for each block device service device individually. Placed in the pending queue are data write / read requests that are currently being processed for each block device service device.

具体的には、データの書き込み/読み取り要求は、特定のブロックデバイスサービス装置のために、待機待ち行列維持ユニット60によって事前に維持されている待機待ち行列からフェッチされて、そのブロックデバイスサービス装置のために維持されている保留待ち行列に移動される。具体的には、保留待ち行列維持ユニット61は、対応する待機待ち行列の先頭から、データの書き込み/読み取り要求をフェッチして、フェッチされたデータの書き込み/読み取り要求を待機待ち行列から削除し、フェッチされたデータの書き込み/読み取り要求を、事前に維持されている対応する保留待ち行列の先頭に転送することができる。   Specifically, a data write / read request is fetched from a wait queue previously maintained by the wait queue maintenance unit 60 for a particular block device service device and the block device service device's Is moved to a pending queue that is maintained. Specifically, the pending queue maintenance unit 61 fetches a data write / read request from the head of the corresponding wait queue, deletes the fetched data write / read request from the wait queue, Requests to write / read fetched data can be forwarded to the head of the corresponding pending queue maintained in advance.

いくつかの実施形態では、本装置には、書き込み/読み取り要求処理ユニット62がさらに含まれてもよい。書き込み/読み取り要求処理ユニット62は、保留待ち行列維持ユニット61によって維持されている、対応する保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、ブロックデバイスサービス装置に送信するために使用することができる。さらに、書き込み/読み取り要求処理ユニット62は、ブロックデバイスサービス装置からの、受信したデータの書き込み/読み取り要求の適切な処理結果の受信に応答して、送信されたデータの書き込み/読み取り要求を、保留待ち行列から削除することができ、ブロックデバイスサービス装置がサービスアップグレードを行うという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、処理のためにブロックデバイスサービス装置に送信することを停止することができる。   In some embodiments, the apparatus may further include a write / read request processing unit 62. The write / read request processing unit 62 sends a write / read request for data in the corresponding hold queue maintained by the hold queue maintenance unit 61 to the block device service device for processing. Can be used. Further, the write / read request processing unit 62 suspends the transmitted data write / read request in response to receiving an appropriate processing result of the received data write / read request from the block device service apparatus. In response to a determination that the block device service device is to perform a service upgrade that can be removed from the queue, a write / read request for data in the pending queue is sent to the block device service device for processing. Can be stopped.

いくつかの実施形態では、書き込み/読み取り要求処理ユニット62はさらに、サービスアップグレードが行われる、または完了したという判定に応答して、保留待ち行列内のデータの書き込み/読み取り要求を、書き込み/読み取り要求処理ユニット62によってその後に再ディスパッチされるのを待たせるために、対応する待機待ち行列に転送し戻すことができる。具体的には、書き込み/読み取り要求処理ユニット62は、ブロックデバイスドライバ装置とブロックデバイスサービス装置との間の通信接続の状態を検査することによって、通信接続の切断を検知すると、ブロックデバイスサービス装置がサービスアップグレードを行うと判定することができ、通信接続が回復されたと検知すると、ブロックデバイスサービス装置がサービスアップグレードを完了したと判定することができる。   In some embodiments, the write / read request processing unit 62 is further configured to respond to a determination that a service upgrade has occurred or has been completed with a write / read request for data in the pending queue. To wait for a subsequent redispatch by processing unit 62, it can be transferred back to the corresponding wait queue. Specifically, when the write / read request processing unit 62 detects the disconnection of the communication connection by checking the state of the communication connection between the block device driver apparatus and the block device service apparatus, the block device service apparatus It can be determined that the service upgrade is to be performed, and if it is detected that the communication connection has been restored, it can be determined that the block device service apparatus has completed the service upgrade.

図7は、本開示の例示的な実施形態による、サーバのサービスアップグレードを行う時に、物理サーバのブロックデバイスドライバ装置を制御する動作を例示する概略図を示している。具体的には、動作の過程には、以下が含まれる。   FIG. 7 shows a schematic diagram illustrating operations for controlling a block device driver device of a physical server when performing a service upgrade of the server according to an exemplary embodiment of the present disclosure. Specifically, the process of operation includes the following.

70において、記憶サービスのアップグレードに先立って、アップグレード保守管理者は、ioctlコマンドを、ユーザモードのクライアント装置を介して、カーネルモードのブロックデバイスドライバ装置に送信して、ブロックデバイスドライバ装置がすべての書き込み/読み取り要求を保持するように指示する。   At 70, prior to the storage service upgrade, the upgrade maintenance manager sends an ioctl command to the kernel mode block device driver device via the user mode client device, and the block device driver device writes all writes. / Instructs to hold the read request.

72において、アップグレード保守管理者はその後に、通常のアップグレードプロセスを使用して記憶サービスのためのサービスアップグレード(サービスアップグレードには、サービスを停止すること、サービスプログラムをアップグレードすること、新しいサービスを公開すること、等が含まれる)を行う。このようにして、記憶サービスに対するオンラインのサービスアップグレードを行うためのホットデプロイメントが完了する。ホットデプロイメントの処理中、ブロックデバイスドライバ装置はすべての書き込み/読み取り要求を保持する。   At 72, the upgrade maintenance manager then uses the normal upgrade process to upgrade the service for the storage service (service upgrade includes stopping the service, upgrading the service program, and publishing a new service). Is included). In this way, the hot deployment for performing an online service upgrade for the storage service is completed. During the hot deployment process, the block device driver device holds all write / read requests.

74において、デプロイメントがなされた上で、ブロックデバイスドライバ装置はすべての書き込み/読み取り要求を解放し、データの記憶サービスは処理を続ける。   At 74, upon deployment, the block device driver device releases all write / read requests and the data storage service continues processing.

本開示の例示的な実施形態は、方法、装置(デバイス)、またはコンピュータプログラム製品として提供され得ることが、当業者には理解されるべきである。したがって、本開示は、ハードウェアのみ、ソフトウェアのみ、またはハードウェアとソフトウェアとの組み合わせの単位で実施することができる。さらに、本開示は、コンピュータで実行可能な命令を含む1つまたは複数のコンピュータ記憶媒体(ディスク記憶、CD−ROM、光ディスク、その他を含むがこれらに限定されない)を有するコンピュータプログラム製品の形状で実施することができる。   It should be understood by one of ordinary skill in the art that the exemplary embodiments of the present disclosure can be provided as a method, apparatus (device), or computer program product. Accordingly, the present disclosure can be implemented in units of hardware only, software only, or a combination of hardware and software. Further, the present disclosure is implemented in the form of a computer program product having one or more computer storage media (including but not limited to disk storage, CD-ROM, optical disk, etc.) containing computer-executable instructions. can do.

本開示は、例示的な方法、装置(デバイス)およびコンピュータプログラム製品の、流れ図および/またはブロック図を参照して説明される。流れ図および/またはブロック図の、それぞれの流れおよび/またはブロック、ならびに流れおよび/またはブロックの組み合わせは、コンピュータプログラム命令によって実行されてもよいことが理解されるべきである。これらのコンピュータプログラム命令は、コンピュータまたはその他のプログラマブルデータプロセッサによる命令の実行を通じて、流れ図の1つまたは複数の流れ内、および/またはブロック図の1つまたは複数のブロック内で指示された機能を実施する装置を作るために、一般的なコンピュータ、特化型コンピュータ、マシンを作り出すための組み込みプロセッサもしくはその他のプログラマブルデータプロセッサに提供されてもよい。   The present disclosure is described with reference to flowchart illustrations and / or block diagrams of example methods, apparatus (devices) and computer program products. It is to be understood that each flow and / or block, and combinations of flows and / or blocks in the flowchart and / or block diagram, may be performed by computer program instructions. These computer program instructions perform the functions indicated in one or more flows of the flowchart and / or in one or more blocks of the block diagram through execution of instructions by a computer or other programmable data processor. May be provided to a general computer, a specialized computer, an embedded processor to create a machine, or other programmable data processor.

これらのコンピュータプログラム命令は、代替として、コンピュータ読み取り可能な記憶域に格納された命令が、命令装置を含む製品を作り出すように、コンピュータまたはその他のプログラマブルデータプロセッサに対して特定の方式で動作するように命令することのできる、コンピュータ読み取り可能な記憶域に格納されてもよい。命令装置は、流れ図の1つもしくは複数の流れおよび/またはブロック図の1つもしくは複数のブロックにおいて指示される機能を実施する。   These computer program instructions may alternatively operate in a specific manner for a computer or other programmable data processor such that instructions stored in computer readable storage produce a product that includes an instruction device. It may be stored in a computer readable storage area that can be instructed. The instruction device performs the functions indicated in one or more flows of the flowchart and / or one or more blocks of the block diagram.

これらのコンピュータプログラム命令は、代替として、コンピュータまたはその他のプログラマブルデータプロセッサが、コンピュータによって実施される処理を作り出すための一連の動作行動をすることができるように、コンピュータまたはその他のプログラマブルデータプロセッサ内にロードされてもよい。その結果、コンピュータまたはその他のプログラマブルデータプロセッサで実行される命令は、流れ図の1つもしくは複数の流れおよび/またはブロック図の1つもしくは複数のブロックにおいて指示される機能を実施するための行動を提供することができる。   These computer program instructions may alternatively reside in a computer or other programmable data processor so that the computer or other programmable data processor can take a series of operational actions to create a computer-implemented process. May be loaded. As a result, instructions executed on a computer or other programmable data processor provide actions to implement the functions indicated in one or more flows in the flowchart and / or one or more blocks in the block diagram. can do.

例えば、図8は、上記で説明される装置のような、例示的な装置800をより詳細に示している。一実施形態において、装置800には、1つまたは複数のプロセッサ801、ネットワークインターフェース802、メモリ803、および入出力インターフェース804が含まれてもよいが、これらに限定されない。   For example, FIG. 8 shows an exemplary apparatus 800 in more detail, such as the apparatus described above. In one embodiment, the device 800 may include, but is not limited to, one or more processors 801, a network interface 802, a memory 803, and an input / output interface 804.

メモリ803には、ランダムアクセスメモリ(RAM)等のような、揮発性メモリの形状の、コンピュータ読み取り可能な媒体、および/または、リードオンリーメモリ(ROM)もしくはフラッシュRAM等のような、不揮発性メモリが含まれてもよい。メモリ803は、コンピュータ読み取り可能な媒体の一例である。   Memory 803 includes computer readable media in the form of volatile memory, such as random access memory (RAM), and / or non-volatile memory, such as read only memory (ROM) or flash RAM. May be included. The memory 803 is an example of a computer-readable medium.

コンピュータ読み取り可能な媒体には、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、またはその他のデータ等のような情報の記憶のための、あらゆる方法もしくは技術において実装される、揮発性および不揮発性、取り外し可能なおよび取り外し不可能な媒体が含まれる。コンピュータ記憶媒体の例には、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、その他のタイプのランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、フラッシュメモリもしくはその他のメモリ技術、コンパクトディスクリードオンリーメモリ(CD−ROM)、デジタル多目的ディスク(DVD)もしくはその他の光学式記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくはその他の磁気記憶装置、または、コンピューティング装置によってアクセスするための情報を格納するために使用され得る、あらゆるその他の非伝送媒体が含まれるが、これらに限定されない。本明細書において定義されるように、コンピュータ読み取り可能な媒体には、変調されたデータ信号および搬送波等のような、一時的な媒体は含まれない。   Computer-readable media includes volatile and nonvolatile, implemented in any method or technique for storage of information such as computer readable instructions, data structures, program modules, or other data. Includes removable and non-removable media. Examples of computer storage media include phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), electrical Erasable Programmable Read Only Memory (EEPROM), Flash Memory or Other Memory Technology, Compact Disc Read Only Memory (CD-ROM), Digital Multipurpose Disc (DVD) or Other Optical Storage, Magnetic Cassette, Magnetic Tape, Magnetic Includes any disk storage or other magnetic storage device or any other non-transmission medium that can be used to store information for access by a computing device. But it is not limited to. As defined herein, computer-readable media does not include temporary media, such as modulated data signals and carrier waves.

メモリ803には、プログラムユニット805およびプログラムデータ806が含まれてもよい。一実施形態では、プログラムユニット805には、待機待ち行列維持ユニット807、保留待ち行列維持ユニット808、および書き込み/読み取り要求処理ユニット809が含まれてもよい。これらのプログラムユニットの詳細は、上記で説明されている前述の実施形態内に見ることができる。   The memory 803 may include a program unit 805 and program data 806. In one embodiment, the program unit 805 may include a wait queue maintenance unit 807, a hold queue maintenance unit 808, and a write / read request processing unit 809. Details of these program units can be found in the previous embodiments described above.

本開示の好ましい実施形態が説明されているが、当業者は、基本的な創造的概念を理解すればすぐに、これらの実施形態に対する追加の修正および変更を行うことが可能である。したがって、特許請求の範囲は、本開示の特許請求の範囲および好ましい実施形態の範囲に含まれる、すべての変更形態および変形形態を含むことが意図される。   While preferred embodiments of the present disclosure have been described, those skilled in the art can make additional modifications and changes to these embodiments as soon as they understand the basic creative concepts. Accordingly, the claims are intended to cover all modifications and variations that fall within the scope of the claims and the preferred embodiments of the present disclosure.

当業者は、開示される方法、システムおよび装置を多くの異なるやり方で、本開示の趣旨および範囲から逸脱することなく、修正または変更することができる。したがって、本開示は、本開示の特許請求の範囲およびそれらの均等物の範囲に含まれる、すべての変更形態および変形形態を含むことが意図される。   Those skilled in the art can modify or change the disclosed methods, systems, and devices in many different ways without departing from the spirit and scope of the disclosure. Accordingly, this disclosure is intended to embrace all such alterations and modifications that fall within the scope of the claims of this disclosure and their equivalents.

Claims (20)

ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施する、エラスティックコンピューティングクラウドシステムのサーバであって、ブロックデバイスドライバ装置と、少なくとも1つのブロックデバイスサービス装置とを備え、
前記ブロックデバイスドライバ装置は、
ブロックデバイスサービス装置に対応するデータの書き込み/読み取り要求の受信に応答して、前記ブロックデバイスサービス装置のために事前に維持されている待機待ち行列内に、受信した前記データの書き込み/読み取り要求を置き、
前記待機待ち行列からデータの書き込み/読み取り要求をフェッチして、前記フェッチされた要求を、前記ブロックデバイスサービス装置のために事前に維持されている保留待ち行列に転送し、
前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために前記ブロックデバイスサービス装置に送信し、
受信した前記データの書き込み/読み取り要求についての前記ブロックデバイスサービス装置からの処理結果の受信に応答して、前記送信されたデータの書き込み/読み取り要求を前記保留待ち行列から削除し、
前記ブロックデバイスサービス装置がサービスアップグレードを行うという判定に応答して、前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために前記ブロックデバイスサービス装置に送信することを停止し、
サービスアップグレードが行われる、または完了したという判定に応答して、前記保留待ち行列内の前記データの書き込み/読み取り要求を前記待機待ち行列に転送し戻すように構成され、
前記ブロックデバイスサービス装置は、
前記ブロックデバイスドライバ装置から送信された前記データの書き込み/読み取り要求に基づいて、ブロックデバイスの記憶リソースプールのために要求されたデータに対応する読み取りおよび書き込みの動作を行うように構成される、サーバ。
A server of an elastic computing cloud system that performs data storage based on a storage service associated with a block device, comprising a block device driver device and at least one block device service device;
The block device driver device is:
In response to receiving a data write / read request corresponding to a block device service device, the received data write / read request is placed in a wait queue that is maintained in advance for the block device service device. put,
Fetching a data write / read request from the wait queue and transferring the fetched request to a pending queue that is maintained in advance for the block device service device;
Sending data write / read requests in the hold queue to the block device service device for processing;
In response to receiving a processing result from the block device service apparatus for the received data write / read request, the transmitted data write / read request is deleted from the pending queue;
In response to a determination that the block device service device is to perform a service upgrade, stop sending data write / read requests in the pending queue to the block device service device for processing;
Responsive to a determination that a service upgrade has occurred or has been completed, configured to transfer a write / read request for the data in the pending queue back to the standby queue;
The block device service device
A server configured to perform read and write operations corresponding to data requested for a storage resource pool of a block device based on a write / read request for the data transmitted from the block device driver device .
前記ブロックデバイスサービス装置の始動を制御し、
始動時に、前記ブロックデバイスドライバ装置と、前記始動されたブロックデバイスサービス装置との間の通信接続を確立するように構成される、クライアント装置をさらに備える、請求項1に記載のサーバ。
Controlling the start of the block device service device;
The server of claim 1, further comprising a client device configured to establish a communication connection between the block device driver device and the started block device service device at startup.
前記クライアント装置は、
前記ブロックデバイスサービス装置の停止を制御し、
停止時に、前記ブロックデバイスドライバ装置と、前記停止されたブロックデバイスサービス装置との間の前記通信接続を解除するようにさらに構成される、請求項2に記載のサーバ。
The client device is
Controlling the stop of the block device service device,
The server of claim 2, further configured to release the communication connection between the block device driver device and the stopped block device service device when stopped.
前記ブロックデバイスドライバ装置は、前記ブロックデバイスサービス装置との通信接続を検査するようにさらに構成される、請求項1に記載のサーバ。   The server of claim 1, wherein the block device driver device is further configured to verify a communication connection with the block device service device. 前記ブロックデバイスドライバ装置は、前記ブロックデバイスサービス装置との前記通信接続が切断されたという判定に応答して、前記ブロックデバイスサービス装置がサービスアップグレードを行うと判定するようにさらに構成される、請求項4に記載のサーバ。   The block device driver apparatus is further configured to determine that the block device service apparatus performs a service upgrade in response to determining that the communication connection with the block device service apparatus has been disconnected. 4. The server according to 4. 前記ブロックデバイスドライバ装置は、前記ブロックデバイスサービス装置との前記通信接続が接続のために回復されたという判定に応答して、前記ブロックデバイスサービス装置が前記サービスアップグレードを完了したと判定するようにさらに構成される、請求項4に記載のサーバ。   The block device driver device is further configured to determine that the block device service device has completed the service upgrade in response to determining that the communication connection with the block device service device has been restored for connection. The server of claim 4 configured. ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施する、エラスティックコンピューティングクラウドシステムをアップグレードする方法であって、
ブロックデバイスに関連付けられたサービスに対応する、データの書き込み/読み取り要求の受信に応答して、その都度、前記ブロックデバイスに関連付けられた前記サービスのために事前に維持された待機待ち行列内に、受信した前記データの書き込み/読み取り要求を置くことと、
前記待機待ち行列からデータの書き込み/読み取り要求をフェッチすること、前記フェッチされた要求を、前記ブロックデバイスに関連付けられた前記サービスのために事前に維持されている保留待ち行列に転送すること、前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために前記ブロックデバイスに関連付けられた前記サービスに送信すること、および受信した前記データの書き込み/読み取り要求についての、前記ブロックデバイスに関連付けられた前記サービスからの処理結果の受信に応答して、前記送信されたデータの書き込み/読み取り要求を前記保留待ち行列から削除することと、
前記ブロックデバイスに関連付けられた前記サービスが、サービスアップグレードを行うという判定に応答して、前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために前記ブロックデバイスに関連付けられた前記サービスに送信することを停止することと、
サービスアップグレードが行われる、または完了したという判定に応答して、前記保留待ち行列内の前記データの書き込み/読み取り要求を前記待機待ち行列に転送し戻すことと、
を含む、方法。
A method for upgrading an elastic computing cloud system that implements storage of data based on a storage service associated with a block device comprising:
In response to receiving a data write / read request corresponding to a service associated with a block device, each time in a wait queue maintained in advance for the service associated with the block device, Placing a write / read request for the received data;
Fetching data write / read requests from the waiting queue, forwarding the fetched requests to a pending queue that is pre-maintained for the service associated with the block device; Sending a write / read request for data in the pending queue to the service associated with the block device for processing and associated with the block device for the received write / read request for data In response to receiving a processing result from the service, deleting the transmitted data write / read request from the pending queue;
In response to a determination that the service associated with the block device is to perform a service upgrade, a write / read request for data in the pending queue is sent to the service associated with the block device for processing. Stop sending, and
In response to a determination that a service upgrade has been or has been completed, transferring a write / read request for the data in the pending queue back to the standby queue;
Including a method.
サービスアップグレードが行われる、または完了したという判定は、前記ブロックデバイスに関連付けられた前記サービスとの通信接続を検査することを含む、請求項7に記載の方法。   The method of claim 7, wherein determining that a service upgrade has been performed or has completed includes checking a communication connection with the service associated with the block device. サービスアップグレードが行われる、または完了したという判定は、前記ブロックデバイスサービス装置との前記通信接続が切断されたという判定に応答して、前記ブロックデバイスサービス装置がサービスアップグレードを行うと判定することをさらに含む、請求項8に記載の方法。   The determination that a service upgrade is performed or has completed further includes determining that the block device service apparatus performs a service upgrade in response to a determination that the communication connection with the block device service apparatus is disconnected. 9. The method of claim 8, comprising. サービスアップグレードが行われる、または完了したという判定は、前記ブロックデバイスサービス装置との前記通信接続が、接続のために回復されたという判定に応答して、前記ブロックデバイスサービス装置が前記サービスアップグレードを完了したと判定することをさらに含む、請求項8に記載の方法。   A determination that a service upgrade has been or has been completed is responsive to a determination that the communication connection with the block device service device has been restored for connection, wherein the block device service device has completed the service upgrade 9. The method of claim 8, further comprising determining that it has been. 前記待機待ち行列からデータの書き込み/読み取り要求をフェッチして、前記フェッチされた要求を、前記ブロックデバイスに関連付けられた前記サービスのために事前に維持されている保留待ち行列に転送することは、
前記待機待ち行列の先頭から前記データの書き込み/読み取り要求をフェッチすることと、
前記フェッチされたデータの書き込み/読み取り要求を、前記待機待ち行列から削除することと、
前記フェッチされたデータの書き込み/読み取り要求を、事前に維持された前記保留待ち行列に転送することと、
を含む、請求項7に記載の方法。
Fetching a write / read request for data from the wait queue and forwarding the fetched request to a pending queue that is pre-maintained for the service associated with the block device;
Fetching the data write / read request from the head of the wait queue;
Deleting the fetched data write / read request from the waiting queue;
Forwarding the fetched data write / read request to the hold queue previously maintained;
The method of claim 7 comprising:
ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施する、エラスティックコンピューティングクラウドシステムをアップグレードする装置であって、
ブロックデバイスに関連付けられたサービスに対応する、データの書き込み/読み取り要求の受信に応答して、その都度、前記ブロックデバイスに関連付けられた前記サービスのために事前に維持された待機待ち行列内に、受信した前記データの書き込み/読み取り要求を置くように構成される、待機待ち行列維持ユニットと、
前記待機待ち行列からデータの書き込み/読み取り要求をフェッチして、前記フェッチされた要求を、前記ブロックデバイスに関連付けられた前記サービスのために事前に維持された保留待ち行列に転送するように構成される、保留待ち行列維持ユニットと、
前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、前記ブロックデバイスに関連付けられた前記サービスに送信し、
受信した前記データの書き込み/読み取り要求についての、前記ブロックデバイスに関連付けられた前記サービスからの処理結果の受信に応答して、前記送信されたデータの書き込み/読み取り要求を前記保留待ち行列から削除し、
前記ブロックデバイスに関連付けられた前記サービスが、サービスアップグレードを行うという判定に応答して、前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、前記ブロックデバイスに関連付けられた前記サービスに送信することを停止し、
サービスアップグレードが行われる、または完了したという判定に応答して、前記保留待ち行列内の前記データの書き込み/読み取り要求を、前記待機待ち行列に転送し戻す、ように構成される、書き込み/読み取り要求処理ユニットと、
を備える、装置。
An apparatus for upgrading an elastic computing cloud system for storing data based on a storage service associated with a block device, comprising:
In response to receiving a data write / read request corresponding to a service associated with a block device, each time in a wait queue maintained in advance for the service associated with the block device, A wait queue maintenance unit configured to place a write / read request for the received data;
Configured to fetch data write / read requests from the wait queue and forward the fetched requests to a pending queue previously maintained for the service associated with the block device. A hold queue maintenance unit;
Sending a write / read request for data in the pending queue to the service associated with the block device for processing;
In response to receiving a processing result from the service associated with the block device for the received data write / read request, the transmitted data write / read request is deleted from the pending queue. ,
In response to a determination that the service associated with the block device is to perform a service upgrade, a write / read request for data in the pending queue is processed for processing the service associated with the block device. Stop sending to
A write / read request configured to forward the write / read request for the data in the pending queue back to the wait queue in response to a determination that a service upgrade has occurred or has been completed. A processing unit;
An apparatus comprising:
前記書き込み/読み取り要求処理ユニットは、前記装置と前記ブロックデバイスサービス装置との間の通信接続を検査するようにさらに構成される、請求項12に記載の装置。   The apparatus of claim 12, wherein the write / read request processing unit is further configured to verify a communication connection between the apparatus and the block device service apparatus. 前記書き込み/読み取り要求処理ユニットは、前記通信接続が切断されたという判定に応答して、前記ブロックデバイスサービス装置が、サービスアップグレードを行うと判定するようにさらに構成される、請求項13に記載の装置。   14. The write / read request processing unit is further configured to determine that the block device service device performs a service upgrade in response to a determination that the communication connection has been disconnected. apparatus. 前記書き込み/読み取り要求処理ユニットは、前記通信接続が回復されたという判定に応答して、前記ブロックデバイスサービス装置が、前記サービスアップグレードを完了したと判定するようにさらに構成される、請求項13に記載の装置。   The write / read request processing unit is further configured to determine that the block device service device has completed the service upgrade in response to determining that the communication connection has been restored. The device described. 前記保留待ち行列維持ユニットは、前記待機待ち行列の先頭から前記データの書き込み/読み取り要求をフェッチし、前記フェッチされたデータの書き込み/読み取り要求を前記待機待ち行列から削除し、前記フェッチされたデータの書き込み/読み取り要求を、事前に維持されている前記保留待ち行列に転送する、請求項12に記載の装置。   The hold queue maintenance unit fetches the data write / read request from the head of the wait queue, deletes the fetched data write / read request from the wait queue, and fetches the fetched data. 13. The device of claim 12, wherein the device writes / reads requests to the pending queue that is maintained in advance. ブロックデバイスに関連付けられた記憶サービスに基づいてデータの記憶を実施する、エラスティックコンピューティングクラウドシステムであって、
前記ブロックデバイスに関連付けられた前記記憶サービスに基づいて、前記エラスティックコンピューティングクラウドシステムのデータを格納するように構成される、記憶リソースプールと、
ブロックデバイスに関連付けられたサービスに対応する、データの書き込み/読み取り要求の受信に応答して、その都度、前記ブロックデバイスに関連付けられた前記サービスのために、事前に維持されている待機待ち行列内に前記受信したデータの書き込み/読み取り要求を置き、
前記待機待ち行列からデータの書き込み/読み取り要求をフェッチして、前記フェッチされた要求を、前記ブロックデバイスに関連付けられた前記サービスのために、事前に維持されている保留待ち行列に転送し、
前記保留待ち行列内の前記データの書き込み/読み取り要求に基づいて、前記記憶リソースプールのために要求されたデータに対応する読み込みおよび書き込みの動作を行い、
前記ブロックデバイスに関連付けられた前記サービスが、サービスアップグレードを行うという判定に応答して、前記保留待ち行列内のデータの書き込み/読み取り要求を、処理のために、前記ブロックデバイスに関連付けられた前記サービスに送信することを停止し、
サービスアップグレードが行われる、または完了したという判定に応答して、前記保留待ち行列内の前記データの書き込み/読み取り要求を、前記待機待ち行列に転送し戻す、ように構成される、少なくとも1つの物理サーバと、
を備える、エラスティックコンピューティングクラウドシステム。
An elastic computing cloud system for storing data based on a storage service associated with a block device,
A storage resource pool configured to store data of the elastic computing cloud system based on the storage service associated with the block device;
Each time in response to receipt of a data write / read request corresponding to a service associated with a block device, in a wait queue maintained in advance for the service associated with the block device Put the request to write / read the received data in
Fetching data write / read requests from the waiting queue and forwarding the fetched requests to a pending queue that is maintained in advance for the service associated with the block device;
Performing read and write operations corresponding to the requested data for the storage resource pool based on write / read requests for the data in the pending queue;
In response to a determination that the service associated with the block device is to perform a service upgrade, a write / read request for data in the pending queue is processed for processing the service associated with the block device. Stop sending to
At least one physical configured to forward a write / read request for the data in the pending queue back to the standby queue in response to a determination that a service upgrade has been performed or has been completed Server,
An elastic computing cloud system.
前記記憶リソースプールは、前記少なくとも1つの物理サーバと共にローカルに展開される、請求項17に記載のシステム。   The system of claim 17, wherein the storage resource pool is deployed locally with the at least one physical server. 前記記憶リソースプールは、前記少なくとも1つの物理サーバから遠隔に展開される、請求項17に記載のシステム。   The system of claim 17, wherein the storage resource pool is deployed remotely from the at least one physical server. 前記少なくとも1つの物理サーバは、前記フェッチされたデータの書き込み/読み取り要求の、前記保留待ち行列への転送に応答して、前記フェッチされたデータの書き込み/読み取り要求を、前記待機待ち行列から取り除くようにさらに構成される、請求項17に記載のシステム。   The at least one physical server removes the fetched data write / read request from the wait queue in response to transferring the fetched data write / read request to the pending queue. The system of claim 17, further configured as follows:
JP2013548460A 2011-01-05 2012-01-03 Elastic computing cloud system upgrade Active JP5931919B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201110001297.X 2011-01-05
CN201110001297.XA CN102591668B (en) 2011-01-05 2011-01-05 Device, method and system for updating elastic computing cloud system
PCT/US2012/020055 WO2012094303A1 (en) 2011-01-05 2012-01-03 Upgrading an elastic computing cloud system

Publications (2)

Publication Number Publication Date
JP2014501995A true JP2014501995A (en) 2014-01-23
JP5931919B2 JP5931919B2 (en) 2016-06-08

Family

ID=46457681

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013548460A Active JP5931919B2 (en) 2011-01-05 2012-01-03 Elastic computing cloud system upgrade

Country Status (6)

Country Link
EP (1) EP2661691A4 (en)
JP (1) JP5931919B2 (en)
CN (1) CN102591668B (en)
HK (1) HK1169733A1 (en)
TW (1) TWI518502B (en)
WO (1) WO2012094303A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201561B (en) * 2015-04-30 2019-08-23 阿里巴巴集团控股有限公司 The upgrade method and equipment of distributed caching cluster
CN105183399A (en) * 2015-09-30 2015-12-23 北京奇艺世纪科技有限公司 Data writing and reading method and device based on elastic block storage
US10152351B2 (en) 2016-02-01 2018-12-11 Microsoft Technology Licensing, Llc Proxy object system
CN108021408B (en) * 2016-11-01 2021-01-29 阿里巴巴集团控股有限公司 Upgrading method and device
CN108021378A (en) * 2016-11-03 2018-05-11 阿里巴巴集团控股有限公司 Upgrade-system, the upgrade method based on virtual machine and device
CN108156208B (en) * 2016-12-02 2022-02-25 阿里巴巴集团控股有限公司 Method, device and system for publishing application program data
CN109002254A (en) * 2017-06-07 2018-12-14 华为技术有限公司 Storage processing method, device and relevant device
CN111143250B (en) * 2019-12-20 2022-03-22 苏州浪潮智能科技有限公司 Method, device and medium for accessing FPGA storage unit based on AXI-ST interface
JP7122718B2 (en) 2020-06-25 2022-08-22 株式会社エジソンラボ wallet
CN111859420A (en) * 2020-07-01 2020-10-30 深圳市中网信安技术有限公司 Data encryption method and device, data decryption method and device and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038922A (en) * 2001-12-28 2004-02-05 Network Appliance Inc Technique for enabling a plurality of virtual filers on single filer to participate in a plurality of address spaces with overlapping network addresses
JP2004199247A (en) * 2002-12-17 2004-07-15 Hitachi Communication Technologies Ltd Method for updating program
US20100199037A1 (en) * 2009-02-04 2010-08-05 Steven Michael Umbehocker Methods and Systems for Providing Translations of Data Retrieved From a Storage System in a Cloud Computing Environment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664195A (en) * 1993-04-07 1997-09-02 Sequoia Systems, Inc. Method and apparatus for dynamic installation of a driver on a computer system
JP2001100935A (en) 1999-09-28 2001-04-13 Internatl Business Mach Corp <Ibm> Disk device and its control method
US6925526B2 (en) * 2002-10-31 2005-08-02 International Business Machines Corporation Method and apparatus for servicing mixed block size data access operations in a disk drive data storage device
US7305537B1 (en) * 2005-03-01 2007-12-04 Sun Microsystems, Inc. Method and system for I/O scheduler activations
US8145806B2 (en) * 2008-09-19 2012-03-27 Oracle International Corporation Storage-side storage request management
EP2425338A1 (en) * 2009-05-01 2012-03-07 Citrix Systems, Inc. Systems and methods for providing a virtual appliance in an application delivery fabric

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038922A (en) * 2001-12-28 2004-02-05 Network Appliance Inc Technique for enabling a plurality of virtual filers on single filer to participate in a plurality of address spaces with overlapping network addresses
JP2004199247A (en) * 2002-12-17 2004-07-15 Hitachi Communication Technologies Ltd Method for updating program
US20100199037A1 (en) * 2009-02-04 2010-08-05 Steven Michael Umbehocker Methods and Systems for Providing Translations of Data Retrieved From a Storage System in a Cloud Computing Environment

Also Published As

Publication number Publication date
CN102591668A (en) 2012-07-18
JP5931919B2 (en) 2016-06-08
HK1169733A1 (en) 2013-02-01
TWI518502B (en) 2016-01-21
EP2661691A4 (en) 2016-03-23
CN102591668B (en) 2015-04-08
WO2012094303A1 (en) 2012-07-12
EP2661691A1 (en) 2013-11-13
TW201229750A (en) 2012-07-16

Similar Documents

Publication Publication Date Title
JP5931919B2 (en) Elastic computing cloud system upgrade
US8447894B2 (en) Upgrading an elastic computing cloud system
KR102055325B1 (en) Efficient live-migration of remotely accessed data
US10275851B1 (en) Checkpointing for GPU-as-a-service in cloud computing environment
US9588796B2 (en) Live migration with pre-opened shared disks
US9430268B2 (en) Systems and methods for supporting migration of virtual machines accessing remote storage devices over network via NVMe controllers
US8924965B2 (en) Memory state transfer of virtual machine-controlled peripherals during migrations of the virtual machine
US9336039B2 (en) Determining status of migrating virtual machines
US8490088B2 (en) On demand virtual machine image streaming
US8356120B2 (en) Mechanism for memory state restoration of virtual machine (VM)-controlled peripherals at a destination host machine during migration of the VM
US20160055021A1 (en) Rapid suspend/resume for virtual machines via resource sharing
US8863123B2 (en) Apparatus and method for virtualizing input/output devices using shared memory in host-based mobile terminal virtualization environment
US10860363B1 (en) Managing virtual machine hibernation state incompatibility with underlying host configurations
US8006254B2 (en) Bequeathing privilege to a dynamically loaded module
US20180081674A1 (en) Updating Machine Emulator
JP2015526823A (en) Transparent host-side caching of virtual disks on shared storage
US9571584B2 (en) Method for resuming process and information processing system
US11256533B1 (en) Transparent disk caching for virtual machines and applications
US20140237479A1 (en) Virtual Machine-to-Image Affinity on a Physical Server
US20170331912A1 (en) Multi-account login and communication
US8156510B2 (en) Process retext for dynamically loaded modules
US9760524B2 (en) System and method to redirect UASP mass storage devices to an unsupported operating system in a VDI environment
US10942821B1 (en) Method and apparatus for dynamic binding and unbinding thin logical storage volumes to snapshots of a file system
US11669365B1 (en) Task pool for managed compute instances
US11340818B2 (en) Migrating virtual tapes between different virtual tape storages without host involvement

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160307

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160427

R150 Certificate of patent or registration of utility model

Ref document number: 5931919

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250