Team Foundation Server でのプロジェクトコレクションの管理

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013

注意

Azure DevOps Server は、以前は Visual Studio Team Foundation Server という名前でした。

以前に Team Foundation Server (TFS) という名前の Azure DevOps Server が複数のプロジェクトをホストしている場合、それらをグループ化し、それらのプロジェクトに同じリソースを割り当てることで、より効率的に管理できます。 たとえば、特定のコードベースにアクセスするすべてのプロジェクトなど、同様の要件や目標を持つプロジェクトをグループ化できます。 チーム プロジェクトのグループは、独自のユーザー グループ、サーバー リソース、および保守スケジュールを持つ独立したリソースとして管理できます。

プロジェクトのグループは、 プロジェクトコレクション と呼ばれます。 Azure DevOps Server をインストールすると、すべてのプロジェクトを含む既定のコレクションが作成されます。 コレクションを作成するときに、そのコレクション内のプロジェクトで使用できる論理リソースと物理リソースを指定します。 それらのプロジェクトが使用するすべての成果物およびデータは、コレクションの単一のデータベースに格納されます。

次の図は、プロジェクトコレクションのデータベースを論理アーキテクチャと統合する方法を示しています。 プロジェクトを作成するときに、データを格納するコレクションを指定します。

例: 可能なコレクション データベースの場所

情報の表示または既存のプロジェクトの構成

  1. Azure DevOps Server 管理者として追加されていない場合は、 今すぐ追加してください。

    コンソールを開くサーバーのローカル管理者グループのメンバーであり、Azure DevOps Server または Team Foundation 管理者グループのメンバーであるか、または [ Server-Level 情報の編集 ] アクセス許可が [ 許可] に設定されている必要があります。

  2. アプリケーション層サーバーにサインインし、 管理コンソールを開いて、[ チームプロジェクトコレクション ] ノードを開きます。

    プロジェクトコレクションの表示

    プロジェクトコレクションの表示

  3. コレクションの名前を強調表示し、さまざまなタブから提供される情報を確認します。 一部のタブは、対応するアプリケーションが構成されている場合にのみ表示されます。

    対応するタブからは、次のタスクを実行できます。

    タブ タスク
    全般
    • コレクションの開始またはコレクションの停止: コレクションを開始または停止します。 コレクションを停止すると、プロジェクトは使用できなくなります。 通常、コレクションの停止は、コレクションの移動や分割などのメンテナンス操作をサポートするために行います。
    • コレクションが開始されている場合は、[ コレクションの停止 ] のみが表示されます。 コレクションが停止している場合は、[コレクションの開始] のみ * が表示されます。 コレクションの開始または停止は、完了までに数分かかります。 状態の変化を表示するには、[ 更新 ] を選択する必要がある場合があります。
    • [設定の編集]: コレクションの説明または構成を編集します。
    • グループメンバーシップ: コレクションのメンバーとして、ユーザーまたはグループを追加または削除します。 詳細については、「 プロジェクトコレクションの管理アクセス許可を設定する」を参照してください。
    • [セキュリティの管理]: コレクショングループのアクセス許可を管理します。 詳細については、「 アクセス許可とグループのリファレンス」を参照してください。
    状態 アクティビティログを表示するか、ジョブを再実行します。
    プロジェクト
    レポートフォルダー
    • コレクションが使用するレポート サーバーを構成します。
    • 既定のフォルダーの場所を編集する際、サーバーに存在しないフォルダーのパスを入力した場合や、そのサーバーにフォルダーを作成するためのアクセス許可を持っていない場合、この操作は失敗します。 そのサーバーにフォルダーを作成するためのアクセス許可を持っていない場合は、既存のフォルダーを指定してください。
    • レポートサブフォルダーの既定の場所を削除するには、[ 構成のクリア] を選択します。
    • 構成を削除すると、コレクション内の既存および今後のすべてのプロジェクトのレポート機能が削除されます。
    • このタブは、 Azure DevOps にレポートサーバーを追加した場合にのみ表示されます。

    TFS 2017 以前のバージョンでは、sharepoint 製品と TFS の統合に関する情報が [SharePoint サイト] タブに表示されます。

    タブ タスク
    SharePoint サイト
    • プロジェクトポータルが作成される場所の既定のルートの場所を表示、構成、または削除します。 新しいチームプロジェクトの作成ウィザードでは、この場所にプロジェクトポータルを作成します。
    • SharePoint Web アプリケーションの一覧が空の場合、アプリケーション層はアプリケーションで構成されていません。
    • このタブは、SharePoint 製品を使用してアプリケーション層を構成した場合にのみ表示されます。 「 配置に SharePoint 製品を追加する」を参照してください。

プロジェクトコレクションの作成

プロジェクトコレクションを作成する前に、このセクションにジャンプして、 複数のプロジェクトコレクションを作成する長所と短所について学習してください。

  1. 管理者として追加されていない場合は、 今すぐ追加してください。

    コンソールを開くサーバーのローカル Administrators グループのメンバーである必要があります。また、Team Foundation 管理者グループのメンバーまたは Server-Level 情報の編集 のアクセス許可が [ 許可] に設定されている必要があります。

  2. 管理コンソールで、[ チームプロジェクトコレクション ] ページを開き、[ コレクションの作成] を選択します。

    Azure DevOps Server 管理コンソールのスクリーンショット。 [コレクションの作成] オプションがあります。

    プロジェクトコレクションの作成

  3. チームプロジェクトコレクションの作成 ウィザードに用意されているガイダンスに従ってください。

    名前 として、64文字以内の一意の名前を指定します (より適切なもの)。スラッシュを指定したり、名前付けの制限に記載されているその他の特殊文字を指定したりしないでください。

    [チームプロジェクトコレクションの作成] ダイアログボックスのスクリーンショット。継承オプションが呼び出されます。

    ユーザーインターフェイスを使用して作業の追跡をカスタマイズする場合は、[ 継承 ] を選択します。 この選択は、レポートのニーズをサポートするために分析サービスに依存していることに注意してください。

    XML 定義ファイルを使用して作業追跡をカスタマイズする場合は、[ xml ] を選択します。

    ウィザードでは、次のリソースの構成をサポートします。 一部のリソースは、コレクションをホストするアプリケーション層サーバーが事前に構成されて対応するアプリケーションをサポートする場合にのみ構成できます。

データ層または SQL Server インスタンス

  1. Azure DevOps のデータ層サーバーの名前を指定します。 名前付きインスタンスを使用してこのプロジェクトコレクションのデータベースをホストする場合は、次の例に示すように、インスタンスの名前も指定する必要があります。

    ServerName **\**InstanceName

  2. コレクションのデータベースを作成する場合は、[ このコレクションに新しいデータベースを作成 する] を選択します。 このオプションを使用するには、Visual Studio Team Foundation バックグラウンドジョブエージェントによって使用されるサービスアカウントに、SQL Server のインスタンスにデータベースを作成する権限がある必要があります。

    または、既に存在するデータベースを使用する場合は、[ この既存のデータベースを使用 する] を選択し、データベースの名前を指定します。 このオプションでは、名前付きの SQL Server インスタンスに空のデータベースが存在し、書き込みのアクセス許可がある必要があります。

SharePoint Web アプリケーション

  1. Sharepoint web アプリケーションを使用してアプリケーション層を構成した場合は、 sharepoint web アプリケーション が表示されます。それ以外の場合は、無効になります。 後で構成するには、「 配置に SharePoint 製品を追加する」を参照してください。

  2. 既定のオプションを使用してサイトコレクションを作成する場合は、[ 次へ ] を選択します。 業務インフラストラクチャで既存のサイト コレクションを使用する必要がない限り、このオプションを選択します。 このオプションでは、SharePoint Web アプリケーションで構成されているルート サイトのサブサイトの名前として使用されるコレクション名を持つ SharePoint サイト コレクションを作成します。

    このオプションを使用するには、Azure DevOps サービスアカウントがファーム管理者グループのメンバーである必要があります。 そうでない場合は、サイトコレクションを作成することはできません。

  3. または、ファーム管理者グループのメンバーが作成した既存のサイトコレクションを使用するには、 [詳細構成] を展開し、[ 既存の SharePoint サイトへのパスを指定 する] を選択して、作成されたサイトコレクションの相対パスを指定します。

    [ パスの確認] を選択し、パスが正しい場合は [ 次へ] をクリックします。

SQL Server Reporting Services

  1. SQL Server Reporting Services を使用するようにアプリケーション層を構成した場合は、レポート が表示されます。それ以外の場合は無効になります。 後で構成する方法については、「 レポートサーバーの追加」を参照してください。

  2. サーバーとレポートをホストするフォルダーの情報を確認し、[ 次へ] をクリックします。 このオプションでは、ユーザー アカウントに Reporting Services を実行しているサーバー上にフォルダーを作成するアクセス許可がある必要があります。

    ビジネスインフラストラクチャのセキュリティ上の制限によって、ウィザードの一部としてフォルダーが自動的に作成されない場合を除き、既定のオプションを使用してフォルダーを作成する必要があります。

  3. Reporting Services を実行しているサーバーで管理者が作成したフォルダーを使用する必要がある場合は、 [詳細構成] を展開し、[ 既存のフォルダーへのパスを指定 する] を選択して、作成されたフォルダーの相対パスを指定します。

    [ パスの確認] を選択し、パスが正しい場合は [ 次へ] をクリックします。

Lab Management

コレクションに Lab Management を使用するようにアプリケーション層を構成した場合、 Lab Management が表示されます。それ以外の場合は、無効になります。 後で構成する方法については、「 configure Lab Management FOR SCVMM environment」を参照してください。

Lab Management を使用しない場合は、 検証プロセス に進みます。

Lab Management を使用する場合は、「」に記載されている手順に従って、 各プロジェクトコレクションの Lab Management を構成します。

検証プロセス

  1. 準備チェック で、チェックの状態を確認します。

    エラーが含まれている構成の横に、青い下線付き エラー インジケーターが表示されます。 インジケーターを選択すると、問題についての詳細なメッセージが表示されます。 続行するには、すべてのエラーを解決する必要があります。

    すべての準備チェックに合格したら、[ 作成] を選択します。

  2. プロジェクトコレクションの作成プロセスが開始されます。

    作成プロセスが成功したことを示す [チームプロジェクトコレクションの作成] ダイアログボックスのスクリーンショット。

    ウィザードが終了したら、[ 閉じる] を選択します。

## プロジェクトコレクションをデタッチまたは削除する

コレクションの移動や分割などのメンテナンス操作を実行する場合は、プロジェクトコレクションをデタッチします。 コレクションをデタッチすると、チームはプロジェクトまたはソースコードにアクセスできません。

コレクションに定義されているプロジェクトに格納されているデータが不要になった場合は、コレクションを削除します。 コレクションを削除する 3 つの手順は次のとおりです。(1) コレクションをデタッチする、(2) コレクションのデータベースを削除する、(3) 削除されたコレクションをサポートする SharePoint サイト コレクションを削除する。

コレクションをデタッチする

  1. 管理コンソールで、削除するコレクションの名前を強調表示し、[ コレクションのデタッチ] を選択します。

    プロジェクトコレクションのデタッチ

    プロジェクトコレクションをデタッチする

  2. チームプロジェクトコレクションのデタッチウィザード に用意されているガイダンスに従ってください。

    Optional[ プロジェクトコレクションのサービスメッセージを指定 します] ページの [ サービスメッセージ] で、このコレクション内のプロジェクトに接続しようとする可能性があるユーザーのメッセージを指定します。

  3. すべての準備チェックが正常に完了したら、[ デタッチ] を選択します。

    [ プロジェクトコレクションのデタッチの進行状況を監視し ます] ページで、すべてのプロセスが完了したら、[ 次へ] をクリックします。

  4. Optional[ このプロジェクトコレクションの補足情報を確認 してください] ページで、ログファイルの場所を確認します。

コレクションデータベースの削除

  1. SQL Server Management Studio を開き、コレクションデータベースをホストする SQL Server データベースエンジンのインスタンスに接続して、インスタンスを展開します。

    コレクションデータベースの名前 (既定では TFS _ CollectionName) を強調表示し、データベースを削除します。

    詳細については、「 方法: データベースを削除する」を参照してください。

データベースと SharePoint サイト コレクションの削除

  1. SQL Server Management Studio を開き、コレクションデータベースをホストする SQL Server データベースエンジンのインスタンスに接続して、インスタンスを展開します。

    コレクションデータベースの名前 (既定では TFS _ CollectionName) を強調表示し、データベースを削除します。

    詳細については、「 方法: データベースを削除する」を参照してください。

  2. SharePoint サーバーの全体管理を開き、削除されたコレクションをサポートしているサイト コレクションを削除します。

    詳細については、「 SharePoint 2013 でのサイトコレクションの削除」を参照してください。

管理コンソールのコレクションの一覧にプロジェクトコレクションが表示されなくなりました。

Q & A

Q: コレクションを管理するたコマンド ライン ツールはありますか。

A:TFSConfig collectionコマンドを使用して、プロジェクトコレクションをアタッチ、デタッチ、削除、または複製することができます。

Q: 複数のプロジェクトコレクションを作成する長所と短所は何ですか。

開発作業でコードの分岐とマージを行うことができる場合、または同じコードに関連する作業項目の状態を照会する必要がある場合は、プロジェクトを同じプロジェクトコレクションに統合する必要があります。

A: 複数のコレクションを作成するメリット

1 つのコード ベースまたは他のプロジェクトのグループの運用ニーズは、別のグループの運用ニーズから分離するほうがよいでしょう。 各コレクションのデータはそれぞれ独自のデータベースに格納されるため、配置内の他のコレクションとは別に各コレクションの多くの部分を個別に管理できます。 たとえば、各コレクションを個別に停止および開始できます。 これにより、各コレクションの保守の操作を異なる時間にスケジュールできます。

プロジェクトを複数のコレクションにグループ化すると、次のような利点があります。

  • データベースとリソースの管理と配布における柔軟性とスケーラビリティが向上 します。 関連するプロジェクトのグループは、レポート、作業項目、プロセスガイダンス、およびコードベースを共有します。

    各コレクション用にデータベースを作成することで、チームと管理者は次のタスクを実行できます。

    • コレクション内のプロジェクトのニーズに合わせて、独立したコード ベースのビルド、分岐、マージ、および反復処理を行います。 コレクション外のコードの依存関係を正式に管理できます。
    • 他のコレクションとは無関係に、コレクションごとにデータのバックアップと復元を行います。
    • SQL Server の 1 つのインスタンスにすべてのコレクション データベースを格納するか、1 つ以上のインスタンスにデータベースを分散します。
    • コレクションをデタッチしてバックアップし、別の Azure DevOps デプロイに復元します。
    • 時間の経過と共にプロジェクトのサイズが大きくなるため、プロジェクトの要求に合わせてリソースを再割り当てします。
  • 運用上のセキュリティが向上 しました。 各コレクションには独自のユーザーおよび権限のセットがあるため、さまざまなコード ベースをさまざまなコレクションの下で分離できます。 管理者は、特定のコード ベースに関連する 1 つ以上のプロジェクトを含むコレクションにのみユーザーを追加できます。

  • カスタムワークフロープロセスをサポートするための機能が向上 しました。 各コレクションは、プロセス テンプレート、作業項目の種類、リンクの種類、グローバル リスト、および作業項目フィールドを、その他のコレクションと切り離して管理します。 ワークフロープロセスが異なるプロジェクトを別々のコレクションに分割することで、コレクション内のこれらのプロジェクトに必要なカスタマイズのみを公開します。

A: 複数のコレクションを作成するデメリット

複数のプロジェクトコレクションを作成する場合の主な欠点は、Azure DevOps のデプロイの複雑さを高めることです。

  • 各コレクションのデータベースをバックアップおよび復元する必要があり、他の管理タスクや保守タスクも、使用しているコレクションの数に比例して増えていきます。 たとえば、各プロジェクトコレクションのユーザーとアクセス許可のセットを個別に管理する必要があります。
  • チームは、コレクション間で作業項目をリンクできません。
  • チームは、コレクション間でコードの分岐またはマージを行えません。
  • チームは、コレクション間でクエリを作成できません。

Q: コレクションレベルで管理されているリソースは何ですか。

A: 各プロジェクトはコレクションに属しています。 さらに、次のオブジェクトはコレクション レベルで管理されます。

Q: 異なるチームコレクションに格納されているデータはどのようにレポートをサポートしていますか。

A: 1つのリレーショナルデータウェアハウスには、Azure DevOps デプロイメントのすべてのプロジェクトコレクションで定義されているすべてのプロジェクトのレポート可能なデータがすべて含まれています。 データ ウェアハウスに格納されたデータは、処理されて OLAP キューブに書き込まれます。 データは1つのデータウェアハウスに収集されるため、複数のプロジェクトコレクションにわたってレポートできます。

レポートを作成またはカスタマイズするには、 ユーザーアカウントを TfsWarehouseDataReader ロールに追加する必要があります。 レポート作成者には、リレーショナル データ ウェアハウスと Analysis Services キューブの両方への読み取りアクセスが必要です。 これらのアカウントは、Azure DevOps デプロイ内のすべてのプロジェクトコレクションでホストされているすべてのチームプロジェクトのデータを表示できます。 プロジェクトまたはコレクションへのアクセスを制限する方法はありません。

Q: コレクションで配置を拡大/縮小するにはどのようにすればよいですか。

A:プロジェクトコレクションを移動する 」または「 プロジェクトコレクションを分割する」を参照してください。