Megosztás:


Skálázás konfigurálása

A skálázási beállítások konfigurálásával kezelheti a felügyelt DevOps-készletek példányának teljesítményét és költségeit. A díjszabással és a teljesítménnyel kapcsolatos információkért lásd: Költség és teljesítmény kezelése.

Ügynök állapota

A készleteket a következőképpen konfigurálhatja:

  • Állapot nélküli: Minden feladathoz biztosítson egy új ügynököt.
  • Állapotalapú: Az ügynökök megosztásának engedélyezése több feladat között.

A készlet alapértelmezett beállítása állapot nélküli, amelyet a Fresh ügynök minden egyes beállításával érhet el. Egyes esetekben előfordulhat, hogy a csapatok újra szeretnének használni az ügynököket az előző folyamatfuttatás során létrehozott csomagok vagy fájlok újrafelhasználásához. A számítási feladatok összeállítása gyakori forgatókönyv, amelyben a csapatok meg szeretnék őrizni az állapotot és újra fel szeretnék használni az ügynököket. Az állapotalapú készleteket a felügyelt DevOps-készleteken keresztül érheti el, miközben a biztonsági ajánlott eljárásokkal kiegyensúlyozhatja azokat. Egy ügynök alapértelmezés szerint legfeljebb hét napig használható újra, de konfigurálhatja, hogy hamarabb újrainduljon.

Feljegyzés

A biztonsági ügynökök azt javasolják, hogy a felhasználók állapot nélküli készleteket használjanak az ellátási lánc támadásai elleni védelemként. Minden alkalommal használja a Fresh agent (Friss ügynök) ügynök állapotbeállítást.

Állapot nélküli készletek

Állapot nélküli ügynök konfigurálásakor minden feladathoz új ügynök lesz beszerezve. Az ügynök a feladat befejezése után el lesz vetve.

Az állapot nélküli ügynökök életciklusáról és azok Azure Pipelinesban való használatáról szóló további információkért tekintse meg az ügynökök életciklusát és a hozzárendelés esetleges késéseit ismertető szakaszt.

Állapot nélküli ügynököt ábrázoló képernyőkép.

Amikor minden alkalommal friss ügynökre állítja az ügynök állapotát, minden feladathoz új ügynök lesz beszerezve. Az ügynök a feladat befejezése után el lesz vetve.

Állapotalapú készletek

Állapotalapú ügynököt ábrázoló képernyőkép.

Ha engedélyezi, hogy ugyanazt az ügynököt több build is használhassa ("kind": "stateful" beállítás az erőforrássablonokban vagy { "stateful": {...} } beállítás az Azure CLI-ben), akkor a készlet ügynökei állapotalapúak lesznek. Az állapotalapú készleteket az alábbi beállításokkal konfigurálhatja:

  • A készenléti ügynökök maximális élettartama (maxAgentLifetime) azt a maximális időtartamot konfigurálja, amelyet egy állapotalapú készlet ügynöke futtathat, mielőtt az leállításra és elvetésre kerül. A készenléti ügynökök maximális élettartamának formátuma.dd.hh:mm:ss A készenléti ügynökök maximális élettartamának alapértelmezett értéke a hét nap (7.00:00:00maximálisan megengedett) időtartamra van állítva.

  • A türelmi időszak (gracePeriodTimeSpan) azt az időtartamot konfigurálja, amíg egy állapotalapú készlet ügynöke új feladatokra vár, mielőtt az összes aktuális és várólistás feladat befejeződése után leáll. A türelmi időszak formátuma, dd.hh:mm:ss és az alapértelmezett nem türelmi időszak.

    Fontos

    Ha egy feladat akkor fut, amikor a készenléti ügynökök maximális élettartamának időtartama lejár, az ügynök csak a feladat befejezéséig fog leállni, kivéve, ha a feladat futtatása két napnál tovább tart. A felügyelt DevOps-készletekben lévő egyes feladatok legfeljebb két napig futhatnak, még akkor is, ha készenléti ügynökön futnak, és két napnál hosszabb ideig vannak konfigurálva a készenléti ügynökök számára való használatra. Forduljon az ügyfélszolgálathoz, ha a munkafolyamathoz egyetlen, két napnál hosszabb ideig tartó feladat futtatására van szükség.

Az állapot nélküli készletekben lévő ügynökök minden feladat után le lesznek állítva és elvetve. Az állapotalapú készletekben lévő ügynökök továbbra is futnak, ha az alábbi feltételek valamelyike teljesül:

  • Ha az első feladat befejeződésekor egy másik feladat is várólistára kerül, a felügyelt DevOps-készletek a feladat leállítása helyett az első feladatot futtató ügynöknek küldik el az üzenetsorba helyezett feladatot.
  • Ha a készlethez türelmi időszak van konfigurálva, az ügynökök a leállítás előtt a türelmi időszakban meghatározott időtartamig új munkákra várnak.
  • Ha a készenléti ügynökök engedélyezve vannak, és az ügynök képe megfelel az aktív kiépítési időszak feltételeinek, az ügynök továbbra is fut, és vár a feladatokra.

Az állapotalapú poolokban futó ügynököket leállítják és eltávolítják, ha folyamatosan futnak a készenléti ügynökök maximális élettartama által meghatározott ideig, még ha az előző feltételek teljesülnek is. Ha például a készenléti ügynökök maximális élettartama három napra van konfigurálva, és a Készenléti ügynök módmanuális, egész heti séma (a gépek 24/7-ben érhetők el), az ügynökök három folyamatos nap üzemidő után újraindulnak.

Fontos

Az állapotmegőrző csoportokban lévő ügynökök továbbra is leállíthatók és törölhetők egy feladat befejezése után, ha nincs türelmi időszak, nincs aktív kiépítési időszak a készenléti ügynökök számára, és nincs az ügynökhöz illeszkedő várakozó feladat. Az ügynök elvetésekor minden állapot elveszik.

A türelmi időszakok lehetővé teszik az állapotalapú készletek konzisztens terhelésű folyamatokhoz való futtatásának legköltségesebb módját. A türelmi időszakok nem igénylik a készenléti ügynök mód használatát, hogy az ügynökök online állapotban maradjanak, és készen állnak a feladatok elfogadására.

Készenléti ügynök mód

Készlet létrehozásakor a Készenléti ügynök üzemmód alapértelmezés szerint ki van kapcsolva. Ha a készenléti ügynök üzemmód ki van kapcsolva, nincsenek készenléti ügynökök, amelyek azonnal hozzárendelhetők a folyamatokhoz. Előfordulhat, hogy a csővezetékeknek néhány pillanattól 15 percig várniuk kell, amíg egy ügynök igény szerint elő lesz készítve. A jobb teljesítmény érdekében engedélyezze a Készenléti ügynök módot , és konfiguráljon egy készenléti ügynök ütemezését, amely kapacitást biztosít a számítási feladat számára.

Készenléti ügynök ütemezésének konfigurálásakor a felügyelt DevOps-készletek rendszeres időközönként összehasonlítják a kiosztott ügynökök számát az aktuális kiépítési sémában megadott készenléti ügynökszámmal. Szükség szerint új ügynököket indít el a készenléti ügynökök számának fenntartásához. Az Ügynökök panelen megtekintheti a készletben lévő ügynökök aktuális állapotát és számát.

Fontos

A séma engedélyezett szolgáltatásszáma nem lehet nagyobb, mint a Maximális ügynökök érték, amelyet a Készletbeállításokban konfigurál.

A készenléti ügynök üzemmódot az alábbi beállításokkal konfigurálhatja:

  • Kikapcsolva: A készenléti ügynök üzemmód ki van kapcsolva, és az ügynökök igény szerint vannak kiépítve a feladatok várólistára helyezésekor.
  • Manuális: Manuális készenléti ütemezés konfigurálása.
  • Automatikus: Használjon automatikus készenléti ütemezést az ügynök használati előzményei alapján. A költségeket és a teljesítményt is konfigurálhatja.

Képernyőkép a Készenléti ügynök mód kiválasztásáról.

Manuális

A manuális mód a legjobb azoknak a csapatoknak, akik ismerik a folyamatos integrációs és folyamatos kézbesítési (CI/CD) folyamathasználati mintákat. A manuális opció használatakor meg kell határoznia az előzetes telepítési sémát. Az elképzelése alapján határozza meg a sémát, hogy a poolban lévő ügynökök közül melyeket valószínűbb, hogy használja, és hányat fog használni. Megadhatja a tervezett igényeknek megfelelő ügynökök kiépítési számát.

Létrehozhat saját kiépítési ütemezést, vagy választhat az előre meghatározott ütemezések közül. Az időzónát úgy konfigurálhatja, hogy meghatározza az ütemezéseket. Az előkiépítési időzón alapértelmezett értéke (UTC) koordinált egyetemes idő.

A manuális készenléti ügynököket az alábbi három módszer egyikével konfigurálhatja:

Az előzetes üzembe helyezési rövid útmutatók mindegyike a következő általános beállításokkal rendelkezik (a rövid útmutatóra jellemző beállításokon kívül):

  • Előzetes kiépítési időzóna: Lehetővé teszi az időzóna konfigurálását az előkiépítési sémában lévő időszakokhoz. Az előkiépítési időzón alapértelmezett értéke (UTC) koordinált egyetemes idő.
  • Készenléti ügynök százalékos aránya: Konfigurálja az egyes rendszerképekhez használni kívánt készenléti ügynökök százalékos arányát. Megadhatja * , hogy az összes kép egyformán legyen kiépítve, vagy megadhat egy 0 és 100 közötti egész számot a százalékértékek megjelenítéséhez. Ha százalékot ad meg, az összes kép teljes összegének 100-nak kell lennie. Ha egyetlen képpel rendelkezik, adja meg * vagy 100. Ha Azure Resource Manager-sablonokat (ARM-sablonokat) használ, a szakaszban konfigurálhatja a Készenléti ügynök százalékos beállításátimages. További információ: Képek konfigurálása.

Képernyőkép a manuális készenléti módról.

Kezdés a nulláról

Ha úgy dönt, hogy az alapoktól indul, hozzáadhatja a kiépítési időszakok listáját kiépítési sémaként. Minden üzembe helyezési időszak kezdőnapból, zárónapból, időzónából, kezdési időpontból, befejezési időpontból és darabszámból áll. A kiépítési időszakok nem fedhetik egymást.

Tulajdonság Leírás
Többnapos Ha ezt a beállítást választja, a kezdő és a záró napot is konfigurálhatja a kiépítési sémához.
A következő időszakig Ha ezt a beállítást választja, a kiépítési időszak a Kezdési idő értéktől a következő kiépítési időszak kezdetéig fut.
Kezdő nap A kiépítési időszak kezdőnapja.
Zárónap Az a nap, amikor a kiépítési időszak véget ér. Többnapos kijelölés esetén kötelező megadni.
Kezdési időpont A kiépítési időszak kezdetének időpontja.
Befejezési idő Az az idő, amikor az ellátási időszak véget ér. Kötelező, kivéve, ha ki van választva a következő időszak.
Darabszám A kiosztandó készenléti ügynökök száma. Ennek a számnak nullánál nagyobbnak kell lennie, és nem lehet nagyobb, mint a Készletbeállításokmaximális ügynökértéke.

A kiépítési időszak létrehozása után törölheti vagy szerkesztheti az időszakot az előzetes kiépítési séma listájából.

Az alábbi példa bemutatja, hogyan konfigurálhat manuális sémát egy olyan ügynökkel, amely hétfő reggel 12:00 és 17:00 óra között van üzembe helyezve.

Képernyőkép a manuális méretezési sémáról.

Hétköznapi séma

Ha a hétköznapi sémát választja, megadhat egy kezdési és befejezési időpontot, amely között a készenléti ügynökök megadott száma minden hétköznap készenléti állapotban van.

Tulajdonság Leírás
Kezdési időpont A kiépítési időszak kezdetének időpontja.
Befejezési idő Az az idő, amikor az ellátási időszak véget ér.
Provisionálási folyamatok száma A kiosztandó készenléti ügynökök száma. Ennek a számnak nullánál nagyobbnak kell lennie, és nem lehet nagyobb, mint a Készlet beállításaiban konfigurált Maximális ügynökök érték.

Az alábbi példa négy ügynököt konfigurál a munkaidőkre, míg a munkaidőn kívüli órákra és a hétvégékre nem konfigurál ügynököket, mindezt a keleti idő (UTC-5) használatával.

Képernyőkép, amely hétköznapi menetrendet mutat.

Egész heti program

Ha az egész hetes sémát választja, megadhatja, hogy hány ügynök legyen mindig elérhető.

Képernyőkép egy egész hetes sémáról.

Automatikus

Ha nem ismeri a használati mintákat, és a korábbi adatok alapján szeretne automatikus előrejelzésre támaszkodni, válassza az Automatikus lehetőséget. A költség és az ügynök teljesítménye között az alábbi öt lehetőséggel rendelkező csúszkával egyensúlyba hozhatja a költségeket. A kezelt DevOps-készletek lekérdezést futtatnak az elmúlt három hét előzményadatai alapján, ha ezek rendelkezésre állnak. A készlet várólistás munkameneteit ötperces időszakokra rendezi, és a megadott percentilist (a kiugró értékek elkerülése érdekében) minden órához hozzárendeli.

  • A leghatékonyabb (MostCostEffective): 10. percentilis.
  • Költséghatékonyabb (MoreCostEffective): 25. percentilis.
  • Kiegyensúlyozott (alapértelmezett) (Balanced): 50. percentilis.
  • Nagyobb teljesítmény (MorePerformance): 75. percentilis.
  • Legjobb teljesítmény (BestPerformance): 90. percentilis.

Képernyőkép az automatikus skálázási beállításról.

Az ügynökök életciklusa és a kiosztás esetleges késései

Ha állapot nélküli sémával engedélyezi a készenléti ügynököket, telepítenie és konfigurálnia kell az Azure Pipelines-ügynököt, mielőtt áttér a kész állapotról a lefoglalt állapotra, és futtatna egy folyamatot.

Amikor a kezelt DevOps-készletek új ügynököket helyeznek üzembe, megpróbálja letölteni a legújabb Azure Pipelines-ügynököt, hogy az már le legyen töltve a készenléti ügynökökön, mielőtt azok aktív üzemkész állapotba kerülnének. A feladat indítása, csatlakoztatása és elindítása a készlet termékváltozatának sebességétől, a használt rendszerképtől és a hálózati terheléstől függően akár 10 másodperctől egy percig is eltarthat. Emellett ha bizonyos beállításokat ad meg egy folyamatfeladatban, az egy másik ügynök újraletöltését és futtatását is okozhatja. Az ügynök regressziói és visszaállításai az ügynök újraletöltését is okozhatják.

A kész ügynökök mindig késéssel járnak, mert a felügyelt DevOps-készletek ezt az ügynököt "rövidesen" használják, ami azt jelenti, hogy feladatonként egy alkalommal indítjuk el és futtatjuk a feladatügynököt. Ha késést tapasztal, amikor az ügynökök készek munkát felvenni az Azure DevOpsból, vegye figyelembe az alábbi kérdéseket:

  • Vannak kész ügynökei? A leggyakoribb probléma az ügynökök előzetes üzembe helyezésének félreértése arról, hogy mikor kell ezt megtenni. A gépeket az alábbi feltételek teljesülése esetén az alapoktól kell felpörögni:
    • A várólistára helyezett feladatok száma nagyobb, mint a készlet készenléti ügynökeinek száma.
    • A feladatok az előkiépítési ütemezésen kívül vannak várólistán.
    • A készenléti ügynök száma üresre van állítva.
  • Megfelelően konfigurálja a több lemezképet tartalmazó készenléti ügynököket? Ha nem adja meg, hogy melyik rendszerképet szeretné használni a folyamatban az ImageOverride követelmény használatával, a feladatok az első rendszerképet veszik célba. A skálázási beállításoktól függően előfordulhat, hogy nem rendelkezik annyi ügynökkel, mint amire számított, mert néhányat más képekhez kiosztanak.
  • A csővezetékekben használja a ImageVersionOverride igényét? Ha az igény alapján ImageVersionOverride a készlet beállításaiban konfigurálttól eltérő képfájlt ad meg, mindegyik ügynök igény szerint elindul a megadott képfájlt verzió használatával. A készlet konfigurációjában megadott rendszerképverziók használatával telepítjük a készenléti ügynököket. Ha használja ImageVersionOverride, a készenléti ügynökök nem egyeznek meg az adott verzióval, és egy új ügynök indul el.
  • Lassítják a proxy, virtuális hálózati, vagy tűzfal beállítások a pools szolgáltatást? A hálózati beállítások esetleges lassúsága azt eredményezi, hogy az ügynököknek tovább kell tartaniuk az ügynök elindításához és az Azure DevOpshoz való csatlakoztatásához.
  • Felülírja az ügynök verzióját? Alapértelmezés szerint a felügyelt DevOps-készletek az Azure DevOps-feladatügynök legújabb verzióján futnak. A folyamat YAML-beállításai (például az igény) és az Agent.Version Azure DevOps szervezeti beállításai kényszeríthetik a folyamatokat a feladatügynök régebbi verzióinak használatára, ami a gép lefoglalása után újraletöltést igényel.