Cache coherency, clustering, and Kernel virtualization

Thomas E. Spanjaard tgen at netphreax.net
Sat Sep 2 12:48:39 PDT 2006


Matthew Dillon wrote:
    Consider what we want to accomplish.  We want to be able to cut up
    system resources and link them into 'clusters', with the whole mess
    tied together on the internet.  Originally I envisioned cutting up
    memory, disk, and cpu resources and connecting them to a cluster
    individually, but now I believe what we need to do is connect an
    entire kernel to the cluster and basically operate as a single system
    image.
Imho, the ideal situation would be a NUMA SSI cluster.

    Now consider the problem of tying an entire kernel into an internet-based
    cluster.  Does that sound like something that would be 'safe' to
    integrate into your real kernel?  NO WAY!  It is virtually impossible
    to 'secure' a kernel which is operating as a single system image in
    a cluster of machines connected together via the internet.
You're right, but clustering 'over the internet' (more popularly, global 
grids) is something that is a typical userspace thing, where you don't 
even need things like NUMA. The tasks you use a global grid for are 
wholly different from a SSI cluster, and I don't think you want to run 
an SSI cluster over the internet with all the latency and insecurity 
involved.

    What we do is we make it so a DragonFly kernel can be compiled and run
    as a userland application running under the real DragonFly kernel.  As
    a userland application the virtual kernel can be completely firewalled
    off from the rest of the system.  The virtual kernel can then be
    associated with the 'cluster', and managing controlling memory, cpu,
    and disk resources is a whole lot easier when you have an entire kernel
    as your funnel into the real system's resources.  If you want to tie
    into multiple clusters you just create multiple virtual kernels!  More
    to the point, the technology could be used to partition off major
    services and EVEN USER LOGINS(!) on a large machine.
This is hardly the logical step forward beyond SMP, and does nothing to 
make proper use of consumer-level NUMA equipment (AMDs Athlon64/Opteron 
family of processors for example), I don't see multiple virtual kernels 
work in a NUMA system. Or do you intend to not neglect this class of 
machines? :)

Cheers,
--
        Thomas E. Spanjaard
        tgen at xxxxxxxxxxxxx
Attachment:
signature.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pgp00000.pgp
Type: application/octet-stream
Size: 186 bytes
Desc: "Description: OpenPGP digital signature"
URL: <http://lists.dragonflybsd.org/pipermail/kernel/attachments/20060902/97eb0135/attachment-0020.obj>


More information about the Kernel mailing list