4 ms·
The most important code I ever wrote was as a phd student. No one uses that code, but they use the concepts behind it every single day. The Q was how does one
by compsciphd 8y ago
The most important code I ever wrote was as a phd student. No one uses that code, but they use the concepts behind it every single day.
The Q was how does one manage large numbers of heterogeneous containers (VM sprawl was already considered a problem, but we said if containers took over the sprawl would be worse). At the time the primary container mechanism was Solaris Zones and people uses ZFS clone functionality to create per zone container file systems. However, this only really helps if your containers are homogeneous. I built a system that created container file systems out of composable layers. One would define template file systems as a collection of layers that are stored in local and remote layer repositories and these layers would be instantly unioned together on demand when one provisioned new containers. We also demonstrated that since heterogeneous containers are now easy to manage, we can not just use containers as lower overhead but similarly long lived VM replacements, but also enable them to be used ephemerally, opening up many new use cases.
You probably know of this by a different name today.
- yeukhon 8y agoAUFS or something?
- compsciphd 8y agoUnionFS came out of the my advisor's first phd students new lab (stoneybrook). Aufs itself was inspired by that. My inspiration came from saying we should combine this semantic with linux package management semantics (as can be seen clearly from the papers where I give a summary of it). I took unionfs and modified to be more dynamic. i.e. for persistent containers, enable layers to be marked unlink and replaced with different layers (they would remain part of the union for data operations, but would be invisible to file system name oriented operations, ex: lookup()/readdir()). Idea for this was to enable a container to upgrade itself if the template it was based on was upgraded. I wasn't thinking what became the cattle/pet metaphor, was focused on creating a system that would work equally well for persistent and ephemeral containers.
- aerovistae 8y ago> The Q was how does one manage large numbers of heterogeneous containers my god this man invented UPS > At the time the primary container mechanism was Solaris Zones and people uses ZFS clone functionality to create per zone container file systems. oh wait nevermind he invented docker
- compsciphd 8y agoI wouldn't take credit for James E. Casey's work.