Scenario description

If you are a portal administrator of a private VM cloud, you must consider how the portal should provide services to users. These users can be your customers, or units of your organization, for whom you are maintaining private clouds in Infrastructure as a Service (IaaS). Fundamentally, these considerations fall into two categories:
  • The portal, which includes the user interface to the features, service providers, and data sources that form the fabric for the private clouds that you are providing
  • The services, that maintain the configurations for virtual machines, end users, databases, security roles and other requirements

In addition, you need to obtain data on tenant usage of resources and services for capacity planning and billing purposes.

Solution description

This solution for this scenario integrates two products:
  • Windows Azure Services for Windows Server VM Cloud, which is provided by the Service Management Portal and API.
This solution pertains to provisioning VM clouds. You can also provision web sites using the portal. For more information, see Windows Azure Services for Windows Server Web Sites Cloud.
  • Service Provider Foundation
Service Provider Foundation makes it possible to configure client access to resources without making changes to the portal.

You can use Service Provider Foundation independently of Service Management Portal and API. However, provisioning VM clouds in the Service Management Portal and API requires a connection to Service Provider Foundation.

With this integration, you can expose virtual machines to the Service Management Portal and API as a VM Cloud. VM Cloud provides tenants with access to virtual machine resources on a subscription basis.

Service Provider Foundation computes usage statistics on the resources that tenants consume. This solution provides this information currently only as an overview in the Usage metering in Service Provider foundation later in this topic.

This scenario provides the high-level steps for connecting the Service Management Portal and API to Service Provider Foundation. It then describes their integration.

This solution is intended to serve as a high-level example, not as comprehensive or detailed guidance. You can use the example solution as a guide to posting descriptions of your own solutions that are particular to your business or organization. Then, other members of the community can follow your description to get ideas for how to combine System Center components to meet their business requirements.

System Center 2012 components and other requirements

This scenario uses the following System Center components, in addition to the Windows Server 2012 operating system. The scenario assumes that these components are already installed and configured and that they are working correctly. It is beyond the scope of this scenario to provide basic deployment and configuration information for this component. For this information, see the documentation for each individual component.
  • Service Provider Foundation (Install with Orchestrator in System Center 2012 Service Pack 1 (SP1)
  • Virtual Machine Manager (VMM) in System Center 2012 SP1
  • Service Management Portal and API

How does this solution fit into your IT strategy?

Microsoft’s cloud strategy is hosted on the Private Cloud Solution Hub where architectural guidance is located. The strategy describes how a private cloud enables organizations to deliver information technology as services by providing a pool of computing resources. These resources are delivered as a standard set of capabilities that are specified, architected, and managed based on requirements that a private organization defines.

How do you prepare System Center for this solution?

In order to prepare your environment for this solution, see the System Center 2012 Integration Guide on the Microsoft TechNet wiki. There you can review community information for each System Center component in its role as a programmable platform to be used for the Microsoft Private Cloud. It is intended to provide an abstraction layer that guides partners and customers in their decision process for building automated solutions across System Center components and between System Center and other systems.

How to accomplish this scenario

The high-level steps to accomplish this scenario are as follows:
  1. On the server that has Service Provider Foundation installed, use the System Center 2012 – VMM Console to create a cloud or two with a few virtual machines.
  2. In the Admin Portal for Service Management Portal and API, register the Service Provider Foundation endpoint and provision virtual machine clouds. For more information, see the following
        topics:
  3. Provision VM Clouds in Service Management Portal and API. Click VM Clouds in the admin portal, and then click Providers to see the clouds that you created in step 1. Click the New button (+) to provision a cloud that is based on an available provider. Providers can come from multiple sources.
  4. In the Admin Portal for Service Management Portal and API, click
        Plans to create plans for end users to choose from to sign up. For instructions for creating plans, see the "Create Plans for End Users" section of Provision Services.
  5. In the Tenant Portal for Service Management Portal and API, sign up end users. For more information, see
        End User Experience

Now that you have tenants and resources created, you can begin to see how Service Provider Foundation and the Service Management Portal and API integrate with each other.

Integration experience

Overview

Service Provider Foundation (which has no user interface) is accessed programmatically either remotely by RESTful web services or locally by cmdlets, as described here:
  • Any portal application or client can perform administrative tasks and configure virtual machines, stamps, user roles, and other resources using the Admin and VMM services in Service Provider Foundation. The Admin Portal uses these services to manage VM clouds. For more information about these services, see the
        Service Provider Foundation SDK.
  • You can perform core administrative tasks on the server where Service Provider Foundation is installed by using cmdlets. For more information, see Cmdlets in System Center 2012 – Service Provider Foundation.

After you register the Service Provider Foundation endpoint, any clouds that you created in VMM (or by using Windows PowerShell) on the server that has Service Provider Foundation installed will appear as clouds in the Admin Portal of the Service Management Portal and API. However, in Service Provider Foundation you must have that server added to the Service Provider Foundation database for the integration to appear. You can add a server to the database with the NEW-SCSPFServer cmdlet. The following example shows adding a server named 'ADatumSPF', a fully qualified domain name (FQDN) is not required. ServerType 0 indicates a VMM server (the only currently supported type).

New-SCSPFServer -Name 'ADatumSPF' -ServerType 0

In addition, any stamps that you create in Service Provider Foundation will be listed as providers in the Admin Portal for VM Clouds. A stamp in Service Provider Foundation is a logical scale unit that is designed for scalability that provides an association between a server and its System Center 2012 SP1 components. As tenant demand increases, the hoster provides additional stamps to meet the demand. Currently, Service Provider Foundation supports only one type of stamp: a single server that has VMM installed.

Users that subscribe to plans at sign-up in the Tenant Portal are added to the Service Provider Foundation database as tenants. You can work with tenants to maintain their data, including account status (suspended or active), public keys, certificates, stamps, and offers (plans in the Admin Portal).

Plans that you create in the Admin Portal are added to the Service Provider Foundation database as offers. This makes it possible for you to configure the plans (offers) with stamps and tenants and thereby accommodate changes that you want to make to the plans and the tenants that you want to associated with them.

If you configure a plan in the Admin Portal to accommodate multiple signups per account, Service Provider Foundation will configure each user with a self-service user role to access the resources that the plan offers. If the plan is configured in the portal for a signup, that user will be configured with a tenant administrator role in Service Provider Foundation.

Tenants created in Service Management Portal and API are also reflected in the Virtual Machine Manager console, including information about resources assigned to the tenant.

Demonstration

To demonstrate the integration of clouds and servers between Service Provider Foundation and the Admin Portal of Service Management Portal and API, the fundamental requirement is to add the Service Provider Foundation server to the Service Provider Foundation database, as described previously in this section. (Note that you are not required to have the database and Service Provider Foundation on the same server.)

The following Windows PowerShell commands create a stamp in Service Provider Foundation, named 'ADatum Pro', that is associated with the server 'ADATUMSPF' that was previously added to the Service Provider Foundation database.

$svr = Get-SCSPFServer -Name 'ADATUMSPF'
$ADPro = New-SCSPFStamp -Name 'ADatum Pro'
Set-SCSPFStamp -Stamp $ADPro -Servers -$svr

The following illustration shows two clouds created in VMM. The 'MyTestCloud' cloud was created before the Service Provider Foundation endpoint was registered in the Admin Portal. Nevertheless, all clouds hosted on that server will appear in the Admin Portal.

The Admin Portal has two tabs for VM clouds: Clouds and Providers. Note that the Provider tab (lower right) shows the stamp that was created in Service Provider Foundation. The 'ADatum Cloud' (upper right) was created in the Admin Portal with the New feature (+) using the provider named 'ADatum Pro' - the same as the Service Provider Stamp.

If you were to delete the 'ADatum Pro' provider in the Admin Portal, it would cause the Service Provider Foundation 'ADatum Pro' stamp to be deleted as well.

 

Usage metering

Usage metering is about measuring the consumption of IaaS. The data includes usage metrics for virtual machines, CPU, memory, network, and disk. Usage metering serves two purposes for the hoster:
  • Determine capacity utilization
  • Bill tenants for their usage according their plans

Service Provider Foundation provides IaaS usage metering through REST queries using its VMM service.

The following image shows the high-level flow for usage metering:

See Using Metering in Service Provider Foundation for information on configuring usage metering, creating queries, and usage metering metrics.

For information on integrating usage metering using the Service Management Portal and API, see the Usage Extensibility.docx document that is available in the download of "Web Sites, Virtual Machines, Service Management Portal, and Service Management API Samples - Feb 2013" from the Microsoft Download Center.

Links to TechNet and MSDN Library topics, Tech Center pages, blogs, forums, etc.