Azure DevOps Serverで Azure SQL Database を使用する

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

この記事の手順を使用して、Azure SQL Database でAzure DevOps Serverを構成します。 このトポロジには、オンプレミスの SQL サーバーを使用する場合と比較して、追加の手順がいくつかあります。

必要条件

  • Azure SQL Database は、Azure DevOps Server 2019 以降のバージョンでのみ使用できます。
  • Azure VM にAzure DevOps Serverをインストールする必要があります。
  • VM では、Azure SQL データベースに対する認証に使用されるシステム マネージド ID が有効になっている必要があります。
  • VM はドメインに参加している必要がありますが、ワークグループには参加できません。
  • Azure SQL データベースは単一データベースである必要があります。 マネージド インスタンスとエラスティック プールは、Azure DevOps Server 2022 以降でサポートされています。

すべてのGeneral Purpose SKU と Premium SKU がサポートされています。 Standard SKU S3 以降もサポートされています。 Basic SKU と Standard SKU S2 以下はサポートされていません。 Azure SQL Database を使用するAzure DevOps Server構成では、SQL Server Analysis Servicesレポート機能を備えた古いSQL Server Reporting Servicesはサポートされていません。 代わりに、 Azure DevOps Analytics を使用できます。

Azure DevOps Server へのアップグレードは、Azure SQL Database を使用する場合にのみ Team Foundation Server 2015 以降からサポートされます。 Azure SQL Database では、暗号化されたストアド プロシージャはサポートされていません。

データベースAzure SQL設定する

  1. 仮想マシンでマネージド ID を構成します。 現時点では、システム マネージド ID のみがサポートされています。

    構成は、次を含むすべての標準メカニズムを使用して実行できます。

  2. 新しいAzure DevOps Server インスタンスを設定するには、次の 2 つのAzure SQL データベースを作成します。

    • AzureDevOps_Configuration

    • AzureDevOps_DefaultCollection

      注意

      既存のデータベースを使用して次のいずれかの操作を行う場合は、この手順をスキップできます。

      • 新しいバージョンのAzure DevOps Serverをアップグレードします。
      • Azure DevOps Serverの最新のインスタンスを Azure SQL Database に移行します。
  3. Azure SQL Database サーバーの Azure Active Directory 認証を構成します。 自分をサーバーの Active Directory 管理者にします。 残りの構成手順を完了するには、データベースに対する管理者権限が必要です。 このアクセス許可は後で変更できます。

  4. 複数のサーバーを使用する場合はマネージド ID または ID を有効にして、Azure SQL データベースにサインインし、適切なアクセス許可を付与します。 SQL Server Management Studioを使用してデータベース サーバー接続します。 Active Directory 認証を使用して Azure Active Directory ユーザーを使用して接続します。 SQL 認証で Azure SQL Database にサインインした場合、Azure Active Directory ユーザーを操作することはできません。

    a. master データベースで次の T-SQL コマンドを実行します。

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

    VMName を、データベースに追加するマネージド ID を持つ仮想マシンの名前に置き換えます。

    b. 構成とすべてのコレクション データベースで次の T-SQL コマンドを実行します。

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

Azure DevOps Serverの構成

Azure DevOps Server構成ウィザードに戻ります。 新しいインスタンスを設定する場合は、[これは新しいAzure DevOps Serverデプロイです] を選択します。 データベースに既存のデータをアップグレードまたは移行する場合は、[このAzure DevOps Serverデプロイに使用する既存のデータベースがあります] を選択します。

構成ウィザードの [データベース] ページに移動したら、Azure SQL Database サーバー インスタンスを指定します。 通常、サーバー インスタンスは SQLInstanceName.database.windows.net の形式です。

これで、Azure SQL Database で実行されるAzure DevOps Server インスタンスが作成されました。