Blog de Florent Appointaire

Blog sur les technologies Microsoft (Windows Server, System Center, Azure, Windows Azure Pack/Azure Stack, etc;)

Après avoir vu dans le 1er article comment déployer le RP de MySQL sur Azure Stack, je vais vous expliquer comment déployer le RP de SQL Server. Avant de commencer, assurez vous d’avoir une image Windows Server 2012 R2 Datacenter avec le Framework 3.5 (prérequis pour SQL Server) et d’avoir désactiver IE Enhanced Security Configuration. Pour commencer, connectez vous sur la VM ClientVM et désactivez IE Enhanced Security Configuration pour les administrateurs et les utilisateurs. C’est nécessaire pour pouvoir s’authentifier sans problème sur Azure AD:

image

Sur la VM ClientVM, installez la dernière version de Azure PowerShell (version 1.2.1), que vous pouvez télécharger ici:

image

C’est maintenant temps de créer un certificat wildcard pour autoriser la communication entre le Resource Provider et Azure Resource Manager. Connectez vous sur la VM PortalVM et ouvrez la console IIS:

image

Ici, allez dans PORTALVM > Server Certificates et cliquez sur Create Domain Certificate. Donnez comme valeur dans common name, *.azurestack.local. Donnez le même nom pour friendly name. Pour les autres paramètres, remplissez comme bon vous semble:

image

image

Nous allons exporter le certificat. Ouvrez une MMC et connectez le certificat sur Local Computer. Dans la partie Personal, vous allez voir votre certificat wildcard:

image

Exportez le certificat avec la clé privée:

image

Choisissez les extensions Export all extended properties et Include all instances in the certificate path if possible:

image

Donnez un mot de passe pour protéger le certificat:

image

Choisissez où stocker le certificat:

image

Copiez le certificat dans \\SOFS\Share\Certificates\Wildcard :

image

Retournez dans votre VM ClientVM et téléchargez le RP SQL avec ce lien et décompressez le. Renommez le fichier AzureStack.SqlRP.Deployment.*.nupkg en AzureStack.SqlRP.Deployment.*.zip. Sur le disque D, créez un dossier nommé SQLRP et décompressez le dans le dernier dossier créé:

image

Copiez le fichier AzureStack.SqlRP.Setup.*.nupkg dans D:\SQLRP\AzureStack.SqlRP.Deployment.5.11.61.0\content\Deployment:

image

Dans ce dossier, créez un nouveau dossier nommé Certificate et copiez le certificat wildcard dedans. Renommez le en Certificate.pfx. Ceci est très important parce que le script utilise ce nom de certificat:

image

Retournez dans le dossier Deployment et allez dans Templates. Modifiez le fichier InstallSqlRpComplete-Parameters.json. Remplissez les valeurs adminPassword avec le mot de passe que vous allez utiliser pour votre RP SQL et le mot de passe du certificat PFX dans la certPassword. Vous pouvez fermer votre fichier.

Faites la même chose dans le fichier InstallSqlRpPackage-Parameters.json.

Changez la valeur du paramètre cseBlobStorage avec le nom de la nouvelle version, AzureStack.SqlRP.Setup.5.11.61.0.nupkg:

image

Ouvrez une fenêtre PowerShell en tant qu’administrateur et déplacez vous dans D:\SQLRP\AzureStack.SqlRP.Deployment.5.11.61.0\Content\Deployment:

image

Exécutez le script SqlRPTemplateDeployment.ps1 avec les paramètres suivant, en remplaçant par vos valeurs pour démarrer l’installation du RP:

.\SqlRPTemplateDeployment.ps1 -AadTenantDirectoryName azurelabdvo.onmicrosoft.com -packageName "AzureStack.SqlRP.Setup.5.11.61.0.nupkg"

Si vous avez l’erreur suivant, tapez Set-ExecutionPolicy Unrestricted:

.\SqlRPTemplateDeployment.ps1 : File
D:\SQLRP\AzureStack.SqlRP.Deployment.5.11.61.0\content\Deployment\SqlRPTemplateDeployment.ps1 cannot be loaded. The
file D:\SQLRP\AzureStack.SqlRP.Deployment.5.11.61.0\content\Deployment\SqlRPTemplateDeployment.ps1 is not digitally
signed. You cannot run this script on the current system. For more information about running scripts and setting
execution policy, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ .\SqlRPTemplateDeployment.ps1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

image

Une fenêtre va apparaître pour vous demander un nom d’utilisateur/mot de passe qui est global admin de votre Azure AD:

image

Le déploiement de la VM est en cours:

image

La déploiement peut prendre jusqu’à 90 minutes pour se déployer car une nouvelle VM va être provisionnée avec SQL Server installé sur Windows Server 2012 R2 (moins de 60 minutes pour ma part). Le déploiement est maintenant terminé:

image

Allez sur la VM ADVM et créez une entrée DNS sqlrp avec l’adresse IP public que vous pouvez trouvez dans le portail Azure Stack dans Public IP:

image

image

La dernière étape est d’enregistrer le RP SQL dans MAS. Exécutez le script Register-SqlRP.ps1 qui se trouve dans le dossier D:\SQLRP\AzureStack.SqlRP.Deployment.5.11.61.0\content\Deployment avec la commande suivante:

.\Register-SqlRP.ps1 -AadTenantDirectoryName azurelabdvo.onmicrosoft.com

Connectez vous sur votre Azure AD. Une fenêtre va apparaître pour vous demander un le mot de passe pour l’utilisateur sqlRpUsername . Renseignez le mot de passe suivant sqlRpPassw0rd

image

image

Ajoutez le RP à une suscription existante:

image

Cliquez sur New > Data + Storage > Sql Server Database et choisissez le serveur créait plus tôt:

image

image Quand je lance le déploiement, j’ai l’erreur suivante:

image

Mark Scholman m'a donné la solution sur Twitter. Vous devez ajouter l’instance SQL avant de lancer un déploiement. Pour faire ceci, allez sur le portail d’administration et allez dans Resource Providers > SQL-LOCAL > SQL Service > SQL Hosting Servers (en cliquant sur 0 sous Servers) et cliquez sur Add. Renseignez le nom d’une instance SQL Server et le nom d’utilisateur/mot de passe pour se connecter à cette instance (et le port si besoin):

image

image

Mon serveur SQL a été enregistré correctement et peut maintenant héberger des bases de données. Relancez votre création de base de donnée:

image

Vous pouvez vous connecter à cette base:

image

image

Profitez-en bien Sourire

Facebook Like
Anonymous