Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Wanneer u Microsoft Foundry Agent Service uitvoert met een bring-your-own virtual network (VNet), bent u verantwoordelijk voor het aanpassen van de grootte van het gedelegeerde subnet, het plannen van IP-toewijzing en het begrijpen hoe het verkeer van agents via het platform stroomt. In dit artikel wordt de netwerkarchitectuur achter gehoste en promptagenten, het IP-toewijzingsmodel en de signalen uitgelegd die wijzen op capaciteitsproblemen. Het is bedoeld voor cloud- en netwerkarchitecten die al bring-your-own VNet voor Foundry Agent Service hebben gekozen. Zie Privénetwerken instellen voor Foundry Agent Service om het netwerk te configureren.
Als u een coderingsagent zoals GitHub Copilot gebruikt om uw VNet- en subnet- en capaciteitsmodel te plannen, kan de Microsoft Foundry Skill u helpen om de architectuur te doorlopen en foundry-netwerkrichtlijnen toe te passen in uw eigen omgeving.
Overzicht van netwerkarchitectuur
In het volgende diagram ziet u de twee zones die betrokken zijn bij een Foundry Agent Service-aanvraag: het Microsoft beheerde Foundry-platformnetwerk aan de linkerkant en uw klant-VNet aan de rechterkant.
Het platformnetwerk biedt onderdak aan het Foundry-eindpunt, de Micro VM-hostlaag waarop Hosted-agents worden uitgevoerd, de Tools Service en de Data Proxy-hostlaag. Uw klant-VNet bevat een gedelegeerd subnet (waarbij micro-VM's en de gegevensproxy IP-adressen verbruiken) en een privé-eindpuntsubnet dat verbinding maakt met uw opslag, databases en Key Vault.
Twee aanvraagstromen doorlopen deze architectuur:
-
Gehoste agent: Client naar Foundry-eindpunt naar Micro-VM (
/invoke) naar Tools Service to Data Proxy naar klantbronnen via privé-eindpunten. - Promptagent: Client naar Foundry-eindpunt naar Tools Service naar Data Proxy naar klantbronnen via privé-eindpunten. Er is geen Micro-VM op dit pad.
Sleutelbegrippen
| Termijn | Wat betekent het? |
|---|---|
| Foundry-exemplaar | Uw Microsoft Foundry-resource. De container op het hoogste niveau met uw projecten, agents en netwerkconfiguratie. |
| Gehoste agent | Een agent die u zelf bouwt en implementeert met behulp van uw eigen containerinstallatiekopieën via Azure Container Registry. U bepaalt de CPU, het geheugen en de code. Wordt uitgevoerd op Azure Container Apps. |
| Promptagent | Een agent waarbij berekeningen en schalen volledig worden beheerd door Microsoft. U definieert gedrag via configuratie. Er zijn geen containerafbeeldingen of beheer van infrastructuur vereist. |
| Gegevensproxy met één tenant | Een platformbeheerd netwerkonderdeel dat is toegewezen aan uw Foundry-project dat uitgaande connectiviteit voor uw agents afhandelt. Elk project krijgt een eigen exemplaar van een geïsoleerde gegevensproxy. Alle oproepen van hulpprogramma's worden via de proxy voor gegevens geleid. |
| Hulpprogrammaserver | Een back-endservice die is geregistreerd op projectniveau die uw agents kunnen aanroepen om acties uit te voeren, zoals het uitvoeren van query's op een database of het aanroepen van een externe API. In bring-your-own VNet-configuraties wordt het verkeer van de server geleid via de enkele-tenant dataproxy. |
| Gedelegeerd subnet | Het subnet in uw VNet dat u delegeert aan Foundry Agent Service. Alle agent-infrastructuur (gegevensproxy's en micro-VM's) wordt geïmplementeerd in dit subnet en maakt gebruik van IP-adressen ervan. |
| Micro-VM | De lichtgewicht virtuele machine waarop een gehoste agent wordt uitgevoerd. |
| Versie | Een wijziging die van invloed is op de uitvoering van uw agent, zoals nieuwe code, een nieuwe containerinstallatiekopieën of een configuratie-update. Alleen wijzigingen die invloed hebben op runtime, maken een nieuwe versie. |
| Herziening | De uitrol-eenheid voor uw agent. Een revisie kan worden geverversioneerd (gekoppeld aan een runtimewijziging) of niet-geverversioneerd (wijzigingen in alleen metagegevens, zoals tags of schaalinstellingen). |
Hoe verkeer stroomt
Elke Agentverzoek voor de Foundry-service komt binnen bij het Foundry-eindpunt en wordt naar uw klantbronnen geleid via privé-eindpunten. Het agenttype bepaalt wat er tussendoor gebeurt.
Inkomend naar het Foundry-eindpunt
Clients verzenden HTTPS-aanvragen naar uw Foundry-eindpunt (bijvoorbeeld <your-resource>.services.ai.azure.com). De API-gateway van het platform verifieert de aanvraag en routeert deze op basis van het type doelagent.
Pad naar gehoste agent
Voor een gehoste agent stuurt het platform de aanvraag door naar een micro-VM in uw gedelegeerde subnet via het /invoke protocol. De micro-VM heeft twee netwerkinterfaces:
| Verkeerstype | Route |
|---|---|
| Het eigen uitgaande verkeer van de agent | Direct, via de toegewezen NIC van de micro-VM in het gedelegeerde subnet. |
| Aanroepen van hulpprogrammaservers | Via de gegevensproxy met één tenant, ongeacht het type agent. |
Hoewel de Micro VM een eigen NIC heeft, wordt elke toolaanroep gerouteerd via de data proxy.
Pad naar promptagent
Voor een promptagent wordt de agent uitgevoerd in Microsoft beheerde compute. Het Foundry-eindpunt stuurt de aanvraag rechtstreeks door naar de Tools-service, die de gegevensproxy met één tenant aanroept. IP-adressen worden toegewezen op projectniveau, zodat alle promptagents binnen een project dezelfde gegevensproxy-infrastructuur delen.
Uitgaande toegang naar klantbronnen
Via privé-eindpunten in het subnet van uw privé-eindpunt bereikt het uitgaande verkeer van de gegevensproxy uw opslagaccounts, databases en Key Vault. Configureer de bijbehorende Privé-DNS Zones (bijvoorbeeld privatelink.blob.core.windows.net, privatelink.database.windows.net en privatelink.vaultcore.azure.net), zodat naamresolutie binnen het VNet blijft.
Grootte en IP-toewijzing van subnetten
De subnetconfiguratie is van toepassing op het niveau van het Foundry-account. Alle projecten in het account delen dezelfde subnetconfiguratie en gehoste en promptagenten delen hetzelfde gedelegeerde subnet. De aanbevolen grootte moet betrekking hebben op gecombineerd IP-gebruik van agents in elk project, platformupgrades en schaalgebeurtenissen.
Aanbevolen subnetgrootte
Gebruik een /24 CIDR-bereik voor productieworkloads. Een /27-subnet kan voor kleinere implementaties werken, maar er blijft weinig ruimte over. Platformupgrades, implementaties en schaalgebeurtenissen hebben allemaal tijdelijke extra IP-adressen nodig en een klein subnet kan tijdens deze bewerkingen uitgeput raken.
Ondersteunde IP-bereiken
Uw subnet moet alleen RFC 1918 privé-IPv4-bereiken gebruiken:
10.0.0.0/8-
172.16.0.0/12(beslaat172.16.x.xt/m172.31.x.x) 192.168.0.0/16
Openbare IP-bereiken en CGNAT-bereiken (bijvoorbeeld 100.64.0.0/10) worden niet ondersteund en veroorzaken routeringsfouten.
Hoe IP-adressen worden geconsumeerd
IP-adressen zijn gereserveerd op ongeveer 1 IP per 10 pods verhouding. Elk Foundry-project krijgt één gegevensproxy die begint bij 1 pod (1 replica) en opschaalt met toenemend verkeer.
| Scenario | Voorbeeld | Impact van Intellectuele Eigendom |
|---|---|---|
| Weinig verkeer | 10 projecten, elk met 1 replica | ~1 IP-adres gedeeld over 10 pods |
| Hoog verkeer | 10 projecten, elk geschaald naar 10 replica's | 100 pods, ~10 IP-adressen |
Project capaciteit dynamisch is omdat meer verkeer per project meer IP-adressen verbruikt.
Subnetgrootte en gelijktijdige sessies
Het aantal gelijktijdige agentsessies dat per abonnement beschikbaar is, verschilt per regio. Standaard komen gelijktijdige sessies en bruikbare IP-adressen van subnetten 1:1 overeen, met inachtneming van de limiet voor uw regio.
| Subnet | Totaal aantal IP-adressen | Bruikbare IP-adressen | Gelijktijdige sessies bij benadering |
|---|---|---|---|
| /27 | 32 | ~27 | ~17 |
| /26 | 64 | ~59 | ~50 (maximaal ondersteund) |
Gebruik met de standaardtoewijzing 1:1 een /26-subnet of groter om 50 gelijktijdige sessies te ondersteunen.
Als u meer gelijktijdige sessies met hetzelfde subnet wilt ondersteunen, maakt u een ondersteuning voor Azure aanvraag. Geef in de aanvraag het abonnement, de regio en het verwachte aantal gelijktijdige sessies op. Op basis van uw vereisten en regionale capaciteit kan ondersteuning de toewijzing verhogen naar 10 gelijktijdige sessies per bruikbaar IP-adres (1:10).
Project capaciteit
Een Foundry-exemplaar ondersteunt ongeveer 250 projecten bij weinig verkeer. Bij intensief verkeer, wanneer agents naar veel replica's worden geschaald, kan de effectieve limiet dalen tot slechts ongeveer 25 projecten. Wanneer IP-adressen zijn uitgeput, mislukt het inrichten van nieuwe projecten.
Belangrijk
Plan niet om op theoretische maximale capaciteit te draaien. Richt u op maximaal 80% subnetgebruik om pieken van upgrades en schalen te absorberen.
Gedrag tijdens platformonderhoud
Platformupgrades voeren parallel oude en nieuwe infrastructuur uit, waardoor het IP-verbruik tijdelijk wordt verhoogd. Een /24-subnet biedt voldoende buffer voor het afhandelen van deze tijdelijke pieken naast uw normale workloads. Infrastructuurupgrades worden volledig Microsoft beheerd, met inbegrip van hun timing.
Netwerkgedrag van gehoste agents
Gehoste agents worden uitgevoerd op Azure Container Apps en bieden u controle over de CPU- en geheugenconfiguratie. U implementeert ze via uw eigen Azure Container Registry.
Revisies en IP-gebruik
Wanneer u een update implementeert (nieuwe installatiekopieën, configuratie of code), maakt het platform een nieuwe revisie. Tijdens de implementatie worden oude en nieuwe revisies parallel uitgevoerd wanneer verkeer naar de nieuwe versie wordt verplaatst en beide IP-adressen van uw subnet verbruiken.
Revisielimieten per gehoste agent:
- 100 actieve revisies per agent.
- 1000 totale revisies per agentnaam. Oudste inactieve revisies worden automatisch verwijderd wanneer de actieve limiet is bereikt.
- Ongeveer 200 gehoste agents per Foundry-exemplaar.
De limiet voor gehoste agenten van 200 is gescheiden van de projectlimiet van ~250, die exemplaarbreed geldig is voor alle agenttypen.
Uitgaande connectiviteit
Elke gehoste agent wordt uitgevoerd in een micro-VM die is gekoppeld aan uw gedelegeerde subnet met een toegewezen netwerkinterface en maakt gebruik van een eigen IP voor uitgaande communicatie. Tool-aanroepen worden altijd gerouteerd via de data proxy voor één tenant. Voor implementaties van broncodeagenten vereist de inrichtingsstap ook uitgaande toegang tot specifieke eindpunten. Zie firewallvereisten voor particuliere virtuele netwerken.
Prestaties en schaalvergroting
Het schalen van gehoste agents introduceert geen latentie of prestatievermindering. Het enige scenario waarin de prestaties worden beïnvloed, is wanneer IP-uitputting voorkomt dat het platform kan worden geschaald. Dit is vermijdbaar met de juiste grootte van het subnet. Gehoste agents ondersteunen aangepaste CPU- en geheugenconfiguraties. U selecteert uit beschikbare CPU- en geheugenparen wanneer u een agentversie maakt.
Het netwerkgedrag van agents stimuleren
Promptagents worden ook uitgevoerd op Azure Container Apps, maar berekeningen en schalen worden volledig beheerd door Microsoft. U configureert geen CPU of geheugen.
Revisies en IP-gebruik
In tegenstelling tot gehoste agents verbruiken revisies van promptagents geen IP-adressen. De gegevensproxy draait in enkel-revisie modus, zodat inactieve revisies geen invloed hebben op de beschikbaarheid van IP.
Uitgaande connectiviteit
Prompt-agents gebruiken de gegevensproxy met één tenant voor alle uitgaande connectiviteit. IP-adressen worden toegewezen op projectniveau, zodat alle promptagents binnen een project dezelfde gegevensproxy-infrastructuur delen.
Limieten en prestaties
Er is geen vaste limiet voor het aantal promptagenten dat u per Foundry-exemplaar kunt implementeren. Omdat berekeningen en schalen volledig worden beheerd, zijn er geen verwachte latentie- of prestatieproblemen gekoppeld aan het aantal promptagents dat is geïmplementeerd.
VNet-peering en IP-overlap
Overlappende IP-bereiken veroorzaken routeringsfouten, zodat alle gekoppelde VNets unieke, niet-overlappende IP-bereiken moeten gebruiken. Deze regel is ook van toepassing op configuraties voor bidirectionele peering. Alleen RFC 1918 privé-IPv4-bereiken worden ondersteund. CGNAT-adressen (bijvoorbeeld 100.x.x.x) zijn dat niet.
Als u ip-overlapping niet kunt voorkomen, gebruikt u beheerd virtueel netwerk in plaats van bring-your-own VNet. Beheerde VNet automatiseert de netwerkinstallatie en elimineert problemen met IP-overlappingen.
IP-gebruik bewaken en uitputting detecteren
De Azure-portal maakt momenteel geen IP-gebruik beschikbaar voor gedelegeerde subnetten, zodat u het niet rechtstreeks kunt bewaken. De primaire indicatoren van IP-uitputting zijn HTTP 5xx-fouten uit de gegevensproxy en, voor gehoste agents, fouten bij het maken van sessies (4xx-fouten). Wanneer IP-adressen zijn uitgeput, mislukt het schalen van de gegevensproxy en het inrichten van nieuwe projecten en kunnen gehoste agents geen Micro-VM toewijzen voor nieuwe sessies. Bewaak de status van de dataproxy en het succes van het maken van sessies met gehoste agents als vroege indicatoren van capaciteitsproblemen.
Overweeg om een nieuwe Foundry-instantie te implementeren met een nieuw subnet wanneer u het volgende waarneemt:
- De gegevensproxy retourneert 5xx-codefouten.
- Het maken van een gehoste agentsessie mislukt met 4xx-fouten.
- Nieuwe projectinrichtingsfouten.
Belangrijk
Het platform waarschuwt u niet proactief wanneer de IP-capaciteit laag is. Bewaak de eerder vermelde signalen om onverwachte provisioning-mislukkingen te voorkomen.
Snelzoekgids
| Onderwerp | Aanbeveling |
|---|---|
| Subnetgrootte | Gebruik /24 voor productie. /27 is het minimum maar risicovol. Met de standaardtoewijzing 1:1 hebt u /26 nodig voor 50 gelijktijdige sessies. Vraag meer sessies aan (maximaal 1:10 toewijzing, of één IP-adres voor 10 sessies) via ondersteuning voor Azure. |
| Doel van gebruik | Blijf onder de 80% subnetgebruik om upgrade- en schaalpieken te absorberen. |
| Ondersteunde IP-bereiken | Alleen RFC 1918: 10.x, 172.16 tot 172.31.x en met 192.168.x. Geen openbare IP-bereiken of CGNAT-bereiken. |
| Project capaciteit | ~250 projecten met weinig verkeer, slechts ongeveer 25 op volledige schaal. Op basis van beschikbaarheid via IP. |
| Limieten voor gehoste agents | 100 actieve revisies en 1000 totale revisies per agent. ~200 gehoste agents per instantie. |
| IP-verbruik | Gehoste agentupdates verbruiken IP-adressen. Agentrevisies zijn niet nodig. |
| Uitgaande connectiviteit | Gehoste agents gebruiken een toegewezen NIC. Alle tool-aanroepen worden gerouteerd via de data-proxy met een enkele tenant. |
| Gehost in vergelijking met prompt | Gehost: aangepaste CPU en geheugen, uw ACR, toegewezen NIC. Prompt: volledig beheerde schaalaanpassing. |
| VNet-peering | Gekoppelde VNets moeten niet-overlappende IP-bereiken hebben. Gebruik beheerd VNet als overlapping bestaat. |
| Monitoring | Geen directe IP-monitoring in het portaal. Let op fouten in gegevensproxy 500. |
| Prestaties | Geen degradatie bij het schalen van beide agenttypen, met de juiste afmeting van het subnet. |