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


Saját üzemeltetésű Windows-ügynökök

Azure DevOps Services | Azure DevOps Server

A Windows, az Azure és más Visual Studio-megoldások létrehozásához és üzembe helyezéséhez legalább egy Windows-ügynökre lesz szüksége. A Windows-ügynökök Java- és Android-alkalmazásokat is készíthetnek.

Ez a cikk útmutatást nyújt a 4.x ügynökszoftvernek az Azure DevOps Services és az Azure DevOps Server használatával való használatához.

Ez a cikk útmutatást nyújt a 3.x ügynökszoftvernek az Azure DevOps Server 2022 és az Azure DevOps Server 2020 használatával való használatához. A 3.x ügynököt támogató Azure DevOps Server-verziók listáját lásd a Az Azure DevOps Server támogatja a 3.x ügynökötszakaszban.

Fontos

Ha Az Azure DevOps Servicest vagy az Azure DevOps Servert használja, a 4.x ügynökszoftvert kell használnia.

Megjegyzés

Ez a cikk bemutatja, hogyan konfigurálhatja a saját üzemeltetésűügynököt. Ha az Azure DevOps Servicest használja, és a Microsoft által üzemeltetett ügynök megfelel az igényeinek, kihagyhatja a saját üzemeltetésű Windows-ügynök beállítását.

Tudnivalók az ügynökökről

Ha már tudja, mi az ügynök, és hogyan működik, nyugodtan ugorjon a következő szakaszokba. Ha azonban további információra van szüksége a tevékenységükről és működésükről, tekintse meg Azure Pipelines-ügynökök.

Előfeltételek ellenőrzése

Győződjön meg arról, hogy a gép rendelkezik az alábbi előfeltételekkel:

  • Operációs rendszer verziója
    • Ügyfél operációs rendszere
      • Windows 10
        • 21H2, 1809, 1607
      • Windows 11
        • 23H2, 22H2, 21H2
    • Kiszolgáló operációs rendszere
      • Windows Server 2012 vagy újabb
  • Az ügynökszoftver telepíti a .NET saját verzióját, így nincs .NET-előfeltétel.
  • PowerShell 3.0 vagy újabb
  • Subversion – Ha subversion-adattárból készül, telepítenie kell a Subversion-ügyfelet a gépre.
  • Ajánlott – Visual Studio buildelési eszközök (2015-ös vagy újabb verzió)
  • Operációs rendszer verziója
    • Ügyfél operációs rendszere
      • Windows 7 SP1 ESU
      • Windows 8.1
      • Windows 10
      • Windows 11
    • Kiszolgáló operációs rendszere
      • Windows Server 2012 vagy újabb
  • Az ügynökszoftver telepíti a .NET saját verzióját, így nincs .NET-előfeltétel.
  • PowerShell 3.0 vagy újabb
  • Subversion – Ha subversion-adattárból készül, telepítenie kell a Subversion-ügyfelet a gépre.
  • Ajánlott – Visual Studio buildelési eszközök (2015-ös vagy újabb verzió)

Először manuálisan kell futtatnia az ügynökbeállítást. Miután érezte, hogyan működnek az ügynökök, vagy ha több ügynök beállítását szeretné automatizálni, fontolja meg a felügyelet nélküli konfiguráció használatát.

Hardver specifikációk

Az ügynökök hardveres specifikációi az igényeitől, a csapat méretétől stb. függően változnak. Nem lehet olyan általános javaslatot tenni, amely mindenkire vonatkozni fog. Referenciaként az Azure DevOps csapata az üzemeltetett ügynökök kódját üzemeltetett ügynököket használó folyamatok használatával hozza létre. Másrészt az Azure DevOps-kód nagy részét 24 magos kiszolgálóosztályú gépek készítik, és négy saját üzemeltetésű ügynököt futtatnak.

Engedélyek előkészítése

A saját üzemeltetésű ügynökök információbiztonsága

Az ügynököt konfiguráló felhasználónak készletadminisztrátori engedélyekre van szüksége, de az ügynököt futtató felhasználó nem.

Az ügynök által felügyelt mappákat a lehető legkevesebb felhasználóra kell korlátozni, mert olyan titkos kulcsokat tartalmaznak, amelyek visszafejthetők vagy kiszúrhatók.

Az Azure Pipelines-ügynök egy olyan szoftvertermék, amelyet külső forrásokból letöltött kód végrehajtására terveztek. Ez eredendően a távoli kódvégrehajtási (RCE) támadások célpontja lehet.

Ezért fontos figyelembe venni a folyamatügynökök minden egyes, a munka elvégzéséhez szükséges egyéni használatát körülvevő fenyegetésmodellt, és el kell döntenie, hogy milyen minimális engedélyek adhatóak az ügynököt futtató felhasználónak, a gépnek, ahol az ügynök fut, azoknak a felhasználóknak, akik írási hozzáféréssel rendelkeznek a Folyamatdefinícióhoz, a git-adattárhoz, ahol a yaml tárolódik, vagy azon felhasználók csoportja, akik az új folyamatok készlethez való hozzáférését szabályozzák.

Ajánlott eljárás, hogy az ügynököt futtató identitás eltérjen attól az identitástól, amely rendelkezik az ügynök készlethez való csatlakoztatáshoz szükséges engedélyekkel. A hitelesítő adatokat (és más ügynökkel kapcsolatos fájlokat) létrehozó felhasználó eltér az elolvasni kívánt felhasználótól. Ezért biztonságosabb alaposan megfontolni az ügynökgép számára biztosított hozzáférést, valamint a bizalmas fájlokat, például naplókat és összetevőket tartalmazó ügynökmappákat.

Érdemes csak a DevOps-rendszergazdák és az ügynökfolyamatot futtató felhasználói identitás számára hozzáférést biztosítani az ügynökmappához. Előfordulhat, hogy a rendszergazdáknak ki kell vizsgálniuk a fájlrendszert a buildelési hibák megértéséhez, vagy naplófájlokat kell lekérni az Azure DevOps-hibák jelentéséhez.

Döntse el, hogy melyik felhasználót fogja használni

Egyszeri lépésként regisztrálnia kell az ügynököt. Az ügynöki üzenetsor felügyeletére jogosult személynek végre kell hajtania ezeket a lépéseket. Az ügynök nem fogja használni a személy hitelesítő adatait a mindennapi működés során, de a regisztráció elvégzéséhez szükséges. További információ az ügynökök kommunikációjáról.

Győződjön meg arról, hogy a felhasználó rendelkezik engedéllyel

Győződjön meg arról, hogy a használni kívánt felhasználói fiók rendelkezik engedéllyel az ügynök regisztrálásához.

A felhasználó Azure DevOps-szervezet tulajdonosa, TFS vagy Azure DevOps Server-rendszergazda? Itt állj le, van engedélye.

Egyébként:

  1. Nyisson meg egy böngészőt, és lépjen az Azure Pipelines-szervezet, az Azure DevOps Server vagy a TFS-kiszolgáló Ügynökkészletek lapjára:

    1. Jelentkezzen be a szervezetbe (https://dev.azure.com/{yourorganization}).

    2. Válassza az Azure DevOps>Organization beállításait.

      Képernyőkép a Szervezeti beállítások kiválasztásáról.

    3. Válassza ki az Ügynökkészleteket.

      Képernyőkép, amely megmutatja, hogyan lehet kiválasztani az Ügynökkészletek lapot.

    1. Jelentkezzen be a projektgyűjteménybe (http://your-server/DefaultCollection).

    2. Válassza ki az Azure DevOps>Collection beállításait.

      Képernyőkép a Gyűjtemény beállításainak kiválasztásáról.

    3. Válassza ki az Ügynökkészleteket.

      Válassza ki az Ügynökkészleteket.

    Képernyőkép az ügynökkészletek megtekintéséről és kiválasztásáról.

  2. Jelölje ki a medencét a lap jobb oldalán, majd kattintson a Biztonsággombra.

  3. Ha a használni kívánt felhasználói fiók nem jelenik meg, kérje meg a rendszergazdát, hogy vegye fel. A rendszergazda lehet ügynökkészlet-rendszergazda, Azure DevOps-szervezet tulajdonosa, TFS vagy Azure DevOps Server-rendszergazda.

    Ha az ügynök egy üzembehelyezési csoport tagja, akkor a rendszergazda lehet az üzembehelyezési csoport rendszergazdája, egy Azure DevOps-szervezet tulajdonosa, vagy egy TFS- vagy Azure DevOps Server-rendszergazda.

    Az Azure Pipelines Üzembe helyezési csoportok lapjának Biztonság fülén hozzáadhat egy felhasználót az üzembe helyezési csoport rendszergazdai szerepköréhez.

Megjegyzés

Ha a következőhöz hasonló üzenet jelenik meg: Sajnáljuk, nem sikerült hozzáadni az identitást. Próbálkozzon egy másik identitással. Valószínűleg követte a fenti lépéseket egy szervezettulajdonos, a TFS vagy az Azure DevOps Server rendszergazdája esetében. Nem kell semmit tennie; már rendelkezik engedéllyel az ügynökkészlet felügyeletéhez.

Az ügynök letöltése és konfigurálása

Azure Pipelines

  1. Jelentkezzen be a gépre azzal a fiókkal, amelyhez a fent ismertetett módon engedélyeket készített.

  2. A webböngészőben jelentkezzen be az Azure Pipelinesba, és lépjen az Ügynökkészletek lapra:

    1. Jelentkezzen be a szervezetbe (https://dev.azure.com/{yourorganization}).

    2. Válassza az Azure DevOps>Organization beállításait.

      Képernyőkép a Szervezeti beállítások kiválasztásáról.

    3. Válassza ki az Ügynökkészleteket.

      Képernyőkép, amely megmutatja, hogyan lehet kiválasztani az Ügynökkészletek lapot.

    1. Jelentkezzen be a projektgyűjteménybe (http://your-server/DefaultCollection).

    2. Válassza ki az Azure DevOps>Collection beállításait.

      Képernyőkép a Gyűjtemény beállításainak kiválasztásáról.

    3. Válassza ki az Ügynökkészleteket.

      Válassza ki az Ügynökkészleteket.

    Képernyőkép az ügynökkészletek megtekintéséről és kiválasztásáról.

  3. Válassza az Alapértelmezett készletet, válassza az Ügynökök lapot, majd az Új ügynök lehetőséget.

  4. Az Ügynök lekérése párbeszédpanelen válassza a Windows lehetőséget.

  5. A bal oldali panelen válassza ki a számítógépen telepített Windows OPERÁCIÓS-verzió processzorarchitektúráját. Az x64-ügynök verziója 64 bites Windowshoz készült, míg az x86-os verzió a 32 bites Windowshoz készült. Ha nem biztos abban, hogy a Windows melyik verziója van telepítve, az alábbi útmutatást követve megtudhatja.

  6. A jobb oldali ablaktáblán kattintson a Letöltés gombra.

  7. Az ügynök letöltéséhez kövesse az oldalon található utasításokat.

  8. Csomagolja ki az ügynökprogramot a választott mappába. Biztosítsa, hogy a könyvtár elérési útja ne tartalmazzon szóközöket, mert az eszközök és szkriptek nem mindig kezelik megfelelően őket. Az ajánlott mappa C:\agents. A letöltési mappában vagy más felhasználói mappákban való kinyerés engedélyproblémákat okozhat.

Fontos

Határozottan javasoljuk, hogy konfigurálja az ügynököt egy emelt szintű PowerShell-ablakból. Ha szolgáltatásként szeretne konfigurálni, ez szükséges.

Az ügynök konfigurálásához ne használja a Windows PowerShell ISE-t .

Fontos

Biztonsági okokból javasoljuk, hogy győződjön meg arról, hogy az ügynökmappát (C:\agents) csak a rendszergazdák szerkeszthetik.

Megjegyzés

Az ügynökkonfigurációhoz ne használjon mentaalapú felületeket, például git-basht. A Mentty nem teljes mértékben kompatibilis a natív Input/Output Windows API-val (erről itt talál néhány információt), és nem tudjuk garantálni, hogy a telepítő szkript ebben az esetben megfelelően működjön.

Az ügynök telepítése

  1. Indítson el egy emelt szintű (PowerShell-) ablakot, és állítsa be az ügynök kicsomagolásának helyét.

    cd C:\agents 
    
    
  2. Futtassa a config.cmd programot. Ez kérdések sorozatát fogja feltenni az ügynök konfigurálásához.

    .\config.cmd
    
    

Kiszolgáló URL-címe

Amikor a telepítő a kiszolgáló URL-címét kéri az Azure DevOps Serviceshez, válaszoljon https://dev.azure.com/{your-organization}.

Amikor a telepítő a kiszolgáló URL-címét kéri, az Azure DevOps Server esetében válaszoljon https://{my-server}/{my-collection}.

Ügynökbeállítás hitelesítési típusa

Ügynök regisztrálásakor válasszon a következő hitelesítési típusok közül, és a beállítás az egyes hitelesítési típusokhoz szükséges további információkat kéri. További információ: saját üzemeltetésű ügynökhitelesítési lehetőségek.

A Windows-ügynökök az alábbi két további hitelesítési lehetőséggel rendelkeznek az Azure DevOps Serveren és a TFS-en.

  • Kapcsolódás Csatlakozzon a TFS-hez a bejelentkezett felhasználótól eltérő felhasználóként egy Windows-hitelesítési sémán keresztül, mint az NTLM vagy a Kerberos. Miután kiválasztotta az Egyeztetés lehetőséget, a rendszer kérni fogja a hitelesítő adatokat.
  • Integrált (alapértelmezett) Windows-ügynök csatlakoztatása a TFS-hez a bejelentkezett felhasználó hitelesítő adataival egy Windows-hitelesítési sémán keresztül, például NTLM vagy Kerberos használatával. A metódus kiválasztása után a rendszer nem kéri a hitelesítő adatokat.

Fontos

A kiszolgálót úgy kell konfigurálni, hogy támogassa a hitelesítési módszert az alternatív, egyeztetési vagy integrált hitelesítés használatához.

Az ügynök regisztrálásához használt hitelesítési módszer csak az ügynökregisztráció során használatos. Ha többet szeretne megtudni arról, hogy az ügynökök hogyan kommunikálnak az Azure Pipelines szolgáltatással a regisztráció után, tekintse meg az Azure Pipelinessal vagy a TFS-szel való kommunikációt ismertető témakört.

Interaktív vagy szolgáltatási mód kiválasztása

Az ügynök interaktív módban vagy szolgáltatásként való futtatásával kapcsolatos útmutatásért tekintse meg az Ügynökök: Interaktív és szolgáltatás című témakört.

Ha úgy dönt, hogy szolgáltatásként fut (ezt javasoljuk), a futtatott felhasználónévnek 20 karakternek vagy kevesebbnek kell lennie.

Futtassa az ügynököt

Interaktívan futtatni

Ha interaktív futtatásra konfigurálta az ügynököt, futtassa az alábbi parancsot az ügynök elindításához.

.\run.cmd

Az ügynök újraindításához nyomja le a Ctrl+C billentyűkombinációt az ügynök leállításához, majd futtassa run.cmd az újraindításhoz.

Megjegyzés

Ha az ügynököt a PowerShell Core-ból futtatja a Windows PowerShell-feladatok végrehajtásához, előfordulhat, hogy a folyamat meghiúsul egy olyan hibával, mint a Error in TypeData "System.Security.AccessControl.ObjectSecurity": The member is already present. Ennek az az oka, hogy a Windows PowerShell örökli a PSModulePath környezeti változót, amely a PowerShell Core-modul helyeit is tartalmazza a szülőfolyamatból.

Áthidaló megoldásként beállíthatja az ágens gombját AZP_AGENT_CLEANUP_PSMODULES_IN_POWERSHELLtrue a csővezetékben. Ez lehetővé teszi az ügynök alaphelyzetbe állítását PSModulePath a feladatok végrehajtása előtt.

variables:
 AZP_AGENT_CLEANUP_PSMODULES_IN_POWERSHELL: "true"

Ha ez az ideiglenes megoldás nem oldja meg a problémát, vagy ha egyéni modulhelyeket szeretne használni, akkor az ügynök futtatása előtt a PowerShell Core ablakban igény szerint beállíthatja a $Env:PSModulePath változót.

Egyszer fut

Azt is beállíthatja, hogy az ügynök csak egy feladatot fogadjon el, majd lépjen ki. Ha ebben a konfigurációban szeretne futni, használja az alábbi parancsot.

.\run.cmd --once

Az ebben a módban lévő ügynökök csak egy feladatot fogadnak el, majd zökkenőmentesen leállnak (ez hasznos lehet a Dockerben egy olyan szolgáltatáson, mint az Azure Container Instances).

Szolgáltatásként futtatva

Ha úgy konfigurálta az ügynököt, hogy szolgáltatásként fusson, az automatikusan elindul. A szolgáltatások beépülő modulja segítségével megtekintheti és szabályozhatja az ügynök futási állapotát. Futtassa services.msc, majd keresse meg az alábbiak egyikét:

  • "Azure Pipelines-ügynök (az ügynök neve)"
  • "VSTS-ügynök (az ügynök neve)"
  • "vstsagent. (szervezet neve). (az ügynök neve)"

Megjegyzés

A szolgáltatásként futó ügynökök hozzáférés-vezérlésének nagyobb rugalmassága érdekében az ügynökszolgáltatás SID-típusát [SERVICE_SID_TYPE_UNRESTRICTED] jelölővel vagy kéréssel lehet beállítani az interaktív konfigurációs folyamat során. Alapértelmezés szerint az ügynökszolgáltatás konfigurálva van a következővel SERVICE_SID_TYPE_NONE: .

A SID-típusokkal kapcsolatos további részletekért tekintse meg ezt a dokumentációt.

Az ügynök újraindításához kattintson a jobb gombbal a bejegyzésre, és válassza az Újraindítás parancsot.

Megjegyzés

Ha módosítania kell az ügynök bejelentkezési fiókját, ne tegye azt a Szolgáltatások beépülő modulból. Ehelyett tekintse meg az alábbi információkat az ügynök újrakonfigurálásához.

Az ügynök használatához futtasson egy feladatot az ügynök erőforráskészletén. Ha nem választott másik készletet, az ügynök az Alapértelmezett készletben lesz.

Ügynök cseréje

Az ügynök cseréjéhez kövesse újra a Letöltés és az ügynök konfigurálása lépéseit.

Ha a már létező ügynök nevével megegyező néven konfigurál egy ügynököt, a rendszer megkérdezi, hogy szeretné-e lecserélni a meglévő ügynököt. Ha a Y-ra válaszol, győződjön meg róla, hogy eltávolítja a lecserélendő ügynököt (lásd alább). Ellenkező esetben néhány percnyi ütközés után az egyik ügynök leáll.

Ügynök eltávolítása és újrakonfigurálálása

Az ügynök eltávolítása:

.\config remove

Miután eltávolította az ügynököt, újra konfigurálhatja.

Felügyelet nélküli konfiguráció

Az ügynök emberi beavatkozás nélkül is beállítható szkriptből. Sikeresen meg kell felelnie a --unattended és az összes kérdésre adott válaszok követelményeinek.

Az ügynök konfigurálásához ismernie kell a szervezet url-címét, illetve az ügynökök beállítására jogosult személy gyűjteményét és hitelesítő adatait. Az összes többi válasz megadása nem kötelező. Bármely parancssori paraméter megadható egy környezeti változóval is: írja be a nevét nagybetűsre és írja elé VSTS_AGENT_INPUT_. Például a VSTS_AGENT_INPUT_PASSWORDmegadása helyett --password.

Kötelező beállítások

  • --unattended - az ügynök beállítása nem kér információt, és minden beállítást meg kell adni a parancssorban
  • --url <url> – A kiszolgáló URL-címe. Például: https://dev.azure.com/myorganization vagy http://my-azure-devops-server:8080/tfs
  • --auth <type> – hitelesítési típus. Az érvényes értékek a következők:
    • pat (Személyes hozzáférési jogkivonat)
    • SP (Szolgáltatási főszemély) (Az ügynök 3.227.1-es vagy újabb verzióját igényli)
    • negotiate (Kerberos vagy NTLM)
    • alt (alapszintű hitelesítés)
    • integrated (A Windows alapértelmezett hitelesítő adatai)

Hitelesítési lehetőségek

  • Ha a --auth pat-et választja:
    • --token <token> - meghatározza a személyes hozzáférési tokent
    • Az OAuth 2.0-jogkivonatot is átadhatja paraméterként --token formájában.
  • Ha --auth negotiate-t vagy --auth alt-t választotta:
    • --userName <userName> - a Windows-felhasználónevet a következő formátumban domain\userName adja meg: userName@domain.com
    • --password <password> - jelszót ad meg
  • Ha a --auth SP-et választja:
    • --clientID <clientID> - megadja a szolgáltatási megbízott ügyfél-azonosítóját a hozzáférési jogával az ügynökök regisztrálásához
    • --tenantId <tenantID> - megadja azt a bérlőazonosítót, amelyben a szolgáltatásazonosító regisztrálva van
    • --clientSecret <clientSecret> - megadja a szolgáltatási főnök ügyféltitkát
    • További információért lásd: Ügynök regisztrálása szolgáltatási főnév használatával

Pool- és ügynöknevek

  • --pool <pool> - az ügynök csatlakozási csoportneve
  • --agent <agent> – ügynök neve
  • --replace – cserélje le az ügynököt egy csoportban. Ha egy másik ügynök ugyanazzal a névvel működik, működésében konfliktus miatt meg fog hibásodni.

Ügynök beállítása

  • --work <workDirectory> – a feladatadatok tárolására szolgáló munkakönyvtár. Alapértelmezés szerint _work az ügynökkönyvtár gyökerében található. A munkakönyvtár egy adott ügynök tulajdonában van, és nem osztható meg több ügynök között.
  • --acceptTeeEula - fogadja el a Team Explorer Mindenhol végfelhasználói licencszerződést (csak macOS és Linux rendszeren)
  • --disableloguploads - ne streamelje vagy küldje el a konzolnapló kimenetét a kiszolgálónak. Ehelyett letöltheti őket az ügynök kiszolgáló fájlrendszeréből a feladat befejezése után.

Csak Windows rendszerű indítás

  • --runAsService – konfigurálja az ügynököt Windows-szolgáltatásként való futtatásra (rendszergazdai engedély szükséges)
  • --runAsAutoLogon – automatikus bejelentkezés konfigurálása és az ügynök futtatása indításkor (rendszergazdai engedély szükséges)
  • --windowsLogonAccount <account> - a Windows-felhasználónév megadására a --runAsService vagy a --runAsAutoLogon segítségével a domain\userName vagy a userName@domain.com formátumában szolgál
  • - a Windows bejelentkezési jelszavával vagy megadásával használható, ez nem szükséges a csoportosan felügyelt szolgáltatásfiókokhoz és az olyan beépített Windows-fiókokhoz , mint az 'NT AUTHORITY\NETWORK SERVICE'
  • --enableservicesidtypeunrestricted - az ügynök konfigurálásához a szolgáltatás SID típust --runAsService használva (rendszergazdai engedély szükséges) SERVICE_SID_TYPE_UNRESTRICTED
  • --overwriteAutoLogon - a --runAsAutoLogon meglévő automatikus bejelentkezés felülírására szolgál a gépen
  • --noRestart - a --runAsAutoLogon-el együtt használják, hogy megakadályozza a gazdagép újraindítását az ügynökkonfiguráció befejezése után

Az ügynök runAsAutoLogon opcióval történő konfigurálásának hibaelhárítása

Az ügynök runAsAutoLogon opcióval történő konfigurálása minden alkalommal futtatja az ügynököt a gép újraindítása után. Végezze el a következő lépéseket, ha az ügynök nem fut a gép újraindítása után.

Ha az ügynök már konfigurálva van a gépen

Az ügynök újrakonfigurálása előtt el kell távolítani a régi ügynökkonfigurációt, ezért próbálja meg futtatni ezt a parancsot az ügynökmappából:

.\config.cmd remove --auth 'PAT' --token '<token>'

Ellenőrizze, hogy az ügynök el lett-e távolítva az ügynökkészletből a parancs végrehajtása után:

<Azure DevOps organization> / <Project> / Settings / Agent pools / <Agent Pool> / Agents

Távolítsa el manuálisan az ügynököt az ügynökkészletből, ha az nem lett eltávolítva a parancs futtatásával.

Ezután próbálja meg újra konfigurálni az ügynököt úgy, hogy az ügynökmappából futtatja a következő parancsot:

.\config.cmd --unattended --agent '<agent-name>' --pool '<agent-pool-name>' --url '<azure-dev-ops-organization-url>' --auth 'PAT' --token '<token>' --runAsAutoLogon --windowsLogonAccount '<domain\user-name>' --windowsLogonPassword '<windows-password>'

Adja meg az ügynök nevét (bármilyen egyedi nevet), és ellenőrizze, hogy az ügynök megjelent-e az ügynökkészletben az újrakonfigurálás után.

Sokkal jobb lesz kicsomagolni egy ügynökarchívumot (amely innen tölthető le), és futtatni ezt a parancsot az új kicsomagolt ügynökmappából.

Ellenőrizze, hogy a Windows beállításkulcsa helyesen van-e rögzítve és mentve

Futtassa a whoami /user parancsot a <sid> lekéréséhez. Nyissa meg Registry Editor és kövesse az elérési utat:

Computer\HKEY_USERS\<sid>\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Ellenőrizze, hogy van-e kulcs VSTSAgent . Ha létezik, törölje ezt a kulcsot, majd zárja be Registry Editor és konfigurálja az ügynököt az ügynökmappából a .\config.cmd parancs (args nélkül) futtatásával. A kérdés Enter Restart the machine at a later time?megválaszolása előtt nyissa meg Registry Editor újra, és ellenőrizze, hogy megjelent-e a VSTSAgent kulcs. Nyomja le Enter a választ a kérdésre, és ellenőrizze, hogy a kulcs a VSTSAgent helyén marad-e a gép újraindítása után.

Ellenőrizze, hogy a Windows beállításkulcsai jól működnek-e a számítógépen

Hozzon létre egy autorun.cmd fájlt, amely a következő sort tartalmazza: echo "Hello from AutoRun!". Nyissa meg Registry Editor, és az előző útvonalon hozzon létre egy új kulcs-érték párt a kulccsal AutoRun és az értékkel.

C:\windows\system32\cmd.exe /D /S /C start "AutoRun" "D:\path\to\autorun.cmd"

Indítsa újra a gépet. Probléma merült fel a Windows rendszerleíró kulcsaival kapcsolatban, ha nem jelenik meg a(z) Hello from AutoRun! üzenetet tartalmazó konzolablak.

Csak üzembe helyezési csoport

  • --deploymentGroup - konfigurálja az ügynököt üzembehelyezési csoport ügynökeként
  • --deploymentGroupName <name> - a --deploymentGroup üzembehelyezési csoport megadására szolgál, amelyhez az ügynök csatlakozni fog
  • --projectName <name>--deploymentGroup-el együtt a projektnév beállításához használva
  • --addDeploymentGroupTags – a --deploymentGroup használatával azt jelezzük, hogy az üzembehelyezési csoport címkéit hozzá kell adni
  • --deploymentGroupTags <tags> - a --addDeploymentGroupTags-vel együtt használható az üzembe helyezési csoport ügynöke címkéinek vesszővel elválasztott listájának megadásához – például "web, db"

Csak környezetekre vonatkozik

  • --addvirtualmachineresourcetags - azt jelzi, hogy a környezeti erőforráscímkéket hozzá kell adni
  • --virtualmachineresourcetags <tags> – a --addvirtualmachineresourcetags a környezeti erőforrásügynök címkéinek vesszővel tagolt listájának megadására szolgál – például "web, db"

.\config --help mindig felsorolja a legújabb szükséges és választható válaszokat.

Diagnosztika

Ha problémája van a saját hosztolású ügynökével, próbálja meg lefuttatni a diagnosztikai vizsgálatokat. Az ügynök konfigurálása után:

.\run --diagnostics

Ez egy diagnosztikai csomagon fog keresztülfutni, amely segíthet a probléma elhárításában. A diagnosztikai funkció az ügynök 2.165.0-s verziójától kezdve érhető el.

Hálózati diagnosztika saját üzemeltetésű ügynökökhöz

Állítsa a Agent.Diagnostic értékét true-re annak érdekében, hogy összegyűjthessék a saját üzemeltetésű ügynökök hálózati problémáinak elhárításához használható további naplókat. További információ: Hálózati diagnosztika saját üzemeltetésű ügynökökhöz

Súgó más beállításokhoz

Ha többet szeretne megtudni a további lehetőségekről:

.\config --help

A súgó tájékoztatást nyújt a hitelesítési alternatívákról és a felügyelet nélküli konfigurációról.

Képességek

Az ügynök képességei katalogizálva és meghirdetve vannak a poolban, így csak azokat a buildeket és kiadásokat rendelik hozzá, amelyeket képes kezelni. Lásd: Építési és kiadási ágens képességei.

Az ügynök üzembe helyezése után sok esetben szoftvereket vagy segédprogramokat kell telepítenie. Általában telepítenie kell az ügynökeire azokat a szoftvereket és eszközöket, amelyeket a fejlesztőgépen használ.

Ha például a build tartalmazza az npm feladatot, akkor a build csak akkor fut, ha van egy buildügynök a készletben, amelyen telepítve van az npm.

Fontos

A képességek közé tartozik az összes környezeti változó és az ügynök futtatásakor beállított értékek. Ha ezen értékek bármelyike megváltozik az ügynök futása közben, az ügynököt újra kell indítani az új értékek felvételéhez. Miután telepítette az új szoftvert egy ügynökre, újra kell indítania az ügynököt, hogy az új képesség megjelenjen a készlettárban, így a build elindítható legyen.

Ha ki szeretné zárni a környezeti változókat képességekként, kijelölheti őket úgy, hogy beállít egy környezeti változót VSO_AGENT_IGNORE a figyelmen kívül hagyandó változók vesszővel tagolt listájával.

GYIK

A Git melyik verzióját futtatja az ügynököm?

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 győződhetek meg arról, hogy a legújabb ügynökverzióval rendelkezem?

  1. Lépjen az Ügynökkészletek lapra:

    1. Jelentkezzen be a szervezetbe (https://dev.azure.com/{yourorganization}).

    2. Válassza az Azure DevOps>Organization beállításait.

      Képernyőkép a Szervezeti beállítások kiválasztásáról.

    3. Válassza ki az Ügynökkészleteket.

      Képernyőkép, amely megmutatja, hogyan lehet kiválasztani az Ügynökkészletek lapot.

    1. Jelentkezzen be a projektgyűjteménybe (http://your-server/DefaultCollection).

    2. Válassza ki az Azure DevOps>Collection beállításait.

      Képernyőkép a Gyűjtemény beállításainak kiválasztásáról.

    3. Válassza ki az Ügynökkészleteket.

      Válassza ki az Ügynökkészleteket.

    Képernyőkép az ügynökkészletek megtekintéséről és kiválasztásáról.

  2. Kattintson az ügynököt tartalmazó poolra.

  3. Győződjön meg arról, hogy az ügynök engedélyezve van.

  4. Lépjen a Képességek lapra:

    1. Az Ügynökkészletek lapon válassza ki a kívánt ügynökkészletet.

      Ügynökkészletekből válassza ki a kívánt ügynökkészletet.

    2. Válassza ki az Ügynökök lehetőséget, és válassza ki a kívánt ügynököt.

      Válassza az Ügynökök lehetőséget, és válassza ki az ügynököt.

    3. Válassza a Képességek lapot.

      Válassza ki a Képességek lapot.

      Megjegyzés

      A Microsoft által üzemeltetett ügynökök nem jelenítik meg a rendszer képességeit. A Microsoft által üzemeltetett ügynökökre telepített szoftverek listáját a Microsoft által üzemeltetett ügynök használatacímű témakörben találja.

    1. Az Ügynökkészletek lapon válassza ki a kívánt készletet.

      Válassza ki a kívánt készletet.

    2. Válassza ki az Ügynökök lehetőséget, és válassza ki a kívánt ügynököt.

      Ügynökök kiválasztása és a kívánt ügynök kiválasztása.

    3. Válassza a Képességek lapot.

      Ügynök képességei lap.

  5. Keresse a Agent.Version funkciót. Ezt az értéket a legújabb közzétett ügynökverzióval összevetheti. Tekintse meg az Azure Pipelines-ügynököt , és ellenőrizze a listán szereplő legmagasabb verziószámot.

  6. Minden ügynök automatikusan frissíti magát, amikor olyan feladatot futtat, amely az ügynök újabb verzióját igényli. Ha manuálisan szeretne frissíteni néhány ügynököt, kattintson a jobb gombbal a csoportra, és válassza Az ügynökök frissítéselehetőséget.

Frissíthetem az Azure DevOps Server-készlet részét képező ügynökeimet?

Igen. Az Azure DevOps Server 2019-től kezdve konfigurálhatja a kiszolgálót, hogy keresse meg az ügynökcsomag fájljait egy helyi lemezen. Ez a konfiguráció felülbírálja a kiszolgálóhoz a kiadás időpontjában kapott alapértelmezett verziót. Ez a forgatókönyv akkor is érvényes, ha a kiszolgáló nem rendelkezik internet-hozzáféréssel.

  1. Internet-hozzáféréssel rendelkező számítógépről töltse le az ügynökcsomag-fájlok legújabb verzióját (.zip vagy .tar.gz formában) az Azure Pipelines Agent GitHub Releases oldaláról.

  2. A letöltött csomagfájlok átvitele minden Azure DevOps Server-alkalmazásszintre egy tetszőleges módszerrel (például USB-meghajtó, hálózati átvitel stb.). Helyezze az ügynökfájlokat a következő mappába:

  • Windows: %ProgramData%\Microsoft\Azure DevOps\Agents
  • Linux: usr/share/Microsoft/Azure DevOps/Agents
  • macOS: usr/share/Microsoft/Azure DevOps/Agents

Hozza létre az Ügynökök mappát, ha nincs jelen.

  1. Kész vagy! Az Azure DevOps Server mostantól a helyi fájlokat fogja használni az ügynökök frissítésekor. Minden ügynök automatikusan frissíti magát, amikor olyan feladatot futtat, amely az ügynök újabb verzióját igényli. Ha azonban manuálisan szeretne frissíteni néhány ügynököt, kattintson a jobb gombbal a készletre, majd válassza a Az összes ügynök frissítéselehetőséget.

Tűzfalat használok, és a kódom az Azure Reposban van. Milyen URL-címekkel kell kommunikálnia az ügynöknek?

Ha egy tűzfal mögött biztonságos hálózaton futtat ügynököt, győződjön meg arról, hogy az ügynök kezdeményezhet kommunikációt az alábbi URL-címekkel és IP-címekkel.

Tartomány URL-je Leírás
https://{organization_name}.pkgs.visualstudio.com Azure DevOps Packaging API a {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://{organization_name}.visualstudio.com A {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://{organization_name}.vsblob.visualstudio.com Azure DevOps-telemetria a {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://{organization_name}.vsrm.visualstudio.com Kiadáskezelési szolgáltatások a {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://{organization_name}.vssps.visualstudio.com Azure DevOps Platform Services a {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://{organization_name}.vstmr.visualstudio.com Azure DevOps Test Management Services a {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://*.blob.core.windows.net Azure Artifacts
https://*.dev.azure.com A dev.azure.com tartományt használó szervezetek számára
https://*.vsassets.io Azure Artifacts a CDN-en keresztül
https://*.vsblob.visualstudio.com Azure DevOps-telemetria a dev.azure.com tartományt használó szervezetek számára
https://*.vssps.visualstudio.com Azure DevOps Platform Services a dev.azure.com tartományt használó szervezetek számára
https://*.vstmr.visualstudio.com Azure DevOps Test Management Services a dev.azure.com tartományt használó szervezetek számára
https://app.vssps.visualstudio.com A {organization_name}.visualstudio.com tartományt használó szervezetek számára
https://dev.azure.com A dev.azure.com tartományt használó szervezetek számára
https://login.microsoftonline.com Microsoft Entra-bejelentkezés
https://management.core.windows.net Azure Management API-k
https://download.agent.dev.azure.com Ügynökcsomag

Fontos

Az Azure DevOpshoz készült Edgio CDN ki lett állítva, ami megköveteli egy új tartomány URL-címének engedélyezését az ügynökszoftver letöltésére vonatkozó tűzfalszabályokban. Az új tartomány, amelyet fel kell venni az ügynök letöltési engedélyezett listájára, a következő: https://*.dev.azure.com. Ha a tűzfalszabályok nem engedélyezik a helyettesítő karaktereket, használja a .https://download.agent.dev.azure.com

Az Azure DevOps csapata a következő dátumig javasolja a módosítást:

  • 2025. május 1. az Azure DevOps Services számára
  • 2025. május 15. az Azure DevOps Serverhez

További információkért tekintse meg a CDN-tartomány URL-címének módosítását a csatornákban található ügynökök számára.

Annak érdekében, hogy a szervezet kompatibilis legyen a meglévő tűzfal- vagy IP-korlátozásokkal, ellenőrizze, hogy dev.azure.com és *dev.azure.com nyitva vannak, és frissítse az engedélyezett IP-címek listáját a következő IP-címekkel az IP-verziója alapján. Ha jelenleg a 13.107.6.183 és 13.107.9.183 IP-címek engedélyezési listáján szerepelnek, hagyja őket a helyükön, mivel nem szükséges eltávolítani őket.


13.107.6.0/24
13.107.9.0/24
13.107.42.0/24
13.107.43.0/24
150.171.22.0/24 
150.171.23.0/24 
150.171.73.0/24 
150.171.74.0/24 
150.171.75.0/24 
150.171.76.0/24

Megjegyzés

További információ az engedélyezett címekről: Engedélyezett címlisták és hálózati kapcsolatok.

Hogyan futtathatom a szoftverügynököt önaláírt tanúsítvánnyal?

Megjegyzés

Az ügynök önaláírt tanúsítvánnyal való futtatása csak az Azure DevOps Serverre vonatkozik.

Futtassa az ügynököt önaláírt tanúsítvánnyal

Hogyan futtathatom az ügynököt egy webproxy mögött?

Az ügynök futtatása web proxy mögött

Hogyan indíthatom újra az ügynököt?

Ha interaktívan futtatja az ügynököt, tekintse meg a Futtatás interaktívan című témakör újraindítási utasításait. Ha szolgáltatásként futtatja az ügynököt, indítsa újra az ügynököt a Futtatás szolgáltatásként lépésekkel.

Hogyan állíthatok be különböző környezeti változókat az egyes ügynökökhöz?

Hozzon létre egy .env fájlt az ügynök gyökérkönyvtára alatt, és helyezze a fájlba beállítani kívánt környezeti változókat az alábbi formátumban, majd indítsa újra az ügynököt.

MyEnv0=MyEnvValue0
MyEnv1=MyEnvValue1
MyEnv2=MyEnvValue2
MyEnv3=MyEnvValue3
MyEnv4=MyEnvValue4

Hogyan konfigurálhatom az ügynököt úgy, hogy megkerüljön egy webes proxyt, és csatlakozzon az Azure Pipelineshoz?

Ha azt szeretné, hogy az ügynök megkerülje a proxyt, és közvetlenül csatlakozzon az Azure Pipelineshoz, akkor úgy kell konfigurálnia a webes proxyt, hogy az ügynök hozzáférhessen a következő URL-címekhez.

A *.visualstudio.com tartományt használó szervezetek esetén:

https://login.microsoftonline.com
https://app.vssps.visualstudio.com 
https://{organization_name}.visualstudio.com
https://{organization_name}.vsrm.visualstudio.com
https://{organization_name}.vstmr.visualstudio.com
https://{organization_name}.pkgs.visualstudio.com
https://{organization_name}.vssps.visualstudio.com

A dev.azure.com tartományt használó szervezetek esetén:

https://dev.azure.com
https://*.dev.azure.com
https://login.microsoftonline.com
https://management.core.windows.net
https://download.agent.dev.azure.com
https://vssps.dev.azure.com

Annak érdekében, hogy a szervezet kompatibilis legyen a meglévő tűzfal- vagy IP-korlátozásokkal, ellenőrizze, hogy dev.azure.com és *dev.azure.com nyitva vannak, és frissítse az engedélyezett IP-címek listáját a következő IP-címekkel az IP-verziója alapján. Ha jelenleg a 13.107.6.183 és 13.107.9.183 IP-címek engedélyezési listáján szerepelnek, hagyja őket a helyükön, mivel nem szükséges eltávolítani őket.


13.107.6.0/24
13.107.9.0/24
13.107.42.0/24
13.107.43.0/24
150.171.22.0/24 
150.171.23.0/24 
150.171.73.0/24 
150.171.74.0/24 
150.171.75.0/24 
150.171.76.0/24

Megjegyzés

Ez az eljárás lehetővé teszi, hogy az ügynök megkerüljön egy webes proxyt. A buildelési folyamatnak és a szkripteknek továbbra is kezelnie kell a webes proxy megkerülését a buildben futtatott minden feladathoz és eszközhöz.

Ha például NuGet-feladatot használ, konfigurálnia kell a webes proxyt, hogy támogassa a használt NuGet-hírcsatorna URL-címének megkerülését.

TFS-t használok, és a fenti szakaszok URL-címei nem működnek nekem. Hol kaphatok segítséget?

Webhely beállításai és biztonsága

Miért nem látom ezeket a funkciókat a helyszíni Azure DevOps Serveren?

Ezen funkciók némelyike csak az Azure DevOps Services szolgáltatásban érhető el, és nem érhető el a helyszíni Azure DevOps Serverhez. Egyes funkciók csak az Azure DevOps Server legújabb verziójában érhetők el.

Mi az ügynökszolgáltatás SERVICE_SID_TYPE_UNRESTRICTED engedélyezése?

Ha az ügynökszoftvert Windows Serveren konfigurálja, az alábbi parancssorból megadhatja a szolgáltatás biztonsági azonosítóját.

Enter enable SERVICE_SID_TYPE_UNRESTRICTED for agent service (Y/N) (press enter for N)

Az ügynökszoftver korábbi verziói a szolgáltatásbiztonsági azonosító típusát SERVICE_SID_TYPE_NONEaz aktuális ügynökverziók alapértelmezett értékére állítják be. A biztonsági szolgáltatás azonosítótípusának konfigurálásához nyomja meg a SERVICE_SID_TYPE_UNRESTRICTED gombot Y.

További információ: SERVICE_SID_INFO struktúra és biztonsági azonosítók.