There are also other characteristics of a pattern language. Patterns are interconnected and can overlap so that together, they cover most of the problem space. Also, as already laid out in the original  A Pattern Language , patterns do not have the same level of granularity and scope. More general patterns cover an extensive problem space and provide rough guidance on how to solve the problem. Granular patterns have a very concrete solution proposal but are not as widely applicable. This book contains all sort of patterns, and many patterns reference other patterns or may even include other patterns as part of the solution. Another feature of patterns is that they follow a rigid format. However, each author defines a different format, and unfortunately there is no common standard for the way patterns should be laid out. Martin Fowler gives an excellent overview of the for‐ mats used for pattern languages in  Writing Software Patterns . We chose a simple pattern format for this book. We do not follow any particular pat‐ tern description language. For each pattern, we use the following structure: How This Book Is Structured Name Each pattern carries a name, which is also the chapter’s title. The name is the cen‐ ter of the pattern’s language. This section gives the broader context and describes the pattern space in detail. Problem Solution This section is about how the pattern solves the problem in a Kubernetes-specific way. This section also contains cross-references to other patterns that are either related or part of the given pattern. Discussion A discussion about the advantages and disadvantages of the solution for the given context follows. More Information This final section contains additional information sources related to the pattern. We organized the patterns of this book as follows: • Part I,  Foundational Patterns , covers the core concepts of Kubernetes. These are the underlying principles and practices for building container-based cloud-native applications. Preface | xiii