Выполнение автоматической установки

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019 г.

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

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

Важно!

В этой статье описывается использование команды автоматической установки tfsconfig для автоматической установки в Azure DevOps Server 2019 года. Хотя шаги аналогичны предыдущим версиям Team Foundation Server, синтаксис команды автоматической настройки tfsconfig изменился. Для получения дополнительных сведений выберите нужную версию статьи из TFSConfig, автоматической установки.

Используйте автоматическую команду для выполнения следующих типов установок:

  • Новая установка с одним сервером или несколькими серверами
  • Обновление с более ранней версии:
  • Предварительная подготовка к обновлению
  • Настройка нового уровня приложений
  • Клонирование существующего развертывания
  • Настройка прокси-сервера управления версиями

Сведения об использовании синтаксиса команды автоматической настройки tfsconfig см. в разделе "Использование TFSConfig" для управления Azure DevOps в локальной среде и автоматической настройке.

Предварительные требования

  1. Подготовьте один компьютер, удовлетворяющий требованиям к системе.

  2. Если вы не планируете использовать SQL Server Express, настройте поддерживаемую версию SQL Server. При настройке SQL Server для локальной среды Azure DevOps необходимо установить ядро СУБД и Full-Text и семантические извлечения для функций поиска.

    Рекомендуется использовать SQL Server Express только для личных или ознакомительных развертываний. Платные копии Azure DevOps в локальной среде включают SQL Server Standard лицензию. Дополнительные сведения см. в Azure DevOps Server ценах. Если вы используете включенную лицензию, ее можно использовать только для баз данных, созданных с этими продуктами.

  3. Учетная запись, используемая для настройки установки, должна быть членом роли сервера sysadmin в SQL Server.

    Примечание

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

    • Членство в роли serveradmin.
    • ALTER ANY LOGIN, CREATE ANY DATABASE и VIEW ANY DEFINITION server-scoped permissions.
    • Разрешение ЭЛЕМЕНТ УПРАВЛЕНИЕ для базы данных master.
      Членство в роли сервера sysadmin предоставляет все эти членства и разрешения. Это самый простой способ убедиться, что конфигурация прошла успешно. При необходимости вы можете отозвать эти членства и разрешения после установки.
  4. Для поддержки установки и настройки расширения поиска необходимо указать имя пользователя и пароль. Установка и настройка поиска поддерживает функции поиска кода, рабочего элемента и вики-поиска. Дополнительные сведения см. в разделе "Настройка поиска".

    Примечание

    Для поиска также требуется Oracle Server JRE 8 (обновление 60 или более поздней версии). Вы можете скачать и установить или обновить до последней версии, приняв лицензионное соглашение Oracle Binary Code для сервера JRE и выбрав "Настроить". Обратите внимание, что при этом будет задана переменная среды JAVA_HOME, указывающая на каталог установки Java, и что сервер JRE не предоставляет автоматические обновления.

  5. При настройке уровня приложения у вас есть выбор параметров веб-сайта. Просмотрите параметры веб-сайта, чтобы понять варианты и требования.

Поддерживаемые установки

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

Ниже приведен список имен и описаний типов автоматических конфигураций:

InstallType Описание
NewServerBasic Настраивает основные службы разработки для Azure DevOps Server. Сюда входят Azure Boards (отслеживание работы) Azure Repos (система управления версиями), Azure Pipelines (сборка и выпуск) и при необходимости поиск.
NewServerAdvanced Настраивает основные службы разработки и разрешает дополнительную настройку интеграции с Reporting Services.
Обновление с более ранней версии: Обновляет Azure DevOps Server до текущей версии из поддерживаемого предыдущего выпуска.
PreProductionUpgrade Протестируйте обновление существующего развертывания Azure DevOps Server в предварительной среде. Обычно это делается с помощью баз данных, восстановленных из рабочих резервных копий. Этот сценарий включает дополнительные шаги, чтобы новое развертывание не помешает рабочему развертыванию.
ApplicationTierOnlyBasic Настройте новый уровень приложений с помощью существующих параметров из предоставленной базы данных конфигурации. Этот параметр позволяет быстро запустить новый уровень приложений с помощью существующих параметров. Если вы хотите изменить существующие параметры, используйте вместо него тип Advanced ApplicationTierOnlyAdvanced.
ApplicationTierOnlyAdvanced Настройте новый уровень приложений с полным контролем над всеми параметрами. Параметры по умолчанию будут использовать существующие значения из предоставленной базы данных конфигурации. Если вы хотите сохранить все существующие параметры, используйте вместо него тип ApplicationTierOnlyBasic.
Клонировать Настройте новое развертывание Azure DevOps Server, которое является клоном существующего развертывания. Обычно это делается с помощью баз данных, восстановленных из рабочих резервных копий, для создания среды, в которой можно протестировать изменения конфигурации, расширения и другие изменения. Этот сценарий включает дополнительные шаги, чтобы новое развертывание не помешает рабочему развертыванию.
Proxy (Прокси) Настраивает прокси-службу управления версиями.

Важно!

Перед выполнением конфигурации необходимо убедиться, что у вас есть текущая резервная копия баз данных, а затем переопределить ConfirmBackup, чтобы "ConfirmBackup=True". В противном случае конфигурация не будет выполняться.

Неподдерживаемые сценарии

Автоматическая установка предназначена только для использования в локальных сценариях. Автоматическая установка не поддерживает следующие сценарии:

  • Хотя мастер настройки может устанавливать экземпляры сборки и прокси-сервера, указывающие на базы данных Azure, эта функция не реализована для командной строки (нет места для предоставления сведений об учетной записи облачного хранения Azure).
  • Автоматическая установка доступна для Azure DevOps Server Express. Однако будут выполнены только типы конфигурации build и basic (где "SqlInstance=SqlExpress"). Автоматическая установка блокирует типы конфигурации, которые не могут быть установлены в SKU Express, например spinstall, spextensions и proxy, и вызовет ошибки для типов конфигурации "atonly" и "Standard", так как Azure DevOps Server Express совместима только с SQL Express.
  • Повторное использование файлов автоматической конфигурации на компьютерах в настоящее время не поддерживается, так как файлы конфигурации используют имя компьютера в определенных значениях параметров по умолчанию. В будущем мы планируем улучшить эту функцию. В то же время пользователи могут создавать собственные скрипты для динамического переключения имен компьютеров в файле конфигурации в соответствии с потребностями.

Скачивание и установка

  1. Скачайте Azure DevOps Server с помощью одного из следующих каналов:

  2. Выполните автоматическую установку.

     azuredevopsserver2019.1_rc1.exe /Silent
    

    Или автоматически установите экспресс-версию.

     devopsexpress2019_rc1.exe /Silent
    

    Установщик копирует файлы на компьютер.

  3. Проверьте установку, просмотрев папку C:\Program Files\Azure DevOps Server 2019.

    Установленные папки файлов сервера

  4. Чтобы настроить установку, выберите мастер запуска или закройте и настройте ее с помощью автоматической установки.

На этом этапе на компьютере установлены биты, но Azure DevOps Server не настроены. Чтобы выполнить автоматическую настройку, необходимо создать ini-файл, а затем настроить компьютеры с помощью этого ini-файла.

Создание ini-файла

Команда /create создает файл конфигурации, который затем можно изменить или запустить для настройки экземпляра сервера.

Чтобы начать, откройте командную строку для запуска от имени администратора и перейдите в каталог /Tools .

Здесь мы запускаем команду /create , указав тип установки и имя создаваемого файла.

C:\Program Files\Azure DevOps Server 2019\Tools>
tfsconfig unattend /create /type:NewServerBasic /unattendfile:basic.ini

По завершении откройте файл .ini в текстовом редакторе. Он похож на тот, который указан далее. Автоматически созданный полностью закомментированный файл basic.ini указывает выполнение следующих задач:

  • Scenario=NewServerBasic
  • InstallSqlExpress=False
  • SqlInstance=MININT-O0VPFCK\SqlExpress
  • UseExistingEmptyDatabase=False
  • CreateConfigurationDatabase=True
  • StartTrial=False
  • DatabaseLabel=
  • ServiceAccountName=NT AUTHORITY\NETWORK SERVICE
  • LCID=1033
  • WebSiteVDirName=
  • SiteBindings=http:*:80:
  • PublicUrl=http://minint-o0vpfck/
  • FileCacheFolder=C:\AzureDevOpsData\ApplicationTier_fileCache
  • SmtpEmailEnabled=False
  • EnableSshService=True
  • SshPort=22
  • ConfigureSearch=False
  • InstallSearchService=True
  • CreateInitialCollection=True
  • CollectionName=DefaultCollection
  • CollectionDescription=
  • UseExistingEmptyCollectionDatabase=False
[Configuration]
Activity=Microsoft.TeamFoundation.Admin.ServerConfigurationActivity

Assembly=Microsoft.TeamFoundation.Admin, Version=17.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a

; You can submit information about your Azure DevOps Server configuration and administration experience to Microsoft.
SendFeedback=True

; One of the following configuration Scenarios:
; 
; NewServerBasic:               Configure a new server with only the essential services.
; NewServerAdvanced:            Configure a new server with essential and other optional features.
; NewServerAzure:               Configure a new server with Azure SQL integration.
; ProductionUpgrade:            Upgrade an existing production server.
; PreProductionUpgrade:         Perform a pre-production upgrade using backed up production databases.
; ApplicationTierOnlyBasic:     Basic application tier-only configuration using existing settings.
; ApplicationTierOnlyAdvanced:  Application tier-only configuration that allows full setting customization.
; Clone:                        Create a new deployment from an existing deployment.
; 
Scenario=NewServerBasic

; Whether SQL Express will be installed as part of configuration
InstallSqlExpress=False

; Provide the configured SQL instance in the form of Server,  ServerName\InstanceName or Server,Port
SqlInstance=MININT-O0VPFCK\SqlExpress

; You can elect to create an existing set of empty databases (Tfs_<label>Configuration, Tfs_<label>Warehouse and Tfs_<label>Analysis)
UseExistingEmptyDatabase=False

; Determines whether a configuration database will get created
CreateConfigurationDatabase=True

; Database label controls the names of the configuration databases.  Database name will be Tfs_<label>Configuration, Tfs_<label>Warehouse and Tfs_<label>Analysis
DatabaseLabel=

StartTrial=False

; Boolean to determine whether the account is a built-in account
IsServiceAccountBuiltIn=True

; Account that the Azure DevOps web site will run as.  On a domain joined machine, this can be a domain account or NT Authority\Network Service.  On a workgroup machine, it can be a local account or NT Authority\Local Service
ServiceAccountName=NT AUTHORITY\NETWORK SERVICE

; The LCID to use for this Azure DevOps Server installation.
LCID=1033

; The host name portion of the web site URL.  This is typically the machine name but can be customized for more advanced scenarios such as HTTPS or NLB
UrlHostNameAlias=MININT-O0VPFCK

; The web site virtual directory name can be either empty or up to 8 alphanumeric characters.
WebSiteVDirName=

; 
; SiteBindings is a semi-colon separated list of bindings, each of which consists
; of 4 or 6 parts (4 for http, 6 for https):
; 
; [http|https]:[ipaddress]:[port]:[host]:[certificateStore]:[certificateThumprint|"generate"]
; 
; Examples:
; http:*:80:
; 
; A single http binding on port 80, for all unassigned IP addresses, with no host header
; 
; https:*:443:contoso.com:My:generate
; 
; A single https binding on port 443, for all unassigned IP addresses, having a host header 'contoso.com',
; including a generated self-signed certificate that will be stored in the Personal store
; on the local machine.
; 
; http:*:80:;http:*:8082:
; 
; Two bindings separated by a semi-colon
; 
; https:*:443:contoso.com:My:‎169CE0BCCECBD854321A61670413F8000A798F31
; 
; A single https binding on port 443 with a certificate thumbprint.
; Azure DevOps will look for the thumbprint in the Personal store for the local
; machine.
; 
SiteBindings=http:*:80:

; The Public URL is the primary URL that users specify to connect to the system and is the URL used in the text of e-mail alerts.
PublicUrl=http://minint-o0vpfck/

; The Windows file system folder used by Azure DevOps Server to cache data.
FileCacheFolder=C:\AzureDevOpsData\ApplicationTier\_fileCache

; Determines if Email notifications will be enabled.
SmtpEmailEnabled=False

; Determines if SSH service will be enabled.
EnableSshService=True

; The port used by the SSH service.
SshPort=22

; Configure Search in Azure DevOps deployment.
ConfigureSearch=False

; You can select to install new search service or use an existing search service
InstallSearchService=True

; Determines whether an initial collection will be created.  This can be disabled for advanced scenarios such as different SQL instances by using the create collection wizard in the administration console after configuring the server.
CreateInitialCollection=True

; The name of the collection
CollectionName=DefaultCollection

; The description for the collection
CollectionDescription=

UseExistingEmptyCollectionDatabase=False


Запуск конфигурации

При запуске автоматической установки процесс выполняет те же проверки, что и мастер настройки, а затем настраивает указанный экземпляр Azure DevOps Server на компьютере.

Команду /configure можно выполнить одним из двух способов. Первый и рекомендуемый вариант используют ini-файл, созданный на предыдущем шаге. Второй параметр задает тип выполняемой установки, а затем указывает входные данные для переопределения интеллектуальных значений по умолчанию. Каждый вариант является взаимоисключающим. Невозможно указать как файл, так и тип.

Ниже приведены две основные формы команды /configure :

Вариант 1

tfsconfig unattend /configure /unattendfile:<file> [/inputs:<inputs>] [/verify] [/continue]

Вариант 2

tfsconfig unattend /configure /type:<type> [/inputs:<inputs>] [/verify] [/continue]

Сведения об использовании синтаксиса команды автоматической настройки tfsconfig см. в разделе "Использование TFSConfig" для управления Azure DevOps в локальной среде и автоматической настройке.

Примечание

Если вы решили выполнить команду /configure без первого создания файла конфигурации ini для управления входными данными, мы рекомендуем выполнить /verify перед продолжением полной настройки.

После завершения установки вы можете получить доступ к Azure DevOps Server по адресу:

http://<localhostname>:8080/tfs

Или для сервера Express по адресу:

http://<localhostname>

Дальнейшие действия