<p>Based on the following setup of Kubernetes on <a href="https://github.com/GoogleCloudPlatform/kubernetes/tree/master/docs/getting-started-guides/coreos/azure" rel="nofollow">Microsoft Azure</a>.</p>

<p>I was able to deploy my Docker containers, using the same configuration settings. </p>

<p>We have 2 categories of containers, front-end and back-end, where the back-end consist of high intensive processing. The latter we want to run on Large instances, whereas the front-end will be run on Small instances. </p>

<p>What is the best option to separate these, my gues would be with labeling the hosts. But was not able to find this in the docs, or in examples.</p>

<p>Currently, adding labels to the hosts and restricting your pods to nodes with the appropriate label (e.g. 'Large' / 'Small') is the best way to do this. For an example, see <a href="https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/node-selection" rel="nofollow">examples/node-selection</a></p>

<p>Kubernetes has a <a href="https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/resources.md" rel="nofollow">resource model</a> which, once implemented, will allow you to tell the scheduler what resources each pod needs and the system will ensure that the pod is placed on a node with available resources. Unfortunately, as you can tell from the design document on Github, this isn't fully implemented yet. </p>
