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

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Fontos

Ez a cikk útmutatást nyújt a 3.x ügynökszoftver Azure DevOps Services szolgáltatással való használatához. Ha Azure DevOps Servert vagy TFS-t használ, tekintse meg a saját üzemeltetésű Linux-ügynököket (az ügynök 2.x-es verzióját).

Figyelemfelhívás

Ez a cikk a CentOS-ra, egy olyan Linux-disztribúcióra hivatkozik, amely közel áll az élettartam (EOL) állapotához. Ennek megfelelően fontolja meg a használatot és a tervezést. További információ: CentOS End Of Life útmutató.

A feladatok futtatásához legalább egy ügynökre van szüksége. A Linux-ügynökök különböző típusú alkalmazásokat hozhatnak létre és helyezhetnek üzembe, például Java- és Android-alkalmazásokat. Lásd: A támogatott Linux-disztribúciók listájának előfeltételeinek ellenőrzése.

Feljegyzés

Ez a cikk bemutatja, hogyan konfigurálhat 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ű Linux-ü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 háttérre van szüksége a működésükről és működésükről, tekintse meg az Azure Pipelines-ügynököket.

Előfeltételek ellenőrzése

Az ügynök a .NET 6-on alapul. Ezt az ügynököt több Linux-disztribúción is futtathatja. A .NET 6 támogatott disztribúcióinak alábbi részhalmazát támogatjuk:

  • Támogatott disztribúciók
    • x64
      • CentOS 7, 8
      • Debian 10+
      • Fedora 36+
      • openSU Standard kiadás 15+
      • Red Hat Enterprise Linux 7+
        • Már nincs szükség külön csomagra
      • SU Standard kiadás Enterprise Linux 12 SP2 vagy újabb verzió
      • Ubuntu 22.04, 20.04, 18.04, 16.04
      • Azure Linux 2.0
    • ARM64
      • Debian 10+
      • Ubuntu 22.04, 20.04, 18.04
    • Alpine x64
  • Git – A platformtól függetlenül telepítenie kell a Git 2.9.0-s vagy újabb verzióját. Határozottan javasoljuk a Git legújabb verziójának telepítését.
  • .NET – Az ügynökszoftver a .NET 6-on fut, de telepíti a .NET saját verzióját, így nincs .NET-előfeltétel.
  • Subversion – Ha egy Subversion-adattárból készül, telepítenie kell a Subversion-ügyfelet a gépre.
  • TFVC – Ha TFVC-adattárból készül, tekintse meg a TFVC előfeltételeit.

Feljegyzés

Az ügynök telepítője tudja, hogyan kereshet más függőségeket. Ezeket a függőségeket az ügynökkönyvtárban futtatva ./bin/installdependencies.sh telepítheti a támogatott Linux-platformokra.

Vegye figyelembe, hogy a .NET által megkövetelt függőségek némelyike külső webhelyekről, például packages.efficios.com. A szkript futtatása előtt tekintse át a installdependencies.sh szkriptet, és győződjön meg arról, hogy a hivatkozott külső webhelyek elérhetők a Linux-gépről.

Győződjön meg arról is, hogy az összes szükséges adattár csatlakoztatva van a (hasonló vagy zypperhasonlóapt) rendszerben használt installdependencies.sh megfelelő csomagkezelőhöz.

A függőségek telepítésével kapcsolatos problémák esetén (például a "függőség nem található az adattárban" vagy a "probléma az adattár indexfájljának lekérésével" – további támogatásért lépjen kapcsolatba a terjesztési tulajdonossal.

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.

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, ha az ügynököt futtató identitás nem azonos az ügynök készlethez való csatlakoztatásához 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. Rendszergazda istratoroknak esetleg 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 meg, 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 szervezeti beállításait.

      Válassza a Szervezeti beállítások lehetőséget.

    3. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek lapot.

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

    2. Válassza az Azure DevOps gyűjteménybeállításait.

      Válassza a Gyűjtemény beállításai lehetőséget.

    3. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek lehetőséget.

    1. Válassza az Azure DevOps gyűjteménybeállításait.

      Gyűjteménybeállítások, 2019.

    2. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek 2019 lehetőséget.

  2. Jelölje ki a készletet a lap jobb oldalán, majd kattintson a Biztonság gombra.

  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 üzembehelyezési csoport ügynök, a rendszergazda lehet üzembehelyezési csoport rendszergazdája, Azure DevOps-szervezet tulajdonosa, TFS- vagy Azure DevOps Server-rendszergazda.

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

Feljegyzé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 az előző szakaszban 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 szervezeti beállításait.

      Válassza a Szervezeti beállítások lehetőséget.

    3. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek lapot.

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

    2. Válassza az Azure DevOps gyűjteménybeállításait.

      Válassza a Gyűjtemény beállításai lehetőséget.

    3. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek lehetőséget.

    1. Válassza az Azure DevOps gyűjteménybeállításait.

      Gyűjteménybeállítások, 2019.

    2. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek 2019 lehetőséget.

  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 kattintson a Linux gombra.

  5. A bal oldali panelen válassza ki az adott ízt. Számos Linux-disztribúcióhoz kínálunk x64-et vagy ARM-t.

  6. A jobb oldali panelen kattintson a Letöltés gombra.

  7. Kövesse az oldalon található utasításokat.

  8. Csomagolja ki az ügynököt a választott könyvtárba. cd könyvtárba, és futtassa ./config.sh.

Kiszolgáló URL-címe

Azure Pipelines: https://dev.azure.com/{your-organization}

Hitelesítés típusa

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

Interaktív futtatás

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.

Az ügynök interaktív futtatása:

  1. Ha az ügynököt szolgáltatásként futtatta, távolítsa el a szolgáltatást.

  2. Futtassa az ügynököt.

    ./run.sh
    

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

Az ügynök használatához futtasson egy feladatot az ügynök készletével. Ha nem választott másik készletet, az ügynök az Alapértelmezett készletbe kerül.

Futtatás egyszer

Az interaktív futtatásra konfigurált ügynökök esetében dönthet úgy, hogy az ügynök csak egy feladatot fogad el. Ebben a konfigurációban való futtatáshoz:

./run.sh --once

Ebben a módban az ügynökök csak egy feladatot fogadnak el, majd elegánsan pörögnek le (ez hasznos a Dockerben egy olyan szolgáltatáson, mint az Azure Container Instances).

Futtatás rendszerszintű szolgáltatásként

Ha az ügynök ezeken az operációs rendszereken fut, az ügynököt szolgáltatásként systemd futtathatja:

  • Ubuntu 16 LTS vagy újabb
  • Red Hat 7.1 vagy újabb

Egy példaszkriptet ./svc.sh biztosítunk az ügynök szolgáltatásként systemd való futtatásához és kezeléséhez. Ez a szkript az ügynök konfigurálása után jön létre. Javasoljuk, hogy tekintse át, és szükség esetén frissítse a szkriptet a futtatás előtt.

Néhány fontos kikötés:

  • Ha az ügynököt szolgáltatásként futtatja, az ügynökszolgáltatás nem futtatható felhasználóként root .
  • A Standard kiadás Linux-t futtató felhasználók nehézségekről számoltak be a megadott svc.sh szkripttel kapcsolatban. Tekintse meg ezt az ügynökproblémát kiindulópontként. Standard kiadás Linux nem hivatalosan támogatott konfiguráció.

Feljegyzés

Ha más elosztással rendelkezik, vagy más megközelítéseket szeretne használni, bármilyen szolgáltatási mechanizmust használhat. Lásd: Szolgáltatásfájlok.

Parancsok

Váltás az ügynökkönyvtárra

Ha például a myagent kezdőkönyvtár almappájában van telepítve:

cd ~/myagent$

Telepítés

Parancs:

sudo ./svc.sh install [username]

Ez a parancs létrehoz egy szolgáltatásfájlt, amely a gombra ./runsvc.shmutat. Ez a szkript beállítja a környezetet (további részletek alább), és elindítja az ügynökök gazdagépét. Ha username a paraméter nincs megadva, a felhasználónév a sudo parancs által beállított $SUDO_U Standard kiadás R környezeti változóból származik. Ez a változó mindig megegyezik annak a felhasználónak a nevével, aki meghívta a sudo parancsot.

Indítás

sudo ./svc.sh start

Állapot

sudo ./svc.sh status

Leállítás

sudo ./svc.sh stop

Eltávolítás

Az eltávolítás előtt le kell állnia.

sudo ./svc.sh uninstall

Környezeti változók frissítése

A szolgáltatás konfigurálásakor pillanatképet készít az aktuális bejelentkezési felhasználó néhány hasznos környezeti változójáról, például a PATH, a LANG, a JAVA_HOME, a ANT_HOME és a MYSQL_PATH. Ha frissítenie kell a változókat (például egy új szoftver telepítése után):

./env.sh
sudo ./svc.sh stop
sudo ./svc.sh start

A környezeti változók pillanatképét az ügynök gyökérkönyvtárában .pathtárolt fájlban .envPATH tárolja a rendszer, ezeket a fájlokat közvetlenül is módosíthatja a környezeti változók módosításainak alkalmazásához.

Utasítások futtatása a szolgáltatás elindítása előtt

A szolgáltatás indításakor saját utasításokat és parancsokat is futtathat. Beállíthatja például a környezetet, vagy meghívhat szkripteket.

  1. Szerkesztés runsvc.sh.

  2. Cserélje le a következő sort az utasításokra:

    # insert anything to setup env when running as a service
    

Szolgáltatásfájlok

A szolgáltatás telepítésekor a rendszer néhány szolgáltatásfájlt üzembe helyez.

systemd service file

Létrejön egy systemd szolgáltatásfájl:

/etc/systemd/system/vsts.agent.{tfs-name}.{agent-name}.service

Például konfigurált egy ügynököt (lásd fent) a névvel our-linux-agent. A szolgáltatásfájl a következő lesz:

  • Azure Pipelines: a szervezet neve. Ha például csatlakozik, https://dev.azure.com/fabrikamakkor a szolgáltatás neve /etc/systemd/system/vsts.agent.fabrikam.our-linux-agent.service

  • TFS vagy Azure DevOps Server: a helyszíni kiszolgáló neve. Ha például csatlakozik, http://our-server:8080/tfsakkor a szolgáltatás neve /etc/systemd/system/vsts.agent.our-server.our-linux-agent.service

sudo ./svc.sh install a következő sablonból hozza létre ezt a fájlt: ./bin/vsts.agent.service.template

.service fájl

sudo ./svc.sh start megkeresi a szolgáltatást a .service fájl elolvasásával, amely tartalmazza a fent leírt rendszerszintű szolgáltatásfájl nevét.

Alternatív szolgáltatási mechanizmusok

A szkriptet kényelmesen biztosítjuk ./svc.sh az ügynök rendszerezett szolgáltatásként való futtatásához és kezeléséhez. De bármilyen szolgáltatási mechanizmust használhat (például initd vagy upstart).

A fent leírt sablont más típusú szolgáltatásfájlok létrehozásának megkönnyítésére használhatja.

Csoport használata az ügynök meghibásodásának elkerüléséhez

Fontos elkerülni azokat a helyzeteket, amikor az ügynök meghibásodik vagy használhatatlanná válik, mert ellenkező esetben az ügynök nem tudja streamelni a folyamatnaplókat vagy a jelentési folyamat állapotát a kiszolgálóra. A magas memóriaterhelés által okozott ilyen típusú problémák kockázatát csökkentheti a használatukkal cgroups és az alacsonyabb oom_score_adjmemóriaterheléssel. Ezt követően a Linux visszanyeri a rendszermemóriát a folyamatfeladat-folyamatokból, mielőtt visszavennénk a memóriát az ügynökfolyamatból. Útmutató a konfiguráláshoz cgroups és az OOM-pontszámhoz.

Ügynök cseréje

Az ügynök cseréjéhez kövesse a Letöltés elemet, és konfigurálja újra az ügynök 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 válaszol Y, távolítsa el a lecserélt ü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:

  1. Állítsa le és távolítsa el a szolgáltatást az előző szakaszban leírtak szerint.

  2. Távolítsa el az ügynököt.

    ./config.sh remove
    
  3. Adja meg a hitelesítési adatait.

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. Át kell adnia --unattended a válaszokat az összes kérdésre.

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ó helyette egy környezeti változóval: írja be a nevét nagybetűsre, és írja elő.VSTS_AGENT_INPUT_ Például a VSTS_AGENT_INPUT_PASSWORD beállítás --passwordhelyett.

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) – A PAT az egyetlen séma, amely az Azure DevOps Services szolgáltatással működik.
    • alt (Alapszintű hitelesítés)

Hitelesítési lehetőségek

  • Ha a következőt választotta --auth pat:
    • --token <token> - megadja a személyes hozzáférési jogkivonatot
    • A PAT az egyetlen séma, amely az Azure DevOps Services szolgáltatással működik.
  • Ha a következőt választotta, --auth negotiate vagy --auth alt:
    • --userName <userName> - felhasználónevet ad meg
    • --password <password> - jelszót ad meg

Készlet- és ügynöknevek

  • --pool <pool> - a csatlakozni kívánt ügynök készletneve
  • --agent <agent> - ügynök neve
  • --replace - cserélje le az ügynököt egy készletben. Ha egy másik ügynök ugyanazzal a névvel figyel, ütközéssel fog meghiúsulni

Ügynök beállítása

  • --work <workDirectory> - munkakönyvtár, ahol a feladatadatok tárolódnak. Alapértelmezés szerint _work az ügynökkönyvtár gyökeréhez tartozik. 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 lekérheti őket az ügynök gazdagép fájlrendszeréből a feladat befejezése után.

Csak üzembehelyezési csoport

  • --deploymentGroup - konfigurálja az ügynököt üzembehelyezési csoport ügynökeként
  • --deploymentGroupName <name> - a --deploymentGroup csatlakoztatni kívánt ügynök üzembehelyezési csoportjának megadására szolgál
  • --projectName <name> - a projekt nevének beállításához --deploymentGroup használatos
  • --addDeploymentGroupTags - az üzembehelyezési csoport címkéinek hozzáadásának jelzésére --deploymentGroup szolgál
  • --deploymentGroupTags <tags> - az üzembehelyezési csoport ügynöke címkéinek vesszővel --addDeploymentGroupTags tagolt listájának megadásával használható – például "web, db"

Csak környezetek

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

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

Diagnosztika

Ha problémába ütközik a saját üzemeltetésű ügynökével, próbálja meg futtatni a diagnosztikát. Az ügynök konfigurálása után:

./run.sh --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

Adja meg az érték értékét Agent.Diagnostic , true hogy további naplókat gyűjtsön, amelyek a saját üzemeltetésű ügynökök hálózati problémáinak elhárításához használhatók. További információért lásd: Helyi ügynökök hálózati diagnosztikája.

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

További lehetőségek:

./config.sh --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 katalógusba vannak sorolva és meghirdetve a készletben, így csak a kezelni kívánt buildek és kiadások lesznek hozzá rendelve. Tekintse meg a buildelési és kiadási ügynök képességeit.

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

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észletben, hogy a build futhassa.

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

Hol tudhatok meg többet az új v3-ügynökszoftverről?

A v3-ügynökszoftverrel kapcsolatos információkért és gyakori kérdésekért tekintse meg az Ügynökszoftver 3. verzióját.

Hogyan győződjön 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 szervezeti beállításait.

      Válassza a Szervezeti beállítások lehetőséget.

    3. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek lapot.

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

    2. Válassza az Azure DevOps gyűjteménybeállításait.

      Válassza a Gyűjtemény beállításai lehetőséget.

    3. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek lehetőséget.

    1. Válassza az Azure DevOps gyűjteménybeállításait.

      Gyűjteménybeállítások, 2019.

    2. Válassza az Ügynökkészletek lehetőséget.

      Válassza az Ügynökkészletek 2019 lehetőséget.

  2. Kattintson az ügynököt tartalmazó készletre.

  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.

      Az ü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 a Képességek lapot.

      Feljegyzé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álata cí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.

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

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

      Ügynök képességei lap.

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

      Válassza ki a kívánt lapot, 2019.

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

      Válassza ki a kívánt ügynök, 2019.

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

      Válassza a Képességek lapot, 2019.

  5. Keresse meg a Agent.Version képességet. Ezt az értéket a legújabb közzétett ügynökverzióval ellenőrizheti. 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 készletre, és válassza az Összes ügynök frissítése lehető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. Minden be van állítva! 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 az Összes ügynök frissítése lehetőséget.

Miért van szükség sudo-ra a szolgáltatásparancsok futtatásához?

./svc.sh használja systemctl, amelyhez szükség van sudo.

Forráskód: systemd.svc.sh.template a GitHubon

Tűzfalat futtatok, é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 Tartományt {organization_name}.visualstudio.com használó szervezetek esetén
https://{organization_name}.vsblob.visualstudio.com Azure DevOps-telemetria a tartományt {organization_name}.visualstudio.com használó szervezetek számára
https://{organization_name}.vsrm.visualstudio.com Kiadáskezelési szolgáltatások a tartományt {organization_name}.visualstudio.com használó szervezetek számára
https://{organization_name}.vssps.visualstudio.com Azure DevOps Platform Services a tartományt {organization_name}.visualstudio.com 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 Tartományt dev.azure.com használó szervezetek esetén
https://*.vsassets.io Azure Artifacts a CDN-en keresztül
https://*.vsblob.visualstudio.com Azure DevOps-telemetria a tartományt dev.azure.com használó szervezetek számára
https://*.vssps.visualstudio.com Azure DevOps Platform Services a tartományt dev.azure.com 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 Tartományt {organization_name}.visualstudio.com használó szervezetek esetén
https://dev.azure.com Tartományt dev.azure.com használó szervezetek esetén
https://login.microsoftonline.com Microsoft Entra-bejelentkezés
https://management.core.windows.net Azure Management API-k
https://vstsagentpackage.azureedge.net Ügynökcsomag

Annak biztosítása érdekében, hogy a szervezet együttműködjön a meglévő tűzfal- vagy IP-korlátozásokkal, győződjön meg arról, hogy dev.azure.com nyitva vannak, *dev.azure.com és frissítik az engedélyezett IP-címeket, hogy az IP-verzió alapján az alábbi IP-címeket tartalmazzák. Ha jelenleg engedélyezve van az és az 13.107.6.18313.107.9.183 IP-címek felsorolása, hagyja őket helyben, mivel nem kell eltávolítania őket.

IPv4-tartományok

  • 13.107.6.0/24
  • 13.107.9.0/24
  • 13.107.42.0/24
  • 13.107.43.0/24

IPv6-tartományok

  • 2620:1ec:4::/48
  • 2620:1ec:a92::/48
  • 2620:1ec:21::/48
  • 2620:1ec:22::/48

Feljegyzés

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

Hogyan önaláírt tanúsítvánnyal futtatja az ügynököt?

Az ügynök futtatása önaláírt tanúsítvánnyal

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

Az ügynök futtatása webproxy mögött

Hogyan indítsa ú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 rendszerezett szolgáltatásként futtatja az ügynököt, kövesse a leállításhoz és az ügynök elindításához szükséges lépéseket.

Hogyan konfigurálja az ügynököt úgy, hogy megkerüljön egy webproxyt, é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.

Tartományt *.visualstudio.com 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

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

https://dev.azure.com
https://*.dev.azure.com
https://login.microsoftonline.com
https://management.core.windows.net
https://vstsagentpackage.azureedge.net
https://vssps.dev.azure.com

Annak biztosítása érdekében, hogy a szervezet együttműködjön a meglévő tűzfal- vagy IP-korlátozásokkal, győződjön meg arról, hogy dev.azure.com nyitva vannak, *dev.azure.com és frissítik az engedélyezett IP-címeket, hogy az IP-verzió alapján az alábbi IP-címeket tartalmazzák. Ha jelenleg engedélyezve van az és az 13.107.6.18313.107.9.183 IP-címek felsorolása, hagyja őket helyben, mivel nem kell eltávolítania őket.

IPv4-tartományok

  • 13.107.6.0/24
  • 13.107.9.0/24
  • 13.107.42.0/24
  • 13.107.43.0/24

IPv6-tartományok

  • 2620:1ec:4::/48
  • 2620:1ec:a92::/48
  • 2620:1ec:21::/48
  • 2620:1ec:22::/48

Feljegyzé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

A helyszíni TFS-t használom, és ezek közül néhányat nem látok. Miért igaz a fenti mondat?

Ezen funkciók némelyike csak az Azure Pipelinesban érhető el, és még nem érhető el a helyszínen. Egyes funkciók a helyszínen is elérhetők, ha a TFS legújabb verziójára frissített.

A TFVC előfeltételei

Ha TFVC-t használ, szüksége lesz az Oracle Java JDK 1.6-os vagy újabb verziójára is. (Az Oracle JRE és az OpenJDK nem elegendő ehhez a célra.)

A T Enterprise kiadás beépülő modul a TFVC funkcióihoz használható. Rendelkezik egy EULA-val, amelyet a konfiguráció során el kell fogadnia, ha a TFVC-vel szeretne dolgozni.

Mivel a T Enterprise kiadás beépülő modul már nem tart fenn, és tartalmaz néhány elavult Java-függőséget, az Ügynök 2.198.0-tól kezdve már nem szerepel az ügynökterjesztésben. A T Enterprise kiadás beépülő modul azonban le lesz töltve a kivételi feladat végrehajtása során, ha kivesz egy TFVC-adattárat. A T Enterprise kiadás beépülő modul a feladat végrehajtása után törlődik.

Feljegyzés

Megjegyzés: Előfordulhat, hogy a kifizetési feladat sok időt vesz igénybe a letöltési mechanizmus miatt.

Ha az ügynök proxy vagy tűzfal mögött fut, biztosítania kell a következő webhely elérését: https://vstsagenttools.blob.core.windows.net/. A T Enterprise kiadás beépülő modul innen tölthető le.

Ha saját üzemeltetésű ügynököt használ, és problémákat tapasztal a T Enterprise kiadás letöltésével kapcsolatban, a T Enterprise kiadás manuálisan telepítheti:

  1. Környezeti vagy folyamatváltozó beállítása DISABLE_TEE_PLUGIN_REMOVAL a következőre true: . Ez a változó megakadályozza, hogy az ügynök eltávolítsa a T Enterprise kiadás beépülő modult a TFVC-adattár kivétele után.
  2. Töltse le manuálisan a T Enterprise kiadás-CLC 14.135.0-s verzióját a Team Explorer Everywhere GitHub kiadásából.
  3. Bontsa TEE-CLC-14.135.0 ki a mappa tartalmát a következőre <agent_directory>/externals/tee: .