Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Amazon ECS-Endpunkte zur Fehlerinjektion
Der Amazon-ECS-Container-Agent fügt die ECS_AGENT_URI
-Umgebungsvariable automatisch in die Amazon-ECS-Aufgabencontainer ein, um eine Methode für die Interaktion mit dem Container-Agent-API-Endpunkt bereitzustellen. Jeder Endpunkt umfasst einen /start
/stop
, und /status
Endpunkt. Die Endpunkte akzeptieren nur Anfragen von Aufgaben, für die die Fehlerinjektion aktiviert wurde, und für jeden Endpunkt gilt ein Ratenlimit von 1 Anfrage pro 5 Sekunden pro Container. Eine Überschreitung dieses Limits führt zu einem Fehler.
Anmerkung
Amazon ECS Agent version 1.88.0+
ist erforderlich, um die Fault Injection-Endpunkte zu verwenden.
Die drei Endpunkte für die Verwendung mit Fault Injection sind:
Eine erfolgreiche Anfrage führt zu einem Antwortcode von 200
mit der Meldung, running
wann Sie den /start
Endpunkt aufrufen, stopped
für den /stop
Endpunkt und/oder running
oder not-running
für den /status
Endpunkt.
{ "Status": <string> }
Eine erfolglose Anfrage gibt einen der folgenden Fehlercodes zurück:
-
400
‐ Schlechte Anfrage -
409
‐ Die Anfrage zur Fehlerinjektion steht im Konflikt mit einem anderen laufenden Fehler -
429
‐ Die Anfrage wurde gedrosselt -
500
‐ Auf dem Server ist ein unerwarteter Fehler aufgetreten
{ "Error": <string message> }
Anmerkung
Es kann entweder ein Netzwerklatenzfehler oder ein Netzwerkpaketverlust gleichzeitig auftreten. Der Versuch, mehr als eine zu injizieren, führt dazu, dass die Anfrage abgelehnt wird.
Netzwerk-Blackhole-Port-Endpunkt
Der {ECS_AGENT_URI}/fault/v1/network-blackhole-port
Endpunkt leitet eingehenden oder ausgehenden Datenverkehr für einen bestimmten Port und ein bestimmtes Protokoll im Netzwerk-Namespace einer Aufgabe ab und ist mit zwei Modi kompatibel:
-
awsvpc — Die Änderungen werden auf den Netzwerk-Namespace der Aufgabe angewendet
-
host ‐ Die Änderungen werden auf die standardmäßige Netzwerk-Namespace-Container-Instance angewendet
{ECS_AGENT_URI}/fault/v1/network-blackhole-port/start
Dieser Endpunkt startet die Netzwerk-Blackhole-Port-Fehlerinjektionen und hat die folgenden Parameter:
Port
Der angegebene Port, der für die Blackhole-Port-Fehlerinjektion verwendet werden soll.
Typ: Ganzzahl
Erforderlich: Ja
Protokoll
Das Protokoll, das für die Blackhole-Port-Fehlerinjektion verwendet werden soll.
Typ: Zeichenfolge
Zulässige Werte: tcp | udp
Erforderlich: Ja
TrafficType
Der von der Fault Injection verwendete Verkehrstyp.
Typ: Zeichenfolge
Zulässige Werte: ingress | egress
Erforderlich: Ja
SourcesToFilter
Ein JSON-Array von IPv4 Adressen oder CIDR-Blöcken, die vor dem Fehler geschützt sind.
Typ: Zeichenfolgen-Array
Erforderlich: Nein
Im Folgenden finden Sie eine Beispielanforderung für die Verwendung des start
Endpunkts (ersetzen Sie die red
Werte durch Ihre eigenen):
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
Dieser Endpunkt stoppt den in der Anfrage angegebenen Fehler. Dieser Endpunkt hat die folgenden Parameter:
Port
Der von dem Fehler betroffene Port, der gestoppt werden sollte.
Typ: Ganzzahl
Erforderlich: Ja
Protokoll
Das Protokoll, das verwendet werden soll, um den Fehler zu beenden.
Typ: Zeichenfolge
Zulässige Werte: tcp | udp
Erforderlich: Ja
TrafficType
Der von der Fehlerinjektion verwendete Verkehrstyp.
Typ: Zeichenfolge
Zulässige Werte: ingress | egress
Erforderlich: Ja
Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Verwendung des stop
Endpunkts (ersetzen Sie die red
Werte durch Ihre eigenen):
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
Dieser Endpunkt wird verwendet, um den Status der Fehlerinjektion zu überprüfen. Dieser Endpunkt hat die folgenden Parameter:
Port
Der betroffene Port, um den Status des Fehlers zu überprüfen.
Typ: Ganzzahl
Erforderlich: Ja
Protokoll
Das Protokoll, das bei der Überprüfung des Fehlerstatus verwendet werden soll.
Typ: Zeichenfolge
Zulässige Werte: tcp | udp
Erforderlich: Ja
TrafficType
Der von der Fehlerinjektion verwendete Verkehrstyp.
Typ: Zeichenfolge
Zulässige Werte: ingress | egress
Erforderlich: Ja
Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Verwendung des status
Endpunkts (ersetzen Sie die red
Werte durch Ihre eigenen):
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-blackhole-port/status Http method: POST Request payload: { "Port":
1234
, "Protocol": "tcp|udp", "TrafficType": "ingress|egress", }
Endpunkt der Netzwerk-Latenz
Der {ECS_AGENT_URI}/fault/v1/network-latency
Endpunkt fügt der Netzwerkschnittstelle der Aufgabe Verzögerung und Jitter für den Datenverkehr zu bestimmten Quellen hinzu. Der Endpunkt ist mit zwei Modi kompatibel:
-
awsvpc — Die Änderungen werden auf die Netzwerkschnittstelle der Aufgabe angewendet
-
host ‐ Die Änderungen werden auf die Standard-Netzwerkschnittstelle angewendet
{ECS_AGENT_URI}/fault/v1/network-latency/start
Dieser /start
Endpunkt beginnt mit der Netzwerklatenzfehlerinjektion und hat die folgenden Parameter:
DelayMilliseconds
Die Anzahl der Millisekunden Verzögerung, die der Netzwerkschnittstelle hinzugefügt werden muss, um sie für die Fehlerinjektion zu verwenden.
Typ: Ganzzahl
Erforderlich: Ja
JitterMilliseconds
Die Anzahl der Millisekunden an Jitter, die der Netzwerkschnittstelle hinzugefügt werden müssen, um sie für die Fehlerinjektion zu verwenden.
Typ: Ganzzahl
Erforderlich: Ja
Quellen
Ein JSON-Array von IPv4 Adressen oder CIDR-Blöcken, die als Ziel für die Verwendung bei der Fehlerinjektion dienen.
Typ: Zeichenfolgen-Array
Erforderlich: Ja
SourcesToFilter
Ein JSON-Array von IPv4 Adressen oder CIDR-Blöcken, die vor dem Fehler geschützt sind. SourcesToFilter
hat Vorrang vor. Sources
Typ: Zeichenfolgen-Array
Erforderlich: Nein
Im Folgenden finden Sie eine Beispielanforderung für die Verwendung des /start
Endpunkts (ersetzen Sie die red
Werte durch Ihre eigenen):
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
Der {ECS_AGENT_URI}/fault/v1/network-latency/stop
Endpunkt stoppt den Fehler und {ECS_AGENT_URI}/fault/v1/network-latency/status
überprüft dann den Status des Fehlers.
Im Folgenden finden Sie zwei Beispielanfragen für die Verwendung der /status
Endpunkte /stop
und. Beide verwenden die POST HTTP
Methode.
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-latency/stop
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-latency/status
Endpunkt für den Verlust von Netzwerkpaketen
Der {ECS_AGENT_URI}/fault/v1/network-packet-loss
Endpunkt fügt der angegebenen Netzwerkschnittstelle Paketverlust hinzu. Dieser Endpunkt ist mit zwei Modi kompatibel:
-
awsvpc — Die Änderungen werden auf die Netzwerkschnittstelle der Aufgabe angewendet
-
host ‐ Die Änderungen werden auf die Standard-Netzwerkschnittstelle angewendet
{ECS_AGENT_URI}/fault/v1/network-packet-loss/start
Dieser /start
Endpunkt beginnt mit der Fehlerinjektion bei Netzwerkpaketverlust und hat die folgenden Parameter:
LossPercent
Der Prozentsatz des Paketverlusts
Typ: Ganzzahl
Erforderlich: Ja
Quellen
Ein JSON-Array von IPv4 Adressen oder CIDR-Blöcken, das für die Fehlerinjektionstests verwendet werden soll.
Typ: Zeichenfolgen-Array
Erforderlich: Ja
SourcesToFilter
Ein JSON-Array von IPv4 Adressen oder CIDR-Blöcken, die vor dem Fehler geschützt sind. SourcesToFilter
hat Vorrang vor. Sources
Typ: Zeichenfolgen-Array
Erforderlich: Nein
Im Folgenden finden Sie eine Beispielanforderung für die Verwendung des start
Endpunkts (ersetzen Sie die red
Werte durch Ihre eigenen):
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
Der {ECS_AGENT_URI}/fault/v1/network-packet-loss/stop
Endpunkt stoppt den Fehler und {ECS_AGENT_URI}/fault/v1/network-packet-loss/status
überprüft dann den Status des Fehlers. Es wird jeweils nur einer von jedem Fehlertyp unterstützt.
Im Folgenden finden Sie zwei Beispielanfragen für die Verwendung der /status
Endpunkte /stop
und. Beide verwenden die POST HTTP
Methode.
Endpoint: ${ECS_AGENT_URI}/fault/v1/network-packet-loss/stop
Endpoint: ${{ECS_AGENT_URI}/fault/v1/network-packet-loss/status