WO2015080560A1 - Method and system for iaas image creation - Google Patents

Method and system for iaas image creation Download PDF

Info

Publication number
WO2015080560A1
WO2015080560A1 PCT/MY2014/000155 MY2014000155W WO2015080560A1 WO 2015080560 A1 WO2015080560 A1 WO 2015080560A1 MY 2014000155 W MY2014000155 W MY 2014000155W WO 2015080560 A1 WO2015080560 A1 WO 2015080560A1
Authority
WO
WIPO (PCT)
Prior art keywords
module
image
bundling
user
iaas
Prior art date
Application number
PCT/MY2014/000155
Other languages
French (fr)
Inventor
Mohd Raihan Fadzil
Ikhwan Ismail Bukhary
Rama Tulasi Raju Morampudi
Original Assignee
Mimos Berhad
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 Mimos Berhad filed Critical Mimos Berhad
Publication of WO2015080560A1 publication Critical patent/WO2015080560A1/en

Links

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Definitions

  • the present invention relates to cloud computing. More specifically, the present invention relates to a system and method for creating Infrastructure as a Service (IaaS) image.
  • IaaS Infrastructure as a Service
  • IaaS Infrastructure as a Service
  • IaaS Infrastructure as a Service
  • Creation of IaaS image is the main hurdles for average users to adopt IaaS as an alternate solution for development, test or even production setup.
  • To create a VM image user needs to have the knowledge of virtualization and system administration. The user needs to interact directly with the IaaS to carry out the image creation tasks according to its required steps manually.
  • FIG. 1 illustrates a flow diagram showing the steps taken by the users to create an image from a raw image.
  • the steps includes defining CPU, memory and disk(s) sizes; starting a virtual machine; booting the virtual machine from CD or DVD; configuring partition(s), boot menu, security etc; installing/configuring software packages onto the image; checking the VM compatibility and IaaS settings; uploading image to the IaaS; and registering the new image.
  • a system for creating an IaaS image at a remote host machines by a user comprises an user interface (UI) module facilitating the user with a platform for user to perform customization to create the IaaS image through a request, wherein the user the UI module can be used for monitoring the image creating process; a bundling database module for storing bundling information, which includes the request to create IaaS image from the user; a virtual machine (VM) creator module that operably receives the request from the bundling database module to create a VM and install required operating system (OS) and application packages to form a VM raw image; a repository module for storing the OS and application packages; a bundling module for receiving the VM raw image from the VM creator module, and bundled the same as a IaaS compliance image and publishing it to IaaS .
  • UI user interface
  • a bundling database module for storing bundling information, which includes the request to create IaaS image from the user
  • VM virtual machine
  • the VM creator module may further comprise a monitoring module for monitoring the progress and status of the image creation; a VM preparation module for preparing a new VM based on the user's request; and a VM pool module operationally booting the new VM and assigning an IP address to the new VM through a boot and DHCP module, once it is booted, carrying out installation of the requested OS and applications packages to render the VM raw image for transmitting to the bundling module.
  • the monitoring module is further adapted to acquire the status and progress from the bundling database module and transmit the same to the VM pool module, based on the status and progress, the VM pool module retrieves the requested OS and application packages from the repository module 308 through a repository client module.
  • the bundling module may comprise an image bundler module for preparing, uploading and registering the VM raw image and publishing the laaS compliance image to the laaS; and a bundling monitoring module for monitoring image creation status and process and coordinating the same based on the status and progress. It is possible that the bundling monitoring module is adapted to acquire the latest status of bundling tasks from a bundling queue module for updating the bundling information to the VM creator module.
  • a method of creating an laaS image at a remote host machine by a user comprises receiving a request from the user through an user interface (UI) module to perform customization to create the laaS image; storing bundling information onto a bundling database module wherein the bundling information includes the request to create laaS image from the user; retrieving the request from the bundling database module, a virtual machine (VM) creator module; creating a VM; installing required operating system (OS) and application packages to form a VM raw image, wherein the OS and application packages are retrieved from a repository module; receiving the VM raw image from the VM creator module; bundling the same as a laaS compliance image; publishing the laaS compliance image to laaS at a bundling module; and outputting image creating process through the user the UI module.
  • UI user interface
  • the method further comprise monitoring the progress and status of the image creation through a monitoring module; preparing a new VM based on the user's request through a VM preparation module; booting the new VM and assigning an IP address to the new VM through a boot and DHCP module; installing the requested OS and applications packages to render the VM raw image for transmitting to the bundling module.
  • the monitoring the progress and status of the image creation further comprises acquiring the status and progress from the bundling database module; transmitting the status and progress to a VM pool module; retrieving the requested OS and application packages from the repository module through a repository client module based on the status and progress.
  • IaaS Infrastructure as a Service
  • FIG. 3 illustrates an IaaS creation system in accordance with one embodiment of the present invention
  • FIG. 4 illustrates a block diagram of the VM creator module of the FIG.
  • FIG. 5 illustrates a block diagram of the bundling module of FIG. 3 in accordance with one embodiment of the present invention
  • FIG. 6 illustrates a flow diagram of an overall process of an IaaS image creation in accordance with one embodiment of the present invention
  • FIG. 7 illustrates a flow diagram of process carries out by the VM creator module of FIG. 3 in accordance with one embodiment of the present invention
  • FIG. 8 illustrates a flow chart of a bundling process in accordance with one embodiment of the present invention.
  • the present invention provides a system and method for creating laaS image to encourage users adoption of the laaS by providing a system that automates creations of VM image with minimal effort.
  • the system allows user to select installation packages, operating system (OS) customizations, and image compliance with the intended host machine's laaS standards.
  • OS operating system
  • FIG. 2 illustrates a schematic diagram of a system for creating an
  • the system involves generally an laaS user 202, an laaS 204 deployed on a remote host machine, and an laaS image creation system.
  • the present invention can be a dedicated service serving as a intermediate agent remotely located from the user who wish to deploy the IaaS's image and the IaaS's host for hosting the IaaS's image once deployed. It is of course understood that the implementation can also be a integrated feature available at the laaS host for creating the laaS image.
  • the laaS user 202 also referred herein as "the user” for simplicity, submits a new laaS image request to the laaS image creation system 206 to deploying on the laaS 204.
  • the laaS image Creation system 206 provides user a bundling system that bundles user selected operating system (OS) and applications to be resided in the new image.
  • OS operating system
  • User does not need to interact with the hypervisor of the host machine or package repository because the laaS image creation system will be taken over the responsibility on the user behalf based on the selected configurations automatically.
  • FIG. 3 illustrates an IaaS creation system 300 in accordance with one embodiment of the present invention.
  • the IaaS image creation system 3O0 comprises an user interface (UI) module 302, a virtual machine (VM) creation module 304, a bundling database module 306, a repository module 308 and a bundling module 310.
  • UI user interface
  • VM virtual machine
  • bundling database module 306 a repository module 308
  • bundling module 310 an IaaS user, or simply user, is required to register with a user account with the IaaS image creation system 300 and logon to the system 300 to submit a new customized image request through the system 300.
  • the IaaS image creation system 300 provides the UI module 302 to serve as a user interface for creating the image and monitoring its creation progress.
  • the UI facilitates a platform for user to perform all the customizations on the IaaS image creation system 300 at ease. All the user's selections and customizations are stored on the bundling database module 306 as bundling information.
  • the bundling information is accessible by the VM creator module 304 to
  • the VM machine creator module 304 serves as an engine to manage and monitor the entire image creation process.
  • the VM creator module 304 actively checks for new image creation request available from the bundling database module 306. Once the new image creation request is available, the VM creator module 304 retrieves the requested guest OS and the application packages from the repository module 308.
  • the repository module 308 is provided for storing different guest OS and application packages therein.
  • the VM creator module 304 boots a VM locally for preparing the retrieved OS and application packages based on the user's request from the bundling database module 306 to form a new VM raw image. Once the VM raw image is ready, it is transfer to the bundling module 310 creates an image from the VM raw image that is in compliance with the IaaS for publishing over the computing cloud.
  • FIG. 4 illustrates a block diagram of the VM creator module 304 of the
  • the VM creator 304 comprises a VM preparation module 402, a monitoring module 404, a service interval timer 406, a VM pool module 408, a repository client module 410, and a boot and DHCP module 412.
  • the VM preparation module 402 is adapted for preparing a virtual machine accordingly to the user request.
  • the VM preparation module 402 receives the request to create new VM through the monitoring module 404.
  • the VM preparation module 402 creates a VM with configurations, such as memory sizes, processing power, network requirements, etc. as defined by the user in the request.
  • the service interval time 406 assists the VM preparation module 404 to receive at a predetermined interval.
  • the predetermined interval is available to coordinate the workload, which can avoid sudden spike of incoming requests that overload the system.
  • the VM pool module 408 to serve as the core engine for preparing VM based on the user request that defines the type of OS, selected packages and configurations, etc. It boots up the VM and assign and IP address to the VM through the Boot and DHCP module 412. Once the VM is booted up, the VM pool module 408 interfaces with the repository client module 410 for querying and retrieving the requested operating system and application packages from the repository module 308.
  • the VM pool module 408 operationally updates the monitoring module 404 status of the image creation process, which can be outputted onto the UI. Once the VM is created with all the requested OS and application packages deployed, the VM pool module 408 transfer the VM in a raw image form to the bundling module 310 for publishing.
  • FIG. 5 illustrates a block diagram of the bundling module 310 of FIG. 3 in accordance with one embodiment of the present invention.
  • the bundling module 310 comprises a bundling monitor 502, an image bundler 504, an image repository 506, a bundling queue 508 and a service interval time 510.
  • the bundling module 310 is used for creating an IaaS compliance image from a VM raw image from VM creator module 304.
  • the bundling monitor 502 is provided for monitoring and controlling the bundling traffic for the bundling module.
  • the bundling monitor 502 creates the bundling queue 508 and update it as the bundling process goes on.
  • the bundling monitor 502 also provides updates at a suitable time interval controlled by the service interval timer 510.
  • the image bundler 504 operationally retrieves the VM raw image from the image repository 506, preparing the same, uploading it, and register it as an IaaS compliance image at the cloud for publishing.
  • FIG. 6 illustrates a flow diagram of an overall process of an IaaS image creation in accordance with one embodiment of the present invention.
  • the process includes receiving image creation request from the user through the UI at step 602 for storing on the bundling database, wherein the user requests include all the customization options; preparing a VM for the request through a VM creator module at step 604; once the VM is prepared, the requested OS and application packages are retrieved from the repository module for processing based on the request by the bundling module to create the IaaS image and the image is published to the IaaS at step 606; and monitoring the state and progress of the request through the bundling monitoring module and presents the state and progress it in a form that can be retrieved by the UI at step 608.
  • FIG. 7 illustrates a flow diagram of process carries out by the VM creator module 304 of FIG. 3 in accordance with one embodiment of the present invention.
  • the process starts by having the service interval time triggers the VM module 304 to start at step 702.
  • the VM creator module 304 generates a query to the bundling database (or bundling database module) 706 for new raw image creation request at step 704. If the request is determined to be an active request at step 708, the task state and progress of the active request is retrieved from the VM pool module 408 at step 712 and update the state and progress onto the bundling database 706, which ends the process until the service interval timer triggers again at the step 702 at the next time interval.
  • the bundling database or bundling database module
  • the VM creator module 304 checks if the request is a new request at step 722. If the request is not a new request, the process ends until the service interval timer triggers again at the step 702 at the next time interval where the earlier IaaS image creation has been successfully complete. If the request is determined to be a new request at step 722, a VM creation script is created at step 724.
  • the script shall include the necessary commands for automating the image creation.
  • a VM creation script, also referred herein as pre-script is exemplified below: [0032] pre- start script
  • the new VM will then be pushed to the VM pool module 408 at step 728.
  • the boot and DHCP module 412 assigns an IP to the VM, and booting the VM components such as RAM disk and kernel, at step 732.
  • the requested OS and application packages are then retrieved from the repository 736 at the step 734.
  • the OS and application packages are installed sequentially according to the image creation script at step 738. Once the installation is done, the VM will be shut down and the raw image will be copied to the image repository 744 at step 742.
  • FIG. 8 illustrates a flow chart of a bundling process in accordance with one embodiment of the present invention.
  • the process starts having the service interval time triggers the bundling module 310 to start at step 802.
  • bundling tasks are requested from the bundling queue 508 at step 804. Examples of the tasks may include changing the raw image format, changing disk offset, encrypting the disk and many others.
  • the task is obtained, it is checked if it is an active task at step 808.
  • the bundling monitoring module 502 retrieves the task state and progress to monitor its progress at step 812 and update the state and progress onto the bundling queue 508 at step 814, which ends the process until the service interval timer triggers again at the step 702 at the next time interval.
  • step 808 when the task is determined as a non-active task, it is further determined if it is a new task at step 822. If the task is not a new task, the process ends until the service interval timer triggers again at the step 802 at the next time interval. If the task is determined to be a new task, the bundling module 310 gets the VM raw image from the image repository 506. An image creation script is then created at step 826 and executed at step 828. Once the image is created, it is published to the IaaS at step 832. For illustrations, not limitation, an image creation script is exemplified as follows:
  • the present invention facilitates a system for automating IaaS creation. As it was shown, the processes can be carried out automatically without the user further interventions after the user sends in the IaaS image creation request.

Abstract

The present invention provides a system for creating an IaaS image at a remote host machine by a user (202), the system provides a user interface module (302) serving as a platform for user to carry out customization of the IaaS image to be requested. The user (202) request is to be processed by the VM creator module (304) to create a VM raw image, and a bundling module (310) processes the VM raw module to create a IaaS compliance image automatically. A method thereof is also provided.

Description

Method and System for IaaS Image Creation
Field of the Invention
[0001] The present invention relates to cloud computing. More specifically, the present invention relates to a system and method for creating Infrastructure as a Service (IaaS) image.
Background
[0002] Infrastructure as a Service (IaaS) is one service model offers under cloud computing. Creation of IaaS image is the main hurdles for average users to adopt IaaS as an alternate solution for development, test or even production setup. To create a VM image, user needs to have the knowledge of virtualization and system administration. The user needs to interact directly with the IaaS to carry out the image creation tasks according to its required steps manually. FIG. 1 illustrates a flow diagram showing the steps taken by the users to create an image from a raw image.
[0003] In FIG. 1, the steps includes defining CPU, memory and disk(s) sizes; starting a virtual machine; booting the virtual machine from CD or DVD; configuring partition(s), boot menu, security etc; installing/configuring software packages onto the image; checking the VM compatibility and IaaS settings; uploading image to the IaaS; and registering the new image.
[0004] These steps require direct user interactions with the host machine to virtualize the same, which complicates the user, as it required an extensive knowledge of the system administration and virtualization to complete the creation. The process is relatively time consuming, as the user has to create the image manually. It affects the user's interest on adoption of IaaS as an alternative solution for development, test and production setup.
Summary
[0005] In accordance with one aspect of the present invention, there is provided a system for creating an IaaS image at a remote host machines by a user. The system comprises an user interface (UI) module facilitating the user with a platform for user to perform customization to create the IaaS image through a request, wherein the user the UI module can be used for monitoring the image creating process; a bundling database module for storing bundling information, which includes the request to create IaaS image from the user; a virtual machine (VM) creator module that operably receives the request from the bundling database module to create a VM and install required operating system (OS) and application packages to form a VM raw image; a repository module for storing the OS and application packages; a bundling module for receiving the VM raw image from the VM creator module, and bundled the same as a IaaS compliance image and publishing it to IaaS .
[0006] In one embodiment, the VM creator module may further comprise a monitoring module for monitoring the progress and status of the image creation; a VM preparation module for preparing a new VM based on the user's request; and a VM pool module operationally booting the new VM and assigning an IP address to the new VM through a boot and DHCP module, once it is booted, carrying out installation of the requested OS and applications packages to render the VM raw image for transmitting to the bundling module. The monitoring module is further adapted to acquire the status and progress from the bundling database module and transmit the same to the VM pool module, based on the status and progress, the VM pool module retrieves the requested OS and application packages from the repository module 308 through a repository client module.
[0007] In a further embodiment, the bundling module may comprise an image bundler module for preparing, uploading and registering the VM raw image and publishing the laaS compliance image to the laaS; and a bundling monitoring module for monitoring image creation status and process and coordinating the same based on the status and progress. It is possible that the bundling monitoring module is adapted to acquire the latest status of bundling tasks from a bundling queue module for updating the bundling information to the VM creator module.
[0008] In another aspect, there is also provided a method of creating an laaS image at a remote host machine by a user. The method comprises receiving a request from the user through an user interface (UI) module to perform customization to create the laaS image; storing bundling information onto a bundling database module wherein the bundling information includes the request to create laaS image from the user; retrieving the request from the bundling database module, a virtual machine (VM) creator module; creating a VM; installing required operating system (OS) and application packages to form a VM raw image, wherein the OS and application packages are retrieved from a repository module; receiving the VM raw image from the VM creator module; bundling the same as a laaS compliance image; publishing the laaS compliance image to laaS at a bundling module; and outputting image creating process through the user the UI module. [0009] In one embodiment, the method further comprise monitoring the progress and status of the image creation through a monitoring module; preparing a new VM based on the user's request through a VM preparation module; booting the new VM and assigning an IP address to the new VM through a boot and DHCP module; installing the requested OS and applications packages to render the VM raw image for transmitting to the bundling module. It is possible that the monitoring the progress and status of the image creation further comprises acquiring the status and progress from the bundling database module; transmitting the status and progress to a VM pool module; retrieving the requested OS and application packages from the repository module through a repository client module based on the status and progress.
[0010] In another embodiment, bundling the VM raw image may further comprise preparing, uploading and registering the VM raw image through an image bundler module; publishing the laaS compliance image to the laaS; monitoring image creation status and process and coordinating the same based on the status and progress through a bundling monitoring module. It is possible that monitoring image creation status and process may further comprise acquiring the latest status of bundling tasks from a bundling queue module; and updating the bundling information to the VM creator module (304).
Brief Description of the Drawings [0011] Preferred embodiments according to the present invention will now be described with reference to the figures accompanied herein, in which like reference numerals denote like elements;
[0012] FIG. 1 is a known process for creating laaS image; [0013] FIG. 2 illustrates a schematic diagram of a system for creating an
Infrastructure as a Service (IaaS) image in accordance with one embodiment of the present invention;
[0014] FIG. 3 illustrates an IaaS creation system in accordance with one embodiment of the present invention;
[0015] FIG. 4 illustrates a block diagram of the VM creator module of the FIG.
3 in accordance with one embodiment of the present invention;
[0016] FIG. 5 illustrates a block diagram of the bundling module of FIG. 3 in accordance with one embodiment of the present invention; [0017] FIG. 6 illustrates a flow diagram of an overall process of an IaaS image creation in accordance with one embodiment of the present invention;
[0018] FIG. 7 illustrates a flow diagram of process carries out by the VM creator module of FIG. 3 in accordance with one embodiment of the present invention; and [0019] FIG. 8 illustrates a flow chart of a bundling process in accordance with one embodiment of the present invention.
Detailed Description
[0020] Embodiments of the present invention shall now be described in detail, with reference to the attached drawings. It is to be understood that no limitation of the scope of the invention is thereby intended, such alterations and further modifications in the illustrated device, and such further applications of the principles of the invention as illustrated therein being contemplated as would normally occur to one skilled in the art to which the invention relates.
[0021] The present invention provides a system and method for creating laaS image to encourage users adoption of the laaS by providing a system that automates creations of VM image with minimal effort. The system allows user to select installation packages, operating system (OS) customizations, and image compliance with the intended host machine's laaS standards.
[0022] FIG. 2 illustrates a schematic diagram of a system for creating an
Infrastructure as a Service (laaS) image in accordance with one embodiment of the present invention. The system involves generally an laaS user 202, an laaS 204 deployed on a remote host machine, and an laaS image creation system. In one implementation, the present invention can be a dedicated service serving as a intermediate agent remotely located from the user who wish to deploy the IaaS's image and the IaaS's host for hosting the IaaS's image once deployed. It is of course understood that the implementation can also be a integrated feature available at the laaS host for creating the laaS image. Briefly, the laaS user 202, also referred herein as "the user" for simplicity, submits a new laaS image request to the laaS image creation system 206 to deploying on the laaS 204. The laaS image Creation system 206 provides user a bundling system that bundles user selected operating system (OS) and applications to be resided in the new image. User does not need to interact with the hypervisor of the host machine or package repository because the laaS image creation system will be taken over the responsibility on the user behalf based on the selected configurations automatically. [0023] FIG. 3 illustrates an IaaS creation system 300 in accordance with one embodiment of the present invention. The IaaS image creation system 3O0 comprises an user interface (UI) module 302, a virtual machine (VM) creation module 304, a bundling database module 306, a repository module 308 and a bundling module 310. As depicted, an IaaS user, or simply user, is required to register with a user account with the IaaS image creation system 300 and logon to the system 300 to submit a new customized image request through the system 300. The IaaS image creation system 300 provides the UI module 302 to serve as a user interface for creating the image and monitoring its creation progress. The UI facilitates a platform for user to perform all the customizations on the IaaS image creation system 300 at ease. All the user's selections and customizations are stored on the bundling database module 306 as bundling information. The bundling information is accessible by the VM creator module 304 to create the requested image.
[0024] The VM machine creator module 304 serves as an engine to manage and monitor the entire image creation process. The VM creator module 304 actively checks for new image creation request available from the bundling database module 306. Once the new image creation request is available, the VM creator module 304 retrieves the requested guest OS and the application packages from the repository module 308. The repository module 308 is provided for storing different guest OS and application packages therein.
[0025] Once the requested OS and application packages are retrieved, the VM creator module 304 boots a VM locally for preparing the retrieved OS and application packages based on the user's request from the bundling database module 306 to form a new VM raw image. Once the VM raw image is ready, it is transfer to the bundling module 310 creates an image from the VM raw image that is in compliance with the IaaS for publishing over the computing cloud.
[0026] FIG. 4 illustrates a block diagram of the VM creator module 304 of the
FIG. 3 in accordance with one embodiment of the present invention. The VM creator 304 comprises a VM preparation module 402, a monitoring module 404, a service interval timer 406, a VM pool module 408, a repository client module 410, and a boot and DHCP module 412. The VM preparation module 402 is adapted for preparing a virtual machine accordingly to the user request. The VM preparation module 402 receives the request to create new VM through the monitoring module 404. During the VM preparation, the VM preparation module 402 creates a VM with configurations, such as memory sizes, processing power, network requirements, etc. as defined by the user in the request. The service interval time 406 assists the VM preparation module 404 to receive at a predetermined interval. The predetermined interval is available to coordinate the workload, which can avoid sudden spike of incoming requests that overload the system. Once the VM is created, it is being pushed to the VM pool module 408 for booting up the same. The VM pool module 408 to serve as the core engine for preparing VM based on the user request that defines the type of OS, selected packages and configurations, etc. It boots up the VM and assign and IP address to the VM through the Boot and DHCP module 412. Once the VM is booted up, the VM pool module 408 interfaces with the repository client module 410 for querying and retrieving the requested operating system and application packages from the repository module 308. The VM pool module 408 operationally updates the monitoring module 404 status of the image creation process, which can be outputted onto the UI. Once the VM is created with all the requested OS and application packages deployed, the VM pool module 408 transfer the VM in a raw image form to the bundling module 310 for publishing.
[0027] FIG. 5 illustrates a block diagram of the bundling module 310 of FIG. 3 in accordance with one embodiment of the present invention. The bundling module 310 comprises a bundling monitor 502, an image bundler 504, an image repository 506, a bundling queue 508 and a service interval time 510. The bundling module 310 is used for creating an IaaS compliance image from a VM raw image from VM creator module 304. The bundling monitor 502 is provided for monitoring and controlling the bundling traffic for the bundling module. The bundling monitor 502 creates the bundling queue 508 and update it as the bundling process goes on. It acquires the latest status of the bundling tasks and update the bundling information to the VM creator module 304 in order to arrange for the VM creator module 304 to upload VM raw image at a suitable timing. The VM raw image is stored at the image repository 506. The bundling monitor 502 also provides updates at a suitable time interval controlled by the service interval timer 510.
[0028] The image bundler 504 operationally retrieves the VM raw image from the image repository 506, preparing the same, uploading it, and register it as an IaaS compliance image at the cloud for publishing.
[0029] FIG. 6 illustrates a flow diagram of an overall process of an IaaS image creation in accordance with one embodiment of the present invention. The process includes receiving image creation request from the user through the UI at step 602 for storing on the bundling database, wherein the user requests include all the customization options; preparing a VM for the request through a VM creator module at step 604; once the VM is prepared, the requested OS and application packages are retrieved from the repository module for processing based on the request by the bundling module to create the IaaS image and the image is published to the IaaS at step 606; and monitoring the state and progress of the request through the bundling monitoring module and presents the state and progress it in a form that can be retrieved by the UI at step 608.
[0030] FIG. 7 illustrates a flow diagram of process carries out by the VM creator module 304 of FIG. 3 in accordance with one embodiment of the present invention. The process starts by having the service interval time triggers the VM module 304 to start at step 702. The VM creator module 304 generates a query to the bundling database (or bundling database module) 706 for new raw image creation request at step 704. If the request is determined to be an active request at step 708, the task state and progress of the active request is retrieved from the VM pool module 408 at step 712 and update the state and progress onto the bundling database 706, which ends the process until the service interval timer triggers again at the step 702 at the next time interval.
[0031] Returning to the step 708, if the request is not an active request, the VM creator module 304 checks if the request is a new request at step 722. If the request is not a new request, the process ends until the service interval timer triggers again at the step 702 at the next time interval where the earlier IaaS image creation has been successfully complete. If the request is determined to be a new request at step 722, a VM creation script is created at step 724. The script shall include the necessary commands for automating the image creation. A VM creation script, also referred herein as pre-script is exemplified below: [0032] pre- start script
[0033] # check i f Apache ' s binary is executable or fai l
[0034] [ -x /usr/ sbin/httpd ] [0035] # clear the /tmp directory from old s es sions
[0036] rm /tmp/ ses s_*
[0037] end script
[0038] Once the VM script is created, it is executed to create a new VM at step
726. The new VM will then be pushed to the VM pool module 408 at step 728. The boot and DHCP module 412 assigns an IP to the VM, and booting the VM components such as RAM disk and kernel, at step 732. The requested OS and application packages are then retrieved from the repository 736 at the step 734. As the VM is booted and launched, the OS and application packages are installed sequentially according to the image creation script at step 738. Once the installation is done, the VM will be shut down and the raw image will be copied to the image repository 744 at step 742.
[0039] FIG. 8 illustrates a flow chart of a bundling process in accordance with one embodiment of the present invention. The process starts having the service interval time triggers the bundling module 310 to start at step 802. Following that, bundling tasks are requested from the bundling queue 508 at step 804. Examples of the tasks may include changing the raw image format, changing disk offset, encrypting the disk and many others. Once the task is obtained, it is checked if it is an active task at step 808. If the task is an active task, the bundling monitoring module 502 retrieves the task state and progress to monitor its progress at step 812 and update the state and progress onto the bundling queue 508 at step 814, which ends the process until the service interval timer triggers again at the step 702 at the next time interval.
[0040] Returning to the step 808, when the task is determined as a non-active task, it is further determined if it is a new task at step 822. If the task is not a new task, the process ends until the service interval timer triggers again at the step 802 at the next time interval. If the task is determined to be a new task, the bundling module 310 gets the VM raw image from the image repository 506. An image creation script is then created at step 826 and executed at step 828. Once the image is created, it is published to the IaaS at step 832. For illustrations, not limitation, an image creation script is exemplified as follows:
[0041] unless (-e "$instancedir/disk" )
[0042] {
[0043] logger ("ERROR : $bundleid :
$instancedir/disk not found.");
[0044] system ("sed —in-place
's/failedFlag=0/failedFlag=l/' $BUNDLE_INI &");
[0045] system ("sed —in-place
's/ failedMsg=.*/failedMsg=Internal Error: Instance DISK file not found/' $BU DLE_INI &");
[0046] exit(l);
[0047] } [0048] $scpDISK=system ("$SCOPY $instancedir/disk
$REMOTE_BUNDLE_SERVER_USER\ @$RE OTE_BUNDLE_SERVER : /$REMOTE _BUNDLE_DIR/images/$bund1eid . img" ) ;
[0049] unless ($scpDISK == 0) {
[0050] system ("sed -
-in-place ' s/failedFlag=0/failedFlag=l/ ' $BUNDLE_INI &");
[0051] system ("sed -
-in-place ' s/AfailedMsg= . */failedMsg=Internal Error:
Failure in scp Instance IMG/' $BUNDLE_INI &");
[0052] logger ("ERROR
: $bundleid : Failure in scp Instance IMG: $scpDISK");
[0053] exit(l);
[0054] }
[0055] It is to be noted that the present invention facilitates a system for automating IaaS creation. As it was shown, the processes can be carried out automatically without the user further interventions after the user sends in the IaaS image creation request.
[0056] While specific embodiments have been described and illustrated, it is understood that many changes, modifications, variations, and combinations thereof could be made to the present invention without departing from the scope of the invention.

Claims

Claims
1. A system for creating an laaS image at a remote host machines by a user (202), the system comprising: an user interface (UI) module (302) facilitating the user with a platform for user (202) to perform customization to create the laaS image through a request, wherein the user the UI module (302) can be used for monitoring the image creating process; a bundling database module (306) for storing bundling information, which includes the request to create laaS image from the user (202); a virtual machine (VM) creator module (304) that operably receives the request from the bundling database module (306) to create a VM and install required operating system (OS) and application packages to form a VM raw image; a repository module (308) for storing the OS and application packages; and a bundling module (310) for receiving the VM raw image from the VM creator module (304), and bundled the same as a laaS compliance image and publishing it to laaS.
2. The system according to claim 1, wherein the VM creator module (304) further comprises: a monitoring module (404) for monitoring the progress and status of the image creation; a VM preparation module (402) for preparing a new VM based on the user's request; and a VM pool module (408) operationally booting the new VM and assigning an IP address to the new VM through a boot and DHCP module (412), once it is booted, carrying out installation of the requested OS and applications packages to render the VM raw image for transmitting to the bundling module (310).
3. The system of claim 2, wherein the monitoring module (404) operationally acquires the status and progress from the bundling database module (306) and transmit the same to the VM pool module (408), based on the status and progress, the VM pool module (408) retrieves the requested OS and application packages from the repository module 308 through a repository client module (410).
4. The system of claim 1, wherein the bundling module (310) comprises: an image bundler module (504) for preparing, uploading and registering the VM raw image and publishing the IaaS compliance image to the IaaS; and a bundling monitoring module (502) for monitoring image creation status and process and coordinating the same based on the status and progress.
5. The system of claim 4, wherein the bundling monitoring module (502) acquires the latest status of bundling tasks from a bundling queue module (508) for updating the bundling information to the VM creator module (304).
6. A method of creating an IaaS image at a remote host machine by a user (202), the method comprising: receiving a request (602) from the user (202) through an user interface (UI) module (302) to perform customization to create the IaaS image; storing bundling information onto a bundling database module (306) wherein the bundling information includes the request to create IaaS image from the user (202); retrieving the request from the bundling database module (306), a virtual machine (VM) creator module (304); creating a VM (604); installing (606) required operating system (OS) and application packages to form a VM raw image, wherein the OS and application packages are retrieved from a repository module (308); receiving the VM raw image from the VM creator module (304), bundling (608) the same as a IaaS compliance image; publishing the IaaS compliance image to IaaS at a bundling module (310); and outputting image creating process through the user the UI module (302).
7. The method of claim 6, further comprising: monitoring the progress and status of the image creation through a monitoring module (404); preparing a new VM based on the user's request through a VM preparation module (402); booting the new VM and assigning an IP address to the new VM through a boot and DHCP module (412); and installing the requested OS and applications packages to render the VM raw image for transmitting to the bundling module (310).
8. The method of claim 7, wherein monitoring the progress and status of the image creation further comprising: acquiring the status and progress from the bundling database module (306); transmitting the status and progress to a VM pool module (408); and retrieving the requested OS and application packages from the repository module (308) through a repository client module (410) based on the status and progress.
9. The method of claim 6, wherein bundling the VM raw image comprises: preparing, uploading and registering the VM raw image through an image bundler module (504); publishing the IaaS compliance image to the IaaS; and monitoring image creation status and process and coordinating the same based on the status and progress through a bundling monitoring module (502).
10. The method of claim 9, wherein monitoring image creation status and process comprises: acquiring the latest status of bundling tasks from a bundling queue module (508); and updating the bundling information to the VM creator module (304) .
PCT/MY2014/000155 2013-11-29 2014-05-30 Method and system for iaas image creation WO2015080560A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
MYPI2013004335 2013-11-29
MYPI2013004335A MY175073A (en) 2013-11-29 2013-11-29 Method and system for iaas image creation

Publications (1)

Publication Number Publication Date
WO2015080560A1 true WO2015080560A1 (en) 2015-06-04

Family

ID=51703362

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/MY2014/000155 WO2015080560A1 (en) 2013-11-29 2014-05-30 Method and system for iaas image creation

Country Status (2)

Country Link
MY (1) MY175073A (en)
WO (1) WO2015080560A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110265076A1 (en) * 2010-04-21 2011-10-27 Computer Associates Think, Inc. System and Method for Updating an Offline Virtual Machine
US20120239850A1 (en) * 2011-03-15 2012-09-20 Huawei Technologies Co., Ltd. Method for creating virtual machine, a virtual machine monitor, and a virtual machine system
US20130227089A1 (en) * 2012-02-23 2013-08-29 Red Hat Inc. Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image
US20130227562A1 (en) * 2012-02-29 2013-08-29 Michael Tsirkin System and method for multiple queue management and adaptive cpu matching in a virtual computing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110265076A1 (en) * 2010-04-21 2011-10-27 Computer Associates Think, Inc. System and Method for Updating an Offline Virtual Machine
US20120239850A1 (en) * 2011-03-15 2012-09-20 Huawei Technologies Co., Ltd. Method for creating virtual machine, a virtual machine monitor, and a virtual machine system
US20130227089A1 (en) * 2012-02-23 2013-08-29 Red Hat Inc. Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image
US20130227562A1 (en) * 2012-02-29 2013-08-29 Michael Tsirkin System and method for multiple queue management and adaptive cpu matching in a virtual computing system

Also Published As

Publication number Publication date
MY175073A (en) 2020-06-04

Similar Documents

Publication Publication Date Title
US10942724B2 (en) Release lifecycle management system for multi-node application
US9798881B2 (en) Dynamic feature enhancement in client server applications and high volume server deployment with dynamic app store integration
US11513809B2 (en) Kernel-integrated instance-specific operational resources with virtualization
US20210216360A1 (en) Virtual machine migration method and apparatus
EP2542966B1 (en) Virtual environment for server applications, such as web applications
US9003392B2 (en) Use of cloning in maintenance of virtual appliances
US20150074659A1 (en) Methods and Apparatus to Perform Web-Based Installations and/or Upgrade Architectures for Enterprise Software
US20090100420A1 (en) Automatic Acquisition and Installation of Software Upgrades for Collections of Virtual Machines
EP3049922A1 (en) Virtual computing systems and methods
AU2014324086A1 (en) Virtual computing systems and methods
US10747523B2 (en) Methods of updating firmware components, computer systems and memory apparatus
US9729610B2 (en) Method for intercepting an instruction produced by an application on a computer
WO2016187150A1 (en) Automated virtual desktop provisioning
CN111966384B (en) System updating method, device, equipment and computer readable storage medium
US9141400B2 (en) Technique for deploying operating systems in a virtualized environment
US20220357938A1 (en) Automatically configuring and deploying a software operator in a distributed computing environment from a package
CN114072765B (en) Method for container-based virtualization system
US20220197633A1 (en) Software defined build infrastructure for hybrid, virtualized and native build environments
WO2015080560A1 (en) Method and system for iaas image creation
US11425203B2 (en) Commissioning a virtualized network function
JP6265435B2 (en) Platform software operation management system, platform software operation management apparatus, control method and program
EP4155963A1 (en) Container plugin for legacy on-premise application
US11182147B2 (en) Deploying virtualization software in a remote cluster
CN112711425A (en) Service operation method and device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14784114

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14784114

Country of ref document: EP

Kind code of ref document: A1