View a markdown version of this page

Aggiungere regole a un gateway - Fondamento Amazon AgentCore

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aggiungere regole a un gateway

Le regole del gateway consentono di controllare l'instradamento del traffico e di sovrascrivere le configurazioni di destinazione sul gateway senza ridistribuire le destinazioni. Crei bundle di configurazione che sovrascrivono il comportamento di un target, quindi utilizzi le regole per controllare quale versione del pacchetto si applica a quale traffico. Le regole supportano anche il routing delle richieste verso destinazioni diverse in base al percorso della richiesta o all'identità del chiamante.

Utilizza le regole del gateway per raggiungere i seguenti obiettivi:

  • Sperimenta con le versioni del pacchetto di configurazione tramite test A/B

  • Aggiungi principi specifici a una versione del pacchetto di configurazione per il debug

  • Indirizza il traffico verso destinazioni specifiche in base al percorso della richiesta o all'identità del chiamante

  • Imposta un pacchetto o un target di configurazione predefinito per tutto il traffico

Come funzionano le regole del gateway

Ogni regola del gateway contiene i seguenti componenti:

Componente Description

Priorità

Un numero intero compreso tra 1 e 1.000.000. I numeri più bassi indicano una precedenza più elevata. Ogni valore di priorità deve essere univoco all'interno di un gateway.

Conditions (Condizioni) (facoltativa)

Criteri che determinano se la regola corrisponde a una richiesta. Una regola senza condizioni agisce come un insieme che corrisponde a tutto il traffico.

Azioni (obbligatorie)

L'azione da intraprendere quando la regola corrisponde. Puoi sovrascrivere i pacchetti di configurazione, indirizzare verso destinazioni specifiche o entrambi.

Descrizione (facoltativa)

Una descrizione testuale dello scopo della regola.

Risoluzione della regola

Il gateway valuta le regole in ordine di priorità crescente (prima i numeri più bassi). Il gateway risolve ogni tipo di azione in modo indipendente utilizzando la semantica di prima corrispondenza.

La tabella seguente mostra come il gateway risolve le regole per una richiesta di esempio. In questo esempio, il ruolo QA invia una richiesta a. /my-target-canary/chat

Priorità Condizioni Azioni Corrisponde alla richiesta? Risultato

100

Un ruolo

configurationBundle: versione del pacchetto A

Sì

Si risolve configurationBundle nella versione A

200

Percorso /my-target-canary/*

routeToTarget: my-target-canary

Sì

Si risolve in routeToTarget my-target-canary

1000000

Nessuno (catch-all)

configurationBundle: versione del pacchetto B,: routeToTarget my-target-primary

Sì

Entrambi i tipi di azione sono già stati risolti. Saltato.

Risultato finale: la richiesta utilizza la versione A del pacchetto e viene indirizzata a. my-target-canary

Suggerimento

Lascia degli spazi tra i numeri di priorità (ad esempio, 100, 200, 300) in modo da poter inserire le regole in un secondo momento senza rinumerare le regole esistenti.

Condizioni

Le condizioni determinano a quali richieste corrisponde una regola. Una regola può avere un massimo di 2 condizioni. Una regola senza condizioni corrisponde a tutto il traffico.

Il gateway supporta i seguenti tipi di condizioni:

Match Princials

Corrisponde alle richieste in base all'indirizzo IAM del chiamante. L'anyOfelenco contiene da 1 a 100 voci. Ogni voce specifica una iamPrincipal con i seguenti campi:

  • arn— L'ARN principale IAM da abbinare.

  • operator(opzionale) — L'operatore di confronto. I valori validi sono StringEquals (default) e StringLike. Da utilizzare StringLike per la corrispondenza con i caratteri jolly.

Abbina percorsi

Corrisponde alle richieste in base al percorso della richiesta. L'anyOfelenco contiene da 1 a 10 voci. Ogni voce deve utilizzare il formato/<targetName>/*, dove <targetName> corrisponde al nome di una destinazione HTTP esistente sul gateway. La destinazione deve essere nello Ready stato. La matchPaths condizione è supportata solo per i gateway con destinazioni HTTP. I seguenti prefissi di percorso riservati non sono consentiti:/mcp,,,/a2a,/responses. /converse /.well-known

Logica di valutazione delle condizioni

  • All'interno di un tipo di condizione: il gateway utilizza la logica OR. Una richiesta corrisponde se soddisfa una voce nell'anyOfelenco.

  • Tutti i tipi di condizioni: il gateway utilizza la logica AND. Se una regola ha entrambi i matchPrincipals valori ematchPaths, la richiesta deve corrispondere ad almeno una voce per ogni tipo di condizione.

Azioni

Le azioni definiscono cosa fa il gateway quando una regola corrisponde. Una regola può avere un massimo di 2 azioni.

Il gateway supporta i seguenti tipi di azioni:

Il pacchetto di configurazione sostituisce () configurationBundle

Sostituisci il pacchetto di configurazione applicato al traffico corrispondente.

  • staticOverride— Associa tutto il traffico corrispondente a una versione specifica del pacchetto di configurazione. Specifica l'ARN del bundle e l'ID della versione.

  • weightedOverride— Suddivide il traffico tra due versioni del pacchetto di configurazione. L'trafficSplitelenco deve contenere esattamente 2 voci con un peso pari a 100. Il pacchetto di configurazione deve trovarsi nello stesso account del gateway.

Routing di destinazione () routeToTarget

Percorsi che abbinano il traffico a un obiettivo specifico. La destinazione deve utilizzare il protocollo HTTP ed essere nello Ready stato.

  • staticRoute— Indirizza tutto il traffico corrispondente a una destinazione specifica per nome.

  • weightedRoute— Divide il traffico tra due obiettivi. L'trafficSplitelenco deve contenere esattamente 2 voci con pesi la somma di 100. I nomi delle voci relative alla suddivisione del traffico devono essere univoci.

Limits

La tabella seguente elenca i limiti per le regole del gateway.

Risorsa Limite

Regole per gateway

20

Intervallo di priorità

Da 1 a 1.000.000

Condizioni massime per regola

2

Numero massimo di azioni per regola

2

matchPrincipals.anyOfnumero massimo di voci

100

matchPaths.anyOfnumero massimo di ingressi

10

trafficSplitiscrizioni

Esattamente 2

trafficSplitgamma di peso

da 1 a 99

Argomenti