I'm a linux Newbie. I've never installed or configured it. I looked at the available books on the subject and chose this one. Even though this book is targeted towards those trying to achieve certifications, I find the practical approach to the book useful.
I like the book because he takes you through, step by step, how to set up machines and perform tasks. There are special margin notes on what things you might focus on if you're taking the exam, and what things you might focus on if you're trying to learn this for a job.
I read some of the negative reviews before purchasing. After having read through the first two chapters and completing the labs, I have these several things to say:
1) If you were confused about what resources you needed to allocate to the VMs, then you did not pay close enough attention. There is no confusion about how many GBs you should allocate to the Host VM you're setting up and the VMs inside. I did view the errata documents the author posted on the publisher's website. I did not find any of the information there "critical" to understanding the book. I'd have gotten by just fine without having to review that PDF document that illustrates the relationships of the VMs. I'd have gotten by without having to review the textual corrections.
2) I have had no confusion about which IPs to assign to which machines. Although, I will admit, due to the effects of an intermittently faulty old switch I was using for my testlab, I did have some confusion on one point. Just know this about the KVM virtual machines and networking. When you set up the virtual network of 192.168.221.x inside the VM host, it is an entirely separate virtualized network. You do not need to have an external router handling gateway, DNS, DHCP, etc for the 192.168.221.x network. For example, the NIC on my physical machine (the KVM host) had an IP of 10.10.10.160 which allowed me to have it on my own home network. However, for VMs inside, it would access my KVM host at 192.168.221.1 because it was also the gateway for the virtual network. I didn't need to have multiple NICs on my physical machine. It was all handled virtually. It all just works like you'd want it to work. To some, this may be obvious. However, I was questioning it because it wasn't working due to squirrely hardware.
3) When reading through the chapters you will encounter Exercises. At first I was under the impression that I should be following along and performing these exercises in my test environment. I since learned that you should hold off until you reach the end of the chapter to do the labs. I recommend reading through the exercises and absorbing the material, but you will get plenty of chance to perform those tasks when you do the labs. What is important is the labs will give you some more specific instructions that you do not encounter during the Exercises. These specific instructions are important for setting up the machines in a way that will be important in later chapters. When you do the labs, you'll basically page back in the book and follow along the exercises, performing those operations on your machines.
4) Some of the reviews expressed frustration over how much the author "skips around". I can sort of see where that is coming from. Take this quote from Chapter 2 in the book, "...you can also connect the local system to the installation source created in Chapter 1, Lab 2 using the techniques described in Chapter 7." For some, that can be a source of logical frustration. What happened is that while you were doing something in Chapter 1 of the book, the author referenced techniques in Chapter 7... something you haven't even read yet. Not only that, now we're in Chapter 2 and he's referencing something in Chapter 1 that referenced something in Chapter 7. Believe it or not, this is not an uncommon occurrence in the book. I think this frustrates some readers. I am here to say that you don't have to let it bother you, just ignore it. So far, not ONCE have I had to go forward to a later chapter to understand the content. Actually, the author is being very helpful here. The "forward reference" to a chapter later in the book, so far for me, has always been an Optional reference that provides more detail about a subject. You don't need to know that "more detail" to accomplish the current task. Those "forward references" are likely more useful for more advanced users that want to delve deeper into a topic the first time it is broached. Newbies, like me, can just ignore for now. So while it can seem to read like the author is skipping all over the darn place... you don't have to. I'm just reading and going forward in line. The content builds on itself in a very logical and helpful way. The only "skipping" I do is when I get to the labs after I've read the chapter, is I skip back to the relevant exercises in the chapter so I can see his examples and follow along. I like it because it exposes me to the material twice. The first time I'm just reading through the exercises and it exposes me to the content in a context with the rest of the material. Then I go back and actually DO IT on my test machines to help solidify what I've learned.
I hope this helps some people that read some of the reviews and are reticent to choose this book. I'm a total newbie and in less than a day I've learned to install the server from CD with many packages, update it, set up FTP and HTTP servers, share out the install files for Red Hat, set up Virtual Machine host, create some machines inside of there by using the install files I shared out from the server.... all this while using an automated Kickstart answer file. This is a very hands on approach that lets you DO this stuff at very minimal cost. I bought a cheap Athlon X2, 64-bit computer with 8 gigs of RAM and a 500 Gig hard drive. I'm able to practice networking machines together, testing access to resources through the firewall (from multiple virtual test subnets), etc, etc all on that one investment of $300 of hardware.
This book was the right choice for me.