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.
Az ügynököket a agentProfile felügyelt DevOps-készletek erőforrásban található tulajdonság használatával konfigurálhatja. Az alábbi példa egy ügynököt Stateless határoz meg.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless"
}
}
}
]
}
Az ügynököket a agent-profile paraméter használatával konfigurálhatja, amikor létrehoz vagy frissít egy készletet.
Az alábbi példa egy Stateless készenléti ügynök nélküli ügynököt határoz meg.
az mdp pool create \
--agent-profile agent-profile.json
# other parameters omitted for space
Az alábbi példa a agent-profile.json fájl tartalmát mutatja be.
{
"Stateless": {}
}
Az ügynököket a agentProfile felügyelt DevOps-készletek erőforrásban található tulajdonság használatával konfigurálhatja. Az alábbi példa egy ügynököt Stateless határoz meg.
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
}
}
}
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
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"maxAgentLifetime": "7.00:00:00",
"gracePeriodTimeSpan": "00:30:00",
"kind": "Stateful"
}
}
}
]
}
Az ügynököket a agent-profile paraméter használatával konfigurálhatja, amikor létrehoz vagy frissít egy készletet.
Az alábbi példa egy Stateful hét napos maximális élettartamú és harminc perces türelmi idővel rendelkező ügynököt határoz meg.
az mdp pool create \
--agent-profile agent-profile.json
# other parameters omitted for space
Az alábbi példa a agent-profile.json fájl tartalma látható.
{
"Stateful":
{
"maxAgentLifetime": "7.00:00:00",
"gracePeriodTimeSpan": "00:30:00"
}
}
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateful'
maxAgentLifetime: '7.00:00:00'
gracePeriodTimeSpan:'00:30:00'
}
}
}
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.
A készenléti ügynököket a agentProfile tulajdonság resourcePredictionsProfile szakaszában konfigurálhatja. Állítsa be "kind": "Manual" az alapoktól való kezdést, a hétköznapi sémát vagy az egészhetes sémát, és adja meg a séma részleteit a resourcePredictions szakaszban. Az automatikus készenléti ügynökök konfigurálásához állítsa be a következőt "kind": "Automatic": . Tiltsa le a készenléti ügynököket a ResourcePredictionsProfile szakasz kihagyásával. Az egyes skálázási típusok konfigurálásával kapcsolatos részletekért tekintse meg a következő szakaszokat.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless",
"resourcePredictionsProfile": {
"kind": "Manual"
},
"resourcePredictions": {...}
}
}
}
]
}
Az ügynököket a agent-profile paraméter használatával konfigurálhatja, amikor létrehoz vagy frissít egy készletet.
A készenléti ügynököket a agent-profile paraméter resourcePredictionsProfile szakaszának használatával konfigurálhatja. A "Manual": {} beállítással konfigurálhatja a nulláról induló, hétköznapi vagy egész hetes sémát, és megadhatja a séma részleteit a resourcePredictions szakaszban. Az automatikus készenléti ügynökök konfigurálásához használja a "Automatic": {} beállítást. Az egyes skálázási típusok konfigurálásával kapcsolatos részletekért tekintse meg a következő szakaszokat.
az mdp pool create \
--agent-profile agent-profile.json
# other parameters omitted for space
Az alábbi példa bemutatja a agent-profile.json fájl tartalmát:
{
"Stateless": {},
"resourcePredictionsProfile": {
"Manual": {}
},
"resourcePredictions": {...}
}
A készenléti ügynököket a agentProfile tulajdonság resourcePredictionsProfile szakaszával konfigurálhatja. A "kind": "Manual" beállítás alkalmazásával dönthet úgy, hogy nulláról indítja, hétköznapi séma szerint, vagy egész hetes séma szerint konfigurálja a rendszert, és a séma részleteit a resourcePredictions szakaszban adhatja meg. Az automatikus készenléti ügynökök konfigurálásához használja a kind: 'Automatic' beállítást. Tiltsa le a készenléti ügynököket a ResourcePredictionsProfile szakasz kihagyásával. Az egyes skálázási típusok konfigurálásával kapcsolatos részletekért tekintse meg a következő szakaszokat.
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
resourcePredictionsProfile: {
kind: 'Manual'
}
resourcePredictions: {...}
}
}
}
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.
A készenléti ügynök manuális kiépítését a resourcePredictionsProfile szakasz agentProfile részében adhatja meg. A resourcePredictions szakaszban konfigurálhatja a részleteket.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless",
"resourcePredictionsProfile": {
"kind": "Manual"
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"00:00:00": 1,
"04:00:00": 0
},
{},
{},
{},
{},
{}
]
}
}
}
}
]
}
Adja meg a séma kívánt időzónáját a timeZone tulajdonság használatával. Az alapértelmezett érték a UTC. A tulajdonság időzóna-nevének listájának lekéréséhez tekintse meg a TimeZoneInfo.GetSystemTimeZones metódust.
A készenléti ügynökök ütemezését a daysData listával határozhatja meg. A daysData lista egy vagy hét elemet tartalmazhat.
A daysData hét elemet tartalmazó lista a hét napjaira van leképezve, vasárnaptól kezdve. A hét elem mindegyike nulla vagy több "time": count bejegyzéssel rendelkezhet, 24 órás formátumban megadva egy időpontot és egy készenléti ügynök számát. A készenléti ügynökök megadott száma a következő "time": count bejegyzésig tartható fenn, amely ugyanazon a napon vagy a következő napon is lehet.
Az daysData egyetlen elemből álló lista egy egészhetes sémát határoz meg, amelyben az egyetlen "time": count bejegyzés az egész hét készenléti ügynökszámának felel meg.
Az alábbi példa egy manuális készenléti ügynökséma. Az értéket Eastern Standard Time egyetlen, hétfőtől péntekig kiosztott ügynökkel használja, 9:00 órától (készenléti ügynök száma 1) 17:00-ig (készenléti ügynök száma 0).
{
"kind": "Stateless",
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{}
]
},
"resourcePredictionsProfile": {
"kind": "Manual"
}
}
Egyetlen daysData elem tartalmaz egy idő- és készenléti ügynökszám-szótárt. Minden "time" : count bejegyzés megadja, hogy hány készenléti ügynököt ütemezzen a megadott időponttól kezdve, 24 órás formátumban. Az egymást követő "time" : count bejegyzések az adott nap ütemezett ügynökszámainak sorrendjét határozzák meg.
"daysData": [
{}, # Schedule of standby agent count adjustments for Sunday
{ # Schedule of standby agent count adjustments for Monday
"09:00:00": 1, # Adjust standby agent count to 1
"17:00:00": 0 # Adjust standby agent count to 0
},
{ # Schedule of standby agent count adjustments for Tuesday
"09:00:00": 1,
"17:00:00": 0
},
{ # Schedule of standby agent count adjustments for Wednesday
"09:00:00": 1,
"17:00:00": 0
},
{ # Schedule of standby agent count adjustments for Thursday
"09:00:00": 1,
"17:00:00": 0
},
{ # Schedule of standby agent count adjustments for Friday
"09:00:00": 1,
"17:00:00": 0
},
{} # Schedule of standby agent count adjustments for Saturday
]
A készenléti ügynökök száma nem állítható vissza automatikusan nullára egy nap végén vagy a hét végén. Ha üres daysData elemet ad meg, az adott napra vonatkozóan nem tiltja le a készenléti ügynököket. Az üres daysData elemek azt jelentik, hogy az adott napra vonatkozóan nincs változás a készenléti ügynökök számának ütemezésében. Ha a készenléti ügynököt nullára szeretné állítani egy adott időszaktól kezdve, explicit módon meg kell adnia egy "time" : count bejegyzést count a következővel 0: .
Példák
Ha nem szeretné módosítani az előző nap végén megadott készenléti ügynök számát (vagy ha a hét első időszakát konfigurálja), adjon meg egy daysData nulla bejegyzést tartalmazó elemet:
{}
Ha egyetlen készenléti ügynököt szeretne ütemezni a kezdéshez 09:00:00 és a leálláshoz 17:00:00 (a resourcePredictions tulajdonság által megadott időzóna használatával), adja meg a következő konfigurációt:
{
"09:00:00": 1,
"17:00:00": 0
}
Ha éjféltől 09:00:00 egy készenléti ügynököt, majd 17:00:00 tíz készenléti ügynököt szeretne ütemezni, adja meg a következő konfigurációt:
{
"00:00:00": 1,
"09:00:00": 10,
"17:00:00": 0
}
Ha egy készenléti ügynököt úgy szeretne beütemezni, hogy a megadott napon 09:00:00 órától elérhető legyen, és a következő napon 17:00:00 órakor leálljon, használjon két egymást követő daysData elemet.
{
"09:00:00": 1
},
{
"17:00:00": 0
}
Az ügynököket a agent-profile paraméter használatával konfigurálhatja, amikor létrehoz vagy frissít egy készletet.
az mdp pool create \
--agent-profile agent-profile.json
# other parameters omitted for space
Az alábbi példa a agent-profile.json fájl tartalmát mutatja be. A manuális készenléti ügynök kiépítését a resourcePredictionsProfile paraméter szakaszában agent-profile adhatja meg. Konfigurálja a resourcePredictions szakasz részleteit:
{
"Stateless": {},
"resourcePredictionsProfile": {
"Manual": {}
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"00:00:00": 1,
"04:00:00": 0
},
{},
{},
{},
{},
{}
]
}
}
Adja meg a séma időzónáját a timeZone tulajdonság használatával. Az alapértelmezett érték a UTC. A tulajdonság időzóna-nevének listájának lekéréséhez tekintse meg a TimeZoneInfo.GetSystemTimeZones metódust.
A daysData lista meghatározza a készenléti ügynökök ütemezését. A daysData lista egy vagy hét elemet tartalmazhat.
A daysData hét elemet tartalmazó lista a hét napjaira van leképezve, vasárnaptól kezdve. A hét elem mindegyike nulla vagy több "time": count bejegyzéssel rendelkezhet, 24 órás formátumban megadva egy időpontot és egy készenléti ügynök számát. A készenléti ügynökök megadott száma a következő "time": count bejegyzésig tartható fenn, amely ugyanazon a napon vagy a következő napon is lehet.
Az daysData egyetlen elemet tartalmazó lista egy egészhetes sémát határoz meg, amelyben az egyetlen "time": count bejegyzés az egész hét készenléti ügynökszámának felel meg.
Az alábbi példa egy manuális készenléti ügynökséma. A séma egyetlen ügynökkel használja az értéket Eastern Standard Time hétfőtől péntekig, 9:00 órától (készenléti ügynök száma 1) 17:00-ig (készenléti ügynök száma 0):
{
"Stateless": {},
"resourcePredictionsProfile": {
"Manual": {}
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{
"09:00:00": 1,
"17:00:00": 0
},
{}
]
}
}
Egyetlen daysData elem tartalmaz egy idő- és készenléti ügynökszám-szótárt. Minden "time" : count bejegyzés megadja, hogy hány készenléti ügynököt ütemezzen a megadott időponttól kezdve, 24 órás formátumban. Az egymást követő "time" : count bejegyzések az adott nap ütemezett ügynökszámainak sorrendjét határozzák meg.
"daysData": [
{}, # Schedule of standby agent count adjustments for Sunday
{ # Schedule of standby agent count adjustments for Monday
"09:00:00": 1, # Adjust standby agent count to 1
"17:00:00": 0 # Adjust standby agent count to 0
},
{ # Schedule of standby agent count adjustments for Tuesday
"09:00:00": 1,
"17:00:00": 0
},
{ # Schedule of standby agent count adjustments for Wednesday
"09:00:00": 1,
"17:00:00": 0
},
{ # Schedule of standby agent count adjustments for Thursday
"09:00:00": 1,
"17:00:00": 0
},
{ # Schedule of standby agent count adjustments for Friday
"09:00:00": 1,
"17:00:00": 0
},
{} # Schedule of standby agent count adjustments for Saturday
]
A készenléti ügynökök száma nem állítható vissza automatikusan nullára egy nap végén vagy a hét végén. Ha üres daysData elemet ad meg, az adott napra vonatkozóan nem tiltja le a készenléti ügynököket. Az üres daysData elemek azt jelentik, hogy az adott napra vonatkozóan nincs változás a készenléti ügynökök számának ütemezésében. Ha a készenléti ügynököt nullára szeretné állítani egy adott időszaktól kezdve, explicit módon meg kell adnia egy "time" : count bejegyzést count a következővel 0: .
Példák
Ha nem szeretné módosítani a készenléti ügynök megadott számát az előző nap végén (vagy ha a hét első időszakát konfigurálja), adjon meg egy daysData nulla bejegyzést tartalmazó elemet:
{}
Ha egyetlen készenléti ügynököt szeretne ütemezni a kezdéshez 09:00:00 és a leálláshoz 17:00:00 (a resourcePredictions tulajdonságban megadott időzóna használatával), adja meg a következő konfigurációt:
{
"09:00:00": 1,
"17:00:00": 0
}
Ha egy készenléti ügynököt szeretne ütemezni éjféltől 09:00:00 kezdve, majd 10 készenléti ügynököt 17:00:00-ig, adja meg a következő konfigurációt:
{
"00:00:00": 1,
"09:00:00": 10,
"17:00:00": 0
}
Ha egy készenléti ügynököt úgy szeretne ütemezni, hogy a megadott napon 09:00:00-kor elérhető legyen, és a következő napon 17:00:00-kor leálljon, használjon két külön egymás után következő daysData elemet:
{
"09:00:00": 1
},
{
"17:00:00": 0
}
A készenléti ügynök manuális kiépítését a resourcePredictionsProfile szakasz agentProfile részében adhatja meg. A részleteket a resourcePredictions szakaszban konfigurálhatja:
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
resourcePredictionsProfile: {
kind: 'Manual'
}
resourcePredictions: {
timeZone: 'Eastern Standard Time'
daysData: [
{}
{
'00:00:00': 1
'04:00:00': 0
}
{}
{}
{}
{}
{}
]
}
}
}
}
Adja meg a séma kívánt időzónáját a timeZone tulajdonság használatával. Az alapértelmezett érték a UTC. A tulajdonság időzóna-nevének listájának lekéréséhez tekintse meg a TimeZoneInfo.GetSystemTimeZones metódust.
A daysData lista meghatározza a készenléti ügynökök ütemezését. A daysData lista egy vagy hét elemet tartalmazhat.
A daysData hét elemet tartalmazó lista a hét napjaira van leképezve, vasárnaptól kezdve. A hét elem mindegyike nulla vagy több 'time': count bejegyzéssel rendelkezhet, 24 órás formátumban megadva egy időpontot és egy készenléti ügynök számát. A készenléti ügynökök megadott száma a következő 'time': count bejegyzésig tartható fenn, amely ugyanazon a napon vagy a következő napon is lehet.
Az daysData egyetlen elemet tartalmazó lista egy egészhetes sémát határoz meg, amelyben az egyetlen 'time': count bejegyzés az egész hét készenléti ügynökszámának felel meg.
Az alábbi példa egy manuális készenléti ügynökséma, amely az értéket Eastern Standard Timehasználja, egyetlen ügynökkel hétfőtől péntekig, 9:00 órától (készenléti ügynök száma 1) 17:00-ig (készenléti ügynök száma 0):
{
kind: 'Stateless'
resourcePredictions: {
timeZone: 'Eastern Standard Time'
daysData: [
{}
{
'09:00:00': 1
'17:00:00': 0
}
{
'09:00:00': 1
'17:00:00': 0
}
{
'09:00:00': 1
'17:00:00': 0
}
{
'09:00:00': 1
'17:00:00': 0
}
{
'09:00:00': 1
'17:00:00': 0
}
{}
]
}
resourcePredictionsProfile: {
kind: 'Manual'
}
}
Egyetlen daysData elem tartalmaz egy idő- és készenléti ügynökszám-szótárt. Minden 'time' : count bejegyzés megadja, hogy hány készenléti ügynököt ütemezzen a megadott időponttól kezdve, 24 órás formátumban. Az egymást követő 'time' : count bejegyzések az adott nap ütemezett ügynökszámainak sorrendjét határozzák meg.
daysData: [
{} // Schedule of standby agent count adjustments for Sunday
{ // Schedule of standby agent count adjustments for Monday
'09:00:00': 1 // Adjust standby agent count to 1
'17:00:00': 0 // Adjust standby agent count to 0
}
{ // Schedule of standby agent count adjustments for Tuesday
'09:00:00': 1
'17:00:00': 0
}
{ // Schedule of standby agent count adjustments for Wednesday
'09:00:00': 1
'17:00:00': 0
}
{ // Schedule of standby agent count adjustments for Thursday
'09:00:00': 1
'17:00:00': 0
}
{ // Schedule of standby agent count adjustments for Friday
'09:00:00': 1
'17:00:00': 0
}
{} // Schedule of standby agent count adjustments for Saturday
]
A készenléti ügynökök száma nem állítható vissza automatikusan nullára egy nap végén vagy a hét végén, és egy üres daysData elem megadása nem tiltja le az adott napra vonatkozó készenléti ügynököket. Az üres daysData elemek azt jelentik, hogy az adott napra vonatkozóan nincs változás a készenléti ügynökök számának ütemezésében. Ha a készenléti ügynököt nullára szeretné állítani egy adott időszaktól kezdve, explicit módon meg kell adnia egy "time" : count bejegyzést count a következővel 0: .
Példák
Ha nem szeretné módosítani az előző nap végén megadott készenléti ügynök számát (vagy ha a hét első időszakát konfigurálja), adjon meg egy daysData nulla bejegyzést tartalmazó elemet:
{}
Ha egyetlen készenléti ügynököt szeretne ütemezni a kezdéshez 09:00:00 és a leálláshoz 17:00:00 (a resourcePredictions tulajdonságban megadott időzóna használatával), adja meg a következő konfigurációt:
{
'09:00:00': 1
'17:00:00': 0
}
A következő konfiguráció megadásával éjféltől 09:00:00 ütemezhet egy készenléti ügynököt, majd 10 készenléti ügynököt 17:00:00-ig.
{
'00:00:00': 1
'09:00:00': 10
'17:00:00': 0
}
Ha egy készenléti ügynököt úgy szeretne ütemezni, hogy a megadott nap 09:00:00 időpontjában elérhető legyen, és 17:00:00 időpontban a következő napon leálljon, használjon két egymást követő daysData elemet.
{
'09:00:00': 1
}
{
'17:00:00': 0
}
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.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless",
"resourcePredictionsProfile": {
"kind": "Manual"
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"00:00:00": 1,
"04:00:00": 0
},
{},
{},
{},
{},
{}
]
}
}
}
}
]
}
{
"Stateless": {},
"resourcePredictionsProfile": {
"Manual": {}
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"00:00:00": 1,
"04:00:00": 0
},
{},
{},
{},
{},
{}
]
}
}
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
resourcePredictionsProfile: {
kind: 'Manual'
}
resourcePredictions: {
timeZone: 'Eastern Standard Time'
daysData: [
{}
{
'00:00:00': 1
'04:00:00': 0
}
{}
{}
{}
{}
{}
]
}
}
}
}
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.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless",
"resourcePredictionsProfile": {
"kind": "Manual"
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{}
]
}
}
}
}
]
}
{
"Stateless": {},
"resourcePredictionsProfile": {
"Manual": {}
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{
"09:00:00": 4,
"17:00:00": 0
},
{}
]
}
}
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
resourcePredictionsProfile: {
kind: 'Manual'
}
resourcePredictions: {
timeZone: 'Eastern Standard Time'
daysData: [
{}
{
'09:00:00': 4
'17:00:00': 0
}
{
'09:00:00': 4
'17:00:00': 0
}
{
'09:00:00': 4
'17:00:00': 0
}
{
'09:00:00': 4
'17:00:00': 0
}
{
'09:00:00': 4
'17:00:00': 0
}
{}
]
}
}
}
}
Egész heti program
Ha az egész hetes sémát választja, megadhatja, hogy hány ügynök legyen mindig elérhető.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless",
"resourcePredictionsProfile": {
"kind": "Manual"
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{
"00:00:00": 1
}
]
}
}
}
}
]
}
{
"Stateless": {},
"resourcePredictionsProfile": {
"Manual": {}
},
"resourcePredictions": {
"timeZone": "Eastern Standard Time",
"daysData": [
{
"00:00:00": 1
}
]
}
}
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
resourcePredictionsProfile: {
kind: 'Manual'
}
resourcePredictions: {
timeZone: 'Eastern Standard Time'
daysData: [
{
'00:00:00': 1
}
]
}
}
}
}
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.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"name": "fabrikam-managed-pool",
"type": "microsoft.devopsinfrastructure/pools",
"apiVersion": "2025-09-20",
"location": "eastus",
"properties": {
...
"agentProfile": {
"kind": "Stateless",
"resourcePredictionsProfile": {
"predictionPreference": "Balanced",
"kind": "Automatic"
}
}
}
}
]
}
{
"Stateless": {},
"resourcePredictionsProfile": {
"Automatic": {
"predictionPreference": "Balanced"
}
}
}
resource managedDevOpsPools 'Microsoft.DevOpsInfrastructure/pools@2025-09-20' = {
name: 'fabrikam-managed-pool'
location: 'eastus'
properties: {
...
agentProfile: {
kind: 'Stateless'
resourcePredictionsProfile: {
kind: 'Automatic'
predictionPreference: 'Balanced'
}
}
}
}
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.
Kapcsolódó tartalom