Управление коллекциями проектов в Azure DevOps Server
Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019
Если сервер Azure DevOps server размещает несколько проектов, вы можете более эффективно управлять ими, группируя их и назначая им одни и те же ресурсы. Например, можно группировать проекты с аналогичными требованиями или целями, такими как все проекты, обращаюющиеся к определенной базе кода. Затем вы можете управлять группой командных проектов в качестве автономного ресурса с собственными группами пользователей, ресурсами сервера и расписанием обслуживания.
Группа проектов называется коллекцией проектов. При установке Azure DevOps Server создается коллекция по умолчанию для хранения всех проектов. При создании коллекции можно указать логические и физические ресурсы, которые могут использовать проекты в этой коллекции. Все артефакты и данные, используемые этими проектами, хранятся в одной базе данных коллекции.
На следующем рисунке показано, как базы данных для коллекций проектов интегрированы с логической архитектурой. При создании проекта укажите коллекцию, которая будет хранить свои данные.
Просмотр сведений или настройка существующего проекта
Если вы еще не добавили в качестве администратора Azure DevOps Server, добавьте его.
Вы должны быть членом локальной группы администраторов на сервере, на котором вы хотите открыть консоль, а также участник группы администраторов Azure DevOps Server или Team Foundation, или разрешение "Изменить сведения на уровне сервера" должно иметь значение Allow.
Войдите на сервер уровня приложений, откройте консоль администрирования и откройте узел коллекции проектов группы.
Выделите имя коллекции и просмотрите сведения, предоставленные на различных вкладках. Некоторые вкладки отображаются только в том случае, если настроено соответствующее приложение.
На соответствующей вкладке можно выполнить следующие задачи.
Вкладка Задачи Общие сведения - Запуск коллекции или остановка коллекции: запуск или остановка коллекции. При остановке коллекции проекты становятся недоступными. Обычно коллекция останавливается для поддержки операций обслуживания, таких как перемещение или разделение коллекции.
- Если коллекция запущена, появится только остановка коллекции . Если коллекция остановлена, появится только начальная коллекция . Запуск или остановка коллекции может занять несколько минут. Может потребоваться выбрать "Обновить" , чтобы отобразить изменение состояния.
- Изменение параметров: изменение описания или конфигурации коллекции.
- Членство в группах: добавление или удаление пользователей или групп в качестве членов коллекции. Дополнительные сведения см. в разделе "Настройка разрешений администратора для коллекций проектов".
- Администрирование безопасности. Управление разрешениями группы коллекций. Дополнительные сведения см . в справочнике по разрешениям и группам.
Состояние - Просмотр журнала действий или повторное выполнение задания.
Проекты - Просмотр проектов, определенных для коллекции и удаления проекта.
- Дополнительные сведения о проектах см. в статье "Создание проекта".
Настройка отчетов
Страница отчетов отображается только при добавлении сервера отчетов в Azure DevOps. Выберите эту страницу для выполнения следующих задач:
- Настройте сервер отчетов для использования коллекцией.
- При изменении расположения папки по умолчанию операция завершится ошибкой, если ввести путь к папке, которая не существует на сервере, и у вас нет разрешения на создание папки на этом сервере. Если у вас нет разрешений на создание папок на этом сервере, необходимо указать существующую папку.
- Чтобы удалить расположение по умолчанию для вложенных папок отчета, нажмите кнопку "Очистить конфигурацию".
- При удалении конфигурации удаляются функции отчетов для всех существующих и будущих проектов в коллекции.
Создание коллекции проектов
Перед созданием коллекции проектов ознакомьтесь с преимуществами и недостатками создания нескольких коллекций проектов, как описано далее в этой статье.
Если вы еще не добавили в качестве администратора, добавьте его сейчас.
Вы должны быть членом локальной группы администраторов на сервере, на котором вы хотите открыть консоль, и для параметра "Разрешить" должно быть задано разрешение "Администраторы Team Foundation" или разрешение "Изменить сведения на уровне сервера".
В консоли администрирования откройте страницу коллекций командных проектов и нажмите кнопку "Создать коллекцию".
Следуйте указаниям, предоставленным мастером создания коллекции проектов группы.
Для имени укажите уникальное имя не более 64 символов (короче, чем лучше), и не указывайте косую черту или другие специальные символы, перечисленные в ограничениях именования.
Выберите наследование , если вы хотите использовать пользовательский интерфейс для настройки отслеживания работы. Этот выбор зависит от службы аналитики для поддержки потребностей отчетов.
Выберите XML , если вы хотите использовать XML-файлы определения для настройки отслеживания работы.
Примечание.
Для локальной модели процесса XML можно использовать witadmin для перечисления, импорта, экспорта и изменения процесса для проекта. Для моделей наследуемого процесса можно использовать только witadmin для перечисления и экспорта сведений о процессе. Общие сведения о моделях процессов и поддерживаемых функциях см. в разделе "Настройка процесса отслеживания работы".
Мастер поддерживает настройку следующих ресурсов. Некоторые ресурсы можно настроить только в том случае, если сервер уровня приложений, на котором размещена коллекция, ранее был настроен для поддержки соответствующего приложения.
Уровень данных или экземпляр SQL Server
Укажите имя сервера уровня данных Azure DevOps. Если вы хотите использовать именованный экземпляр для размещения базы данных для этой коллекции проектов, необходимо также указать имя экземпляра, как показано в следующем примере:
Имя экземпляра serverName \
Выберите "Создать базу данных для этой коллекции ", если вы хотите создать базу данных для коллекции. Для этого параметра требуется, чтобы учетная запись службы, используемая агентом фонового задания Visual Studio Team Foundation, имеет разрешения на создание базы данных в экземпляре SQL Server.
Или выберите "Использовать эту существующую базу данных", если вы хотите использовать базу данных , которая уже существует, и укажите имя базы данных. Для этого параметра требуется, чтобы пустая база данных существовала в именованном экземпляре SQL Server, и у вас есть разрешения на запись.
службы SQL Server Reporting Services
Отчеты отображаются, если вы настроили уровень приложения для использования служб SQL Server Reporting Services, в противном случае он отключен. Чтобы настроить его позже, см. статью "Добавление сервера отчетов".
Просмотрите сведения о сервере и папке, в которую будут размещаться отчеты, и нажмите кнопку "Далее". Для этого параметра требуется, чтобы у учетной записи пользователя были разрешения на создание папки на сервере, на котором запущены службы Reporting Services.
Если ограничения безопасности в бизнес-инфраструктуре не препятствуют автоматическому созданию папки в рамках мастера, следует использовать параметр по умолчанию для создания папки.
Если необходимо использовать папку, созданную администратором на сервере, на котором запущены службы Reporting Services, разверните расширенную конфигурацию, выберите "Указать путь к существующей папке" и укажите относительный путь к созданной папке.
Выберите "Проверить путь", а если путь правильный, нажмите кнопку "Далее".
Процесс проверки
В проверках готовности просмотрите состояние проверок.
Синий подчеркнутый индикатор ошибки отображается рядом с любой конфигурацией, содержащей ошибку. Вы можете выбрать индикатор для подробного сообщения о проблеме. Перед продолжением необходимо устранить все ошибки.
После прохождения всех проверок готовности нажмите кнопку "Создать".
Начинается процесс создания коллекции проектов.
После завершения работы мастера нажмите кнопку "Закрыть".
Отключение или удаление коллекции проектов
Вы отсоединяете коллекцию проектов, если требуется выполнить операцию обслуживания, например перемещение или разделение коллекции. Teams не может получить доступ к проектам или исходному коду при отключении коллекции.
Вы удаляете коллекцию, если вам больше не нужны данные, хранящиеся в проектах, определенных в коллекции. Три шага по удалению коллекции: отсоедините коллекцию и (2) удалите базу данных коллекции.
Отключение коллекции
В консоли администрирования выделите имя коллекции, которую требуется удалить, а затем выберите "Отсоединить коллекцию".
Следуйте указаниям, предоставленным мастером сбора командных проектов.
(Необязательно) На странице "Предоставление обслуживания" на странице коллекции проектов в сообщении обслуживания укажите сообщение для пользователей, которые могут попытаться подключиться к проектам в этой коллекции.
После успешного завершения всех проверок готовности нажмите кнопку "Отсоединить".
На странице "Мониторинг процесса отсоединения коллекции проектов" при завершении всех процессов нажмите кнопку "Далее".
(Необязательно) На странице "Просмотр дополнительных сведений" для этой страницы коллекции проектов обратите внимание на расположение файла журнала.
Удаление базы данных коллекции
Откройте СРЕДУ SQL Server Management Studio, подключитесь к экземпляру SQL Server ядро СУБД, в котором размещена база данных коллекции, и разверните экземпляр.
Выделите имя базы данных коллекции (по умолчанию TFS_CollectionName), а затем удалите базу данных.
Дополнительные сведения см. в разделе Удаление базы данных.
Коллекция проектов больше не отображается в списке коллекций в консоли администрирования.
Вопросы и ответы
Вопрос. Существует ли средство командной строки для управления коллекциями?
Ответ. С помощью команды TFSConfig Collection можно подключить, отсоединить, удалить или клонировать коллекцию проектов.
Вопрос. Каковы преимущества и недостатки создания нескольких коллекций проектов?
Если ваши усилия по разработке будут использовать возможность ветвления и слияния кода или необходимо запросить состояние рабочих элементов, относящихся к тому же коду, необходимо объединить проекты в одной коллекции проектов.
Ответ. Преимущества создания нескольких коллекций
Можно лучше разделить операционные потребности для одной базы кода или другой группировки проектов от операционных потребностей для другой группировки. Так как данные для каждой коллекции хранятся в собственной базе данных, вы можете независимо управлять многими аспектами каждой коллекции отдельно от других коллекций в развертывании. Например, можно остановить и запустить каждую коллекцию по отдельности. Таким образом, можно запланировать операции обслуживания для каждой коллекции в разное время.
Группирование проектов в несколько коллекций обеспечивает следующие преимущества:
Большую гибкость и масштабируемость в управлении базами данных и ресурсами. Группа связанных проектов предоставляет общий доступ к отчетам, рабочим элементам и рекомендациям по процессу, а также базе кода.
Создав базу данных для каждой коллекции, команды и администраторы могут выполнять следующие задачи:
- Сборка, ветвь, слияние и итерацию автономной базы кода в соответствии с потребностями проектов в коллекции. Зависимости кода за пределами коллекции можно официально управлять.
- Резервное копирование и восстановление данных для каждой коллекции независимо от других коллекций.
- Храните все базы данных коллекции в одном экземпляре SQL Server или распределяйте их между одним или несколькими экземплярами.
- Отсоедините коллекцию, создайте резервную копию и восстановите ее в другом развертывании Azure DevOps.
- Переназначьте ресурсы, чтобы лучше соответствовать требованиям проектов по мере их увеличения с течением времени.
Повышение операционной безопасности. Так как каждая коллекция имеет собственный набор пользователей и разрешений, изоляция различных баз кода может быть изолирована в разных коллекциях. Администраторы могут добавлять пользователей только в коллекцию, содержащую проект или проекты, относящиеся к этой конкретной базе кода.
Увеличена возможность поддержки пользовательских процессов рабочего процесса. Каждая коллекция управляет шаблонами процессов, типами рабочих элементов, типами ссылок, глобальными списками и полями рабочих элементов отдельно от других коллекций. Разделив проекты с различными процессами рабочих процессов в разные коллекции, вы предоставляете только эти настройки, необходимые для этих проектов в коллекции.
Ответ. Недостатки создания нескольких коллекций
Основным недостатком создания нескольких коллекций проектов является увеличение сложности развертывания Azure DevOps.
- Необходимо создать резервную копию и восстановить базу данных для каждой коллекции, а также другие задачи управления и обслуживания, а также увеличить количество коллекций, которые у вас есть. Например, необходимо управлять набором пользователей и разрешений для каждой коллекции проектов по отдельности.
- Teams не может связать рабочие элементы между коллекциями.
- Teams не может ветвить или объединить код между коллекциями.
- Teams не может создавать запросы между коллекциями.
Вопрос. Какие ресурсы управляются на уровне коллекции?
Ответ. Каждый проект принадлежит коллекции. Сведения об управлении коллекцией см. в статье "Начало управления организацией или коллекцией проектов".
Вопрос. Как данные, хранящиеся для различных коллекций команд, поддерживают отчеты?
Ответ. Один реляционный хранилище данных содержит все сообщаемые данные из всех проектов, определенных во всех коллекциях проектов для развертывания Azure DevOps. Затем данные из этого хранилища обрабатываются и записываются в куб OLAP. Так как данные собираются в одном хранилище данных, можно сообщать в нескольких коллекциях проектов.
Чтобы создать или настроить отчеты, необходимо добавить учетные записи пользователей в роль TfsWarehouseDataReader. Авторы отчетов нуждаются в доступе на чтение как к хранилищу реляционных данных, так и к кубу служб Analysis Services. Эти учетные записи могут просматривать данные для всех командных проектов, размещенных во всех коллекциях проектов в развертывании Azure DevOps. Невозможно ограничить доступ к проекту или коллекции.
Вопрос. Разделы справки масштабировать развертывание с помощью коллекций?
Ответ. См. статью "Перемещение коллекции проектов" или "Разделение коллекции проектов".