Cloud is a hot, but ambiguous buzzword in the IT industry. A Sofware Developer may describe the Cloud in a different way than a System Admin, while a Database Admin may have an altogether different definition. What constitutes the cloud is a rather complicated question. However, there is one common view that most IT people share ...
Cloud is a kind of an Internet based Service offered on-demand to a User who doesn’t need to bother with implementation details or maintainence.
Cloud refers to a range of scalable services that a user can access via an Internet connection, preferably one with a higher bandwidth and low latency. Many Providers like Microsoft, Google, Amazon and others provide various cloud-based services for which users pay on the basis of service subscription and consumption. Many providers offer a wide spectrum of Cloud services like Messaging, Content Management, Social Computing and Collaboration, Identity management, Storage, CRM and many more.
There are various broad ways a cloud-based service is consumed and utilized. In the world of cloud computing, there are three different approaches to cloud-based services:
- Infrastructure as a Service (IaaS)
- Platform as a Service (PaaS)
- Software as a Service (SaaS)
Microsoft offers impressive Cloud services based on its widely used on-premises software products.
Office 365 is SaaS, which provides an online version of MS Office Suite (Office Web Apps) along with SharePoint Server, Exchange Server and Lync Server.
Windows Azure is both IaaS and PaaS, which makes the Windows Server operating system and other features available as services.
Infrastructure as a Service (IaaS)
With the IaaS model, you can outsource the elements of infrastructure like Virtualization, Storage, Networking, Load Balancers and so on, to a Cloud Provider like Microsoft.
To deploy your applications to the Cloud, you have to install OS images and related application software on the cloud infrastructure. In this model, it's your responsibility to patch/update/maintain the OS and any application software you install. The Cloud provider will typically bill you on computing power by the hour and the amount of resources allocated and consumed (as per its service level agreement (SLA).
For example, using Microsoft Windows Azure, you can set up new Windows Server and Linux virtual machines and adjust your usage as your requirements change. You only have to pay for the service that you use. Below is a snapshot of Windows Azure services from windowsazure.com.
One of the biggest benefits of IaaS is that it provides granular control, where you can choose the core components for your infrastructure. By pooling your computing and storage resources you can scale with ease and speed to meet the infrastructure needs of your entire organization or individual departments, globally or locally.
Platform as a Service (PaaS)
With the PaaS model, you get a core hosting operating system and optional building block services that allow you to run your own applications or third-party applications. You need not be concerned about lower level elements of Infrastructure, Network Topology, Security and Load Balancers -- all this is done for you by the Cloud Service Provider. The Provider gives you a fully functional OS with major platform software.
Microsoft Windows Azure as PaaS can be used as a development, service hosting and service management environment. SQL Azure can provide data services, including a relational database, reporting and data synchronization. Both Windows Azure and SQL Azure are the key components of the Azure Cloud Platform. With this platform, you can focus on deploying your custom applications and can easily configure your applications to scale up or down as demands change.
Microsoft Azure platform as a PaaS can support different roles, such as Worker and Web. For example, you can run web applications with the Web Role, as well as host middle tier applications, such as Workflow, in the Worker Role. Similarly, SQL Azure provides Microsoft’s core relational database engine as a platform service.
One of the key benefits of PaaS is that you need not be concerned about the running OS or updates (service packs) and hardware upgrades. The Provider regularly patches your OS, updates platform features (such as the core .NET platform or SQL database engine) and updates hardware on demand to meet your demand.
The figure below (taken from official Azure website) demonstrates how the Cloud Services technology from Azure can be used a PaaS.
Software as a Service (SaaS)
With the SaaS model, you consume as a service only the Applications that you need for your business. These applications run on the provider’s cloud infrastructure, making them accessible from various devices like browser or mobile.
The SaaS provider manages everything -- that includes Infrastructure, Load balancers and firewalls, Operating Systems and runtime environments like .NET and Java, the line of business applications and services such as email or a CRM.
You need not be concerned about managing the underlying cloud infrastructure, which includes network, servers, operating systems or storage (except some user-specific application configuration settings).
With SaaS, you get fully provisioned services with a well-defined feature set, which are customizable to a certain degree. SaaS providers usually offer browser-based interfaces so users can easily access and customize these services. APIs are also usually made available for developers.
Each organization or user served by the SaaS provider is called a Tenant, and this type of arrangement is called a Multitenant architecture. The Provider’s servers are virtually partitioned so that each organization or user works with a customized virtual application instance.
The key benefit of SaaS is that it requires no up front investment in servers or software licensing. For the application developer, there is only one application to maintain for multiple clients.
Microsoft Office 365 is a SaaS that provides these types of services, which include SharePoint Online, Exchange Online, Lync Online and Office Professional Plus. Most of these online services have a subset of the features available on their on-premises counterparts. Microsoft Online Services are subscription-based, on-demand applications and hosted services, providing your organization with a consistent experience across multiple devices.
Below are some great services offered by O365 as a SaaS:
- Office Web Apps: Create and edit Word, Excel, PowerPoint and OneNote files via a web browser.
- Office Mobile Apps: Access, edit and view Word, Excel and PowerPoint documents on iPhones and Windows Phones. Use the OneNote, Lync Mobile and SharePoint Newsfeed apps on most devices.
- Hosted email: Business-class email3, shared calendars, 25 GB of storage space per user and the ability to use your own domain name.
- Active Directory integration: Manage user credentials and permissions. Single sign-on and synchronization with Active Directory.
- Simple file sharing: SkyDrive Pro gives each user 7 GB of personal storage they can access from anywhere that syncs with their PC. Easily share files internally and externally and control who sees and edits them.
- Web conferencing: Conduct meetings over the web with HD video conferencing, screen sharing and instant messaging.
- Public website: Market your business with a website that is easy to set up, using your own company domain name.
- Intranet Team Sites: SharePoint sites provide workspaces with customizable security settings for individual teams within the organization.
- Site Mailboxes: Store and share email and documents in project-specific folders, allowing for easier team collaboration.
- e-Discovery Center: Tools to support compliance. Search across SharePoint sites and Exchange mailboxes.
- Advanced Voice: Hosted voicemail support with auto attendant capabilities.
- Business Intelligence: Create and manage interactive dashboards with multiple data sources.
Which is Right for You: IaaS, PaaS or SaaS?
Before you consider IaaS, PaaS or SaaS, you should think about the trade-off between Effort to Manage and Level of Control to make an informed decision. In general, IaaS model provides the highest level of control among three (and may be more costly). The SaaS model takes least effort to manage (and may be less costly).
The below figure demonstrates the Separation of Responsibilities between you and the provider for the different kinds of Cloud Services -- IaaS, PaaS and SaaS.
This also shows how the Cloud options can help lessen your responsibilities (and Cost) from an on-Premises set up.
Title image courtesy of Anita Ponne (Shutterstock)
Editor's Note: Here's another perspective on what Office 365 provides: Steven Pogrebivsky's Office 365: 4 Big Reasons to Head to the Cloud