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 dieser Grenze führt zu einem Fehler.
Anmerkung
Amazon ECS Agent version 1.88.0+ ist erforderlich, um die Fehlerinjektions-Endpunkte zu verwenden.
Die drei Endpunkte für die Verwendung mit Fehlerinjektion sind:
Eine erfolgreiche Anfrage führt zu einem Antwortcode von 200 mit der Meldung running, wenn Sie den /start-Endpunkt aufrufen, stopped für den /stop-Endpunkt und running oder not-running für den /status-Endpunkt.
{ "Status": <string> }
Eine erfolglose Anfrage gibt einen der folgenden Fehlercodes zurück:
-
400– Inkorrekte Anfrage -
409– Eine Fehlerinjektions-Anfrage kollidiert mit einem anderen laufenden Fehler -
429– Die Anforderung wurde gedrosselt -
500– Auf dem Server ist ein unerwarteter Fehler aufgetreten
{ "Error": <string message> }
Anmerkung
Es kann entweder ein Netzwerklatenzfehler oder ein Netzwerkpaketverlust gleichzeitig injiziert werden. Der Versuch, mehr als einen Fehler 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
Protocol (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 Fehlerinjektion verwendete Datenverkehrstyp.
Typ: Zeichenfolge
Zulässige Werte: ingress | egress
Erforderlich: Ja
SourcesToFilter
Ein JSON-Array von IPv6 Adressen IPv4 oder CIDR-Blöcken, die vor dem Fehler geschützt sind.
Typ: Zeichenfolgen-Array
Erforderlich: Nein
Im Folgenden finden Sie ein Beispiel für eine Anfrage zur 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 Anforderung angegebenen Fehler. Dieser Endpunkt hat die folgenden Parameter:
Port
Der Port, der von dem Fehler betroffen ist und gestoppt werden sollte.
Typ: Ganzzahl
Erforderlich: Ja
Protocol (Protokoll)
Das zu verwendende Protokoll, um den Fehler zu beheben.
Typ: Zeichenfolge
Zulässige Werte: tcp | udp
Erforderlich: Ja
TrafficType
Der von der Fehlerinjektion verwendete Datenverkehrstyp.
Typ: Zeichenfolge
Zulässige Werte: ingress | egress
Erforderlich: Ja
Im Folgenden finden Sie eine Beispielanforderung für die 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
Protocol (Protokoll)
Das Protokoll, das verwendet werden soll, um den Status des Fehlers zu überprüfen.
Typ: Zeichenfolge
Zulässige Werte: tcp | udp
Erforderlich: Ja
TrafficType
Der von der Fehlerinjektion verwendete Datenverkehrstyp.
Typ: Zeichenfolge
Zulässige Werte: ingress | egress
Erforderlich: Ja
Im Folgenden finden Sie eine Beispielanforderung für die 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", }
Netzwerklatenzendpunkt
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 Netzwerklatenz-Fehlerinjektion 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 Jitter, die der Netzwerkschnittstelle hinzugefügt werden muss, um sie für die Fehlerinjektion zu verwenden.
Typ: Ganzzahl
Erforderlich: Ja
Quellen
Ein JSON-Array von IPv6 Adressen IPv4 oder CIDR-Blöcken, die als Ziel für die Verwendung mit Fault Injection dienen.
Typ: Zeichenfolgen-Array
Erforderlich: Ja
SourcesToFilter
Ein JSON-Array von IPv6 Adressen IPv4 oder CIDR-Blöcken, die vor dem Fehler geschützt sind. SourcesToFilterhat 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 der {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 Endpunkte /stop und /status. 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 Netzwerkpaketverlust
Der {ECS_AGENT_URI}/fault/v1/network-packet-loss-Endpunkt fügt der angegebenen Netzwerkschnittstelle Paketverlust 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-packet-loss/start
Dieser /start-Endpunkt beginnt mit der Netzwerk-Paketverlust-Fehlerinjektion und hat die folgenden Parameter:
LossPercent
Der Prozentsatz des Paketverlusts
Typ: Ganzzahl
Erforderlich: Ja
Quellen
Ein JSON-Array von IPv6 Adressen IPv4 oder CIDR-Blöcken, das für die Fehlerinjektionstests verwendet werden soll.
Typ: Zeichenfolgen-Array
Erforderlich: Ja
SourcesToFilter
Ein JSON-Array von IPv6 Adressen IPv4 oder CIDR-Blöcken, die vor dem Fehler geschützt sind. SourcesToFilterhat 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 der {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 Endpunkte /stop und /status. 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