Microsoft Azure Cloud Series – Understanding the Stack, Who Manages What? – Part 2

In today’s IT, there are lot of discussions about different terms like PaaS, IaaS, and SaaS.  So what do all of these cloud acronyms mean?
I’m going to give you the simplest explanation I can, to help you understand the difference between SaaS, IaaS, and PaaS. First, let’s expand those acronyms! Software as a Service, Infrastructure as a Service, and Platform as a Service are all just different types of clouds.
Understanding the Stack

New Choices for Delivering IT

The cloud provides options for approach, sourcing, and control.  It delivers a well-defined set of services, which are perceived by the customers to have infinite capacity, continuous availability, increased agility, and improved cost efficiency. To achieve these attributes in their customers’ minds, IT must shift its traditional server-centric approach to a service-centric approach.  This implies that IT must go from deploying applications in silos with minimal leverage across environments to delivering applications on pre-determined standardized platforms with mutually agreed upon service levels.  A hybrid strategy that uses several cloud options at the same time will become the norm as organizations choose a mix of various cloud models to meet their specific needs.

Typical Service Models

Software as a Service

Software as a Service (SaaS) delivers business processes and applications, such as CRM, collaboration, and email, as standardized capabilities for a usage-based cost at an agreed, business-relevant service level. SaaS provides significant efficiencies in cost and delivery in exchange for minimal customization and represents a shift of operational risks from the consumer to the provider. All infrastructure and IT operational functions are abstracted away from the consumer.

Platform as a Service

Platform as a Service (PaaS) delivers application execution services, such as application runtime, storage, and integration for applications written for a pre-specified development framework. PaaS provides an efficient and agile approach to operate scale-out applications in a predictable and cost-effective manner. Service levels and operational risks are shared because the consumer must take responsibility for the stability, architectural compliance, and overall operations of the application while the provider delivers the platform capability (including the infrastructure and operational functions) at a predictable service level and cost.

Infrastructure as a Service

Infrastructure as a Service (IaaS) abstracts hardware (server, storage, and network infrastructure) into a pool of computing, storage, and connectivity capabilities that are delivered as services for a usage-based (metered) cost. Its goal is to provide a flexible, standard, and virtualized operating environment that can become a foundation for PaaS and SaaS.

IaaS is usually seen to provide a standardized virtual server. The consumer takes responsibility for configuration and operations of the guest Operating System (OS), software, and Database (DB). Compute capabilities (such as performance, bandwidth, and storage access) are also standardized.
Service levels cover the performance and availability of the virtualized infrastructure. The consumer takes on the operational risk that exists above the infrastructure.
Understanding the Stack

Infrastructure as a Service with Azure Virtual Machines

In short, IaaS gives you a server in the cloud (virtual machine) that you have complete control over. With an Azure VM, you are responsible for managing everything from the Operating System on up to the application you are running.

On-demand data centers, also known as IaaS, provide compute power, memory, and storage, typically priced per hour, based on resource consumption. You pay only for what you use, and the service provides all the capacity you need, but you are responsible for monitoring, managing, and patching your on-demand infrastructure.

The biggest advantage of IaaS is that it offers a cloud-based data center without requiring you to install new equipment or to wait for the hardware procurement process. This means you can get IT resources that otherwise might not be available.

This mode of operation will feel most like a typical on premises virtual machine where you remote desktop into the server to manage it instead of sitting down in front of a physical keyboard and mouse.

Platform as a Service – Azure Cloud Services

An Azure Cloud Service consists of two components: your application files (source code, DLLs, etc.) and a configuration file. Together, these two elements will spin up a combination of Web Roles and Worker Roles to execute your application. With Cloud Services, Azure handles all of the tedious Operating System details for you, so you can focus on what matters – building a quality application for your users.

A Web Role is an Azure VM that is pre-configured as a web server (running IIS) and will automatically have your application loaded on it by the time the server fully spins up. This will create the public endpoint for your application – usually a website, but it could also be an API or something similar.

Worker Roles run alongside your Web Roles and are responsible for performing computing functions to support your application. Typically, the Web Role will accept some sort of user input and queue up an action for the Worker Role to process at a later time. This allows the Web Roles to be more responsive and to fire-and-forget tasks to be processed later.
Understanding the Stack

Software as a Service – Basecamp, Salesforce, Office 365, Azure Websites

Finally, Software as a Service applications are built and hosted through 3rd party vendors who typically charge for a certain level of service – $30/month for X projects and Y users.

Azure Websites can serve as a SaaS offering as well. You can configure a WordPress, Drupal, OpenX, or even phpBB site with a single click. No code, no deployment hassles, and minimal configuration. Azure Websites lets you stand up the service you need in minutes, not hours or days.
Most SaaS applications today are built on a cloud platform due to the low cost of entry – with prices continually falling – and the ability to scale up as your customer base grows. If Dropcam, SmugMug, or Netflix got one million new customers tomorrow, their infrastructure (Amazon Web Services) would be able to accommodate them.

Conclusion

  • Software-as-a-Service (SaaS) means you’re renting the app or software
  • Platform-as-a-Service (PaaS) means that you’re renting everything but the app or software
  • Infrastructure-as-a-Service (IaaS) means you’re renting only the hardware as well as the tools used to manage the hardware

While each Azure Compute (IaaS) offering has their pros and cons, I personally prefer to build my projects around PaaS. With PaaS, you get the maximum possible amount of flexibility before you have to start worrying about the tedious world of OS maintenance, versions, security, patches, etc.

Until next time, Rob.

Microsoft Azure Cloud Series – What is Cloud? – Part 1

Hi All, its Rob again and I decided to write a series on Azure Cloud.  Since Azure Stack is months away from GA, its good to understand Azure Cloud for a few reasons.  The API is the consistent across Azure Cloud and Azure Stack. And building a hybrid environment is the future for IT to use features like DR, Application Portability and Backup.
So, let’s start from the beginning and go over the fundamental terms.

What is Cloud? Simply put, it’s a large number of devices connected through wide communication network.

What are the benefits of Cloud?

  • Provide Services at much lower cost
  • Flexibility on technology that gives the customer a competitive advantage
  • Helps IT to be more efficient on operations
  • Pays as they go and for what they use
  • Move to OPEX model from CAPEX model
  • Faster deployment

Types of Clouds and Examples

Private

  • A private cloud is dedicated to the customer’s organization.
  • On-premises (their own data center) or in a partner’s hosting facility.
  • More control over the level of security, privacy, customization, and governance of your software and services.
  • More cost-effective data center operations using the customer’s existing investments in people and equipment.
  • Example: Customer needs dedicated resources and wants to restrict access to all content in the cloud

Public

  • The public cloud is where cloud services are provided in a virtualized environment.
  • Resources are available on demand.
  • Centralized operation and resource management are shared.
  • Customers can access the resource they need, and then only pay for what they use.
  • Many services are available that are ready to be accessed from any internet enabled device.
  • Example: Customer can share resources and wants to pay when they use the resource

Hybrid

  • A hybrid cloud is an integrated service utilizing on-premises resources, private clouds and public clouds.
  • Moving non-sensitive functions to the public cloud allows an organization to benefit from public cloud scalability while reducing the demands on a private cloud.
  • The availability of secure resources and scalable cost-effective public resources provides organizations with options.
  • Example: Customer has secure and non-secure data and they have made some investment in their own infrastructure and they want to use them

Industry Tends

Industrytrendsazure Cloud

As we look at the IT industry today, a number of important trends are changing the way software is being purchased, deployed and used in the organization.

Data Explosion

The volume of data in the workplace is exploding. According to IDC, digital data will grow more than 40x over the next decade. As more and more data is created digitally, we expect to see ever greater demands being placed on our data platforms to store, secure, process and manage these large volumes of data.

Consumerization of IT

Today we see an increasing trend toward the “consumerization” of IT—creating the demand for Web 2.0 experiences in the business environment. As consumers, we are accustomed to powerful user-friendly experiences, whether searching the Internet on a mobile device to find information instantly, or quickly accessing our personal financial data. In the workplace, however, we are often unable to answer even the most basic questions about our business. Increasingly, users demand business experiences that more closely mirror the convenience and ease of use in consumer life.

Private and Public Cloud

Cloud computing is changing the way data is accessed and processed, and it is creating whole new models for the way applications are delivered. According to IDC, Cloud services will account for 46% of net-new growth in overall IT spending. With private and public cloud infrastructure, organizations have an opportunity to reduce TCO dramatically as data volume increases. As we see an evolution toward greater use of private and public clouds, we see an increasing need for solutions that support hybrid cloud scenarios.

Azure at a Glance

azure-overview Cloud
So this picture, or at least the big blocks above, are how Microsoft thinks about the main capability buckets of their platform. As we go though this series, we will start to get more specific about these buckets (Compute, data, networks, and app services).
Well, I hope you enjoyed this brief introduction on Azure Cloud.  Stay tuned to the rest of the series. Next up, more fundamentals and use cases and then we dive into some fundamentals, like Azure Resource Manager.

Until next time, Rob

Microsoft Azure Stack Technical Preview finally sees the light….:)

AzureStackIntro Azure Stack
Change is in the air! I know that phrase is associated with spring, but I love the change of seasons, especially, winter, when days get shorter and I get to spend time in the snow with my kids. Every winter, I think I can rely on the patterns from the seasons before, but I quickly find I have to adapt to a new reality. For example, I live near Boston and just when I thought we would have a mild winter, mother nature strikes. One week its 50’s and the next we are in the middle of a blizzard. Changes and transformations are just another fact of life.

Below is a pic of the latest storm 2/8/16.
storm020716 Azure Stack

IT Disruption

IT is going through a similar transformation. Over the last few years, there has been lots of buzz on the transformation in the industry to Hypverconverged and how that fits with cloud computing. The traditional model of IT is evolving to make way for agile, service delivery. Business units in pursuit of agility are looking for self-service approaches, with the promises of reliability, availability, scale and elasticity. This has been driving flight to the public cloud where developers and business units are going around good IT practices in order to innovate – often introducing risks to their companies that they were never held accountable for in the past and are not equipped to deal with today. In 2015, 40% of IT spending is occurring outside the IT organization, up from 36% in 2014 according to Gartner. There is a large opportunity for Corporate IT to embrace the new patterns as an alternative to “shadow IT.”

Harnessing the Change

Corporate IT is still responsible for the impact applications make on a company’s operations and, often times, apps can’t move to a public cloud. Traditional IT makes large investments in datacenter hardware for scale, reliability and availability. Control of physical access & security, change configuration and bandwidth & latency minimize risk in the infrastructure. Yet these controls are not only expensive, but can also slow down innovation. Corporate IT needs to evolve to create private and hybrid cloud offerings that can support both traditional and cloud-born application models. There is a huge opportunity for IT to embrace and support the business transformation and improve business efficiency.

If you deconstruct Azure, or any public cloud, at the heart is a world-class datacenter with managed servers, storage and networking. Having a datacenter that is build on web scale methodologies is key. Azure Cloud, Amazon, Facebook all understand this. Operations and automation give the private cloud its heartbeat, as clouds require tight integration of servers, networking, storage and the OS. This is similar to the traditional physical datacenter you run today, but with Nutanix it is in a much smaller footprint, more efficient and agile datacenter. And while this infrastructure can reduce hardware costs and provide elasticity, and virtualization can help with mobility, it is the services and new development patterns that make it a hybrid cloud. A hybrid cloud provides self-service capability coupled with elasticity, scalability and automated management. Where traditional datacenters with 3-tier architecture are designed to minimize access and change, the hybrid cloud in general, and Azure in particular, is designed to encourage it between on premise and Azure Cloud.

IT Transformation

This transformation begins with a fundamental change – presenting IT as a service. Traditional IT is based on classic distributed servers with strong regulation of users, limiting choice to manage risk and security. In a web scale infrastructure, most of these traditional business processes have to change to meet the customer’s desire to leverage on-demand services. One of the ways to meet these new customer needs is through next generation application support. This is where web scale infrastructure excel, providing quick application/service deployment, iteration and robust data to show business results. Moving forward, administrators need to not only control their infrastructure, but abstract applications through services providing flexibility to their business users.

Introducing New Azure Stack Technical Preview

I first learned of Azure Stack at a partner meeting just before MS ignite 15 was excited then to dive into a Technical Preview.  Finally, many, many months later, Microsoft released the first technical preview of its new Azure Stack offering on Friday for the world.

Azure Stack promises to broaden organizational access to Microsoft’s cloud services and tooling, and is aimed at organizations and service providers that can establish hybrid networks to tap Microsoft Azure services.
Getting the preview involves three steps, with downloads available at this page. There are hardware requirements to check and is limited to servers that can run Windows 2016 and support Hyper-V Virtualization. Some requirements include:

  • A dual-socket server with a minimum 12 physical cores is needed
  • About 500-750 Gigs of storage
  • A 10GB install file also needs to be downloaded.

Lastly, there are even more downloads required to support the tools and PaaS services used with Azure Stack.

Microsoft claims that with Azure Stack, it’s the only company bringing its “hyper-scale cloud environment” to organizations and service providers. Top Microsoft executives Mark Russinovich and Jeffrey Snover talked more about Azure Stack in a Web presentation on Wednesday, Feb. 3. Check it out.

Consistent Tooling

Azure Stack essentially is Microsoft’s better bridge to using its cloud services, both the Platform as a Service (PaaS) and Infrastructure as a Service (IaaS) kinds. That’s done by bringing down its tooling to organizations. Those organizations likely are engaged with maintaining their own proprietary network infrastructures and maybe aren’t too quick to connect with external cloud infrastructures.

Microsoft’s current solution around on-premsis Azure is Windows Azure Pack, which is the supported approach currently for tapping Azure services in customer datacenters. It depends on using System Center and Windows Server 2012 R2. However, Windows Azure Pack is not as complete as the emerging Azure Stack and was Microsoft’s first attempt around private cloud solutions. Check out my series on Windows Azure Pack!
With Azure Stack, Microsoft is promising to deliver consistent APIs for developers.

That’s possible because its Azure Stack portal, a Web-based solution, uses “the same code as Azure,” according to Microsoft. Microsoft is also promising that scripting tools for management, such as PowerShell and command-line interfaces, will work across Microsoft’s Azure cloud computing services as well as local datacenter implementations of Azure Stack.  System Center isn’t required for management. Instead, the Azure Resource Manager solution is used.

Azure Stack is only available testing right now. Rollout is planned for Q4 of this year. However, the complete solution won’t all be there at “general availability” (GA) product launch. A white paper on Azure Stack, accessible via Microsoft’s announcement, showed the parts that won’t be ready at GA launch:

_azurestack_1 Azure Stack
Azure Stack services at general availability, along with services at preview (indicated by asterisks).

Breaking down Azure Stack

As discussed in a previous blog post that was written shortly after MS ignite 15, Azure Stack is a collection of software technologies that Microsoft uses for its Azure cloud computing infrastructure. It consists of “operating systems, frameworks, languages, tools and applications we are building in Azure” that are being extended to individual datacenters, Microsoft explained in the white paper. However, Azure Stack is specifically designed for enterprise and service provider environments.

For instance, Microsoft has to scale its Azure infrastructure as part of operations. That’s done at a minimum by adding 20 racks of servers at a time. Azure Stack, in contrast, uses management technologies “that are purpose-built to supply Azure Service capacity and do it at enterprise scale,” Microsoft’s Azure Stack white paper explained.
Azure Stack has four main layers, starting with a Cloud Infrastructure layer at its base, which represents Microsoft’s physical datacenter capacity (see chart).
azurestack_2 Azure Stack
Next up the stack there’s an Extensible Service Framework layer. It has three sublayers. The Foundational Services sublayer consists of solutions needed to create things like virtual machines, virtual networks and storage disks. The Additional Services sublayer provides APIs for third-party software vendors to add their services. The Core Services sublayer includes services commonly needed to support both PaaS and IaaS services.

The stack also contains a Unified Application Model layer, which Microsoft describes as a fulfillment service for consumers of cloud services. Interactions with this layer are carried out via Azure Resource Manager, which is a creation tool for organizations using cloud resources. Azure Resource Manager also coordinates requests for Azure services.

Lastly, the Developer and IT Pro Experiences layer at the top of the heap provides a consistent user interface via a Web portal. That’s done using a “consistent cloud API.” This layer also supports a common management tools use capability.
Microsoft has said, Azure Stack will “run on the stripped-down Nano Server implementation of Windows Server [2016]” and any patches or updates will happen by doing clean installations of the hypervisor and Nano Server configuration. Microsoft is still working out the update frequency for Azure Stack, and recognizes that hourly or daily updates are too often, but annual updates would be too slow.

That being said, Azure Stack will get lots of updates over the next year or so. Organizations or service providers running it should “expect to implement updates more frequently than with traditional software,” Microsoft’s Azure Stack white paper advises.
Microsoft plans to gradually add all Azure services to Azure Stack. Currently, at this technical preview, Microsoft has made capabilities available that organizations can download and deploy onto the Azure Stack Technical Preview, including an updated Azure SDK, a Web Apps capability in the Azure App Service, SQL and MySQL database resource providers, and Visual Studio support.  Microsoft has said that this first Technical Preview  represents just the first installment of a continuous innovation process planned for Azure Stack, which will eventually lead to enterprise customers being able to fully deliver Azure services from their own datacenters. However, Microsoft said that the three PaaS resource providers it has now delivered, for Web Apps SQL and MySQL, are still only at the early preview stage.

“Each service in Azure is a candidate for being distributed through Azure Stack and we will listen to customer input and consider technical feasibility in determining the roadmap,” Microsoft’s Azure Stack white paper explained.

Azure Stack is obviously going up against the likes of OpenStack, the open source enterprise cloud computing platform that now has the backing of everybody from Rackspace, HP Enterprise and IBM, as well as a thriving startup ecosystem. Microsoft clearly hopes that its hybrid story will allow it to position Azure Stack as a viable alternative against this quickly growing open source competitor.

In many ways, Azure Stack is the logical next step in Microsoft’s overall hybrid cloud strategy. If you’re expecting to regularly move some workloads between your own data center and Azure (or maybe add some capacity in the cloud as needed), having a single platform and only one set of APIs across your own data center and the cloud to work with greatly simplifies the process.

I am still in the process of deploying and reviewing Azure Stack Technical Preview in my lab, but wanted to give everyone an understanding of what Azure Stack is and where it is going.  My review will be coming over the next few weeks…Stay tuned.
IMO… This year will be a significant milestone in helping customers meet their agile development (DevOps) needs while providing the control corporate IT requires by bringing the power of Azure to your on premise environment..

Until next time, Rob.