Tuesday, November 22, 2011

How the fabric and the Fabric Controller work

Azure contains a massive number of servers, and there isn’t any way they can possibly be managed on an individual basis. This is where the Azure operating system concept comes into play. By abstracting away all of those individual servers into a swarm or cloud, you only have to manage the cloud as a whole. This swarm of servers is called the fabric, and your applications run in the fabric when you deploy them to the cloud.

The fabric is managed by a software overlord known as the Fabric Controller. The Fabric Controller plays the role of the kernel and is aware of every hardware and software asset in the fabric. It’s responsible for installing your web and worker roles onto the physical or virtual servers living in the fabric (this process is similar to how the kernel assigns memory or CPU to an application in a traditional operating system). The Fabric Controller is responsible for maintaining its inventory by monitoring the health of all its assets. If any of the assets are unhealthy, it’s responsible for taking steps to resolve the fault, which might include the following:

» Restarting your role
» Restarting a server
» Reprogramming a load balancer to remove the server from the active pool
» Managing upgrades
» Moving instances of your role in fault situations

Windows Azure follows a cloud computing paradigm known as the fabric, which is another way of describing the data center. Like in the movie The Matrix, the fabric is everywhere. Every single piece of hardware (server, router, switch, network cable, and so on) and every VM is connected together to form the fabric. Each resource in the fabric is designed and monitored for fault tolerance. The fabric forms an abstract representation of the physical data center, allowing your applications to run in the fabric without knowledge of the underlying infrastructure.

The Fabric Controller monitors and interacts with the servers. It’s the central traffic cop, managing the servers and the code that’s running on those servers. The Fabric Controller performs the job of the kernel (except across multiple servers at a server level rather than at CPU and memory level) in terms of allocating resources and monitoring resources.

One of the jobs that the Fabric Controller doesn’t do (but that a kernel does) is the abstraction of the I/O devices. In Azure, this job is performed by storage services.

Source of Information : Manning Azure in Action 2010
How the fabric and the Fabric Controller workSocialTwist Tell-a-Friend
Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl

0 comments: on "How the fabric and the Fabric Controller work"

Post a Comment