Book Image

Building Clouds with Windows Azure Pack

By : Amit Malik
Book Image

Building Clouds with Windows Azure Pack

By: Amit Malik

Overview of this book

Windows Azure Pack is an on-premises cloud solution by Microsoft, which can be leveraged by Organizations and Services providers for building an enterprise class cloud solution. WAP provides consistent experience to Microsoft Azure, along with capabilities such as multi-tenancy, high density, self-service, automated. WAP can be leveraged to provide both IaaS & PaaS Offerings to internal and external customers. In this book, we will learn about planning and deployment of Cloud Fabric for Windows Azure Pack, Azure Pack components, VM Clouds and IaaS offerings, PaaS Offering including WebSites & Service Bus, DBaaS offerings, Automation with SMA, and extending capabilities with third party products integration and tenant experience for all services.
Table of Contents (18 chapters)
Building Clouds with Windows Azure Pack
Credits
About the Author
Acknowledgement
About the Reviewer
www.PacktPub.com
Preface
Index

Windows Azure Pack components and functionalities


Now that we understand what is Windows Azure Pack, along with its capabilities and service offerings, it's time to get technical and deep dive into bits and pieces that make Windows Azure Pack.

Windows Azure Pack is made up of a collection of sites and API endpoints, which are responsible for their different functions. Windows Azure Pack components can be categorized in two categories as follows:

  • Mandatory components

  • Optional/dependency components

Mandatory components must be installed in every Windows Azure Pack deployment whereas optional components deployment depends upon use cases.

Note

Windows Azure Pack components use SQL server database to store its configuration and run time data that is highly dependent upon database availability.

Windows Azure Pack components are as follows:

Mandatory components:

  • Service management API:

    • Admin API

    • Tenant API

    • Tenant public API

  • Authentication sites:

    • Admin authentication site

    • Tenant authentication site

  • Service management portals:

    • Management portal for administrators

    • Management portal for tenants

Optional or dependency components:

  • Resource provider's extensions (VM Cloud, websites, and so on)

  • Service bus

  • Automation and extensibility

  • PowerShell APIs

  • SQL server and MySQL server extension

  • Usage extensions (service)

  • Usage extension (collector)

  • Monitoring extension

  • Partner enabled solutions extensions (for instance, vConnect, GridPro, and so on)

  • Customer resource provider's extension

  • Windows Azure Pack BPA (Best Practice Analyzer)

Let's understand the roles and functionalities of the preceding components:

  • Service management API: A collection of service management REST API. APIs are the core endpoints that facilitate Windows Azure Pack cloud services access through management portals and PowerShell modules. We can see APIs as a backbone to the management portals and PowerShell modules to enable cloud services integration with the rest of the cloud fabric.

    There are total of three API interfaces differentiating upon their functions as follows:

    • Admin API: Admin API is responsible for administrative tasks being performed in Windows Azure Pack through management portals or PowerShell modules. This API is usually hosted inside corporate LAN networks, that is, they are not exposed to the public Internet.

    • Tenant API: Tenant API is responsible for tenant administrative tasks like configuring and managing services being performed through tenant management portals or PowerShell modules. This API isn't exposed to the public Internet.

    • Tenant public API: Tenant public API also enables tenants to configure and manage cloud services they are subscribed to. Normally, it is publicly exposed. This enables tenants to have custom automation capabilities using Azure Pack PowerShell Modules on their subscriptions from the Internet.

    Apart from cloud services provisioning and management, tenant public API enables tenants to have custom automated tasks configured on their cloud workload without involvement of an admin portal plus SMA.

  • Authentication sites: Authentication sites enable authentication services to manage interfaces for cloud administrators and tenants. When cloud admin or tenant users open their respective portals, they are redirected to authentication sites to complete sign in using their Windows AD credentials or ASP.NET credentials as applicable. Active Directory Federation Services (ADFS) authentication can be also be used instead of available default authentication. Upon successful login, the page is redirected to their respective management portals. There are a total of two authentication sites:

    • Admin authentication site: This site is responsible for providing authentication services to admin management interfaces. By default, it uses Windows authentication as an authentication source. It can also be configured to support ADFS as an authentication source. This site is normally not exposed to the public Internet.

    • Tenant authentication site: This site is responsible for providing authentication services to tenant management interfaces. By default, it uses ASP.NET membership providers to authenticate users. It can also be configured to support ADFS as an authentication source. Usually, this site is exposed to the public Internet to support tenant access across the Internet.

  • Service management portals: Service management portals are websites built upon HTML5 that are used by admins and tenants for cloud service provisioning and management. These portals provide a similar experience to Microsoft Azure Public Cloud portal. There are total two service management portals:

    • Management portal for administrators: In this portal, cloud admins configure and manage resource providers such as IaaS clouds, websites' clouds, catalogue gallery items, plans and user subscriptions, database resource providers, and many more. This portal is restricted to be accessed by cloud administrators and usually isn't exposed to the public Internet.

    • Man agement portal for tenants: This is the self-service interface for tenants to provision, manage and monitor cloud services such as websites, virtual machine, databases, and so on. This portal can also be used by tenants to sign up and subscribe to available Azure Pack plans. Usually, this portal is exposed to the public Internet.

  • Optional components: Optional components are usually required to enable resource providers' extension and any other third party solutions/custom offerings integration. The following are a few important optional component roles and their functionalities:

    • Virtual machines cloud: This allows Windows Azure Pack to provide IaaS (Infrastructure as a Service) services for Windows and Linux virtual machines and virtual networks. Virtual machine cloud requires SPF (Service provider foundation) and SCVMM (System Center Virtual Machine Manager) to function.

    • WebSite cloud extension: This extension allows Windows Azure Pack to provide WebSites as a Service (PaaS) functionality to tenants. It can be co-installed with other Windows Azure Pack internal components. To provide functionality, it needs to be integrated with website cloud resource provider fabric, which will be discussed in detail in Chapter 7, Delivering PaaS – WebSites Cloud and Service Bus.

    • SQL and MySQL resource provider: This extension enables Database as a Service functionalities for tenants. MS SQL server and MySQL databases can be provided using Windows Azure Pack and database resource provider fabric.

    • Usage extensions (API and collector): Windows Azure Pack provides a service which can collect usage of services offered by the cloud in order to have an enterprise class billing and metering system. This service can be used by partners to develop custom billing solutions and integrate with Windows Azure Pack Usage for automated and consistent billing models. Collector service collects usage data from every resource provider such as VM Cloud, websites, and so on, and stores the data in a usage database. Usage API, that is, a usage service that can be used to fetch this data by customer billing solutions.

    • Service bus extension: This extension enables reliable messaging services between distributed applications. This is similar to Microsoft Azure Service Bus functionality. It provides queued and topic based publish or subscribe functionalities.

    • Partner provided and custom offering extension: This extension includes partner provided extensibility solution to Windows Azure Pack such as request management by GridPro, vConnect by CloudAssert for VMware integration, and so on. Developers can also have their own custom extension to add custom cloud offerings.