Book Image

Managing Microsoft Hybrid Clouds: RAW

By : Marcel van den Berg
Book Image

Managing Microsoft Hybrid Clouds: RAW

By: Marcel van den Berg

Overview of this book

Table of Contents (17 chapters)
Managing Microsoft Hybrid Clouds
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
9
Summary and a Look into the Near Future
Index

Cattle versus pets


While the infrastructure is important, at the end the application is what matters. Basically, we can divide applications into two categories:

  • Those that depend on the resiliency offered by the infrastructure

  • Those that have inbuilt resiliency

A famous analogy for this is pets and cattle. Humans have a special relationship with pets. They give their pet a name and have a special bond with the animal. Most people do not have such a bond with cattle. Cattle are for production of meat or milk. If an animal dies, nobody really cares. It is regarded as economic damage but does not affect an individual's emotions.

A "pet type" of application is one where administrators knows the specific name and role of the server by heart. Administrators have a special bond with a "pet type" of application. If the server fails, the application is likely to fail. Examples of such server names are Zeus or Fileserver01.

A "cattle type" of application has multiple instances for the same role. If a server with a middleware role fails, the application will continue to be available because there are multiple servers with same role. Application data is nonpersistent and can easily be provisioned if the server is lost.

Public IaaS architectures are not all the same although they all look similar at first glance; most of them offer a self-service portal, the ability to create/modify/delete virtual machines, and so on. However, there are differences under the hood. Each provider has its own unique sauce added to the IaaS service.

Microsoft Azure was originally designed as a PaaS platform. Business-critical applications that are developed on Azure are resilient by design at the application level. Basically, it means each role (web tier, application tier, database tier, and so on) has at least two nodes. If one node fails, the application will remain available.

Netflix, a US company delivering films and series streamed over the Internet, has a great way to test the availability of their applications. They developed the so-called Chaos Monkey tool. Netflix believes the best way to defend against failures is to deliberately create failures, fix them, learn from them, and improve. Chaos Monkey will randomly shut down virtual machines in the Amazon cloud that is used by Netflix to deliver their streaming service. When Chaos Monkey terminates a virtual machine, the Auto Scaling group function of Amazon makes sure an identical virtual machine will be booted up to replace the failed one.

So, Chaos Monkey is a nice way to see whether your application really is cloud-ready (cattle category) or it is a legacy enterprise application (pet).

Later in this book, we will learn about the architecture of Windows Azure and see what kind of applications are most suited to run on Azure.