<div dir="ltr">Hey guys,<div><br></div><div>I had a couple of questions last night which I just wanted to get back to people on.</div><div><br></div><div>Firstly, the slides can be found here:</div><div><br></div><div><a href="https://docs.google.com/presentation/d/1Bxs1f0YAANlK_FJJEWrLP9iU0dJOd05OvH5bqTuDWkU/edit?usp=sharing">https://docs.google.com/presentation/d/1Bxs1f0YAANlK_FJJEWrLP9iU0dJOd05OvH5bqTuDWkU/edit?usp=sharing</a><br>
<br><br>To try and answer the questions in order,</div><div><br></div><div>-------------------------------------</div><div>Can you run a ubuntu/etc image under a non debian based distribution?:</div><div><br></div><div>Yes. The important part isn't the Host OS, but the host kernel. The containers will share their base kernel with the host (sort of. SysCalls are issued to the actual host to fulfil) but the operating system files can be of any distribution you want.</div>
<div><br></div><div>--------------------------------------</div><div>How do Solaris Zones work ?:</div><div><br></div><div>This one I really should have been able to answer, but my brain decided to abandon me.</div><div><br>
</div><div>Conceptually Zones(or Containers) are the same as the LXC/CGroups/Namespaces combination. </div><div><br></div><div>The devil is in the details.</div><div><br></div><div>The big differences are the following,</div>
<div><br></div><div>- All Solaris 10+ systems implement at least one zone ( the Global Zone)</div><div><br></div><div>- Technically you have 3...sort of 4..types of zones. </div><div>Global Zone. This can see all processes running in the sub zones.</div>
<div>Non-Global zones. These are similar in how they operate to Linux Containers.</div><div>Branded Zones, these come it two types but in essence they are used to enable the Zone to behave in a different way to the host kernel.</div>
<div>-- Non SysCall Translation Branded Zones (Joyent's zones are an implemention of this)</div><div>-- SysCall translated zones. Best example is s10brand zone which enables running of Solaris 10 code in opensolaris etc</div>
<div><br></div><div>- Doesnt use namespaces/cgroups. </div><div>This ones a little bit of a hard one to conceptualize. Everything in solaris 10 and above is run in a zone. Even if you don't do any further configuration you by default have one global zone which everything runs under.</div>
<div><br></div><div>Due to this you don't have something such as namespaces/cgroups (which are ultimately bolt on's to the Linux kernel to enable it to support stuff like containers.) There isn't anything you can point and and say 'Here..this bit here was added to support x'</div>
<div><br></div><div>---------------------------------------</div><div><br></div><div>Hopefully this helps!</div><div><br></div><div>Regards,</div><div><br></div><div>Owen</div><div><br></div><div><br></div><div><br></div>
<div><br></div></div>