This is a very opinionated review of the SQL Server on Kubernetes book from Apress. Why do I say so? Because I think that running a relational database inside a cluster is a terrible idea. When teaching Kubernetes, I always tell my students that they should run their database outside the cluster either by using a managed service or by installing the database in a VM. I was surprised when I saw on my Twitter feed that Apress published a book on running SQL Server in K8s. Being curious, I said to myself, let's take a look at the book and see the use cases proposed by the authors because there might be situations where this makes sense.
The book starts by explaining how to install 5 virtual machines so you can install Kubernetes "bare metal" style. In fact, half of the 230 pages are about installing Kubernetes and explaining its concepts. I would think that if you want to run SQL Server on K8s, you would already know K8s. This makes half of the book superfluous.
About these use cases. Well, there are none. The authors simply explain how to run SQL Server in a pod and use different kinds of storage. I would have like to read something about performance, bottlenecks, troubleshooting, and optimization.
It's a shame because the authors did a fantastic job in the first half of the book, explaining the containers and Kubernetes concepts. Lots of research and hard work went into writing this book, it's too bad that they forgot to focus on the main topic.
Learn Docker and Kubernetes
Like this blog post? I also teach Docker and Kubernetes at Kubernetes Academy Online.
Learn Docker & Kubernetes using my self-paced video training courses, with complete hands-on exercises, in English or French. Instructor-led virtual classes also available.
Courses info: KubernetesAcademy.online