Author: Jurg van Vliet & Flavia Paganelli
Publisher: O'Reilly, 2011
Aimed at: EC2 beginners
Pros: Consise, practical
Cons: Lacks depth
Reviewed by: Harry Fairhead
Amazon EC2 started out simply enough but over time it has developed into something sophisticated and at times complex. The image of the snake on the cover of this book seems somehow appropriate. Today, if you want to make use of EC2 you are confronted by a range of different sub-systems and the assumption is you are going to be using them to build something complex. This goes well beyond taking a virtual machine image and running it - which is where EC2 started.
The idea is that this book will explain EC2 to you in simple terms. The first chapter is a glowing overview of how wonderful EC2 is. This should be cut from the book and replaced by a more to the point outline of the services that EC2 offers.
Chapter 2 is an explanation of how to get an image up and running. This is quite good in that you get a feel for the way the authors think about the tasks described. However the authors don't really understand what it is that a beginner is unclear about - which IPs are public, how did you get that domain name, how do I access the image on a public network, what exactly are static resources? The emphasis is also on setting up a Ruby on Rails system - which isn't a problem but it simply says:
Installing the software: Now would be a good idea to install your web server and other software you need such as Apache and Rails in our example.
This isn't much to go on and it is the sort of thing a beginner really needs to know - how do I install the stack I need on a raw image? It may be trivial but the beginner needs to be given a clue as to how to go about it.
Chapter 3 moves on to a more complex problem i.e. scaling. After a quick discussion of general issues it focuses in on using the Elastic Load Balancing feature. Chapter 4 is about using simple notification services and queue services - in this case the examples are in PHP. Then we go back to Ruby to work with SimpleDB.
Chapters 5, 6 and 7 move away from architectural concerns to operations. The first is on the all important topic of managing the inevitable downtime. Then we have a look at ways of improving your up-time. Finally a general look at managing a decoupled system - which is of course what most EC2 systems are going to be.
This is a good book but it is only a shadow of what it could be. It is very narrow in its selection of topics. Instead of making sure that you really know what is going on at any given point it tends to move on quickly before answering any difficult questions. I think the authors could have dealt with these ideas but they don't seem to be aware of the need to discuss them. There is also no coverage of Windows virtual machine images or alternatively a more general view of how to work with EC2 irrespective of the detailed technology you choose.
Overall this is a good introduction to EC2 and it's short. It doesn't go far enough on any of the topics it selects and it reads more like a set of personal experiences mixed in with some "how to..." If this is what you are looking for then buy a copy.