Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure DevOps Services
Von Microsoft gehostete Agents sind nur mit in der Cloud gehosteten Azure DevOps Services verfügbar. Sie können von Microsoft gehostete Agents oder den Azure Pipelines-Agentpool nicht mit lokalem Azure DevOps Server verwenden. Bei diesen lokalen Versionen müssen Sie selbstgehostete Agents verwenden.
Wichtig
Wählen Sie die Version dieses Artikels aus, die Ihrer Plattform und Version entspricht. Die Versionsauswahl befindet sich oberhalb des Inhaltsverzeichnisses. Überprüfen Sie die Plattform und Version Ihres Azure DevOps.
Wenn Sich Ihre Pipelines in Azure-Pipelines befinden, können Sie Ihre Aufträge bequem mit einem von Microsoft gehosteten Agent ausführen. Mit von Microsoft gehosteten Agents erfolgen Wartungs- und Upgrades automatisch.
Sie verfügen immer über die neueste Version des VM-Images, das Sie in Ihrer Pipeline angeben. Bei jeder Ausführung einer Pipeline erhalten Sie für jeden Auftrag in der Pipeline einen neuen virtuellen Computer (VM). Die virtuelle Maschine wird nach einem Arbeitsauftrag verworfen. Jede Änderung, die ein Auftrag am Dateisystem des virtuellen Computers vorgibt, z. B. das Auschecken von Code, ist für den nächsten Auftrag nicht verfügbar.
Von Microsoft gehostete Agents können Aufträge direkt auf der VM oder in einem Container ausführen.
Azure Pipelines stellt einen vordefinierten Agentpool namens Azure Pipelines mit von Microsoft gehosteten Agents zur Verfügung.
Für viele Teams ist dieser Prozess die einfachste Möglichkeit, Ihre Aufträge auszuführen. Sie können es zuerst ausprobieren, um zu sehen, ob es für Ihren Build oder Ihre Bereitstellung geeignet ist. Andernfalls können Sie Virtual Machine Scale Sets Agents oder einen eigengehosteten Agent verwenden.
Tipp
Sie können einen von Microsoft gehosteten Agent kostenlos ausprobieren.
Software
Der Azure Pipelines-Agent-Pool bietet mehrere VM-Images mit jeweils einer breiten Palette von Tools und Software zur Auswahl. Sie können die installierte Software für jedes Image anzeigen, indem Sie in der folgenden Tabelle den Link "Enthaltene Software " auswählen. Weitere Informationen zum Softwarelebenszyklus und zum Ausmusterungszeitplan von Software und Bildern finden Sie unter GitHub Actions Runner Images - Software and Image Support.
Sie können die installierte Software für jedes von Windows gehostete Agent-Image anzeigen, indem Sie in der Tabelle den Link "Enthaltene Software " auswählen.
| Bild | Agent-Spezifikation im klassischen Editor | YAML-Bezeichnung des VM-Images | Inbegriffene Software |
|---|---|---|---|
| Windows Server 2025 mit Visual Studio 2022 | Windows-2025 |
windows-latest ODERwindows-2025 |
Verbinden |
| Windows Server 2022 mit Visual Studio 2022 | Windows-2022 | windows-2022 |
Verbinden |
| Windows Server 2019 mit Visual Studio 2019 – siehe Windows Server 2019 Zeitplan für die Einstellung gehosteter Images | Windows-2019 | windows-2019 |
Verbinden |
Das Windows-2019-Image ist das Standardimage für klassische Buildpipelinen. Weitere Informationen finden Sie unter Festlegen eines Pools in Ihrer Pipeline.
Updates für Windows-Images
- [Windows & Ubuntu] .NET 6 wurde am 1. August 2025 aus den Bildern entfernt.
- Windows Server 2019 – Zeitplan für die Einstellung des gehosteten Images
Windows Server 2019 – Zeitplan für die Einstellung des gehosteten Images
Der Windows Server 2019-Image-Außerbetriebnahmeplan
- Startdatum der Außerkraftsetzung: 1. Juni 2025
- Brownout-Zeitraum: 3. Juni 2025 bis 24. Juni 2025
- Geplantes Entfernungsdatum für gehostetes Windows Server 2019-Image: 31. Dezember 2025
Weitere Informationen finden Sie unter bevorstehende Updates für Azure Pipelines Agents Images – Windows
Wichtig
Um Software anzufordern, die den Microsoft-gehosteten Agents hinzugefügt werden soll, erstellen Sie keine Feedbackanfrage zu diesem Dokument oder öffnen Sie ein Supportticket. Öffnen Sie stattdessen ein Issue in unserem Repository, in dem wir die Skripts zum Generieren verschiedener Images verwalten.
Wie man Pipelines identifiziert, die veraltetes gehostetes Image verwenden
Um Pipelines zu bestimmen, die ein veraltetes Image verwenden, navigieren Sie zum folgenden Speicherort in Ihrer Organisation: https://dev.azure.com/{organization}/{project}/_settings/agentqueues. Filtern Sie nach dem Namen des Images, das überprüft werden soll. Im folgenden Beispiel wird das Image vs2017-win2016 überprüft.
Sie können den projektübergreifenden Auftragsverlauf für veraltete Images auch mit dem Skript hier abfragen, wie im folgenden Beispiel gezeigt.
./QueryJobHistoryForRetiredImages.ps1 -accountUrl https://dev.azure.com/{org} -pat {pat}
Verwenden eines von Microsoft gehosteten Agents
Wenn Sie in YAML-Pipelines keinen Pool angeben, wird für Pipelines standardmäßig der Azure Pipelines-Agent-Pool verwendet. Sie müssen lediglich angeben, welches VM-Image Sie verwenden möchten.
jobs:
- job: Linux
pool:
vmImage: 'ubuntu-latest'
steps:
- script: echo hello from Linux
- job: macOS
pool:
vmImage: 'macOS-latest'
steps:
- script: echo hello from macOS
- job: Windows
pool:
vmImage: 'windows-latest'
steps:
- script: echo hello from Windows
Hinweis
Die Angabe eines Pools kann auf mehreren Ebenen in einer YAML-Datei erfolgen. Wenn Sie feststellen, dass Ihre Pipeline nicht auf dem erwarteten Image ausgeführt wird, stellen Sie sicher, dass Sie die Poolspezifikation auf der Pipeline-, Phasen- und Auftragsebene überprüfen.
Vermeiden Sie hartcodierte Verweise
Wenn Sie einen von Microsoft gehosteten Agent verwenden, verweisen Sie stets mithilfe von Variablen auf die Buildumgebung und Agent-Ressourcen. Vermeiden Sie das Hartcodieren des Laufwerksbuchstabens oder des Ordners mit dem Repository. Das genaue Layout der gehosteten Agents kann ohne Warnung geändert werden.
Gerätetechnik
Von Microsoft gehostete Agents, die Windows- und Linux-Images ausführen, werden auf universellen Azure-VMs mit einer CPU mit 2 Kernen, 7 GB RAM und 14 GB Speicherplatz auf SSD-Datenträgern bereitgestellt. Diese virtuellen Computer werden in derselben Geografie wie Ihre Azure DevOps-Organisation verortet.
Agents, die macOS-Images ausführen, werden auf Mac Pros mit einer CPU mit 3 Kernen, 14 GB RAM und 14 GB Speicherplatz auf SSD-Datenträgern bereitgestellt. Diese Agents werden stets in den USA unabhängig vom Standort Ihrer Azure DevOps-Organisation ausgeführt. Wenn Ihnen die Datenhoheit wichtig ist und Ihre Organisation nicht in den USA enthalten ist, sollten Sie macOS-Bilder nicht verwenden. Weitere Informationen
Für alle diese Computer steht mindestens 10 GB freier Speicherplatz für die Ausführung Ihrer Pipelines zur Verfügung. Dieser freie Speicherplatz wird beansprucht, wenn Ihre Pipeline Quellcode auscheckt, Pakete herunterlädt, Docker-Images abruft oder Zwischendateien generiert.
Wichtig
Anforderungen zur Erhöhung des Speicherplatzes auf von Microsoft gehosteten Agents oder zur Bereitstellung leistungsstärkerer Computer können nicht berücksichtigt werden. Wenn die Spezifikationen der von Microsoft gehosteten Agents nicht Ihren Anforderungen entsprechen, sollten Sie selbstgehostete Agents oder Skalierungsgruppen-Agents oder verwaltete DevOps-Pools in Betracht ziehen.
Netzwerk
Bei einigen Einrichtungen müssen Sie möglicherweise den Bereich der IP-Adressen kennen, in dem Agents bereitgestellt werden. Wenn Sie z. B. den gehosteten Agents Zugriff durch eine Firewall gewähren müssen, können Sie diesen Zugriff nach IP-Adresse einschränken. Da Azure DevOps das globale Azure-Netzwerk nutzt, variieren IP-Adressbereiche im Laufe der Zeit. Microsoft veröffentlicht wöchentlich eine JSON-Datei mit nach Region aufgeschlüsselten IP-Adressbereichen für Azure-Rechenzentren. Diese Datei wird wöchentlich mit neuen geplanten IP-Adressbereichen aktualisiert. Nur die neueste Version der Datei ist zum Download verfügbar. Wenn Sie frühere Versionen benötigen, müssen Sie sie jede Woche herunterladen und archivieren, sobald sie verfügbar sind. Die neuen IP-Adressbereiche werden in der folgenden Woche aktiv. Wir empfehlen Ihnen, die Liste regelmäßig zu überprüfen (mindestens einmal pro Woche), um sicherzustellen, dass sie stets auf dem neuesten Stand ist. Wenn Agent-Aufträge fehlschlagen, besteht ein erster Schritt zur Problembehandlung darin sicherzustellen, dass Ihre Konfiguration mit der aktuellen Liste der IP-Adressen übereinstimmt. Die IP-Adressbereiche für die gehosteten Agents sind in der wöchentlichen Datei unter AzureCloud.<region> aufgeführt, z. B. AzureCloud.westus für die Region USA, Westen.
Ihre gehosteten Agents laufen in derselben Azure-Geografie wie Ihre Organisation. Jeder geografische Raum umfasst eine oder mehrere Regionen. Während Ihr Agent möglicherweise in derselben Region wie Ihre Organisation ausgeführt wird, ist dies nicht garantiert. Um die vollständige Liste der möglichen IP-Adressbereiche für Ihren Agent abzurufen, müssen Sie die IP-Adressbereiche aus allen Regionen in Ihrem geografischen Raum verwenden. Wenn sich Ihre Organisation beispielsweise im geografischen Raum USA befindet, müssen Sie die IP-Adressbereiche für alle Regionen in diesem geografischen Raum verwenden.
Um Ihre Geografie zu bestimmen, navigieren Sie zu https://dev.azure.com/<your_organization>/_settings/organizationOverview, finden Sie Ihre Region und suchen Sie dann den zugehörigen geografischen Raum in der Azure-Geografietabelle. Nachdem Sie Ihren geografischen Raum identifiziert haben, verwenden Sie die IP-Adressbereiche in der wöchentlichen Datei für alle Regionen in diesem geografischen Raum.
Wichtig
Sie können keine privaten Verbindungen wie ExpressRoute oder VPN verwenden, um von Microsoft gehostete Agents mit Ihrem Unternehmensnetzwerk zu verbinden. Der Datenverkehr zwischen von Microsoft gehosteten Agents und Ihren Servern erfolgt über ein öffentliches Netzwerk.
So bestimmen Sie die möglichen IP-Adressbereiche für von Microsoft gehostete Agents
- Bestimmen Sie in den Organisationseinstellungen die Region Ihrer Organisation.
- Bestimmen Sie die Azure-Geografie für die Region Ihrer Organisation.
- Ordnen Sie die Namen der Regionen in Ihrem geografischen Raum dem Format der wöchentlichen Datei zu. Folgen Sie dabei dem Format von
AzureCloud.<region>, wie z. B.AzureCloud.westus. Sie können die Namen der Regionen aus der Liste Azure Geography dem Format der wöchentlichen Datei zuordnen, indem Sie die Regionsnamen überprüfen, die im Quellcode für die Region-Klasse definiert sind und aus den Azure Management Libraries für .NET an den Konstruktor der Regionen übergeben werden.Hinweis
Da es in den Azure-Verwaltungsbibliotheken für .NET keine API zum Auflisten der Regionen eines geografischen Raums gibt, müssen Sie sie, wie im folgenden Beispiel gezeigt, manuell auflisten.
- Rufen Sie die IP-Adressen für alle Regionen in Ihrem geografischen Raum aus der wöchentlichen Datei ab. Wenn Ihre Region Brasilien, Süden oder Europa, Westen ist, müssen Sie zusätzliche IP-Adressbereiche basierend auf Ihrer Fallbackgeografie einschließen, wie im folgenden Hinweis beschrieben.
Hinweis
Aufgrund von Kapazitätsbeschränkungen kann es bei einigen Organisationen in den Regionen Brasilien, Süden oder Europa, Westen vorkommen, dass sich die gehosteten Agents außerhalb des erwarteten Standorts befinden. In diesen Fällen müssen zusätzlich zu den IP-Adressbereichen für alle Regionen in Ihrem geografischen Raum, wie im vorigen Abschnitt beschrieben, weitere IP-Adressbereiche für die Regionen im geografischen Raum mit Fallbackkapazität aufgenommen werden.
Wenn sich Ihre Organisation in der Region Brasilien Süd befindet, sind die Vereinigten Staaten Ihr geografisches Fallbackgebiet.
Wenn sich Ihre Organisation in der Region Westeuropa befindet, ist Frankreich Ihre Ersatzkapazitätsregion.
Unsere Mac-IP-Bereiche sind nicht in den oben aufgeführten Azure-IPs enthalten, da sie in der macOS-Cloud von GitHub gehostet werden. IP-Adressbereiche können mithilfe der GitHub-Metadaten-API anhand der hier angegebenen Anweisungen abgerufen werden.
Beispiel
Im folgenden Beispiel werden die IP-Adressbereiche des gehosteten Agents für eine Organisation in der Region „USA, Westen“ aus der wöchentlichen Datei abgerufen. Da sich die Region „USA, Westen“ im geografischen Raum „USA“ befindet, sind die IP-Adressen für alle Regionen darin enthalten. In diesem Beispiel werden die IP-Adressen in die Konsole geschrieben.
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
namespace WeeklyFileIPRanges
{
class Program
{
// Path to the locally saved weekly file
const string weeklyFilePath = @"C:\MyPath\ServiceTags_Public_20230904.json";
static void Main(string[] args)
{
// United States geography has the following regions:
// Central US, East US, East US 2, East US 3, North Central US,
// South Central US, West Central US, West US, West US 2, West US 3
// This list is accurate as of 9/8/2023
List<string> USGeographyRegions = new List<string>
{
"centralus",
"eastus",
"eastus2",
"eastus3",
"northcentralus",
"southcentralus",
"westcentralus",
"westus",
"westus2",
"westus3"
};
// Load the weekly file
JObject weeklyFile = JObject.Parse(File.ReadAllText(weeklyFilePath));
JArray values = (JArray)weeklyFile["values"];
foreach (string region in USGeographyRegions)
{
string tag = $"AzureCloud.{region}";
Console.WriteLine(tag);
var ipList =
from v in values
where tag.Equals((string)v["name"], StringComparison.OrdinalIgnoreCase)
select v["properties"]["addressPrefixes"];
foreach (var ip in ipList.Children())
{
Console.WriteLine(ip);
}
}
}
}
}
Diensttags
Von Microsoft gehostete Agents können nicht anhand von Diensttags aufgelistet werden. Wenn Sie versuchen, gehosteten Agents Zugriff auf Ihre Ressourcen zu gewähren, müssen Sie die IP-Bereichsfreigabeliste verwenden.
Sicherheit
Von Microsoft gehostete Agents werden auf der sicheren Azure-Plattform ausgeführt. Sie müssen allerdings die folgenden Sicherheitsaspekte beachten.
- Obwohl von Microsoft gehostete Agents im öffentlichen Azure-Netzwerk ausgeführt werden, werden ihnen keine öffentlichen IP-Adressen zugewiesen. Externe Entitäten können also nicht auf von Microsoft gehostete Agents abzielen.
- Von Microsoft gehostete Agents werden in einzelnen virtuellen Computern ausgeführt, die nach jeder Ausführung neu in imageiert werden. Jeder Agent ist für eine einzelne Organisation reserviert, und jede VM hostet nur einen Agent.
- Aus Sicht der Sicherheit bietet die Ausführung Ihrer Pipeline auf von Microsoft gehosteten Agenten mehrere Vorteile. Wenn Sie nicht vertrauenswürdigen Code in Ihrer Pipeline ausführen, z. B. Beiträge von Forks, ist es sicherer, die Pipeline auf von Microsoft gehosteten Agents auszuführen als auf selbstgehosteten Agents in Ihrem Unternehmensnetzwerk.
- Wenn eine Pipeline hinter einer Firewall auf Ihre Unternehmensressourcen zugreifen muss, müssen Sie den IP-Adressbereich für den geografischen Azure-Raum zulassen. Da der IP-Adressbereich ziemlich groß ist und die Computer in diesem Bereich auch anderen Kunden gehören können, kann dies zu einem erhöhten Risiko führen. Die beste Möglichkeit, dies zu verhindern, besteht darin, den Zugriff auf interne Ressourcen zu unterbinden. Informationen zum Bereitstellen von Artefakten auf einer Gruppe von Servern finden Sie in der Kommunikation zur Bereitstellung auf Zielservern.
- Gehostete Images entsprechen nicht den CIS-Benchmarks für Härtung. Um gehärtete CIS-Images verwenden zu können, müssen Sie entweder selbstgehostete Agents, Skalierungsgruppen-Agents oder verwaltete DevOps-Pools erstellen.
Funktionen und Einschränkungen
Von Microsoft gehostete Agents:
- Verfügen über die oben genannte Software. Sie können Software auch während des Build- oder Releasevorgangs mithilfe von Aufgaben im Toolinstallationsprogramm hinzufügen.
- Sie erhalten für jeden Auftrag in Ihrer Pipeline einen Agent mit neu erstelltem Image.
- Stellen für Ihre Quell- und Buildausgaben 10 GB Speicherplatz bereit.
- Bieten einen Free-Tarif:
- Öffentliches Projekt: 10 kostenlose von Microsoft gehostete Parallelaufträge, die jeweils bis zu 360 Minuten (6 Stunden) ohne allgemeine zeitliche Begrenzung pro Monat ausgeführt werden können. Wenden Sie sich an uns, wenn Sie Ihre Grenzwerte über den Free-Tarif hinaus erhöhen möchten.
- Privates Projekt: Ein kostenloser Parallelauftrag, der pro Monat jedes Mal bis zu 60 Minuten ausgeführt werden kann, bis 1.800 Minuten (30 Stunden) ausgeschöpft sind. Sie können zusätzliche Kapazitäten pro Parallelauftrag erwerben. Erworbene Parallelaufträge entfernen das monatliche Zeitlimit und ermöglichen es Ihnen, jeden Auftrag für bis zu 360 Minuten (6 Stunden) auszuführen. Von Microsoft gehostete Parallelaufträge kaufen.
- Wenn Sie eine neue Azure DevOps-Organisation erstellen, erhalten Sie diese kostenlosen Zuschüsse standardmäßig nicht. Um die kostenlose Zuweisung für öffentliche oder private Projekte zu beantragen, senden Sie eine Anfrage.
- Werden in Microsoft Azure auf universellen VMs des Typs Standard_DS2_v2 ausgeführt.
- Werden unter Windows als Administrator und unter Linux als Sudo-Benutzer ohne Kennwort ausgeführt.
- (Nur Linux) Führen Schritte in einer
cgroupaus, die 6 GB physischen Arbeitsspeicher und 13 GB Arbeitsspeicher insgesamt bietet. - Verwenden Sie VM-Images, die regelmäßig aktualisiert werden (alle drei Wochen).
Von Microsoft gehostete Agents bieten Folgendes nicht:
- Die Möglichkeit, eine Remoteverbindung herzustellen.
- Die Möglichkeit, Artefakte auf einer UNC-Dateifreigabe abzulegen.
- Die Möglichkeit, Computer direkt in Ihr Unternehmensnetzwerk einzubinden.
- Die Möglichkeit, größere oder leistungsfähigere Baucomputer zu erhalten.
- Die Möglichkeit, benutzerdefinierte Software vorab zu laden. Sie können Software während einer Pipelineausführung installieren, z. B. über Aufgaben im Toolinstallationsprogramm oder ein Skript.
- Potenzielle Leistungsvorteile, die Sie ggf. durch selbstgehostete Agents erhalten, die Builds möglicherweise schneller starten und ausführen. Weitere Informationen
- Die Möglichkeit, XAML-Builds auszuführen.
- Die Möglichkeit, ein Rollback auf eine vorherige VM-Imageversion auszuführen. Sie verwenden immer die neueste Version.
Wenn von Microsoft gehostete Agents Ihre Anforderungen nicht erfüllen, können Sie eigene selbstgehostete Agents bereitstellen oder Skalierungsgruppen-Agents oder verwaltete DevOps-Pools verwenden.
Häufig gestellte Fragen
Wie kann ich erkennen, welche Software in einem Image enthalten ist?
Sie können die installierte Software für jeden gehosteten Agent anzeigen, indem Sie in der Tabelle Software auf den Link Inbegriffene Software klicken.
Hinweis
Standardmäßig verwendet der Windows-Agent die Git-Version im Lieferumfang der Agent-Software. Microsoft empfiehlt, die im Lieferumfang des Agents enthaltene Git-Version zu verwenden. Sie haben jedoch verschiedene Möglichkeiten, dieses Standardverhalten außer Kraft zu setzen und die Git-Version zu verwenden, die im Pfad auf dem Agentcomputer installiert ist.
- Legen Sie eine Pipelinevariable mit dem Namen
System.PreferGitFromPathin Ihren Pipelines auftruefest. - Auf selbstgehosteten Agents können Sie eine ENV-Datei im Stammverzeichnis des Agents erstellen und der Datei die Zeile
System.PreferGitFromPath=truehinzufügen. Weitere Informationen finden Sie unter Wie lege ich verschiedene Umgebungsvariablen für jeden einzelnen Agent fest?.
Um die von einer Pipeline verwendete Git-Version zu ermitteln, können Sie sich die Protokolle für einen checkout-Schritt in Ihrer Pipeline ansehen, wie im folgenden Beispiel gezeigt.
Syncing repository: PathFilter (Git)
Prepending Path environment variable with directory containing 'git.exe'.
git version
git version 2.26.2.windows.1
Wie wählt Microsoft die Software und Versionen aus, die dem Image hinzugefügt werden sollen?
Weitere Informationen zu den in den Images enthaltenen Softwareversionen finden Sie unter Leitlinien zum Installationsumfang.
Wann werden die Images aktualisiert?
Images werden in der Regel wöchentlich aktualisiert. Sie können die Statusbadges überprüfen, die im Format 20200113.x vorliegen, bei dem der erste Teil das Datum angibt, an dem das Image aktualisiert wurde.
Was kann ich tun, wenn von mir benötigte Software entfernt oder durch eine neuere Version ersetzt wird?
Sie können uns dies mitteilen, indem Sie ein GitHub-Issue einreichen. Wählen Sie dazu in der Tabelle Verwenden eines von Microsoft gehosteten Agents die Links Inbegriffene Software aus.
Sie können auch einen selbstgehosteten Agent verwenden, der exakt die benötigten Softwareversionen enthält. Weitere Informationen finden Sie unter Selbstgehostete Agenten.
Was geschieht, wenn ich einen größeren Computer mit mehr Verarbeitungsleistung, Arbeitsspeicher oder Speicherplatz benötige?
Wir können den Arbeitsspeicher, die Verarbeitungsleistung oder den Speicherplatz für von Microsoft gehostete Agents nicht erhöhen. Sie können aber selbstgehostete Agents oder Skalierungsgruppen-Agents oder verwaltete DevOps-Pools verwenden, die auf Computern mit Ihren gewünschten Spezifikationen gehostet werden.
Ich kann einen von Microsoft gehosteten Agenten nicht auswählen und deshalb meinen Build bzw. meine Bereitstellung nicht in eine Warteschleife stellen. Wie sollte ich vorgehen?
Von Microsoft gehostete Agents sind nur in Azure-Pipelines und nicht in Azure DevOps Server verfügbar.
Standardmäßig haben alle Mitwirkenden an einem Projekt in einer Organisation Zugriff auf die von Microsoft gehosteten Agents. Ihr Organisationsadministrator kann jedoch den Zugriff von Microsoft gehosteter Agents auf ausgewählte Benutzer oder Projekte begrenzen. Bitten Sie den Besitzer Ihrer Azure DevOps-Organisation, Ihnen die Berechtigung zur Nutzung eines von Microsoft gehosteten Agents zu erteilen. Weitere Informationen finden Sie unter Sicherheit des Agent-Pools.
Meine Pipelines, die auf von Microsoft gehosteten Agents ausgeführt werden, benötigen mehr Zeit zur Fertigstellung. Wie kann ich sie beschleunigen?
Wenn Ihre Pipeline in letzter Zeit langsamer geworden ist, suchen Sie auf der Statusseite nach Ausfällen. Möglicherweise haben wir Probleme mit unserem Dienst. Oder überprüfen Sie alle Änderungen, die Sie im Anwendungscode oder in der Pipeline vorgenommen haben. Während des Auscheckens könnte Ihr Repository größer geworden sein, vielleicht laden Sie größere Artefakte hoch, oder Sie führen eventuell mehr Tests durch.
Wenn Sie nur eine Pipeline einrichten und die Leistung der von Microsoft gehosteten Agents mit Ihrem lokalen Computer oder einem selbstgehosteten Agent vergleichen, beachten Sie die Spezifikationen der Hardware, die wir zum Ausführen Ihrer Aufträge verwenden. Wir sind nicht in der Lage, Ihnen größere oder leistungsfähige Computer zur Verfügung zu stellen. Sie können die Verwendung von selbst gehosteten Agents oder Skalierungsgruppen-Agents oder verwalteten DevOps-Pools in Betracht ziehen, wenn diese Leistung nicht akzeptabel ist.
Ich benötige mehr Agents. Was kann ich tun?
Alle Azure DevOps-Organisationen erhalten für Open-Source-Projekte mehrere kostenlose Parallelaufträge sowie einen kostenlosen Parallelauftrag und monatlich eine begrenzte Anzahl von Minuten für private Projekte. Wenn Sie für Ihr Open-Source-Projekt zusätzliche Minuten oder Parallelaufträge benötigen, wenden Sie sich an den Support. Wenn Sie für Ihr privates Projekt zusätzliche Minuten oder Parallelaufträge benötigen, können Sie weitere kaufen.
Meine Pipeline funktioniert mit selbstgehosteten Agents, schlägt aber bei von Microsoft gehosteten Agents fehl. Wie sollte ich vorgehen?
Ihr selbst gehosteter Agent hat wahrscheinlich alle richtigen Abhängigkeiten installiert, während die gleichen Abhängigkeiten, Tools und Software nicht auf von Microsoft gehosteten Agents installiert sind. Überprüfen Sie zunächst sorgfältig die Liste der Software, die auf von Microsoft gehosteten Agents installiert ist, indem Sie dem Link Inbegriffene Software in der obigen Tabelle folgen. Vergleichen Sie diese dann mit der auf Ihrem selbstgehosteten Agent installierten Software. In einigen Fällen verfügen von Microsoft gehostete Agents möglicherweise über die Tools, die Sie benötigen (z. B. Visual Studio), aber möglicherweise wurden nicht alle erforderlichen optionalen Komponenten installiert. Wenn Sie Unterschiede feststellen, haben Sie zwei Möglichkeiten:
Sie können ein neues Issue im Repository erstellen, in dem wir Anfragen für zusätzliche Software nachverfolgen. Sich an den Support zu wenden, hilft Ihnen nicht, neue Software auf von Microsoft gehosteten Agents einzurichten.
Sie können selbst gehostete Agents oder Skalierungsgruppen-Agents oder verwaltete DevOps-Pools verwenden. Bei diesen Agents haben Sie die vollständige Kontrolle über die Images zum Ausführen Ihrer Pipelines.
Mein Build ist auf meinem lokalen Computer erfolgreich, schlägt jedoch auf von Microsoft gehosteten Agents fehl. Wie sollte ich vorgehen?
Auf Ihrem lokalen Computer sind wahrscheinlich alle richtigen Abhängigkeiten installiert, während die gleichen Abhängigkeiten, Tools und Software nicht auf von Microsoft gehosteten Agents installiert sind. Überprüfen Sie zunächst sorgfältig die Liste der Software, die auf von Microsoft gehosteten Agents installiert ist, indem Sie dem Link Inbegriffene Software in der obigen Tabelle folgen. Vergleichen Sie diese dann mit der auf Ihrem lokalen Computer installierten Software. In einigen Fällen verfügen von Microsoft gehostete Agents möglicherweise über die Tools, die Sie benötigen (z. B. Visual Studio), aber ggf. wurden nicht alle erforderlichen optionalen Komponenten installiert. Wenn Sie Unterschiede feststellen, haben Sie zwei Möglichkeiten:
Sie können ein neues Issue im Repository erstellen, in dem wir Anfragen für zusätzliche Software nachverfolgen. Dies ist der beste Weg, neue Software zu installieren. Die Kontaktaufnahme mit dem Support hilft Ihnen nicht bei der Einrichtung neuer Software auf von Microsoft gehosteten Agents.
Sie können selbst gehostete Agents oder Skalierungsgruppen-Agents oder verwaltete DevOps-Pools verwenden. Bei diesen Agents haben Sie die vollständige Kontrolle über die Images zum Ausführen Ihrer Pipelines.
Meine Pipeline schlägt mit der folgenden Fehlermeldung fehl: Kein Speicherplatz mehr auf dem Gerät.
Von Microsoft gehostete Agents haben nur 10 GB Speicherplatz auf dem Datenträger für die Ausführung Ihres Auftrags zur Verfügung. Dieser Speicherplatz wird genutzt, wenn Sie Quellcode auschecken, Pakete oder Docker-Images herunterladen oder Zwischendateien generieren. Leider können wir den freien Speicherplatz, der auf von Microsoft gehosteten Bildern verfügbar ist, nicht erhöhen. Sie können Ihre Pipeline so umstrukturieren, dass sie in diesen Platz passt. Oder Sie können selbstgehostete Agents, Skalierungsgruppen-Agents oder verwaltete DevOps-Pools verwenden.
Meine auf von Microsoft gehosteten Agents ausgeführte Pipeline benötigt Zugriff auf Server in unserem Unternehmensnetzwerk. Wie erhalten wir eine Liste der IP-Adressen, die in unserer Firewall zugelassen werden sollen?
Siehe den Abschnitt Agent IP ranges.
Unsere auf von Microsoft gehosteten Agents ausgeführte Pipeline kann den Namen eines Servers in unserem Unternehmensnetzwerk nicht auflösen. Wie kann dieses Problem behoben werden?
Wenn Sie auf den Server über dessen DNS-Namen verweisen, stellen Sie sicher, dass Ihr Server im Internet über seinen DNS-Namen öffentlich zugänglich ist. Wenn Sie auf Ihren Server über dessen IP-Adresse verweisen, stellen Sie sicher, dass die IP-Adresse im Internet öffentlich zugänglich ist. Stellen Sie in beiden Fällen sicher, dass alle Firewalls zwischen den Agents und Ihrem Unternehmensnetzwerk die IP-Adressbereiche der Agents zulassen.
Ich erhalte einen SAS-IP-Autorisierungsfehler bei einem Azure-Speicherkonto
Wenn Sie einen SAS-Fehlercode erhalten, liegt dies höchstwahrscheinlich daran, dass die IP-Adressbereiche der von Microsoft gehosteten Agents aufgrund Ihrer Azure Storage-Regeln nicht zulässig sind. Es gibt verschiedene Problemumgehungen:
- Ändern Sie die IP-Netzwerkregeln für Ihr Azure Storage-Konto, indem Sie die IP-Adressbereiche Ihrer gehosteten Agents hinzufügen.
- Verwenden Sie in Ihrer Pipeline die Azure CLI zum Aktualisieren des Netzwerkregelsatzes für Ihr Azure Storage-Konto, ehe Sie auf Speicher zugreifen, und stellen Sie anschließend den vorherigen Regelsatz wieder her.
- Verwenden Sie selbst gehostete Agents oder Scale-Set-Agents oder Verwaltete DevOps-Pools.
Wie kann ich Versionen von Tools im gehosteten macOS-Agent manuell auswählen?
Xcode
Wenn Sie die Xcode-Aufgabe verwenden, die in Azure Pipelines und Azure DevOps Server enthalten ist, können Sie eine Xcode-Version in den Eigenschaften dieser Aufgabe auswählen. Andernfalls können Sie die Xcode-Version, die im gehosteten macOS-Agent-Pool verwendet werden soll, ehe Ihre xcodebuild-Buildaufgabe ausgeführt wird, manuell festlegen. Führen Sie diese Befehlszeile als Teil Ihres Builds aus, und ersetzen Sie dabei nach Bedarf die Xcode-Versionsnummer 13.2:
/bin/bash -c "sudo xcode-select -s /Applications/Xcode_13.2.app/Contents/Developer"
Xcode-Versionen im gehosteten macOS -Agentenpool finden Sie hier.
Mono
Um manuell eine Mono-Version zur Verwendung im igehosteten macOS-Agent-Pool auszuwählen, führen Sie dieses Skript in jedem Job Ihres Builds vor Ihrer Mono-Build-Aufgabe aus und geben Sie den symbolischen Link mit der erforderlichen Mono-Version an:
SYMLINK=<symlink>
MONOPREFIX=/Library/Frameworks/Mono.framework/Versions/$SYMLINK
echo "##vso[task.setvariable variable=DYLD_FALLBACK_LIBRARY_PATH;]$MONOPREFIX/lib:/lib:/usr/lib:$DYLD_LIBRARY_FALLBACK_PATH"
echo "##vso[task.setvariable variable=PKG_CONFIG_PATH;]$MONOPREFIX/lib/pkgconfig:$MONOPREFIX/share/pkgconfig:$PKG_CONFIG_PATH"
echo "##vso[task.setvariable variable=PATH;]$MONOPREFIX/bin:$PATH"