[bcc gpxe-devel] Sorry, I was under the impression that WinVBlock was considered part of the broader Etherboot project, for which gpxe-devel seemed to be the mailing list of record. Sometimes people get annoyed when I fail to CC their project's mailing list. :/
I was not aware of VHD. I spent a couple hours Googling for Windows COW overlays the other day but did not find it. This certainly seems to fill in a lot of the missing pieces; thanks for the tip. To answer your questions: - The client OS is Windows 7. - I would like a solution that can persist across reboots, but that's not absolutely critical. A solution which does persist will need to have a way to easily wipe all local data and start fresh from the master image -- ideally this would be a boot menu option. Given that Win 7 apparently can boot from VHD, I'm now not sure if I need to write any code to set this up. I can put a differencing VHD on the local drive, seeded from a "linked to hard disk" VHD which refers to the iSCSI or AoE drive. The biggest problem I see with this is that the local drive will contain a filesystem which contains only two files, one of which contains another filesystem... kind of sad, but probably not a big problem in practice since it's an SSD. Or is there a way to use a block device as a differencing VHD directly? Thoughts? -Kenton On Wed, May 4, 2011 at 10:49 AM, Miller, Shao <shao.mil...@yrdsb.edu.on.ca>wrote: > Pre-kernel: Perhaps you could do gPXE -> read-only iSCSI SAN -> MBR -> > NTFS Partition -> NTLDR -> specially-crafted NTBOOTDD.SYS (for VHDs) -> > “Master” VHD > > > Post-kernel: MS iSCSI Initiator and Michael Brown’s ‘sanbootconf’ driver > re-establish the SAN. WinVBlock creates a new “child” VHD on a partition on > the local HDD, with the “parent” VHD still the same one on the same iSCSI > SAN. > > > > Does this seem like it’d satisfy your goals? Do you need anything to > persist beyond a reboot? What is the OS you are hoping to boot on the > clients? > > > > If gPXE development isn’t really involved, perhaps I could request private > correspondence for any WinVBlock-related matters, if you please? If tweaks > need to be made to gPXE, then by all means, I would agree that this forum > would be appropriate. J > > > > Thanks again for your interest! > > > > - Shao Miller > ------------------------------ > > *From:* Kenton Varda [mailto:tempo...@gmail.com] > *Sent:* Wednesday, May 04, 2011 11:21 > *To:* Miller, Shao > *Cc:* gpxe-devel@etherboot.org > *Subject:* Re: COW Overlay in WinVBlock -- willing to implement > > > > I'm aware that I can set up COW on the server side, but I'd really rather > that writes didn't cross the network at all. It's not uncommon for guests > to want to install additional games which can be as much as 10GB each, and > my machines have 60GB local SSDs which I'd like to utilize. > > > > In fact, longer-term it would be nice to use those SSDs as read caches in > addition to write caches, maybe even sniffing blocks being sent to other > machines on the network and precaching them. Typically, everyone loads the > same game at the same time, and games need to load a lot of data, so it > would be neat to avoid transferring that data over the network 12 times. > That said, this doesn't appear to be a significant performance problem in > my existing setup, so it is not a priority. (Actually, I have already > written code that implements this idea as a userspace daemon on top of NBD, > though it seems to have some bugs still.) > > > > I'm also aware that commercial solutions exist, but I'd rather use an open > source solution that I can customize, e.g. with the features I mentioned > above. Also, the commercial solutions I've found require running a Windows > server, which I'd like to avoid. And anyway, implementing this would be > fun. :) > > > > -Kenton > > > > On Wed, May 4, 2011 at 5:27 AM, Miller, Shao <shao.mil...@yrdsb.edu.on.ca> > wrote: > > Good day, Kenton. > > > > I’m currently working on some serialization/deserialization code in order > to simplify developing support for Microsoft’s [acquired] VHD disk image > format. Once implemented, the “differencing” feature of VHD image files > will provide copy-on-write functionality. > > > > For example, I’d like to be able to boot from a master VHD pre-kernel, then > have WinVBlock continue with a delta. > > > > However! Since you’ve e-mailed the gPXE developers’ list, I suspect that > you are more interested in SAN CoW of some sort. This is currently possible > using Linux’ device-mapper, and serving the CoW devices. Did you see this > article?: > > > > http://etherboot.org/wiki/appnotes/cow > > > > CoW-capable SAN target software seems to be a popular wish. A fellow > recently shared a fun video of Ardence: > > > > http://www.youtube.com/watch?v=moIuHqIc-PQ&feature=player_embedded > > > > I’m not 100% sure how you might be thinking of using gPXE + WinVBlock, or > if you would even need WinVBlock. Would you care to share a few more > details about the scenario you have envisioned? > > > > Thank you for your offer to help with development. When WinVBlock was > originally derived from V.’s WinAoE work, it was quite a learning curve, > having dwelled in user-land, myself. But before suggesting anything to jump > into, perhaps a little more discussion regarding your scenario would be > better. > > > > Thanks! > > > > - Shao Miller > ------------------------------ > > *From:* Kenton Varda [mailto:tempo...@gmail.com] > *Sent:* Wednesday, May 04, 2011 01:35 > *To:* Miller, Shao; gpxe-devel@etherboot.org > *Subject:* COW Overlay in WinVBlock -- willing to implement > > > > Hi Shao and gpxe-devel, > > > > In a post on this page you mentioned that you are planning to add COW > overlay support to WinVBlock: > > http://reboot.pro/8168/page__st__300 > > > > I have a need for this (in order to netboot multiple machines off a common > base image), and have not been able to find any existing non-proprietary > solution. Can I help you implement it? If so, can you give me pointers on > where to start and what to do? > > > > I am fluent in userland C (including low-level Win32 and POSIX), but have > never ventured into kernel drivers before. FWIW I'm a Google employee, but > this is for a personal project. Namely, my house, which is optimized for > LAN parties. I currently have 12 machines netbooting Ubuntu over nbd and > running games under WINE, but sadly there are a few too many games that > don't work. :/ > > > > Thanks, > > -Kenton > > >
_______________________________________________ gPXE-devel mailing list gPXE-devel@etherboot.org http://etherboot.org/mailman/listinfo/gpxe-devel