マネージド DevOps プールに関してよく寄せられる質問

Managed DevOps プールはどこで利用できますか?

マネージド DevOps プールは、Azure DevOps サービスとパブリック クラウドAzureでサポートされており、その他の国内クラウド オファリングではサポートされていません。

Managed DevOps プールをサポートするAzureリージョンの一覧については、「managed DevOps Pools リソース プロバイダーを Azure サブスクリプションに登録する」を参照してください。

マネージド DevOps プールを作成するには、AzureとAzure DevOpsに必要なアクセス許可は何ですか?

DevOps インフラストラクチャ共同作成者ロールは、マネージド DevOps プールの作成と管理に使用できる最小特権のAzure ロールです。 詳細については、「Azureアクセス許可の確認」を参照してください。

アカウントには、Azure DevOps組織で必要なアクセス許可も必要です。 詳細については、「Azure DevOpsアクセス許可の確認」を参照してください。

いくつのエージェントを作成できますか?

既定のクォータとプールのクォータを増やす方法については、「 Managed DevOps プールのクォータを確認する」を参照してください。

どのAzure VM SKU を選択する必要がありますか?

ワークフローのニーズと予算に合わせて適切な Azure VM サイズを選択する方法については、「 コストとパフォーマンスの管理」を参照してください。

エージェント VM にリモートでアクセスできますか?

マネージド DevOps プール エージェントを実行する VM にリモートでアクセスすることはできません。

Managed DevOps プールに必要なクォータを取得するにはどうすればよいですか?

マネージド DevOps プールでは、個別のAzure リソース プロバイダーとクォータ モデルが使用されます。 Managed DevOps プールに必要なクォータを要求するには、Azure ポータルで [クォータ] に移動し、Managed DevOps Pools リソース プロバイダーを選択し、必要な VM ファミリを選択して、クォータの引き上げ要求を送信します。 詳細については、「 Managed DevOps Pools クォータの確認」を参照してください。

マネージド DevOps プールをサポートするAzureリージョンは何ですか?

サブスクリプションでマネージド DevOps プールをサポートする Azure リージョンを確認するには、Microsoft.DevOpsInfrastructure リソース プロバイダーの場所一覧を確認してください。

  1. Azure ポータルにサインインします。

  2. Azure ポータル メニューで、Subscriptions を検索します。 使用可能なオプションから、それを選択します。

  3. マネージド DevOps プールに使用するAzure サブスクリプションを選択します。

  4. 左側のメニューの [設定] で、 [リソース プロバイダー] を選択します。

  5. Microsoft.DevOpsInfrastructureを検索します。

  6. Statusが登録されていることを確認。 登録されていない場合は、それを選択し、 登録を選択します。

    Managed DevOps Pools Azure リソースプロバイダーの登録スクリーンショット

  7. 一覧から Microsoft.DevOpsInfrastructure を選択し、Locations を選択します。

    マネージド DevOps プールをサポートする Azure リージョンのスクリーンショット

重要

Microsoft.DevOpsInfrastructure リソース プロバイダーがサブスクリプションに登録されていない場合、場所は表示されません。 サポートされているリージョンを確認する前に、Azure サブスクリプションでマネージド DevOps プール リソース プロバイダーを登録します。 Azure リソース プロバイダーの詳細については、「Azure リソース プロバイダーと種類を参照してください。

VM の予約を使用して、Managed DevOps Pools エージェントのコストを節約することができますか?

いいえ。VM の予約はマネージド DevOps プール インスタンスには適用されません。

マネージド DevOps プールでAzure ハイブリッド特典を使用できますか?

いいえ。マネージド DevOps プールで Azure ハイブリッド特典 を使用することはできません。

Azure ハイブリッド特典はサブスクリプションと連携しており、Managed DevOps プールは代行ホスティングアーキテクチャを利用しています。 このアーキテクチャは、マネージド DevOps プール エージェントをホストする仮想マシンが、Microsoft が所有するサブスクリプションに存在することを意味します。 これらの仮想マシンはサブスクリプションに含まれていないため、Azure ハイブリッド特典の対象ではありません。

マネージド DevOps プールには、Azure検証済みモジュールがありますか?

はい。マネージド DevOps プールのAzure検証済みモジュールは、GitHubで利用できます。

パイプラインの実行は実行中に取り消され、次のようなエラーが発生します。

##[error]リモート コンピューター プロバイダーの問題: エージェントが例外で失敗しました:

要求 xxxx-xxxx-xxxx-xxxx を実行しているマシン/プロセスが再起動されました。

エージェントは再起動から回復できません。

##[warning]リモート コンピューター プロバイダーの問題:

プロビジョニング解除要求を受け取った: 要求はリモート プロバイダーによって取り消されました。

この問題は、リソースの枯渇、オペレーティング システムの再起動、ネットワークの中断、またはエージェントのワークロード負荷が高いため、パイプラインの実行中にエージェント VM が使用できなくなった場合に発生する可能性があります。

次の推奨事項を確認します。

  1. ワークロードに適したサイズの VM SKU を使用します。特に、パイプラインでリソースを大量に消費するスクリプト、ビルド、またはテストを実行する場合に使用します。
  2. 大規模なパイプラインを複数の小さなパイプラインに分割するか、可能な場合は同時に実行されるジョブの数を減らすことを検討してください。
  3. 大きなインライン スクリプトをソース管理に格納されているスクリプト ファイルに移動して、保守性とトラブルシューティングを向上させます。
  4. 特にカスタム仮想ネットワークを使用する場合は、ネットワークの容量と安定性を確認します。 複数のパイプラインが同時に実行される場合は、使用可能なネットワーク リソースを増やすことを検討し、必要に応じてネットワーク チームと連携することを検討してください。

パイプラインで自動テストを実行する場合は、テストの並列化の設定を確認します。 小規模なエージェント VM でテストを並列で実行すると、CPU、メモリ、ネットワークの消費量が増加する可能性があります。 テストの並列化を一時的に無効にして、問題に影響するかどうかを判断することを検討してください。 たとえば、MSTest には、テストの並列化を明示的に有効または無効にするオプションが用意されています。 詳細については、「 MSTEST0001: テストの並列化を明示的に有効または無効にする」を参照してください。

パイプラインで パイプライン成果物のダウンロード タスクを使用する場合は、ダウンロードの並列処理を減らすことを検討してください。 既定では、タスクは高度な並列処理を使用できます。 これを減らすには、パイプラインでAZURE_PIPELINES_DEDUP_PARALLELISM変数を設定します。

変数:

  AZURE_PIPELINES_DEDUP_PARALLELISM: 2

並列処理を減らすと、アーティファクトのダウンロード中にエージェント VM の CPU、メモリ、ディスク、およびネットワーク使用率が低下する可能性があります。