Windows Azure Pack – IaaS : Introduction

Introduction

Après s’être torturé l’esprit avec l’authentification et les "Resources Providers les plus simples (SQL, et SMA), il y a un moment où il faut franchir un cap et s’attaquer au IaaS. Si vous êtes toujours là, on va se rapprocher de son grand frère Microsoft Azure. Dans cette série de billets, on va s’attaquer à la configuration du IaaS et faire le viaduc entre Windows Azure Pack et System Center Virtual Machine Manager. Ce sont deux mondes bien différents qui doivent communiquer entre eux au travers d’un nouveau composant nommé Service Provider Foundation.

Pas peur de vous faire mal? Très bien allons y. Que les survivants prennent place dans la salle des tortures.

 

Service Provider Foundation, un viaduc entre deux mondes

Encore une fois, on constate que Windows Azure Pack ne fonctionne pas comme les autres produits de chez Microsoft. C’est est un univers ou les Web Services communiquent entre eux en utilisant le standard Open Data Protocol (OData). Coté Virtual Machine Manager, il parle le PowerShell nativement. Bien, mais pour Windows Azure Pack, ça lui parle pas vraiment. Bref, on a déjà un problème de communication. Il nous faut un traducteur universel (Un genre de C3PO mais qui ne parle que deux langues).

Voilà la mission principal de Service Provider Foundation. Techniquement, il va un peu plus loin que cela mais dans l’idée générale cela reste un passe-plat entre deux mondes. Ce point permet de clore un point. Windows Azure Pack n’a aucune idée de ce qu’est System Center Virtual Machine Manager ni System Center Operation Manager. Pourtant ce sont des composants essentiels dans l’infrastructure.

Maintenant que nous avons compris cela, voyons comment cela s’intègre dans Windows Azure Pack. Pour rappel, nous avons un le Portail d’administration qui communique avec le Web Service "Admin API". Ce même Web Service permet de piloter les "Resources providers" et Service Provider Foundations sera l’un d’entre eux.

clip_image001

Là où cela se complique un peu, c’est que Service Provider Foundation fait un peu plus que traducteur Odata<=>PowerShell. Si on se souvient de l’intégration du "Resource Provider" de SQL Server, on avait les "Resources Providers" suivants :

  • Monitoring
  • MarketPlace
  • UsageService
  • SQLServers

Pour rappel, voilà comment on arrivait à ce résultat :

Import-Module MgmtSvcAdmin

$Securepassword = ConvertTo-SecureString -String "********" -AsPlainText -Force

$Cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "Administrator", $Securepassword

$AdminAPIInfos = Get-MgmtSvcFqdn -Namespace adminapi -Server SQL01.WindowsAzurePack.lan

$AdminUri = "https://$($AdminAPIInfos.FullyQualifiedDomainName):$($AdminAPIInfos.Port)"

$WindowsAuthSiteInfos = Get-MgmtSvcFqdn -Namespace WindowsAuthSite -Server SQL.WindowsAzurePack.lan

$WindowsAuthSiteUri = "https://$($WindowsAuthSiteInfos.FullyQualifiedDomainName):$($WindowsAuthSiteInfos.Port)"

$token = Get-MgmtSvcToken -Type Windows -AuthenticationSite $WindowsAuthSiteUri -ClientRealm "http://azureservices/AdminSite" -User $cred

$AllRPs = Get-MgmtSvcResourceProvider -IncludeSystemResourceProviders -AdminUri $AdminURI -Token $token

$Allrp | select name, @{e={$_.AdminEndpoint.ForwardingAddress}},@{e={$_.TenantEndpoint.ForwardingAddress}},@{e={$_.UsageEndpoint.ForwardingAddress}}, @{e={$_.NotificationEndpoint.ForwardingAddress}} | Format-List

clip_image002

 

Note : Ceux qui lisent le PowerShell entre les lignes auront remarqué que j’ai soumis mon authentification auprès du WindowsAuthSite, non pas auprès de l’infrastructure ADFS. C’est normal, j’ai reconfiguré ma maquette pour ne plus utiliser ADFS, que ce soit pour les administrateurs que pour les locataires.

 

Pour SQL Server, nous avions reconfiguré les URL pour les deux portails, la mesure des usages ainsi que pour la notification (notification des jobs en cours dans les portails). Le "Resource Provider" de SQL mettant à disposition des ressources, il est logique qu’il remonte les usages qui en sont fait au "Resource Provider" en question.

Pour Service Provider Foundations, ce n’est pas un "Resource Provider" mais plusieurs :

  • SystemCenter
  • CloudServices
  • Gallery

Le "Resource Provider" SystemCenter, c’est le traducteur universel vers SCVMM. Logiquement, il fournira des éléments pour enrichir le portail des administrateurs, des locataires, des notifications ainsi que l’usage des ressources VM des locataires (monitoring & suivi des usages).

Le "Resource Provider" CloudServices est une équivalence pour la notion disponible dans Microsoft Azure, à savoir exposer des endpoints pour des machines virtuelles. Dans le contexte de Windows Azure Pack, c’est le même principe mais en utilisant SCVMM.

Le "Resource Provider" Gallery est lui dédié au portail des locataires et permet d’exposer les VHD/VHDX et VM templates de la library SCVMM pour permettre aux locataires de créer des "StandAlone virtual machines" voire même des "Virtual Machine Role".

Après, il y a les subtilités car le Service Provider Foundation va aussi fournir des éléments à d’autres "Resource Provider" :

  • Service Management Automation (SMA) va être capable d’exploiter les évènements mis à disposition par Service Provider Foundation pour y associer des Runbooks. Par exemple, il est possible de déclencher l’exécution d’un runbook à la création d’un tenant pour déclencher le provisionnement de certaines ressources (VM Network, Contrôleur de domaine, …)
  • UsageCollector va être capable d’extraire les informations de supervision en provenance de Service Provider Foundation et les stocker dans sa base de données pendant quarante jours (Usage Database). La subtilité, c’est que lui-même sera allé piocher ces informations dans la ou les instances de SCVMM qui elles même auront récupérées l’information depuis SCOM, plus précisément de son Datawarehouse. Vous suivez?

image

 

A la fin, l’objectif est d’exposer toutes les données en relation avec les usages pour produire du reporting ou même de la facturation. On connait maintenant les premiers prérequis pour Service Provider Foundation :

  • System Center Virtual Machine Manager
  • Le Datawarehouse de System Center Operation Manager
  • System Center Operation Manager

 

La suite des réjouissances

On a posé les bases pour cette séance de torture, la suite arrive bientôt :

Entrez dans la salle de torture, le bourreau vous attend, …

BenoîtS – Simple and secure by design but Business compliant (with disruptive flag enabled)

Benoit

Simple, yes, Secure Maybe, by design for sure, Business compliant always!

Les derniers articles par Benoit (tout voir)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.