WO2009157899A1 - Efficient root booting with solid state drives and redirect on write snapshots - Google Patents
Efficient root booting with solid state drives and redirect on write snapshots Download PDFInfo
- Publication number
- WO2009157899A1 WO2009157899A1 PCT/US2008/007954 US2008007954W WO2009157899A1 WO 2009157899 A1 WO2009157899 A1 WO 2009157899A1 US 2008007954 W US2008007954 W US 2008007954W WO 2009157899 A1 WO2009157899 A1 WO 2009157899A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- computing devices
- read
- storage device
- base volume
- attached storage
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
Definitions
- Root booting is the practice of booting a computing device using a volume on an attached storage device such as an attached storage array.
- This volume may contain everything that a local drive would contain if the computing device booted from the local drive (such as an operating system, drivers, temporary files, application programs, and/or virtual memory swap space).
- FIG. 1 illustrates a typical system 100 for root booting.
- the system 100 typically includes a plurality of computing devices 101 communicably connected to an attached storage device 102.
- Each computing device 101 typically boots from a dedicated volume 104 of the attached storage device 102 which is presented. to each computing device 101 as a virtual volume 105. Then each computing device 101 typically continues to utilize its respective dedicated volume 104 (via the respective virtual volume 105) for operation.
- FIG. 2 illustrates how each computing device 101 views the system 100.
- Each computing device 101 is only able to access the respective volume 104 and the respective area of the cache 103 of the attached storage device 102 for the computing device 101 , though the computing device 101 is actually only aware of its respective virtual volume 105 of the attached storage device 102.
- the respective volume for each computing device may include unique items for a computing device such as unique registration keys, virtual memory swap space, and/or temporary files. If any of the computing devices makes a change to the data of the read-only base volume, the change may be directed and stored in the respective volume for that computing device. Frequently accessed data of each of the volumes may be stored in a portion of the cache of the attached storage device for that respective volume.
- the read-only base volume, the portions of cache, and the respective volume may be presented to each of the plurality of computing devices as a virtual volume.
- the storage system may map data to the respective virtual volume for each of the plurality of computing devices from the read-only base volume when the data from the read-only base volume has not changed for the respective computing device and from the respective volume when the data from the read-only base volume has changed for the respective computing device.
- the read-only base volume may be stored in one or more solid state drives (a data storage device that utilizes solid-state memory to store persistent data) which may be configured as a RAID (redundant array of independent disks) and/or mirrored with one or more other storage drives for redundancy purposes.
- the plurality of volumes may each be stored in one or more solid state drives and/or hard disk drives which may be configured as a RAID.
- the attached storage device may be operable to add data common to the plurality of computing devices to the read-only base volume. In this way, the read-only base volume utilized to root boot the plurality of computing devices may be updated by committing the new common data to the read-only base volume.
- the present disclosure may reduce the storage space, I/O, and caching inefficiencies associated with root booting a plurality of computing devices from volumes of an attached storage device.
- the present disclosure may harness the read performance offered by solid state drives by storing the read-only base volume in one or more solid state drives. As only one read-only base volume may be required for the plurality of computing devices, the read performance offered by solid state drives is balanced against the typically higher cost of solid state drives as compared to hard disk drives. Further, the present disclosure does not require deduplication code in the I/O path which may result in a simpler implementation of system.
- FIG. 1 is a diagram illustrating a typical system for root booting
- FIG. 2 is a diagram illustrating the view of the system illustrated in FIG. 1 from the perspective of one of the plurality of computing devices;
- FIG. 4 is a diagram illustrating the view of the system illustrated in FIG. 3 from the perspective of one of the plurality of computing devices, in accordance with an embodiment of the present disclosure
- FIG. 5 is flow diagram illustrating a method for root booting, in accordance with an embodiment of the present disclosure
- FIG. 6 is flow diagram illustrating a method for root booting, in accordance with an alternative embodiment of the present disclosure.
- Root booting a plurality of computing devices from an attached storage device utilizing a separate volume for each computing device is inefficient.
- the data contained in the separate volumes including, but not limited to, operating systems, drivers, temporary files, application programs, and/or virtual memory swap space
- the data contained in the separate volumes may be nearly identical.
- storage space may be wasted.
- each of the plurality of servers has a separate copy of one or more operating systems, drivers, temporary files, application programs, and/or virtual memory swap space
- the same data may be read from the separate volumes separately for each one of the plurality of servers.
- unnecessary I/O input/output
- the separate volumes may compete for limited cache space inside the attached storage device (and/or a controller communicably connecting one of the plurality of computing devices to the attached storage device).
- each of the plurality of computing devices may experience more cache misses, resulting in more I/Os that have to interact with the separate volumes, stored in one or more storage drives, and slowing performance.
- FIG. 3 illustrates a system 300 for root booting, in accordance with an embodiment of the present disclosure.
- the system 300 includes a plurality of computing devices 301 communicably connected to an attached storage device 302.
- the plurality of computing devices 301 may comprise any kind of digital computing devices including, but not limited to, personal desktop computers, personal laptop computers, server computers, and/or dummy terminals.
- Each computing device 301 may boot from a read-only base volume 305 of the attached storage device 302 which is presented to each computing device 301 as a virtual volume 307 for that computing device 301.
- the read-only base volume 305 may include data common to the plurality of computing devices 301 including, but not limited to one or more operating systems, drivers, temporary files, application programs, and/or virtual memory swap space.
- Frequently accessed data of the read-only base volume may be stored in a portion of the cache 303 of the attached storage device 302.
- the portion of the cache 303 may store data of the read-only base volume frequently accessed by any of the plurality of computing devices 101 (via the respective virtual volume 307)
- the portion of the cache 303 may be proportionally more of the total cache than if separate volumes were utilized (which would require separate portions of cache) and more of the data for each of the plurality of computing devices 303 may be in cache at a given time, resulting in fewer cache misses.
- the attached storage device 302 may also include a plurality of volumes 306, each dedicated to one of the plurality of computing devices 301 , which are redirect on write snapshots of the read-only base volume 305.
- the respective volume 306 for each computing device 301 may include unique items for that computing device 301 such as unique registration keys, virtual memory swap space, and/or temporary files. If any of the computing devices 301 makes a change to the data of the read-only base volume 305 (via the respective virtual volume 307), the change may be directed and stored in the respective volume 306 for that computing device 301. Frequently accessed data of each of the volumes 306 may be stored in a portion of the cache 304 of the attached storage device for that respective volume 306.
- the storage system 302 may map data to the respective virtual volume 307 for each of the plurality of computing devices 301 from the read-only base volume 305 when the data from the read-only base volume 305 has not changed for the respective computing device 301 and from the respective volume 306 when the data from the read-only base volume 305 has changed for the respective computing device 301.
- the plurality of computing devices 301 may comprise diskless servers.
- the read-only base volume 305 may be stored in one or more solid state drives (a data storage device that utilizes solid-state memory to store persistent data).
- the read-only base volume 305 may be stored in one or more storage drives configured as a RAID (redundant array of independent disks).
- the one or more storage drives may be configured as a RAID that does not implement redundancy, such as where data is striped across a plurality of storage drives.
- the read-only base volume 305 may be stored in one or more storage drives that are mirrored with one or more other storage drives for redundancy purposes.
- the plurality of computing devices 301 may access the read-only base volume 305 (via the respective virtual volume 307) via the one or more storage drives and not the one or more other storage drives.
- the read-only base volume 305 may be stored in one or more solid state drives that are mirrored with one or more hard disk drives (a non-volatile storage device which stores digitally encoded data on rotating platters with magnetic surfaces) and the plurality of computing devices 301 may access the read-only base volume 305 (via the respective virtual volume 307) via the one or more solid state drives and not the one or more hard disk drives.
- the present disclosure may reduce the storage space, I/O, and caching inefficiencies associated with root booting a plurality of computing devices from volumes of an attached storage device.
- the present disclosure may harness the read performance offered by solid state drives by storing the read-only base volume 305 in one or more solid state drives. As only one read-only base volume 305 may be required for the plurality of computing devices 301 , the read performance offered by solid state drives is balanced against the typically higher cost of solid state drives as compared to hard disk drives. Further, the present disclosure does not require deduplication code in the I/O path which may result in a simpler implementation of system 300.
- FIG. 5 illustrates a method of root booting a plurality of computing devices, in accordance with an embodiment of the present disclosure.
- root boot a plurality of computing devices from a read-only base volume of an attached storage device stored in at least one storage drive, the read-only base volume containing at least one of at least one operating system or at least one application program common to the plurality of computing devices.
- the at least one storage drive may comprise at least one solid state drive.
- the at least one storage drive may comprise a plurality of storage drives configured in a RAID.
- the plurality of computing devices may comprise a plurality of diskless computing devices.
- the attached storage device may comprise an attached RAID device.
- step 503 redirect the writes for each of the plurality of computing devices to one of a plurality of volumes of the attached storage device which are redirect on write snapshots of the read-only base volume, each of the plurality of volumes of the attached storage device being dedicated to one of the plurality of computing devices and storing data particular to the one of the plurality of computing devices.
- Each of the plurality of volumes may be stored in at least one hard disk drive.
- Each of the plurality of volumes may be stored in a plurality of hard disk drives configured in a RAID.
- the data particular to the one of the plurality of computing devices may comprise at least one of at least one registration key, at least one virtual memory swap space, and/or at least one temporary file.
- FIG. 6 illustrates a method of root booting a plurality of computing devices, in accordance with an alternative embodiment of the present disclosure.
- root boot a plurality of computing devices from a read-only base volume of an attached storage device stored in at least one storage drive, the read-only base volume containing at least one of at least one operating system or at least one application program common to the plurality of computing devices.
- the at least one storage drive may comprise at least one solid state drive.
- the at least one storage drive may comprise a plurality of storage drives configured in a RAID.
- the plurality of computing devices may comprise a plurality of diskless computing devices.
- the attached storage device may comprise an attached RAID device.
- step 703 redirect the writes for each of the plurality of computing devices to one of a plurality of volumes of the attached storage device which are redirect on write snapshots of the readonly base volume, each of the plurality of volumes of the attached storage device being dedicated to one of the plurality of computing devices and storing data particular to the one of the plurality of computing devices.
- Each of the plurality of volumes may be stored in at least one hard disk drive.
- Each of the plurality of volumes may be stored in a plurality of hard disk drives configured in a RAID.
- the data particular to the one of the plurality of computing devices may comprise at least one of at least one registration key, at least one virtual memory swap space, and/or at least one temporary file.
- step 704 add common data to the read-only base volume.
- the methods disclosed may be implemented as sets of instructions or software readable by a device. Further, it is understood that the specific order or hierarchy of steps in the methods disclosed are examples of exemplary approaches. Based upon design preferences, it is understood that the specific order or hierarchy of steps in the method can be rearranged while remaining within the disclosed subject matter.
- the accompanying method claims present elements of the various steps in a sample order, and are not necessarily meant to be limited to the specific order or hierarchy presented.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
Claims
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011516234A JP5357964B2 (en) | 2008-06-26 | 2008-06-26 | Efficient root boot method using solid state drive and redirect-on-write snapshot |
EP08779790A EP2291771A4 (en) | 2008-06-26 | 2008-06-26 | Efficient root booting with solid state drives and redirect on write snapshots |
CN200880129824.1A CN102067114B (en) | 2008-06-26 | 2008-06-26 | Efficient root booting with solid state drives and redirect on write snapshots |
PCT/US2008/007954 WO2009157899A1 (en) | 2008-06-26 | 2008-06-26 | Efficient root booting with solid state drives and redirect on write snapshots |
KR1020107029037A KR101288721B1 (en) | 2008-06-26 | 2008-06-26 | Efficient root booting with solid state drives and redirect on write snapshots |
TW097126897A TWI386797B (en) | 2008-06-26 | 2008-07-16 | Efficient root booting with solid state drives and redirect on write snapshots |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2008/007954 WO2009157899A1 (en) | 2008-06-26 | 2008-06-26 | Efficient root booting with solid state drives and redirect on write snapshots |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009157899A1 true WO2009157899A1 (en) | 2009-12-30 |
Family
ID=41444796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2008/007954 WO2009157899A1 (en) | 2008-06-26 | 2008-06-26 | Efficient root booting with solid state drives and redirect on write snapshots |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP2291771A4 (en) |
JP (1) | JP5357964B2 (en) |
KR (1) | KR101288721B1 (en) |
CN (1) | CN102067114B (en) |
WO (1) | WO2009157899A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9690651B2 (en) * | 2015-05-21 | 2017-06-27 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Controlling a redundant array of independent disks (RAID) that includes a read only flash data storage device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6567889B1 (en) * | 1997-12-19 | 2003-05-20 | Lsi Logic Corporation | Apparatus and method to provide virtual solid state disk in cache memory in a storage controller |
US20070250610A1 (en) * | 1999-10-18 | 2007-10-25 | Haun C K | Providing a reliable operating system for clients of a net-booted environment |
US20070271307A1 (en) * | 2006-04-19 | 2007-11-22 | Bergsten James R | Write Sharing of Read-Only Data Storage Volumes |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05128002A (en) * | 1991-11-01 | 1993-05-25 | Fujitsu Ltd | Cache memory division control system |
JP3837953B2 (en) * | 1999-03-12 | 2006-10-25 | 株式会社日立製作所 | Computer system |
US6883093B2 (en) * | 2000-11-30 | 2005-04-19 | International Business Machines Corporation | Method and system for creating and managing common and custom storage devices in a computer network |
JP4141391B2 (en) * | 2004-02-05 | 2008-08-27 | 株式会社日立製作所 | Storage subsystem |
JP2005301708A (en) * | 2004-04-13 | 2005-10-27 | Hitachi Ltd | Storage device system and software management method in same system |
JP4613598B2 (en) * | 2004-12-10 | 2011-01-19 | 株式会社日立製作所 | Disk system |
JP4498956B2 (en) * | 2005-03-10 | 2010-07-07 | 日本電信電話株式会社 | Network boot system, unit storage unit mounting method and program |
JP2007310508A (en) * | 2006-05-16 | 2007-11-29 | Nippon Telegraph & Telephone East Corp | Thin client system and program for thin client terminal |
-
2008
- 2008-06-26 WO PCT/US2008/007954 patent/WO2009157899A1/en active Application Filing
- 2008-06-26 KR KR1020107029037A patent/KR101288721B1/en active IP Right Grant
- 2008-06-26 JP JP2011516234A patent/JP5357964B2/en not_active Expired - Fee Related
- 2008-06-26 EP EP08779790A patent/EP2291771A4/en not_active Withdrawn
- 2008-06-26 CN CN200880129824.1A patent/CN102067114B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6567889B1 (en) * | 1997-12-19 | 2003-05-20 | Lsi Logic Corporation | Apparatus and method to provide virtual solid state disk in cache memory in a storage controller |
US20070250610A1 (en) * | 1999-10-18 | 2007-10-25 | Haun C K | Providing a reliable operating system for clients of a net-booted environment |
US20070271307A1 (en) * | 2006-04-19 | 2007-11-22 | Bergsten James R | Write Sharing of Read-Only Data Storage Volumes |
Non-Patent Citations (1)
Title |
---|
See also references of EP2291771A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP2291771A1 (en) | 2011-03-09 |
CN102067114B (en) | 2015-06-10 |
JP2011526024A (en) | 2011-09-29 |
JP5357964B2 (en) | 2013-12-04 |
KR20110034610A (en) | 2011-04-05 |
EP2291771A4 (en) | 2012-07-18 |
CN102067114A (en) | 2011-05-18 |
KR101288721B1 (en) | 2013-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6990573B2 (en) | System and method for sharing storage to boot multiple servers | |
CN102047237B (en) | Providing object-level input/output requests between virtual machines to access a storage subsystem | |
JP4750040B2 (en) | System and method for emulating operating system metadata enabling cross-platform access to storage volumes | |
US10031703B1 (en) | Extent-based tiering for virtual storage using full LUNs | |
US8954669B2 (en) | Method and system for heterogeneous data volume | |
CN101243413B (en) | System and method for virtualizing backup images | |
US8037347B2 (en) | Method and system for backing up and restoring online system information | |
US20080140969A1 (en) | Method and system for dividing a hard disk drive into multiple host access spaces | |
US9218138B1 (en) | Restoring snapshots to consistency groups of mount points | |
AU2011302526B2 (en) | Physical to virtual disks creation (P2V) method, by harvesting data from critical sectors | |
US20050097132A1 (en) | Hierarchical storage system | |
US10289320B1 (en) | Utilizing a virtual backup appliance within data storage equipment | |
US8495348B2 (en) | Efficient root booting with solid state drives and redirect on write snapshots | |
EP2573679B1 (en) | Methods and systems for heterogeneous data volume | |
US20090144463A1 (en) | System and Method for Input/Output Communication | |
JP5357964B2 (en) | Efficient root boot method using solid state drive and redirect-on-write snapshot | |
US20060242397A1 (en) | Methods of resizing partition | |
TWI386797B (en) | Efficient root booting with solid state drives and redirect on write snapshots | |
US20130282675A1 (en) | Preserving redundancy in data deduplication systems by designation of virtual device | |
Bettany et al. | Understanding windows file systems | |
Wojsław et al. | ZFS Overview | |
Liu | An alternative scalable storage system | |
JP2013025686A (en) | Disk array system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200880129824.1 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08779790 Country of ref document: EP Kind code of ref document: A1 |
|
DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2008779790 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2011516234 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 20107029037 Country of ref document: KR Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |