CPC G06F 9/45558 (2013.01) [G06F 9/4411 (2013.01); G06F 9/5072 (2013.01); G06F 11/1446 (2013.01); G06F 11/1469 (2013.01); G06F 2009/45579 (2013.01); G06F 2009/45583 (2013.01)] | 20 Claims |
3. A computer-implemented method comprising:
live-mounting a virtual machine that is native to and executes in a cloud computing environment, wherein the live-mounting provides on-demand access to some data of a data-source that is not native to the cloud computing environment, without providing access to all data of the data-source in the cloud computing environment,
wherein the virtual machine is configured with a remote virtual disk configured as an Internet Small Computer Systems Interface (ISCSI) target that is accessible, via an ISCSI protocol, at a pseudo-disk configured at a first computing device, and
wherein the first computing device comprises one or more hardware processors and operates in the cloud computing environment;
wherein the live-mounting is based on performing by the first computing device:
(a) invoking a driver that executes at the first computing device, wherein the driver presents the pseudo-disk as a data storage resource at the first computing device, wherein the driver creates a first storage area and a second storage area at the first computing device, wherein the driver is configured to intercept read requests and write commands issued to the pseudo-disk,
(b) mounting a root file system of the pseudo-disk at the first computing device,
(c) generating an iSCSI Qualified Name (IQN) that identifies the pseudo-disk,
(d) adding contents, into the first storage area, wherein the contents comprise at least the IQN and an ISCSI-initiator software,
(e) populating the IQN into an iPXE script at the first computing device, wherein the iPXE script comprises a bootloader for the virtual machine,
(f) unmounting the root file system from the first computing device, and
(g) exposing the pseudo-disk as the ISCSI target for the virtual machine;
causing the cloud computing environment to create the virtual machine based on a machine image in the cloud computing environment, wherein the machine image points to a Hypertext Transfer Protocol (HTTP) server at the first computing device, wherein the HTTP server comprises the IPXE script with the IQN that identifies the pseudo-disk as the ISCSI target for the virtual machine;
by the virtual machine, based on executing the iPXE script, discovering the pseudo-disk as the ISCSI target of the virtual machine based on the IQN, and booting over ISCSI from the pseudo-disk at the first computing device,
wherein booting from the pseudo-disk comprises receiving from the driver the contents in the first storage area, and further comprises booting from other boot sectors of the data-source that are: recalled by the driver on demand from the data-source, stored into the second storage area, and served therefrom by the driver to the virtual machine; and
wherein after booting, the live-mounting comprises:
directing, by the virtual machine, read requests for data of the data-source to the pseudo-disk at the first computing device;
by the driver, intercepting the read requests for data of the data-source directed to the pseudo-disk; and
by the driver, serving the read requests for data of the data-source from one of the first storage area and the second storage area, wherein the driver recalls data on demand from the data-source, based on one or more of the read requests for data of the data-source.
|