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à.
Endpoint Amazon ECS Fault Injection
L'agente ECS container Amazon inietta automaticamente la variabile di ECS_AGENT_URI
ambiente nei contenitori delle ECS attività di Amazon per fornire un metodo per interagire con l'APIendpoint dell'agente contenitore. Ogni endpoint include un /start
/stop
, e endpoint. /status
Gli endpoint accettano solo richieste da attività che hanno abilitato l'iniezione di errori e ogni endpoint ha un limite di frequenza di 1 richiesta ogni 5 secondi per contenitore. Il superamento di questo limite genera un errore.
I tre endpoint da utilizzare con l'iniezione dei guasti sono:
Una richiesta riuscita genera un codice di risposta 200
contenente un messaggio che indica running
quando si chiama l'/start
endpoint, stopped
per l'/stop
endpoint running
e/o not-running
per l'endpoint. /status
{ "Status": <string> }
Una richiesta non riuscita restituisce uno dei seguenti codici di errore:
-
400
‐ Richiesta errata -
409
‐ La richiesta di inserimento dei guasti è in conflitto con un altro errore in esecuzione -
429
‐ La richiesta è stata limitata -
500
‐ Il server ha avuto un errore imprevisto
{ "Error": <string message> }
Nota
È possibile iniettare un errore di latenza di rete o un errore di perdita di pacchetti di rete alla volta. Il tentativo di iniettarne più di uno comporta il rifiuto della richiesta.
Endpoint della porta blackhole di rete
L'{ECS_AGENT_URI}/fault/v1/network-blackhole-port
endpoint elimina il traffico in entrata o in uscita per una porta e un protocollo specifici nello spazio dei nomi di rete di un'attività ed è compatibile con due modalità:
-
awsvpc ‐ le modifiche vengono applicate allo spazio dei nomi della rete delle attività
-
host ‐ le modifiche vengono applicate all'istanza predefinita del contenitore dei namespace di rete
{ECS_AGENT_URI}/fault/v1/network-blackhole-port/start
Questo endpoint avvia le iniezioni di errori nelle porte blackhole di rete e presenta i seguenti parametri:
Porta
La porta specificata da utilizzare per l'iniezione dei guasti nelle porte blackhole.
Tipo: integer
Campo obbligatorio: sì
Protocollo
Il protocollo da utilizzare per l'iniezione di errori nella porta blackhole.
Tipo: stringa
Valori validi: tcp | udp
Campo obbligatorio: sì
TrafficType
Il tipo di traffico utilizzato dall'iniezione dei guasti.
Tipo: stringa
Valori validi: ingress | egress
Campo obbligatorio: sì
SourcesToFilter
Una JSON serie di IPv4 indirizzi o CIDR blocchi protetti dall'errore.
Tipo: matrice di stringhe
Campo obbligatorio: no
Di seguito è riportato un esempio di richiesta per l'utilizzo dell'start
endpoint (sostituisci i red
valori con i tuoi):
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-blackhole-port/start Http method:POST Request payload: { "Port":
1234
, "Protocol": "tcp|udp", "TrafficType": "ingress|egress" "SourcesToFilter": ["${IP1}", "${IP2}
", ...], }
{ECS_AGENT_URI}/fault/v1/network-blackhole-port/stop
Questo endpoint blocca l'errore specificato nella richiesta. Questo endpoint ha i seguenti parametri:
Porta
La porta interessata dall'errore che deve essere interrotta.
Tipo: integer
Campo obbligatorio: sì
Protocollo
Il protocollo da usare per fermare l'errore.
Tipo: stringa
Valori validi: tcp | udp
Campo obbligatorio: sì
TrafficType
Il tipo di traffico utilizzato dall'iniezione del guasto.
Tipo: stringa
Valori validi: ingress | egress
Campo obbligatorio: sì
Di seguito è riportato un esempio di richiesta per l'utilizzo dell'stop
endpoint (sostituisci i red
valori con i tuoi):
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-blackhole-port/stop Http method: POST Request payload: { "Port":
1234
, "Protocol": "tcp|udp", "TrafficType": "ingress|egress", }
{ECS_AGENT_URI}/fault/v1/network-blackhole-port/status
Questo endpoint viene utilizzato per verificare lo stato dell'iniezione del guasto. Questo endpoint ha i seguenti parametri:
Porta
La porta interessata per verificare lo stato del guasto.
Tipo: integer
Campo obbligatorio: sì
Protocollo
Il protocollo da utilizzare per verificare lo stato dell'errore.
Tipo: stringa
Valori validi: tcp | udp
Campo obbligatorio: sì
TrafficType
Il tipo di traffico utilizzato dall'iniezione del guasto.
Tipo: stringa
Valori validi: ingress | egress
Campo obbligatorio: sì
Di seguito è riportato un esempio di richiesta per l'utilizzo dell'status
endpoint (sostituisci i red
valori con i tuoi):
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-blackhole-port/status Http method: POST Request payload: { "Port":
1234
, "Protocol": "tcp|udp", "TrafficType": "ingress|egress", }
Endpoint di latenza di rete
L'{ECS_AGENT_URI}/fault/v1/network-latency
endpoint aggiunge ritardo e jitter all'interfaccia di rete dell'attività per il traffico verso fonti specifiche. L'endpoint è compatibile con due modalità:
-
awsvpc ‐ le modifiche vengono applicate all'interfaccia di rete delle attività
-
host ‐ le modifiche vengono applicate all'interfaccia di rete predefinita
{ECS_AGENT_URI}/fault/v1/network-latency/start
Questo /start
endpoint avvia l'iniezione dei guasti di latenza di rete e presenta i seguenti parametri:
DelayMilliseconds
Il numero di millisecondi di ritardo da aggiungere all'interfaccia di rete da utilizzare per l'iniezione dei guasti.
Tipo: integer
Campo obbligatorio: sì
JitterMilliseconds
Il numero di millisecondi di jitter da aggiungere all'interfaccia di rete da utilizzare per l'iniezione dei guasti.
Tipo: integer
Campo obbligatorio: sì
Origini
Una JSON serie di IPv4 indirizzi o CIDR blocchi destinati all'uso con l'iniezione di errori.
Tipo: matrice di stringhe
Campo obbligatorio: sì
SourcesToFilter
Una JSON serie di IPv4 indirizzi o CIDR blocchi protetti dall'errore. SourcesToFilter
ha la priorità suSources
.
Tipo: matrice di stringhe
Campo obbligatorio: no
Di seguito è riportato un esempio di richiesta per l'utilizzo dell'/start
endpoint (sostituisci i red
valori con i tuoi):
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-latency/start Http method: POST Request payload: { "DelayMilliseconds":
123
, "JitterMilliseconds":123
, "Sources": ["${IP1}", "${IP2}
", ...], "SourcesToFilter": ["${IP1}
", "${IP2}
", ...], }
{ECS_AGENT_URI}/fault/v1/network-latency/stop and /status
L'{ECS_AGENT_URI}/fault/v1/network-latency/stop
endpoint arresta l'errore e ne {ECS_AGENT_URI}/fault/v1/network-latency/status
verifica lo stato.
Di seguito sono riportati due esempi di richieste per l'utilizzo degli endpoint /stop
e degli /status
endpoint. Entrambi utilizzano il POST HTTP
metodo.
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-latency/stop
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-latency/status
Endpoint di perdita di pacchetti di rete
L'{ECS_AGENT_URI}/fault/v1/network-packet-loss
endpoint aggiunge la perdita di pacchetti all'interfaccia di rete specificata. Questo endpoint è compatibile con due modalità:
-
awsvpc ‐ le modifiche vengono applicate all'interfaccia di rete delle attività
-
host ‐ le modifiche vengono applicate all'interfaccia di rete predefinita
{ECS_AGENT_URI}/fault/v1/network-packet-loss/start
Questo /start
endpoint avvia l'iniezione di errori di perdita dei pacchetti di rete e presenta i seguenti parametri:
LossPercent
La percentuale di perdita di pacchetti
Tipo: integer
Campo obbligatorio: sì
Origini
Una JSON serie di IPv4 indirizzi o CIDR blocchi da utilizzare per i test di iniezione dei guasti.
Tipo: matrice di stringhe
Campo obbligatorio: sì
SourcesToFilter
Una JSON serie di IPv4 indirizzi o CIDR blocchi protetti dall'errore. SourcesToFilter
ha la priorità suSources
.
Tipo: matrice di stringhe
Campo obbligatorio: no
Di seguito è riportato un esempio di richiesta per l'utilizzo dell'start
endpoint (sostituisci i red
valori con i tuoi):
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-packet-loss/start Http method: POST { "LossPercent":
6
, "Sources": ["${IP1}", "${IP2}
", ...], "SourcesToFilter": ["${IP1}
", "${IP2}
", ...], }
{ECS_AGENT_URI}/fault/v1/network-packet-loss/stop and /status
L'{ECS_AGENT_URI}/fault/v1/network-packet-loss/stop
endpoint arresta l'errore e ne {ECS_AGENT_URI}/fault/v1/network-packet-loss/status
verifica lo stato. È supportato solo un tipo di errore alla volta.
Di seguito sono riportati due esempi di richieste per l'utilizzo degli endpoint /stop
e degli /status
endpoint. Entrambi utilizzano il POST HTTP
metodo.
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-packet-loss/stop
Endpoint: ${{ECS_AGENT_URI}/fault/v1/network-packet-loss/status