Utiliser Azure SQL base de données avec Azure DevOps Server

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Suivez les étapes décrites dans cet article pour configurer Azure DevOps Server avec Azure SQL Database. Cette topologie comporte quelques étapes supplémentaires par rapport à l’utilisation d’un serveur SQL local.

Configuration requise

  • Azure SQL Database ne peut être utilisé qu’avec Azure DevOps Server 2019 et versions ultérieures.
  • Vous devez installer le Azure DevOps Server sur une machine virtuelle Azure.
  • L’identité managée par le système de la machine virtuelle doit être activée, qui est utilisée pour s’authentifier auprès de la base de données Azure SQL.
  • La machine virtuelle doit être jointe à un domaine, mais pas à un groupe de travail.
  • Azure SQL bases de données doivent être des bases de données uniques. Les instances managées et les pools élastiques sont pris en charge dans Azure DevOps Server 2022 et versions ultérieures.

Toutes les références SKU usage général et Premium sont prises en charge. Les références SKU Standard S3 et ultérieures sont également prises en charge. Les références SKU de base et les références SKU Standard S2 et antérieures ne sont pas prises en charge. Azure DevOps Server configurations qui utilisent Azure SQL Database ne prennent pas en charge les anciennes SQL Server Reporting Services avec des fonctionnalités de création de rapports SQL Server Analysis Services. Au lieu de cela, vous pouvez utiliser Azure DevOps Analytics.

La mise à niveau vers Azure DevOps Server est prise en charge uniquement à partir de Team Foundation Server 2015 et versions ultérieures lorsque vous utilisez Azure SQL Database. Azure SQL Database ne prend pas en charge les procédures stockées chiffrées.

Configurer la base de données Azure SQL

  1. Configurez une identité managée sur vos machines virtuelles. Pour l’instant, nous prenons uniquement en charge les identités gérées par le système.

    Vous pouvez exécuter la configuration à l’aide de tous les mécanismes standard, notamment :

  2. Pour configurer une nouvelle Azure DevOps Server instance, créez deux bases de données Azure SQL :

    • AzureDevOps_Configuration

    • AzureDevOps_DefaultCollection

      Notes

      Vous pouvez ignorer cette étape si vous utilisez des bases de données existantes pour :

      • Mettez à niveau une nouvelle version de Azure DevOps Server.
      • Migrez une instance à jour de Azure DevOps Server vers Azure SQL Database.
  3. Configurez l’authentification Azure Active Directory pour votre serveur Azure SQL Database. Faites-vous de l’administrateur Active Directory sur le serveur. Vous avez besoin d’autorisations d’administrateur sur la base de données pour effectuer les étapes de configuration restantes. Vous pouvez modifier cette autorisation ultérieurement.

  4. Activez votre ou vos identités managées si vous utilisez plusieurs serveurs pour vous connecter à votre base de données Azure SQL et lui accorder les autorisations appropriées. Connectez-vous au serveur de base de données à l’aide de SQL Server Management Studio. Connectez-vous à l’aide d’un utilisateur Azure Active Directory avec l’authentification Active Directory . Vous ne pouvez pas manipuler les utilisateurs Azure Active Directory si vous vous connectez à Azure SQL Database avec l’authentification SQL.

    a. Exécutez la commande T-SQL suivante sur la master base de données :

    CREATE USER [VMName] FROM EXTERNAL PROVIDER
    ALTER ROLE [dbmanager] ADD MEMBER [VMName]
    

    Remplacez VMName par le nom de la machine virtuelle dont vous ajoutez l’identité managée à la base de données.

    b. Exécutez la commande T-SQL suivante sur la configuration et toutes les bases de données de regroupement :

    CREATE USER [VMName] FROM EXTERNAL PROVIDER  
    ALTER ROLE [db_owner] ADD MEMBER [VMName]  
    ALTER USER [VMName] WITH DEFAULT_SCHEMA=dbo  
    

Configurer Azure DevOps Server

Revenez à l’Assistant Configuration Azure DevOps Server. Si vous configurez une nouvelle instance, sélectionnez Il s’agit d’un nouveau déploiement Azure DevOps Server. Si vous mettez à niveau ou migrez et que vous avez des données existantes dans vos bases de données, sélectionnez J’ai des bases de données existantes à utiliser pour ce déploiement Azure DevOps Server.

Lorsque vous accédez à la page Base de données dans l’Assistant Configuration, spécifiez la instance serveur de base de données Azure SQL. En règle générale, le serveur instance se présente sous la forme SQLInstanceName.database.windows.net.

Vous disposez maintenant d’un Azure DevOps Server instance qui s’exécute sur Azure SQL Base de données.