The goal of this book is not to convince you to adopt Kubernetes but to provide a detailed overview of its features. I want you to become confident in your Kubernetes knowledge and only then choose whether to embrace it. That is, unless you already made up your mind and stumbled upon this book in search of Kubernetes guidance.
The plan is to cover all aspects behind Kubernetes, from basic to advanced features. We’ll go not only through the tools behind the official project but also third-party add-ons. I hope that, by the time you finish reading this book, you will be able to call yourself “Kubernetes ninja”. I cannot say that you will know everything there is to know about the Kubernetes ecosystem. That would be impossible to accomplish since its growing faster than any single person could follow. What I can say is that you will be very confident in running a Kubernetes cluster of any scale in production.
Like all my other books, this one is very hands-on. There will be just enough theory for you to understand the principles behind each topic. The book is packed with examples, so I need to give you a heads up. Do not buy this book if you’re planning to read it on a bus or in bed before going to sleep. You will need to be in front of your computer. A terminal will be your best friend. kubectl will be your lover.
The book assumes that you feel comfortable with containers, especially Docker. We won’t go into details how to build an image, what is container registry, and how to write Dockerfile. I hope you already know all that. If that’s not the case, you might want to postpone reading this and learn at least basic container operations. This book is about things that happen after you built your images and stored them in a registry.
This book is about running containers at scale and not panicking when problems arise. It is about the present and the future of software deployment and monitoring. It’s about embracing the challenges and staying ahead of the curve.
I published the book on LeanPub early. Around 10% was written when it went public. That allowed many of you to get early access to the material, and it gave me an opportunity to get your feedback. The result is fantastic. Many sent me their notes, reported bugs, proposed suggestions for improvements, recommended tools and processes that should be explored, and so on.
It would be tempting to take the whole credit for the book, but that would be untrue. This book is the result of teamwork between the author (me) and many of the readers (you). It proves that lean publishing works and that we can apply agile principles when writing a book. There was no fixed scope and decisions were not made in advance. I would work on a chapter and deliver it when it’s finished (sprint). You would review it and send your notes and comments that would allow me to improve it (sprint review). We had a daily exchange of emails and Slack messages (daily standups). We did short iterations that allowed us to learn from the mistakes and improve.
Dear readers, you made this book great!
A few stick from the crowd.
Neeraj Kothari helped by questioning my writing, providing suggestions, and sending me comments. He thought that my sequences and diagrams were too basic, not to say incorrect. He was so persistent that I delegated them to him. Most of the diagrams you saw in the book are his as well as the explanations of the events that transpire when we execute
I’d love to put his biography, but he seems to ignore my requests to write down who he is and what he does. He probably will. Time will tell.
Prageeth Warnak was continually sending pull requests with corrections and suggestions. He made this book much clearer than it would be if I had to rely on my, often incorrect, assumptions of what readers expect.
Prageeth is a seasoned IT professional currently working as the lead software architect for Australian telco giant Telstra. He enjoys working with new technologies, and he likes spending his leisure time reading books (especially those written by Viktor), watching Netflix and Fox news. He lives in Melbourne with his family. He is fascinated getting Microservices and DevOps done right.
David Jacob did his best to correct my “broken” English. Without him, you’d have a hard time understanding what I wanted to say.
David is a backend Java developer who has transformed into a system administrator over the past two years. He is focusing one becoming more proficient in Linux, networking and DevOps practices and will hopefully have more time for programming again one day. He lives in Berlin and has no cats.
Don Becker helped with Windows and troubleshooting Minikube using Hyper-V.
Don is tech industry veteran having held numerous positions in nearly every facet of IT and software development. He resides in Phoenix, Arizona with his wife, three kids and three cats. His current focus is the shift from virtual machines to containerization, microservices, OpenFAAS and of course, Kubernetes.