Déploiement de Devolutions Server sur Azure App Service à l'aide d'un conteneur
Ce guide couvre le déploiement de Devolutions Server sur Azure App Service à l'aide d'un conteneur, offrant une plateforme entièrement gérée avec mise à l'échelle automatique, TLS intégré et intégration des services Azure.
Déploiement par le portail Azure
Prérequis
Un abonnement Azure.
Azure CLI installé :
az --version(ou utilisez Azure Cloud Shell).Accès administrateur SQL Server (pour la création de la base de données).
Image de conteneur Devolutions Server dans un registre (Docker Hub ou Azure Container Registry).
Créer une base de données Azure SQL
Naviguez vers le portail Azure.
Cliquez sur Créer une ressource, puis recherchez SQL Database – Create.
Dans l'onglet Basics, remplissez les champs comme suit :
Subscription
Sélectionnez votre abonnement.
Resource Group
Créez un nouveau groupe nommé rg-dvls-prod.
Database name
Entrez dvls.
Server
Cliquez sur Create new et remplissez les champs comme suit :
Server name :
dvls-sql-server-<unique>. Le nom du serveur doit être unique à l'échelle mondiale.Location : sélectionnez une région.
Authentication : entrez votre authentification SQL.
Server admin login :
sqladmin.Password : choisissez un mot de passe fort.
Cliquez sur OK.
Workload environment
Sélectionnez Production.
Compute + storage
Cliquez sur Configure database, et remplissez les champs comme suit :
Service tier : choisissez Standard.
DTUs : SO (10 DTU) pour les tests, 20+ DTU pour la production.
Cliquez sur Apply.
Ensuite, pour l'onglet Networking :
Connectivity method
Sélectionnez Public endpoint.
Allow Azure services
Choisissez Yes, car c'est requis pour que l'App Service fonctionne.
Add current client IP
Choisissez Yes, car c'est nécessaire à des fins de gestion.
Et l'onglet Additional settings :
Use existing data
Sélectionnez None.
Collation
Choisissez Default.
Cliquez sur Review + create – Create et attendez le déploiement. Cela devrait prendre environ 3 à 5 minutes.
Créer un utilisateur de base de données pour Devolutions Server
Naviguez vers le Query editor de votre base de données SQL et connectez-vous avec les identifiants de l'administrateur du serveur.
Exécutez la requête SQL suivante :
Créer un App Service Plan
Cliquez sur Créer une ressource – App Service Plan – Create.
Remplissez l'onglet Basics comme suit :
Subscription
Sélectionnez votre abonnement.
Resource Group
Entrez le même que celui de la base de données : rg-dvls-prod.
Name
Entrez asp-dvls-prod.
Operating System
Sélectionnez le système d'exploitation souhaité.
Region
Entrez la même région que celle choisie lors de la configuration de la base de données SQL.
Pricing tier
Cliquez sur Change size, puis choisissez les niveaux de tarification pour :
Production : POV3 (minimum recommandé).
Development : B2 (niveau de base, coût plus faible).
Une fois votre choix fait, cliquez sur Apply.
Cliquez sur Review + create – Create.
Créer l'app service
Rendez-vous dans Créer une ressource – Web App – Create.
Dans l'onglet Basics, remplissez les champs comme indiqué ci-dessous :
Subscription
Sélectionnez votre abonnement.
Resource Group
Entrez rg-dvls-prod, comme précédemment.
Name
Entrez dvls-prod-<unique>. Cela deviendra dvls-prod-<unique>.azurewebsites.net.
Publish
Choisissez Container.
Operating System
Sélectionnez le système d'exploitation souhaité.
Region
Entrez la même région que pour la base de données SQL et l'App Service Plan.
Linux Plan
Sélectionnez asp-dvls-prod (créé lors de la création de l'App Service Plan).
Et l'onglet Container :
Image Source
Choisissez Docker Hub ou Azure Container Registry.
Image and tag
Entrez devolutions/devolutions-server:release-20XX.X (remplacez le numéro de version par le plus récent).
Registry access
Sélectionnez Public (pour Docker Hub).
Cliquez sur Review + create – Create, et attendez 2 à 3 minutes pour le déploiement.
Une fois le déploiement terminé, naviguez vers Configuration – paramètres General et activez Always on. Cela empêche le conteneur de rester inactif et de ne démarrer qu'en réponse à la première requête entrante, ce qui pourrait autrement apparaître comme un échec de démarrage ou un dépassement de délai.
Configurer les paramètres de l'application
Naviguez vers App Service – Configuration – Application settings.
Cliquez sur New application setting pour chaque variable :
DATABASE_ENCRYPT
true
Requis pour Azure SQL. Chiffre la connexion SQL (TLS). Azure SQL impose toujours le chiffrement, donc la connexion échoue sans cela.
DATABASE_HOST
dvls-sql-server-<unique>.database.windows.net
Le nom d'hôte de votre SQL Server.
DATABASE_NAME
dvls
Le nom de votre base de données.
DATABASE_USERNAME
dvls_user
L'utilisateur SQL dédié.
DATABASE_PASSWORD
YourSecurePassword123!
Utilisez une référence Key Vault en production.
WEB_SCHEME
http
Protocole (App Service gère la terminaison HTTPS).
PORT
5000
Le port d'écoute du conteneur.
DVLS_TELEMETRY
true
Activer la télémétrie.
WEBSITES_PORT
5000
Spécifique à Azure (indique à App Service quel port rediriger).
Certaines nouvelles applications web Azure ont maintenant la prise en charge Sidecar activée par défaut. Lorsque la prise en charge Sidecar est activée, WEBSITES_PORT est ignoré. Désactivez la prise en charge Sidecar pour utiliser WEBSITES_PORT=5000 comme documenté, ou laissez-la activée et définissez le port directement à 5000.
Cliquer sur Save, puis sur Continue pour confirmer le redémarrage.
Initialiser Devolutions Server et récupérer la configuration de chiffrement
Aller dans Configuration – Application settings.
Ajouter un nouveau paramètre :
Nom :
DVLS_INITValeur :
true
Cliquer sur Save – Continue. Cela redémarre l'appli.
Sous Monitoring, naviguer vers Log stream, et attendre 1 à 2 minutes que l'initialisation se termine.
Activer temporairement l'accès SSH en allant dans Development Tools – SSH, et en cliquant sur Go.
Extraire la configuration de chiffrement :
Copier la sortie base64.
Aller dans Configuration – Application settings – New application setting. Saisir
DVLS_ENCRYPTION_CONFIG_B64dans le champ Name et coller le contenu du fichier base64 copié à l'étape #7 dans le champ Value. Cliquer sur OK.Trouver le paramètre
DVLS_INITet cliquer sur Delete.Cliquer sur Save, puis sur Continue.
Aller dans Configuration – Application settings.
Ajouter un nouveau paramètre :
Nom :
DVLS_INITValeur :
true
Cliquer sur Save – Continue. Cela redémarre l'appli.
Sous Monitoring, naviguer vers Log stream, et attendre 1 à 2 minutes que l'initialisation se termine.
Activer temporairement l'accès SSH en allant dans Development Tools – SSH, et en cliquant sur Go.
Extraire la configuration de chiffrement :
Copier la sortie base64.
Aller dans Configuration – Application settings – New application setting. Saisir
DVLS_ENCRYPTION_CONFIG_B64dans le champ Name et coller le contenu du fichier base64 copié à l'étape #7 dans le champ Value. Cliquer sur OK.Trouver le paramètre
DVLS_INITet cliquer sur Delete.Cliquer sur Save, puis sur Continue.
Aller dans Configuration – Application settings.
Ajouter un nouveau paramètre :
Nom :
DVLS_INITValeur :
true
Cliquer sur Save – Continue. Cela redémarre l'appli.
Sous Monitoring, naviguer vers Log stream, et attendre 1 à 2 minutes que l'initialisation se termine.
Activer temporairement l'accès SSH en allant dans Development Tools – SSH, et en cliquant sur Go.
Extraire la configuration de chiffrement :
Copier la sortie base64.
Aller dans Configuration – Application settings – New application setting. Saisir
DVLS_ENCRYPTION_CONFIG_B64dans le champ Name et coller le contenu du fichier base64 copié à l'étape #7 dans le champ Value. Cliquer sur OK.Trouver le paramètre
DVLS_INITet cliquer sur Delete.Cliquer sur Save, puis sur Continue.
Accéder à Devolutions Server
Naviguer vers Overview – URL.
Cliquer sur l'URL ou visiter :
https://devolutions-server-prod-<unique>.azurewebsites.netSe connecter avec les identifiants par défaut :
Nom d'utilisateur :
dvls-adminMot de passe :
dvls-admin
Immédiatement après la connexion, changer le mot de passe par défaut en allant dans Administration – Utilisateurs, en cliquant sur le bouton de points de suspension verticaux de l'utilisateur dvls-admin, et en sélectionnant Changer le mot de passe.
Déploiement avec Azure CLI
Azure CLI est aussi disponible pour des déploiements automatisés ou reproductibles.
Prérequis
Domaine personnalisé et TLS
Ajouter un domaine personnalisé
Naviguer vers App Service – Custom domains – Add custom domain.
Saisir votre domaine :
devolutions-server.company.comSuivre les instructions de configuration DNS :
CNAME :
devolutions-server.company.com→devolutions-server-prod-<unique>.azurewebsites.net.Ou enregistrement A + enregistrement TXT pour le domaine apex.
Cliquer sur Validate, puis sur Add.
Ajouter un certificat géré (gratuit et renouvelé automatiquement)
Naviguer vers Certificates – Managed certificates – Add certificate.
Sélectionner votre domaine personnalisé.
Cliquer sur Validate, puis sur Add.
Naviguer vers Custom domains, sélectionner votre domaine, et cliquer sur Add binding.
Pour le Certificate, sélectionner Managed certificate.
Pour le TLS/SSL type, choisir SNI SSL.
Cliquer sur Add.
Forcer HTTPS
Naviguer vers Configuration – General settings.
Régler HTTPS Only à On, et cliquer sur Save.
Surveillance
Activer Application Insights
Portail
Naviguer vers App Service – Application Insights – Turn on Application Insights.
Create new ou Select existing pour les ressources Application Insights.
Cliquer sur Apply.
CLI
Consulter les journaux
Diffuser les journaux
Télécharger les journaux
Diffuser les journaux
Télécharger les journaux
Diffuser les journaux
Télécharger les journaux
Sécurité
Utiliser Azure Key Vault pour les secrets
Activer Managed Identity :
Créer un Key Vault et stocker le secret :
Accorder un accès :
Référencer dans App Settings :
Activer Managed Identity :
Créer un Key Vault et stocker le secret :
Accorder un accès :
Référencer dans App Settings :
Activer Managed Identity :
Créer un Key Vault et stocker le secret :
Accorder un accès :
Référencer dans App Settings :
Voir aussi
Mis à jour
Ce contenu vous a-t-il été utile ?