<p>I’m trying to figure out and learn the patterns and best practices on moving a bunch of Docker containers I have for an application into Kubernetes. Things like, pod design, services, deployments, etc. For example, I could create a Pod with the single web and application containers in them, but that’d not be a good design.</p>

<p>Searching for things like architecture and design with Kubernetes just seems to yield topics on the product’s architecture or how to implement a Kubernetes cluster, and not the overlay of designing the pods, services, etc.</p>

<p>What does the community generally refer to this application later design in the Kubernetes world, and can anyone refer me to a 101 on this topic please?</p>

<p>Thanks. </p>

<p>The answer to this can be quite complex and that's why it is important that software/platform architects understand K8s well.</p>

<p>Mostly you will find an answer on that which tells you "put each application component in a single pod". And basically that's correct as the main reason for K8s is high availability, fault tolerance of the infrastructure and things like this. This leads us to, if you put every single component to a single pod and make it with a replica higher than 2 its will reach a batter availability. </p>

<p>But you also need to know why you want to go to K8s. At the moment it is a trending topic. But if you don't want to Ops a cluster and actually don't need HA or so, why you don't run on stuff like AWS ECS, Digital Ocean droplets and co?</p>

<p>Best answers you will currently find are all around how to design and cut microservices as each microservice could be represented in a pod. Also, a good starting point is from RedHat <a href="http://chrome-extension://oemmndcbldboiebfnladdacbdfmadadm/https://www.redhat.com/cms/managed-files/cl-cloud-native-container-design-whitepaper-f8808kc-201710-v3-en.pdf" rel="nofollow noreferrer">Principles of container-based Application Design</a>
or <a href="https://www.infoq.com/articles/kubernetes-effect/" rel="nofollow noreferrer">InfoQ</a>.</p>
