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á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 24.04 | ubuntu-24.04 | ubuntu-24.04 |
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 15 Sequia előzetes verzió | macOS-15 | macOS-15 |
Láncszem |
macOS 14 Sonoma | macOS-14 | macOS-latest VAGY macOS-14 |
Láncszem |
macOS 13 Ventura | macOS-13 | macOS-13 |
Láncszem |
macOS 12 Monterey | macOS-12 | macOS-12 |
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
- A macOS-15 Sequia rendszerkép előzetes verzióban érhető el
- Az Ubuntu-24.04 rendszerkép elérhető
- A macOS-12 Monterey rendszerkép elavult, és 2024. december 3-án megszűnik.
- Az Ubuntu-22.04 rendszerkép elérhető
- A macOS-14 Sonoma rendszerkép előzetes verzióban érhető el
- A macOS-11 Big Sur rendszerkép elavult, és 2024. június 28-án megszűnik.
- Január 28-tól minden Microsoft által üzemeltetett ügynök a PowerShell 7.2 LTS-t fogja használni a PowerShell 7.4 LTS-hez. További információkért, beleértve a lehetséges kompatibilitástörő változásokat, tekintse meg a Microsoft által üzemeltetett ügynökök PowerShell 7.4-et használó témakörét.
- A macOS 13 rendszerkép általánosan elérhető
- A macOS 10.15 rendszerkép 2023.04.24-én teljesen nem támogatott
- Megszűnt az Ubuntu 18.04
ubuntu-latest
rendszerképek használataubuntu-22.04
.- Az Ubuntu 22.04 általános elérhetősége az Azure Pipelines által üzemeltetett készletekhez.
- Az Ubuntu 18.04 rendszerkép 2022.08.08-án elavul, és 2023. 04. 01-ig teljesen nem lesz támogatott.
- A macOS 10.15 rendszerkép 2022.05.31-én elavul, és 2022. 12. 12-én teljesen nem lesz támogatott.
windows-latest
rendszerképek használatawindows-2022
.macOS-latest
rendszerképek használatamacOS-11
.- Az Ubuntu 16.04-ben üzemeltetett rendszerkép 2021. szeptemberben el lett távolítva.
- A Windows Server 2016 és a Visual Studio 2017 rendszerkép elavult, és 2022. június 30-án megszűnik. Ebből a blogbejegyzésből megtudhatja, hogyan azonosíthatja a folyamatokat elavult képek használatával.
- 2021 decemberében eltávolítottuk a következő Azure Pipelines által üzemeltetett rendszerképet:
- macOS X Mojave 10.14 (
macOS-10.14
)
- macOS X Mojave 10.14 (
- 2020 márciusában eltávolítottuk a következő Azure Pipelines által üzemeltetett rendszerképeket:
- Windows Server 2012R2 és Visual Studio 2015 (
vs2015-win2012r2
) - macOS X High Sierra 10.13 (
macOS-10.13
) - Windows Server Core 1803 (
win1803
)
- Windows Server 2012R2 és Visual Studio 2015 (
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.
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/organizationOverview
meg 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
- A szervezet régiójának azonosítása a Szervezeti beállítások között.
- A szervezet régiójának Azure Geography-jének azonosítása.
- 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.westus
pé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.
- 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, használhat méretezési csoportok ügynökeit vagy felügyelt DevOps-készletek ü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.
- Állítson be egy folyamatváltozót, amely a
true
folyamatokban szerepelSystem.PreferGitFromPath
. - A saját üzemeltetésű ügynökökben létrehozhat egy .env nevű fájlt az ügynök gyökérkönyvtárában, és hozzáadhat egy
System.PreferGitFromPath=true
sort a fájlhoz. További információ: Hogyan különböző környezeti változókat állíthat be az egyes ügynökökhöz?
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:
- 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.
- 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.
- 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-12
ügynök számára.
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"