Effectuer une installation sans assistance

Azure DevOps Server 2020 | Azure DevOps Server 2019

Notes

Azure DevOps Server a été précédemment nommé Visual Studio Team Foundation Server.

avec une installation sans assistance, vous pouvez prédéfinir tous les paramètres de configuration de votre instance de Azure DevOps Server à l’avance. la commande d' installation sans assistance tfsconfig est particulièrement utile lorsque vous êtes familiarisé avec le processus de configuration Azure DevOps Server et que vous déployez des Azure DevOps dans un environnement à plusieurs ordinateurs.

Par exemple, de nombreux systèmes d’entreprise à grande échelle ont plusieurs serveurs désignés pour être générés. L’installation sans assistance permet à un administrateur de lancer rapidement le processus d’installation de Team Build sur ces ordinateurs sans avoir à les superviser séparément. En outre, étant donné que la configuration de chaque serveur de builds sera probablement presque ou complètement identique, il devrait être facile de définir rapidement les paramètres de configuration de chaque ordinateur.

Important

cet article décrit l’utilisation de la commande tfsconfig unattend pour effectuer une installation sans assistance sur Azure DevOps Server 2019. bien que les étapes soient similaires pour les versions antérieures de Team Foundation Server, la syntaxe de la commande d' installation sans assistance tfsconfig a changé. Pour plus d’informations, sélectionnez la version de l’article que vous souhaitez à partir de TfsConfig, Unattend.

Utilisez la commande d’installation sans assistance pour effectuer les types d’installation suivants :

  • Installation sur un serveur unique ou sur plusieurs serveurs
  • Mettre à niveau
  • Mise à niveau de pré-production
  • Configurer une nouvelle couche application
  • Cloner un déploiement existant
  • Configurer un serveur proxy de contrôle de version

pour plus d’informations sur l’utilisation de la syntaxe de la commande tfsconfig unattend , consultez utiliser tfsconfig pour gérer Azure DevOps local, sans assistance.

Prérequis

  1. Préparez un ordinateur unique conforme à la Configuration système requise.

  2. si vous n’envisagez pas d’utiliser SQL Server Express, configurez une version prise en charge de SQL Server. quand vous configurez SQL Server pour Azure DevOps localement, vous devez au minimum installer le Moteur de base de données et Full-Text et les extractions sémantiques pour les fonctionnalités de recherche.

    nous vous recommandons d’utiliser SQL Server Express uniquement pour les déploiements personnels ou d’évaluation. les copies payantes de Azure DevOps locales incluent une licence SQL Server Standard. pour plus d’informations, consultez Azure DevOps Server tarification. Si vous utilisez la licence incluse, vous pouvez l’utiliser uniquement pour les bases de données créées avec ces produits.

  3. Le compte que vous utilisez pour configurer l’installation doit être membre du rôle de serveur sysadmin dans SQL Server.

    Notes

    l’installation de Azure DevOps localement implique un ensemble d’opérations qui nécessitent un haut niveau de privilège. Ces opérations incluent la création de bases de données, la configuration des connexions pour les comptes de service, et bien plus encore. Techniquement, tout ce qui est obligatoire est le suivant :

    • Appartenance au rôle serveradmin.
    • MODIFIEZ une connexion, créez une base de données et AFFICHEz les autorisations étendues du serveur de définitions.
    • Autorisation CONTROL sur la base de données MASTER
      L’appartenance au rôle de serveur sysadmin confère à toutes ces appartenances et autorisations. C’est le moyen le plus simple de s’assurer que la configuration est réussie. Si nécessaire, vous pouvez révoquer ces appartenances et autorisations après l’installation.
  4. Pour prendre en charge l’installation et la configuration de l’extension de recherche , vous devez fournir un nom d’utilisateur et un mot de passe. L’installation et la configuration de la recherche prennent en charge les fonctionnalités de recherche de code, d’élément de travail et de wiki. Pour plus d’informations, consultez configurer la recherche.

    Notes

    La recherche requiert également Oracle Server JRE 8 (mise à jour 60 ou ultérieure). Vous pouvez télécharger et installer ou mettre à jour la version la plus récente en acceptant le contrat de licence de code binaire Oracle pour Server JRE et en sélectionnant configurer. Notez que cette opération définit la variable d’environnement JAVA_HOME pour qu’elle pointe vers le répertoire d’installation Java, et que ce serveur JRE ne fournisse pas de mises à jour automatiques.

  5. Lors de la configuration de la couche application, vous avez le choix entre les paramètres de site Web. Examinez les paramètres du site Web pour comprendre les choix et les exigences.

Installations prises en charge

La fonctionnalité d’installation sans assistance prend en charge les mêmes types d’installation que ceux que l’Assistant Configuration prend en charge et contient des champs pour le même ensemble de paramètres de configuration. Pour l’essentiel, le nom de chaque type de configuration pour l’installation sans assistance reflète le nom dans l’Assistant.

Voici la liste des noms et des descriptions des types de configurations sans assistance :

InstallType (type d'installation) Description
NewServerBasic Configure les services de développement essentiels pour Azure DevOps Server. il s’agit notamment des Azure Boards (suivi des tâches) Azure Repos (contrôle de code source), du Azure Pipelines (build et mise en version) et éventuellement de la recherche.
NewServerAdvanced Configure les services de développement essentiels et permet la configuration facultative de l’intégration avec Reporting Services.
Mettre à niveau met à niveau Azure DevOps Server vers la version actuelle à partir d’une version antérieure prise en charge.
PreProductionUpgrade testez la mise à niveau sur un déploiement de Azure DevOps Server existant dans un environnement de pré-production. Cette opération s’effectue généralement à l’aide de bases de données restaurées à partir de sauvegardes de production. Ce scénario comprend des étapes supplémentaires pour garantir que le nouveau déploiement n’interfère pas avec le déploiement de production.
ApplicationTierOnlyBasic Configurez une nouvelle couche application à l’aide des paramètres existants de la base de données de configuration fournie. Cette option vous permet d’obtenir rapidement une nouvelle couche application en utilisant les paramètres existants. Si vous souhaitez pouvoir modifier des paramètres existants, utilisez le type de ApplicationTierOnlyAdvanced avancé à la place.
ApplicationTierOnlyAdvanced Configurez une nouvelle couche application avec un contrôle total sur tous les paramètres. Paramètres utilise par défaut les valeurs existantes de la base de données de configuration fournie. Si vous souhaitez conserver tous vos paramètres existants, utilisez le type ApplicationTierOnlyBasic à la place.
Clone configurez un nouveau déploiement de Azure DevOps Server qui est un clone d’un déploiement existant. Cette opération est généralement effectuée à l’aide de bases de données restaurées à partir de sauvegardes de production, afin de créer un environnement dans lequel les modifications de configuration, les extensions et les autres modifications peuvent être testées. Ce scénario comprend des étapes supplémentaires pour garantir que le nouveau déploiement n’interfère pas avec le déploiement de production.
Proxy Configure un service proxy de contrôle de version.

Important

Avant d’exécuter la configuration, vous devez vous assurer que vous disposez d’une sauvegarde actuelle de vos bases de données, puis remplacer « ConfirmBackup » afin que « ConfirmBackup = true ». Dans le cas contraire, la configuration ne sera pas exécutée.

Scénarios non pris en charge

L’installation sans assistance est uniquement prévue pour une utilisation dans des scénarios locaux. L’installation sans assistance ne prend pas en charge les scénarios suivants :

  • bien que l’assistant Configuration puisse installer des instances de Build et de Proxy qui pointent vers des bases de données azure, cette fonctionnalité n’est pas implémentée pour la ligne de commande (il n’y a pas d’emplacement pour fournir les informations de compte du Cloud azure Stockage).
  • l’installation sans assistance est disponible pour Azure DevOps Server Express. Toutefois, seuls les types de configuration « Build » et « Basic » (où « SqlInstance = SqlExpress ») sont correctement exécutés. l’installation sans assistance est bloquée sur les types de configuration qui ne peuvent pas être installés sur la référence (SKU) Express, tels que « install », « paextensions » et « proxy », et génèrent des erreurs pour les types de configuration « atonly » et « Standard », car Azure DevOps Server Express est compatible uniquement avec SQL express.
  • La réutilisation de fichiers de configuration sans assistance sur plusieurs ordinateurs n’est pas prise en charge actuellement, car les fichiers de configuration utilisent le nom de l’ordinateur dans certaines valeurs de paramètres par défaut. Nous avons l’intention d’améliorer cette fonctionnalité à l’avenir. En attendant, les utilisateurs peuvent écrire leurs propres scripts pour basculer dynamiquement les noms des ordinateurs dans leur fichier de configuration en fonction de leurs besoins.

Télécharger et installer

  1. téléchargez Azure DevOps Server via l’un des canaux suivants :

  2. Effectuez une installation sans assistance.

    azuredevopsserver2019.1_rc1.exe /Silent
    

    Ou installez la version Express en mode silencieux.

    devopsexpress2019_rc1.exe /Silent
    

    Le programme d’installation copie les fichiers sur votre ordinateur.

  3. vérifiez l’installation en regardant le dossier C:\Program Files \ Azure DevOps Server 2019.

    Dossiers de fichiers du serveur installés

  4. Vous pouvez configurer votre installation en choisissant Démarrer l’Assistant, ou quitter et configurer à l’aide d’une installation sans assistance.

à ce stade, le service bits est installé sur votre ordinateur, mais Azure DevOps Server n’est pas configuré. Pour effectuer une configuration sans assistance, vous devez créer un fichier ini, puis configurer la ou les machines à l’aide de ce fichier ini.

Créer le fichier ini

L’option de commande /Create génère un fichier de configuration que vous pouvez ensuite modifier ou exécuter pour configurer une instance de serveur.

Pour démarrer, ouvrez une invite de commandes pour exécuter en tant qu’administrateur et accédez au répertoire /Tools

Ici, nous exécutons la commande /Create , en spécifiant le type d’installation et le nom du fichier à créer.

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

Une fois l’opération terminée, ouvrez le fichier .ini dans un éditeur de texte. Il ressemble à celui indiqué ci-dessous. Le fichier de basic.ini entièrement commenté généré automatiquement spécifie d’effectuer les tâches suivantes :

  • Scénario = 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


Exécuter la configuration

lorsque vous exécutez une installation sans assistance, le processus effectue les mêmes vérifications de validation que l’assistant Configuration, puis configure l’instance de Azure DevOps Server spécifiée sur l’ordinateur.

Vous pouvez exécuter la commande /configure de l’une des deux manières suivantes : La première option recommandée utilise le fichier ini que vous avez créé à l’étape précédente. La deuxième option spécifie un type d’installation à exécuter, puis spécifiez les entrées pour remplacer les valeurs par défaut intelligentes. Chaque option s’exclut mutuellement. Vous ne pouvez pas spécifier à la fois un fichier et un type.

Les deux formes de base de la commande /configure sont les suivantes :

Option 1 :

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

Option 2 :

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

pour plus d’informations sur l’utilisation de la syntaxe de la commande tfsconfig unattend , consultez utiliser tfsconfig pour gérer Azure DevOps local, sans assistance.

Notes

Si vous choisissez d’exécuter la commande /configure sans créer d’abord un fichier de configuration ini pour gérer les entrées, nous vous recommandons d’exécuter /verify avant de procéder à la configuration complète.

une fois l’installation terminée, vous pouvez accéder à la Azure DevOps Server à l’adresse suivante :

http://<localhostname>:8080/tfs

Ou, pour le serveur Express à l’adresse :

http://<localhostname>

Étapes suivantes