Utilisez Azure SQL Database avec Azure DevOps Server

Azure DevOps Server 2020 | Azure DevOps Server 2019

Notes

Azure DevOps Server a été précédemment nommé Visual Studio Team Foundation Server.

Utilisez les étapes de cet article pour configurer Azure DevOps Server avec Azure SQL Database. Cette topologie présente quelques étapes supplémentaires par rapport à l’utilisation d’un serveur SQL Server local.

Configuration requise

  • Azure SQL Database peut uniquement être utilisé avec Azure DevOps Server 2019 et versions ultérieures.

  • Azure SQL Database peut uniquement être utilisé avec Azure DevOps Server quand vous utilisez également des machines virtuelles Azure jointes à un domaine.

    Notes

    La raison principale de cette restriction est que la connectivité entre Azure DevOps Server et Azure SQL Database s’effectue à l’aide de Managed Service Identity. L’utilisation de Managed Service Identity évite d’avoir à utiliser l’authentification SQL et à stocker les noms d’utilisateur et les mots de passe, ce qui présente un risque pour la sécurité.

  • Les bases de données SQL Azure doivent être des bases de données uniques. Les instances managées et les pools élastiques ne sont pas pris en charge.

Toutes les références (SKU) usage général et Premium sont prises en charge. Les références standard S3 et ultérieures sont également prises en charge. Les références SKU de base et les SKU standard S2 et versions antérieures ne sont pas prises en charge. Azure DevOps Server les configurations qui utilisent Azure SQL Database ne prennent pas en charge les anciennes SQL Server Reporting Servicess 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 Azure SQL Database

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

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

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

    • AzureDevOps_Configuration

    • AzureDevOps_DefaultCollection

      Notes

      Vous pouvez ignorer cette étape si vous utilisez des bases de données existantes pour l’une ou l’autre des opérations suivantes :

      • 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 devez disposer 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 identité managée ou vos identités si vous utilisez plusieurs serveurs pour vous connecter à votre base de données SQL Azure et lui attribuer 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 des utilisateurs Azure Active Directory si vous vous connectez à Azure SQL Database sous l’authentification SQL.

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

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

    Remplacez vmname par le nom de l’ordinateur virtuel dont vous ajoutez l’identité gérée à la base de données.

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

    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 de Azure DevOps Server. Si vous configurez une nouvelle instance, sélectionnez il s’agit d’un nouveau déploiement de 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 l’instance de serveur Azure SQL Database. En règle générale, l’instance de serveur se présente sous la forme SQLInstanceName. Database.Windows.net.

Vous disposez maintenant d’une instance de Azure DevOps Server qui s’exécute sur Azure SQL Database.