Управление коллекциями проектов в Team Foundation Server

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

Примечание

Предложение Azure DevOps Server раньше называлось Visual Studio Team Foundation Server.

Если Azure DevOps Server, ранее именуемый Team Foundation Server (TFS), размещает несколько проектов, вы можете более эффективно управлять ими, группируя их вместе и назначая им одни и те же ресурсы. Например, можно группировать проекты, имеющие аналогичные требования или цели, например все проекты, обращающиеся к определенной базе кода. Затем можно управлять группой командных проектов как автономным ресурсом с собственными группами пользователей, ресурсами сервера и расписанием обслуживания.

Группа проектов называется коллекцией проектов. При установке Azure DevOps Server создается коллекция по умолчанию, содержащая все проекты. При создании коллекции указываются логические и физические ресурсы, которые могут использоваться проектами в этой коллекции. Все артефакты и данные, используемые этими проектами, хранятся в единой базе данных коллекции.

На следующем рисунке показано, как базы данных для коллекций проектов интегрируются с логической архитектурой. При создании проекта указывается коллекция, в которой будут храниться данные.

Пример: возможное расположение баз данных коллекций

Просмотр сведений или Настройка существующего проекта

  1. Если вы не были добавлены в качестве администратора Azure DevOps Server, добавьте сейчас.

    Необходимо быть членом локальной группы администраторов на сервере, на котором нужно открыть консоль, а также быть членом группы администраторов Azure DevOps Server или Team Foundation или изменить разрешение на доступ к информации Server-Level .

  2. Войдите на сервер уровня приложений, откройте консоль администрированияи откройте узел коллекции командных проектов .

    Просмотр коллекций проектов

    Просмотр коллекций проектов

  3. Выделите имя коллекции и проверьте сведения, представленные на различных вкладках. Некоторые вкладки отображаются только в том случае, если соответствующее приложение настроено.

    На соответствующей вкладке можно выполнить следующие задачи.

    Вкладка Задания
    Общие сведения
    • Запуск коллекции или останавливает сбор: запуск или завершение сбора. При остановкой коллекции проекты становятся недоступными. Обычно останавливается коллекция для поддержки операций обслуживания, таких как перемещение или разделение коллекции.
    • Если коллекция запущена, то отображается только приостанавливает сбор . Если коллекция остановлена, отображается только Start Collection * . Запуск или остановка коллекции может занять несколько минут. Возможно, потребуется нажать кнопку Обновить , чтобы отобразить изменения в состоянии.
    • Изменить параметры: измените описание или конфигурацию коллекции.
    • Членство в группе. Добавление или удаление пользователей или групп в качестве членов коллекции. Дополнительные сведения см. в разделе Установка разрешений администратора для коллекций проектов.
    • Администрирование безопасности. Управление разрешениями группы коллекции. Дополнительные сведения см. в разделе ссылки на разрешения и группы.
    Состояние Просмотрите журнал действий или повторно запустите задание.
    Проекты
    Папка отчетов
    • Настройте сервер отчетов для использования коллекцией.
    • При изменении расположения папки по умолчанию операция завершится ошибкой, если ввести путь к папке, которая не существует на сервере, и у вас нет разрешения на создание папки на этом сервере. Если у вас нет прав на создание папки на данном сервере, вы должны ввести путь к существующей папке.
    • Чтобы удалить расположение по умолчанию для вложенных папок отчета, выберите Очистить конфигурацию.
    • При удалении конфигурации функции отчетов для всех существующих и будущих проектов в коллекции удаляются.
    • Эта вкладка появляется только после добавления сервера отчетов в Azure DevOps.

    Для TFS-2017 и более ранних версий на вкладке сайт SharePoint содержатся сведения об интеграции продуктов SharePoint с TFS.

    Вкладка Задания
    Сайт SharePoint
    • Просмотр, Настройка или удаление корневого расположения по умолчанию для создания порталов проектов. Мастер создания нового командного проекта создает порталы проектов в этом расположении.
    • Если список веб-приложений SharePoint пуст, уровень приложений не был настроен ни для каких приложений.
    • Эта вкладка отображается только в том случае, если вы настроили уровень приложений с помощью продуктов SharePoint. См. статью Добавление продуктов SharePoint в развертывание.

Создание коллекции проектов

Перед созданием коллекции проектов перейдите к этому разделу, чтобы узнать больше о преимуществах и недостатках создания нескольких коллекций проектов.

  1. Если вы не были добавлены в качестве администратора, добавьте сейчас.

    Необходимо быть членом локальной группы администраторов на сервере, на котором нужно открыть консоль, а также членом группы Администраторы Team Foundation или разрешения изменить Server-Level сведения , которые должны иметь значение Разрешить.

  2. В консоли администрирования откройте страницу коллекции командных проектов и выберите команду создать коллекцию.

    Снимок экрана консоли администрирования Azure DevOps Server с вызываемым параметром create Collection.

    Создание коллекции проектов

  3. Следуйте инструкциям, приведенным в мастере создания коллекции командных проектов .

    В поле имя укажите уникальное имя длиной не более 64 символов (более короткий вариант) и не указывайте косую черту или другие специальные символы, перечисленные в ограничениях именования.

    Снимок экрана: диалоговое окно "Создание коллекции командных проектов" с вызываемым параметром наследования.

    Выберите наследование , если вы хотите использовать пользовательский интерфейс для настройки отслеживания работы. Обратите внимание, что этот вариант основан на службе аналитики для поддержки ваших потребностей в отчетности.

    Выберите XML , если вы хотите использовать файлы определений XML для настройки отслеживания работы.

    Мастер поддерживает настройку следующих ресурсов. Некоторые ресурсы можно настроить только в том случае, если сервер уровня приложений, на котором размещена коллекция, был настроен для поддержки соответствующего приложения.

Уровень данных или экземпляр SQL Server

  1. Укажите имя сервера уровня данных Azure DevOps. Если вы хотите использовать именованный экземпляр для размещения базы данных для этой коллекции проектов, необходимо также указать имя экземпляра, как показано в следующем примере:

    Имя сервера \ Имя_экземпляра

  2. Выберите создать новую базу данных для этой коллекции , если необходимо создать базу данных для коллекции. Для использования этого параметра учетная запись службы, используемая агентом фоновых заданий Visual Studio Team Foundation, имеет разрешения на создание базы данных на экземпляре SQL Server.

    Можно также выбрать использовать существующую базу данных , если вы хотите использовать базу данных, которая уже существует, и указать имя базы данных. Для этого параметра необходимо, чтобы на именованном экземпляре SQL Server существовала пустая база данных и были предоставлены разрешения на запись.

Веб-приложение SharePoint

  1. Веб-приложение SharePoint появляется, если вы настроили уровень приложений с помощью веб-приложения SharePoint, в противном случае оно отключено. Чтобы настроить его позже, см. статью Добавление продуктов SharePoint в развертывание.

  2. Нажмите кнопку Далее , если хотите использовать параметр по умолчанию для создания семейства веб-сайтов. Выберите этот параметр, если для вашей бизнес-инфраструктуры не требуется использовать существующее семейство веб-сайтов. При выборе этого варианта будет создана коллекция веб-сайтов SharePoint с именем коллекции, используемой в качестве имени дочернего сайта корневого сайта, настроенного в веб-приложении SharePoint.

    Этот параметр требует, чтобы учетная запись службы DevOps Azure была членом группы администраторов фермы. Если это не так, вы не сможете создать семейство веб-сайтов.

  3. Чтобы использовать существующее семейство веб-сайтов, которое является членом созданной группы "Администраторы фермы", разверните узел Расширенная конфигурация, выберите указать путь к существующему сайту SharePoint и укажите относительный путь к созданному семейству веб-сайтов.

    Выберите проверить путь, если путь указан правильно, нажмите кнопку Далее.

SQL Server Reporting Services

  1. Отчеты отображаются, если уровень приложений настроен для использования SQL Server Reporting Services, в противном случае он отключен. Чтобы настроить его позже, см. раздел Добавление сервера отчетов.

  2. Проверьте сведения о сервере и папке, в которой будут размещаться отчеты, и нажмите кнопку Далее. Для использования этого параметра учетная запись пользователя должна иметь разрешения на создание папки на сервере, на котором работает Reporting Services.

    Если ограничения безопасности в вашей бизнес-инфраструктуре не препятствуют автоматическому созданию папки в составе мастера, следует использовать параметр по умолчанию для создания папки.

  3. Если необходимо использовать папку, созданную администратором на сервере, на котором выполняется Reporting Services, разверните узел Расширенная конфигурация, выберите указать путь к существующей папке и укажите относительный путь к созданной папке.

    Выберите проверить путь, если путь указан правильно, нажмите кнопку Далее.

Lab Management

Lab Management отображается, если уровень приложений настроен на использование Lab Management для коллекции, в противном случае он отключен. Чтобы настроить его позже, см. раздел настройка Lab Management для сред SCVMM.

Если вы не используете Lab Management, перейдите к процессу проверки.

Если вы используете Lab Management, выполните действия, описанные в разделе настройка Lab Management для каждой коллекции проектов.

Процесс проверки

  1. В окне проверки готовности Проверьте состояние проверок.

    Рядом с любой конфигурацией, содержащей ошибку, отображается синий индикатор с подчеркнутой ошибкой . Можно выбрать индикатор, чтобы просмотреть подробное сообщение об ошибке. Прежде чем продолжить, необходимо устранить все ошибки.

    После прохождения всех проверок готовности выберите создать.

  2. Начинается процесс создания коллекции проектов.

    Снимок экрана: диалоговое окно "Создание коллекции командных проектов", показывающее, что процесс создания завершен успешно.

    После завершения работы мастера нажмите кнопку Закрыть.

## Отсоединение или удаление коллекции проектов

Вы отсоединяете коллекцию проектов, когда хотите выполнить операцию обслуживания, например перемещение или разделение коллекции. Команды не могут получить доступ к проектам или исходному коду при отсоединении коллекции.

Коллекция удаляется, когда больше не нужны данные, хранящиеся в проектах, определенных в коллекции. Для удаления коллекции необходимо выполнить три шага: (1) отсоединить коллекцию, (2) удалить базу данных коллекции и (3) удалить семейство веб-сайтов SharePoint, которое поддерживало эту удаленную коллекцию.

Отключение коллекции

  1. В консоли администрирования выделите имя коллекции, которую требуется удалить, а затем выберите отсоединить коллекцию.

    Отсоединение коллекций проектов

    Отсоединение коллекции проектов

  2. Следуйте указаниям, приведенным в мастере "отсоединить коллекцию командных проектов".

    Используемых На странице Укажите сообщение обслуживания для коллекции проектов в поле служебное сообщение укажите сообщение для пользователей, которые могут попытаться подключиться к проектам в этой коллекции.

  3. После успешного завершения всех проверок готовности выберите отсоединить.

    На странице " мониторинг хода выполнения отсоединения коллекции проектов " после завершения всех процессов нажмите кнопку " Далее".

  4. Используемых На странице Проверка дополнительной информации для этой коллекции проектов Обратите внимание на расположение файла журнала.

Удаление базы данных коллекции

  1. Откройте SQL Server Management Studio, подключитесь к экземпляру ядро СУБД SQL Server, на котором размещена база данных коллекции, и разверните экземпляр.

    Выделите имя базы данных коллекции (по умолчанию TFS _ CollectionName), а затем удалите базу данных.

    Дополнительные сведения см. в разделе инструкции. Удаление базы данных.

Удаление базы данных и семейства веб-сайтов SharePoint

  1. Откройте SQL Server Management Studio, подключитесь к экземпляру ядро СУБД SQL Server, на котором размещена база данных коллекции, и разверните экземпляр.

    Выделите имя базы данных коллекции (по умолчанию TFS _ CollectionName), а затем удалите базу данных.

    Дополнительные сведения см. в разделе инструкции. Удаление базы данных.

  2. Откройте Центр администрирования SharePoint и удалите семейство веб-сайтов, которое поддерживало удаленную коллекцию.

    Дополнительные сведения см. в статье Удаление семейства веб-сайтов в SharePoint 2013.

Коллекция проектов больше не отображается в списке коллекций в консоли администрирования.

Вопросы и ответы

Вопрос. Существует ли средство командной строки для управления коллекциями?

Ответ . Команду TFSConfig Collection можно использовать для присоединения, отсоединения, удаления или клонирования коллекции проектов.

Вопрос. Каковы преимущества и недостатки создания нескольких коллекций проектов?

Если ваши усилия по разработке повышают возможности ветвления и слияния кода или необходимо запрашивать состояние рабочих элементов, связанных с одним и тем же кодом, следует консолидировать проекты в одной коллекции проектов.

Ответ. преимущества для создания более чем одной коллекции

Вы можете лучше разделить операционные требования для одной базы кода или другого группирования проектов из рабочих задач для другого группирования. Поскольку данные каждой коллекции хранятся в ее собственной базе данных, многими аспектами каждой коллекции можно управлять независимо от других коллекций в развертывании. Например, можно запускать и останавливать каждую коллекцию в отдельности. Благодаря этому можно планировать операции по обслуживанию коллекций на разное время.

Группировка проектов в нескольких коллекциях обеспечивает следующие преимущества.

  • Повышенная гибкость и масштабируемость при управлении и распространении баз данных и ресурсов. Группа связанных проектов совместно используют отчеты, рабочие элементы и руководство по процессам, а также базу кода.

    Создавая базу данных для каждой коллекции, группы и администраторы могут выполнять следующие задачи:

    • Сборка, ветвление, слияние и итерация автономного кода в соответствии с потребностями проектов в коллекции. Можно формально управлять зависимостями кода вне коллекции.
    • Резервное копирование и восстановление данных для каждой коллекции независимо от других коллекций.
    • Храните все базы данных коллекции на одном экземпляре SQL Server или распределите базы данных по одному или нескольким экземплярам.
    • Отсоедините коллекцию, создайте ее резервную копию и восстановите ее в другом развертывании Azure DevOps.
    • Переназначьте ресурсы, чтобы обеспечить соответствие требованиям проектов по мере увеличения размера с течением времени.
  • Повышение эксплуатационной безопасности. Поскольку каждая коллекция имеет собственный набор пользователей и разрешений, изоляция разных баз кода может быть изолирована в разных коллекциях. Администраторы могут добавлять пользователей только в коллекцию, содержащую проект или проекты, относящиеся к этой конкретной базе кода.

  • Расширенная возможность поддержки настраиваемых рабочих процессов. Каждая коллекция управляет шаблонами процессов, типами рабочих элементов, типами ссылок, глобальными списками и полями рабочих элементов, отделенными от других коллекций. Разделив проекты, которые имеют разные рабочие процессы, на разные коллекции, вы раскрываете только те настройки, которые необходимы для этих проектов в коллекции.

Ответ. недостатки создания более чем одной коллекции

Основным недостатком создания более одной коллекции проектов является повышение сложности развертывания Azure DevOps.

  • Необходимо выполнить резервное копирование и восстановление базы данных для каждой коллекции, а другие задачи управления и обслуживания также увеличиваются пропорционально количеству коллекций. Например, необходимо управлять набором пользователей и разрешений для каждой коллекции проектов по отдельности.
  • Команды не могут связывать рабочие элементы между коллекциями.
  • Команды не могут выполнять ветвление или слияние кода в коллекциях.
  • Команды не могут создавать запросы между коллекциями.

Вопрос. какие ресурсы управляются на уровне коллекции?

Ответ . Каждый проект принадлежит к коллекции. Кроме того, управление следующими объектами осуществляется на уровне коллекции:

Вопрос. как данные, хранящиеся в разных коллекциях команд, поддерживают отчеты?

Ответ . Единое реляционное хранилище данных содержит все данные, подотчетные для всех проектов, которые определены во всех коллекциях проектов для развертывания Azure DevOps. Данные из этого хранилища затем обрабатываются и записываются в куб OLAP. Поскольку данные собираются в единое хранилище данных, можно передавать отчеты между несколькими коллекциями проектов.

Для создания или настройки отчетов необходимо Добавить учетные записи пользователей в роль TFSWarehouseDataReader. Авторам отчетов необходим доступ на чтение и к реляционному хранилищу данных, и к кубу служб Analysis Services. Эти учетные записи могут просматривать данные для всех командных проектов, размещенных во всех коллекциях проектов в развертывании Azure DevOps. Невозможно ограничить доступ к проекту или коллекции.

Вопрос. Разделы справки масштабировать развертывание с помощью коллекций?

Ответ . См. раздел Перемещение коллекции проектов или разделение коллекции проектов.