Megosztás a következőn keresztül:


Microsoft által üzemeltetett ügynökök

Azure DevOps Services

A Microsoft által üzemeltetett ügynökök csak a felhőben üzemeltetett Azure DevOps Servicesben érhetők el. Nem használhatja a Microsoft által üzemeltetett ügynököket vagy az Azure Pipelines-ügynökkészletet helyszíni TFS-sel vagy Azure DevOps Serverrel. Ezekkel a helyszíni verziókkal saját üzemeltetésű ügynököket kell használnia.

Fontos

Válasszon ki egy verziót az Azure DevOps Content Version választóból.

Válassza ki a cikk platformjának és verziójának megfelelő verzióját. A verzióválasztó a tartalomjegyzék felett található. Keresse meg az Azure DevOps-platformot és -verziót.

Ha a folyamatok az Azure Pipelinesban találhatók, akkor kényelmesen futtathatja a feladatokat egy Microsoft által üzemeltetett ügynökkel. A Microsoft által üzemeltetett ügynökök használatakor nem kell foglalkozunk a karbantartással és a frissítésekkel. Mindig a folyamat által megadott virtuálisgép-rendszerkép legújabb verzióját kapja meg. A folyamatok minden futtatásakor új virtuális gépet kapunk a folyamat minden egyes feladatához. A virtuális gép egy feladat után el lesz vetve (ami azt jelenti, hogy a feladat által a virtuálisgép-fájlrendszerben végzett minden módosítás, például a kód kivétele, nem lesz elérhető a következő feladathoz). A Microsoft által üzemeltetett ügynökök közvetlenül a virtuális gépen vagy egy tárolóban futtathatnak feladatokat.

Az Azure Pipelines egy előre meghatározott, Azure Pipelines nevű ügynökkészletet biztosít a Microsoft által üzemeltetett ügynökökkel.

Sok csapat számára ez a legegyszerűbb módja a feladatok futtatásának. Először kipróbálhatja, és ellenőrizheti, hogy működik-e a buildhez vagy az üzembe helyezéshez. Ha nem, használhat méretezési csoportügynököket vagy egy saját üzemeltetésű ügynököt.

Tipp.

Ingyenesen kipróbálhat egy Microsoft által üzemeltetett ügynököt.

Szoftver

Az Azure Pipelines-ügynökkészlet számos virtuálisgép-rendszerkép közül választhat, köztük eszközök és szoftverek széles skáláját.

Kép Klasszikus szerkesztőügynök specifikációja YAML virtuális gép képfelirata Belefoglalt szoftverek
Windows Server 2022 és Visual Studio 2022 windows-2022 windows-latest VAGY windows-2022 Láncszem
Windows Server 2019 és Visual Studio 2019 windows-2019 windows-2019 Láncszem
Ubuntu 22.04 ubuntu-22.04 ubuntu-latest VAGY ubuntu-22.04 Láncszem
Ubuntu 20.04 ubuntu-20.04 ubuntu-20.04 Láncszem
macOS 14 Sonoma (előzetes verzió) macOS-14 macOS-14 Láncszem
macOS 13 Ventura macOS-13 macOS-13 Láncszem
macOS 12 Monterey macOS-12 macOS-latest VAGY macOS-12 Láncszem
macOS 11 Big Sur (elavult) macOS-11 macOS-11 elavult

A klasszikus buildelési folyamatok alapértelmezett ügynökképe a Windows-2019, a YAML buildelési folyamatainak alapértelmezett ügynökképe pedig a ubuntu-latest. További információ: Készlet kijelölése a folyamatban.

Az egyes üzemeltetett ügynökök telepített szoftvereit a táblázatban található Mellékelt szoftverek hivatkozásra kattintva tekintheti meg. MacOS-rendszerképek használatakor manuálisan választhat az eszközverziók közül. További információ.

Legutóbbi frissítések

Javasoljuk, hogy az ügyfeleket újabb verziókba vagy saját üzemeltetésű ügynökbe migrálják.

A rendszerképeket használó folyamatok frissítéséről további információt és útmutatást a régebbi rendszerképek eltávolítása az Azure Pipelines által üzemeltetett készletekben című témakörben talál.

Feljegyzés

A macOS-kapacitás jelenleg korlátozott. A Linux és a Windows rendszerképekkel ellentétben, ahol a kapacitásunkat az Azure teljes kapacitása korlátozza, a macOS-kapacitást a rendelkezésünkre álló hardver mennyisége korlátozza. Bár 2024 tavaszán további kapacitást szeretnénk elérhetővé tenni, előfordulhat, hogy egyes feladatok végrehajtása késni fog. Ahol csak lehetséges – például olyan feladatok esetén, amelyek nem Apple-ökoszisztémabeli alkalmazásokat hoznak létre – az ügyfélnek a Linux- vagy Windows-rendszerképeket kell választania.

Feljegyzés

Az Azure Pipelines által üzemeltetett készlet lecseréli azokat a korábbi üzemeltetett készleteket, amelyek nevei a megfelelő rendszerképekhez lettek leképezve. Az előző üzemeltetett készletekben végzett feladatok automatikusan a megfelelő rendszerképre kerülnek az új Azure Pipelines által üzemeltetett készletben. Bizonyos esetekben előfordulhat, hogy továbbra is megjelennek a régi készletnevek, de a háttérben az üzemeltetett feladatok az Azure Pipelines-készlet használatával futnak. A frissítésről további információt a 2019. július 1- Sprint 154 kibocsátási megjegyzésekben talál.

Fontos

Ha további szoftvereket szeretne telepíteni a Microsoft által üzemeltetett ügynökökre, ne hozzon létre visszajelzési kérést ezen a dokumentumon, és ne nyisson meg támogatási jegyet. Ehelyett nyisson meg egy problémát az adattárunkban, ahol a szkripteket különböző rendszerképek létrehozásához kezeljük.

Folyamatok azonosítása elavult üzemeltetett rendszerkép használatával

Az elavult rendszerképet használó folyamatok azonosításához keresse meg a szervezet következő helyét: https://dev.azure.com/{organization}/{project}/_settings/agentqueues, és szűrjön a kép nevére az ellenőrzéshez. Az alábbi példa ellenőrzi a vs2017-win2016 képet.

Képernyőkép a folyamatok képnév szerinti szűréséről.

A projektekben elavult képek feladatelőzményeit is lekérdezheti az itt található szkripttel, ahogyan az az alábbi példában látható.

./QueryJobHistoryForRetiredImages.ps1 -accountUrl https://dev.azure.com/{org} -pat {pat}

Microsoft által üzemeltetett ügynök használata

A YAML-folyamatokban, ha nem ad meg készletet, a folyamatok alapértelmezés szerint az Azure Pipelines-ügynökkészletre lesznek beállítva. Egyszerűen meg kell adnia, hogy melyik virtuálisgép-rendszerképet szeretné használni.

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

Feljegyzés

A készlet specifikációja több szinten is elvégezhető egy YAML-fájlban. Ha azt tapasztalja, hogy a folyamat nem a várt lemezképen fut, ellenőrizze a készlet specifikációját a folyamat, a fázis és a feladat szintjén.

A szigorúan kódolt hivatkozások elkerülése

Ha Microsoft által üzemeltetett ügynököt használ, mindig változókkal hivatkozzon a buildkörnyezetre és az ügynökerőforrásokra. Ne kódozza például az adattárat tartalmazó meghajtóbetűjelet vagy mappát. Az üzemeltetett ügynökök pontos elrendezése figyelmeztetés nélkül változhat.

Hardver

A Windows- és Linux-rendszerképeket futtató Microsoft által üzemeltetett ügynököket általános célú Azure-beli virtuális gépeken vannak üzembe helyezve 2 magos CPU-val, 7 GB RAM-mal és 14 GB SSD-lemezterülettel. Ezek a virtuális gépek ugyanazon földrajzi helyen találhatók, mint az Azure DevOps-szervezet.

A macOS-lemezképeket futtató ügynökök 3 magos CPU-val, 14 GB RAM-mal és 14 GB SSD-lemezterülettel rendelkező Mac-profikon vannak kiépítve. Ezek az ügynökök mindig az USA-ban futnak, függetlenül az Azure DevOps-szervezet helyétől. Ha az adatok szuverenitása fontos Önnek, és ha szervezete nem az USA-ban található, akkor ne használjon macOS-lemezképeket. További információ.

Ezek a gépek legalább 10 GB szabad lemezterülettel rendelkeznek a folyamatok futtatásához. Ezt a szabad területet akkor használja fel a rendszer, ha a folyamat forráskódot kérdez le, csomagokat tölt le, lekéri a Docker-rendszerképeket, vagy köztes fájlokat hoz létre.

Fontos

Nem tudjuk tiszteletben tartani a Microsoft által üzemeltetett ügynökök lemezterületének növelésére vagy nagyobb teljesítményű gépek kiépítésére vonatkozó kéréseket. Ha a Microsoft által üzemeltetett ügynökök specifikációi nem felelnek meg az igényeinek, érdemes megfontolnia a saját üzemeltetésű ügynökök vagy a méretezési csoport ügynökeinek használatát.

Hálózat

Egyes konfigurációk esetén előfordulhat, hogy ismernie kell azoknak az IP-címeknek a tartományát, ahol az ügynökök üzembe vannak helyezve. Ha például tűzfalon keresztül kell hozzáférést biztosítania a üzemeltetett ügynököknek, célszerű lehet IP-cím alapján korlátozni a hozzáférést. Mivel az Azure DevOps az Azure globális hálózatát használja, az IP-tartományok idővel változnak. A Microsoft közzétesz egy heti JSON-fájlt , amely az Azure-adatközpontok IP-tartományait tartalmazza régiónként lebontva. Ez a fájl hetente frissül új tervezett IP-címtartományokkal. Csak a fájl legújabb verziója tölthető le. Ha korábbi verziókra van szüksége, minden héten le kell töltenie és archiválnia kell őket, amint elérhetővé válnak. Az új IP-tartományok a következő héten lépnek életbe. Javasoljuk, hogy rendszeresen (hetente legalább egyszer) ellenőrizze, hogy a listája mindig naprakész legyen. Ha az ügynökfeladatok elkezdenek meghiúsulni, a legfontosabb hibaelhárítási lépés annak ellenőrzése, hogy a konfigurációja megegyezik-e az IP-címek legújabb listájával. A üzemeltetett ügynökök IP-címtartományai a heti fájlban AzureCloud.<region>jelennek meg, például AzureCloud.westus az USA nyugati régiójában.

Az üzemeltetett ügynökei ugyanabban az Azure-beli földrajzi helyen futnak, mint a szervezet. Minden földrajzi hely egy vagy több régiót tartalmaz. Bár lehetséges, hogy az ügynök ugyanabban a régióban fut, mint a szervezet, ez nem garantált. Az ügynök lehetséges IP-tartományait tartalmazó teljes listája lekéréséhez a földrajzi régióban található összes régió IP-tartományát kell használnia. Ha például a szervezet a Egyesült Államok földrajzi helyen található, akkor az adott földrajzi régió összes régiójához használnia kell az IP-tartományokat.

A földrajzi hely meghatározásához keresse https://dev.azure.com/<your_organization>/_settings/organizationOverviewmeg a régiót, és keresse meg a kapcsolódó földrajzi helyet az Azure földrajzi táblából. Miután azonosította a földrajzi helyet, használja a heti fájl IP-tartományait az adott földrajzi régió összes régiójához.

Fontos

A Microsoft által üzemeltetett ügynökök vállalati hálózathoz való csatlakoztatásához nem használhat privát kapcsolatokat, például ExpressRoute-ot vagy VPN-t. A Microsoft által üzemeltetett ügynökök és a kiszolgálók közötti forgalom nyilvános hálózaton keresztül fog haladni.

A Microsoft által üzemeltetett ügynökök lehetséges IP-tartományainak azonosítása

  1. A szervezet régiójának azonosítása a Szervezeti beállítások között.
  2. A szervezet régiójának Azure Geography-jének azonosítása.
  3. A földrajzi hely régióinak neveit a heti fájlban használt formátumra képezheti le, a következő formátumot AzureCloud.<region>követve: AzureCloud.westuspéldául. A régiók nevét az Azure Geography listából a heti fájlban használt formátumra képezheti le, ha áttekinti a régióneveknek a Régió osztály forráskódjában meghatározott régiók konstruktorának átadott régióneveket a .NET-hez készült Azure Management-kódtárakból.

    Feljegyzés

    Mivel az Azure Management Libraries for .NET-ben nincs API a földrajzi régiók listázásához, manuálisan kell listáznia őket az alábbi példában látható módon.

  4. A heti fájlból lekérheti a földrajzi régió összes régiójának IP-címét. Ha régiója Dél-Brazília vagy Nyugat-Európa, további IP-tartományokat kell tartalmaznia a tartalék földrajzi hely alapján, az alábbi megjegyzésben leírtak szerint.

Feljegyzés

A kapacitáskorlátozások miatt egyes dél- vagy nyugat-európai brazíliai szervezetek időnként láthatják a várt földrajzi helyükön kívül található üzemeltetett ügynökeiket. Ezekben az esetekben amellett, hogy az előző szakaszban leírtak szerint az összes régió IP-tartományát belefoglalta a földrajzi régióba, további IP-tartományokat kell tartalmaznia a kapacitás-tartalék földrajzi régióhoz.

Ha szervezete a Dél-Brazília régióban található, a kapacitás-tartalék földrajzi hely Egyesült Államok.

Ha szervezete a nyugat-európai régióban található, a kapacitás-tartalék földrajzi régió Franciaország.

A Mac IP-tartományaink nem szerepelnek a fenti Azure IP-k között, hiszen ezek a GitHub macOS-felhőjében találhatók. Az IP-tartományok a GitHub metadata API-val kérhetők le az itt megadott utasítások alapján.

Példa

Az alábbi példában az USA nyugati régiójában lévő szervezet üzemeltetett ügynökÉNEK IP-címtartományai a heti fájlból lesznek lekérve. Mivel az USA nyugati régiója a Egyesült Államok földrajzi régióban található, a Egyesült Államok földrajzi régióban lévő összes régió IP-címe szerepel. Ebben a példában az IP-címek a konzolra vannak írva.

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);
                }
            }
        }
    }
}

Szolgáltatáscímkék

A Microsoft által üzemeltetett ügynökök nem listázhatók szolgáltatáscímkék szerint. Ha az üzemeltetett ügynököknek hozzáférést szeretne adni az erőforrásokhoz, az IP-címtartomány engedélyezési listás módszerét kell követnie.

Biztonság

A Microsoft által üzemeltetett ügynökök biztonságos Azure-platformon futnak. Azonban tisztában kell lennie a következő biztonsági szempontokkal.

  • Bár a Microsoft által üzemeltetett ügynökök nyilvános Azure-hálózaton futnak, nem kapnak nyilvános IP-címeket. A külső entitások tehát nem célozhatók meg a Microsoft által üzemeltetett ügynökökkel.
  • A Microsoft által üzemeltetett ügynökök egyes virtuális gépeken futnak, amelyeket minden futtatás után újra rendszerképeznek. Minden ügynök egyetlen szervezetnek van szentelve, és minden virtuális gép csak egyetlen ügynököt üzemeltet.
  • A folyamat biztonsági szempontból számos előnnyel jár, ha a Microsoft által üzemeltetett ügynökökön futtatja a folyamatot. Ha nem megbízható kódot futtat a folyamatban, például az elágazásokból származó hozzájárulásokat, biztonságosabb a folyamatot a Microsoft által üzemeltetett ügynökökön futtatni, mint a vállalati hálózaton található saját üzemeltetésű ügynökökön.
  • Ha egy folyamatnak tűzfal mögött kell hozzáférnie a vállalati erőforrásokhoz, engedélyeznie kell az Azure földrajzi hely IP-címtartományát. Ez növelheti az expozíciót, mivel az IP-címek tartománya meglehetősen nagy, és mivel az ebben a tartományban lévő gépek más ügyfelekhez is tartozhatnak. Ennek megelőzésének legjobb módja, ha elkerüli a belső erőforrásokhoz való hozzáférés szükségességét. Az összetevők kiszolgálókon való üzembe helyezéséről további információt a célkiszolgálókon üzembe helyezendő kommunikáció című témakörben talál.
  • A üzemeltetett rendszerképek nem felelnek meg a CIS-beli keményítési teljesítménymutatóknak. A CIS által edzett képek használatához saját üzemeltetésű ügynököket vagy méretezési csoportbeli ügynököket kell létrehoznia.

Képességek és korlátozások

Microsoft által üzemeltetett ügynökök:

  • Használja a fenti szoftvert. Az eszköztelepítői feladatokkal szoftvereket is hozzáadhat a buildelés vagy kiadás során.
    • A folyamat minden feladatához kap egy frissen rendszerképezett ügynököt.
  • Adjon meg 10 GB tárterületet a forrás- és buildkimenetekhez.
  • Adjon meg egy ingyenes szintet:
    • Nyilvános projekt: 10 ingyenes, Microsoft által üzemeltetett párhuzamos feladat, amely akár 360 percig (6 óra) is futtatható minden alkalommal, havonta teljes időkorlát nélkül. Vegye fel velünk a kapcsolatot az ingyenes szint korlátainak növeléséhez.
    • Privát projekt: Egy ingyenes párhuzamos feladat, amely akár 60 percig is futtatható minden alkalommal, amíg havonta 1800 percet (30 órát) nem használt fel. Párhuzamos feladatonként további kapacitást is fizethet. A fizetős párhuzamos feladatok eltávolítják a havi időkorlátot, és lehetővé teszik az egyes feladatok futtatását akár 360 percig (6 óra). A Microsoft által üzemeltetett párhuzamos feladatok vásárlása.
    • Új Azure DevOps-szervezet létrehozásakor alapértelmezés szerint nem kapja meg ezeket az ingyenes támogatásokat. Ha nyilvános vagy magánprojektekhez szeretne ingyenes támogatást igényelni, küldjön be egy kérelmet.
  • Futtassa a Microsoft Azure általános célú virtuális gépein Standard_DS2_v2.
  • Futtassa rendszergazdaként Windows rendszeren és jelszó nélküli sudo-felhasználóként Linuxon.
  • (csak Linux) Olyan lépések cgroup futtatása, amelyek 6 GB fizikai memóriát és 13 GB teljes memóriát biztosítanak.
  • Rendszeresen frissített virtuálisgép-rendszerképeket használjon (3 hetente).

A Microsoft által üzemeltetett ügynökök nem kínálnak:

  • A távoli csatlakozás lehetősége.
  • Az összetevők UNC fájlmegosztásba való elvetésének lehetősége.
  • A gépek közvetlen csatlakoztatásának lehetősége a vállalati hálózathoz.
  • Nagyobb vagy nagyobb teljesítményű buildelési gépek beszerzésének képessége.
  • Az egyéni szoftverek előzetes betöltésének lehetősége. Szoftvereket telepíthet folyamatfuttatás közben, például eszköztelepítési feladatokon vagy szkripteken keresztül.
  • Lehetséges teljesítménybeli előnyök, amelyeket a saját üzemeltetésű ügynökök használatával érhet el, amelyek gyorsabban indíthatják el és futtathatják a buildeket. További információ
  • XAML-buildek futtatásának lehetősége.
  • A virtuálisgép-rendszerkép korábbi verziójára való visszaállítás lehetősége. Mindig a legújabb verziót használja.

Ha a Microsoft által üzemeltetett ügynökök nem felelnek meg az igényeinek, akkor üzembe helyezheti saját , saját üzemeltetésű ügynökeit , vagy használhat méretezési csoportok ügynökeit.

GYIK

Hogyan tekinthetem meg, hogy milyen szoftverek szerepelnek a képen?

Az egyes üzemeltetett ügynökök telepített szoftvereit a Szoftver tábla Belefoglalt szoftver hivatkozására kattintva tekintheti meg.

Feljegyzés

A Windows-ügynök alapértelmezés szerint az ügynökszoftverhez csomagolt Git-verziót használja. A Microsoft azt javasolja, hogy használja az ügynökkel együtt csomagolt Git-verziót, de számos lehetősége van az alapértelmezett viselkedés felülbírálására, és a Git azon verziójának használatára, amelyet az ügynökgép telepített az útvonalon.

A folyamat által használt Git-verzió megtekintéséhez megtekintheti a folyamat egy checkout lépésének naplóit, ahogyan az az alábbi példában is látható.

Syncing repository: PathFilter (Git)
Prepending Path environment variable with directory containing 'git.exe'.
git version
git version 2.26.2.windows.1

Hogyan választja ki a Microsoft a rendszerképen elhelyezni kívánt szoftvereket és verziókat?

A képeken található szoftververziókkal kapcsolatos további információkért tekintse meg a telepített szoftverekre vonatkozó útmutatót.

Mikor frissülnek a képek?

A képek általában hetente frissülnek. Ellenőrizheti azokat az állapotjelvényeket , amelyek olyan formátumban 20200113.x vannak, amelyben az első rész a kép frissítésének dátumát jelzi.

Mit tehetek, ha a szükséges szoftvereket eltávolítják vagy lecserélik egy újabb verzióra?

A GitHub-probléma bejelentésével a Microsoft által üzemeltetett ügynöktáblában található mellékelt szoftverhivatkozások kiválasztásával tudhatja meg velünk.

Használhat saját üzemeltetésű ügynököt is, amely tartalmazza a szükséges szoftverek pontos verzióit. További információ: Saját üzemeltetésű ügynökök.

Mi a teendő, ha nagyobb, nagyobb feldolgozási teljesítménnyel, memóriával vagy lemezterülettel rendelkező gépre van szükségem?

A Microsoft által üzemeltetett ügynökök memóriája, feldolgozási teljesítménye vagy lemezterülete nem növelhető , de használhat saját üzemeltetésű ügynököket vagy a kívánt specifikációval rendelkező gépeken üzemeltetett méretezési csoportügynököket .

Nem tudok Microsoft által üzemeltetett ügynököt kiválasztani, és nem tudom várólistára helyezni a buildet vagy az üzembe helyezést. Mit tegyek?

A Microsoft által üzemeltetett ügynökök csak az Azure Pipelinesban érhetők el, a TFS-ben vagy az Azure DevOps Serverben nem.

Alapértelmezés szerint a szervezet összes projekt-közreműködője hozzáfér a Microsoft által üzemeltetett ügynökökhöz. A szervezet rendszergazdája azonban korlátozhatja a Microsoft által üzemeltetett ügynökök hozzáférését a felhasználók vagy projektek kiválasztásához. Kérje meg az Azure DevOps-szervezet tulajdonosát, hogy adjon engedélyt a Microsoft által üzemeltetett ügynök használatára. Tekintse meg az ügynökkészlet biztonságát.

A Microsoft által üzemeltetett ügynökökön futó folyamataim befejezése sokáig tart. Hogyan gyorsíthatnám fel a műveletet?

Ha a folyamat az utóbbi időben lelassult, tekintse meg az Állapotlapon, hogy nem történt-e kimaradás. Előfordulhat, hogy problémák akadtak a szolgáltatásban. Egyéb esetben tekintse át az alkalmazás kódján vagy a folyamaton elvégzett módosításokat. Előfordulhat, hogy a kijelentkezés során az adattár mérete megnőtt, illetve Ön nagyobb összetevőket tölt fel, vagy további teszteket futtat.

Ha most állít be egy folyamatot, és a Microsoft által üzemeltetett ügynökök teljesítményét a saját helyi gépével vagy a saját üzemeltetésű ügynökével hasonlítja össze, vegye figyelembe a hardveres specifikációkat, amelyeket az Ön feladatainak futtatásához használunk. Nem tudunk nagyobb vagy hatékonyabb gépeket biztosítani. Amennyiben ez a teljesítmény nem megfelelő, érdemes megfontolni a saját üzemeltetésű ügynökök vagy a méretezésicsoport-ügynökök használatát.

Több ügynökre van szükségem. Mit tehetek?

Minden Azure DevOps-szervezet több ingyenes párhuzamos feladatot biztosít a nyílt forráskódú projektekhez, valamint egy ingyenes párhuzamos feladatot, és havonta korlátozott perceket a magánprojektekhez. Ha további percekre vagy párhuzamos feladatokra van szüksége a nyílt forráskódú projekthez, forduljon az ügyfélszolgálathoz. Ha további percekre vagy párhuzamos feladatokra van szüksége a privát projektjéhez, többet is vásárolhat.

A folyamat sikeres a saját üzemeltetésű ügynökön, de a Microsoft által üzemeltetett ügynökök esetében meghiúsul. Mit tegyek?

A saját üzemeltetésű ügynökén valószínűleg minden megfelelő függőség telepítve van, míg ugyanazok a függőségek, eszközök és szoftverek nincsenek telepítve a Microsoft által üzemeltetett ügynökökre. Először alaposan tekintse át a Microsoft által üzemeltetett ügynökökre telepített szoftverek listáját a fenti táblázatban található Mellékelt szoftverek hivatkozását követve. Ezután hasonlítsa össze a saját üzemeltetésű ügynökre telepített szoftverrel. Bizonyos esetekben előfordulhat, hogy a Microsoft által üzemeltetett ügynökök rendelkeznek a szükséges eszközökkel (például a Visual Studióval), de előfordulhat, hogy az összes szükséges választható összetevő nincs telepítve. Ha különbségeket talál, akkor két lehetősége van:

  • Létrehozhat egy új problémát az adattárban, ahol nyomon követjük a további szoftverekre vonatkozó kéréseket. Az ügyfélszolgálattal való kapcsolatfelvétel nem segíthet új szoftverek beállításában a Microsoft által üzemeltetett ügynökökön.

  • Használhat saját üzemeltetésű ügynököket vagy méretezési csoportügynököket. Ezekkel az ügynökökkel teljes mértékben ön felügyelheti a folyamatok futtatásához használt rendszerképeket.

A build sikeres a helyi gépen, de a Microsoft által üzemeltetett ügynökökkel meghiúsul. Mit tegyek?

A helyi gépen valószínűleg minden megfelelő függőség telepítve van, míg ugyanazok a függőségek, eszközök és szoftverek nincsenek telepítve a Microsoft által üzemeltetett ügynökökre. Először alaposan tekintse át a Microsoft által üzemeltetett ügynökökre telepített szoftverek listáját a fenti táblázatban található Mellékelt szoftverek hivatkozását követve. Ezután hasonlítsa össze a helyi gépen telepített szoftverrel. Bizonyos esetekben előfordulhat, hogy a Microsoft által üzemeltetett ügynökök rendelkeznek a szükséges eszközökkel (például a Visual Studióval), de előfordulhat, hogy az összes szükséges választható összetevő nincs telepítve. Ha különbségeket talál, akkor két lehetősége van:

  • Létrehozhat egy új problémát az adattárban, ahol nyomon követjük a további szoftverekre vonatkozó kéréseket. Ez a legjobb megoldás az új szoftverek telepítésére. Az ügyfélszolgálattal való kapcsolatfelvétel nem segít új szoftverek beállításában a Microsoft által üzemeltetett ügynökökön.

  • Használhat saját üzemeltetésű ügynököket vagy méretezési csoportügynököket. Ezekkel az ügynökökkel teljes mértékben ön felügyelheti a folyamatok futtatásához használt rendszerképeket.

A folyamat a következő hibával meghiúsul: "nincs szabad hely az eszközön".

A Microsoft által üzemeltetett ügynököknek mindössze 10 GB lemezterület áll rendelkezésükre a feladat futtatásához. Ezt a helyet akkor használja fel a rendszer, ha a forráskódot, a csomagok letöltését, a Docker-rendszerképek letöltését vagy köztes fájlokat hoz létre. Sajnos nem növelhető a Microsoft által üzemeltetett képeken elérhető szabad terület. Átstrukturázhatja a folyamatot, hogy beférjen ebbe a térbe. Használhat saját üzemeltetésű ügynököket vagy méretezési csoportügynököket is.

A Microsoft által üzemeltetett ügynökökön futó folyamatomnak hozzá kell férnie a vállalati hálózaton lévő kiszolgálókhoz. Hogyan szerezhetjük be a tűzfalon engedélyezendő IP-címek listáját?

Tekintse meg az Ügynök IP-tartományai című szakaszt

A Microsoft által üzemeltetett ügynökökön futó folyamat nem tudja feloldani egy kiszolgáló nevét a vállalati hálózaton. Hogyan oldhatjuk meg ezt?

Ha a dns-neve alapján hivatkozik a kiszolgálóra, győződjön meg arról, hogy a kiszolgáló nyilvánosan elérhető az interneten a DNS-nevével. Ha a kiszolgálóra annak IP-címe alapján hivatkozik, győződjön meg arról, hogy az IP-cím nyilvánosan elérhető az interneten. Mindkét esetben győződjön meg arról, hogy az ügynökök és a vállalati hálózat közötti tűzfalon engedélyezettek az ügynök IP-tartományai .

SAS IP-engedélyezési hibát kapok egy Azure Storage-fiókból

Ha SAS-hibakódot kap, az valószínűleg azért van, mert a Microsoft által üzemeltetett ügynökök IP-címtartományai nem engedélyezettek az Azure Storage-szabályok miatt. Van néhány kerülő megoldás:

  1. Az Azure Storage-fiók IP-hálózati szabályainak kezelése és az üzemeltetett ügynökök IP-címtartományainak hozzáadása.
  2. A folyamatban az Azure CLI használatával frissítse az Azure Storage-fiók hálózati szabálykészletét közvetlenül a tárterület elérése előtt, majd állítsa vissza az előző szabálykészletet.
  3. Használjon saját üzemeltetésű ügynököket vagy méretezési csoportügynököket.

Hogyan választhatom ki manuálisan az eszközök verzióit az üzemeltetett macOS-ügynökön?

XCode

Ha az Azure Pipelineshoz és a TFS-hez tartozó Xcode-feladatot használja, kiválaszthatja az Xcode egy verzióját a tevékenység tulajdonságai között. Ellenkező esetben ha manuálisan szeretné beállítani az Xcode-verziót a üzemeltetett macOS-ügynökkészleten való használatra, a xcodebuild buildelés előtt hajtsa végre ezt a parancssort a build részeként, és szükség szerint cserélje le a 13.2-es Xcode-verziót:

/bin/bash -c "sudo xcode-select -s /Applications/Xcode_13.2.app/Contents/Developer"

Az üzemeltetett macOS-ügynökkészlet Xcode-verziói itt találhatók az macos-11 ügynökhöz és itt az macos-12 ügynökhöz.

Ez a parancs nem működik A Xamarin-alkalmazások esetében. Ha manuálisan szeretne kiválasztani egy Xcode-verziót a Xamarin-alkalmazások létrehozásához, tekintse meg a fenti utasításokat.

Mono

Ha manuálisan szeretne kiválasztani egy Mono-verziót, amelyet a üzemeltetett macOS-ügynökkészleten szeretne használni, hajtsa végre ezt a szkriptet a build minden feladatában a Mono buildelési feladat előtt, és adja meg a szimlinket a szükséges Mono verzióval:

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"