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à.
Cross-Region: Connettività
Puoi utilizzare Cross-Region: Connectivity lo scenario per bloccare il traffico di rete delle applicazioni dalla regione dell'esperimento alla regione di destinazione e sospendere la replica tra regioni per le tabelle globali multiregionali di Amazon S3 e Amazon DynamoDB. Interregione: la connettività influisce sul traffico delle applicazioni in uscita dalla regione in cui viene eseguito l'esperimento (regione dell'esperimento). Il traffico in entrata senza stato proveniente dalla regione che desideri isolare dalla regione dell'esperimento (regione di destinazione) potrebbe non essere bloccato. Il traffico proveniente dai servizi gestiti di AWS potrebbe non essere bloccato.
Questo scenario può essere utilizzato per dimostrare che le applicazioni multiregionali funzionano come previsto quando le risorse nella regione di destinazione non sono accessibili dalla regione dell'esperimento. Include il blocco del traffico di rete dalla regione dell'esperimento alla regione di destinazione mirando ai gateway di transito e alle tabelle dei percorsi. Inoltre, sospende la replica tra regioni per le tabelle globali S3 e DynamoDB. Per impostazione predefinita, le azioni per le quali non viene trovato alcun obiettivo verranno ignorate.
Azioni
Insieme, le seguenti azioni bloccano la connettività interregionale per i servizi AWS inclusi. Le azioni vengono eseguite in parallelo. Per impostazione predefinita, lo scenario blocca il traffico per 3 ore, che puoi aumentare fino a una durata massima di 12 ore.
Interrompi la connettività di Transit Gateway
Cross Region: Connectivityinclude aws:network:transit-gateway-disrupt-cross-region-connectivity per bloccare il traffico di rete interregionale dai VPC nella regione dell'esperimento ai VPC nella regione di destinazione collegati da un gateway di transito. Ciò non influisce sull'accesso agli endpoint VPC all'interno della regione dell'esperimento, ma bloccherà il traffico proveniente dalla regione dell'esperimento destinato a un endpoint VPC nella regione di destinazione.
Questa azione si rivolge ai gateway di transito che collegano la regione dell'esperimento e la regione di destinazione. Per impostazione predefinita, si rivolge ai gateway di transito con un tag denominato DisruptTransitGateway con un valore di. Allowed Puoi aggiungere questo tag ai tuoi gateway di transito o sostituire il tag predefinito con il tuo tag nel modello dell'esperimento. Per impostazione predefinita, se non viene trovato alcun gateway di transito valido, questa azione verrà ignorata.
Interrompi la connettività della sottorete
Cross Region: Connectivityinclude aws:network:route-table-disrupt-cross-region-connectivity per bloccare il traffico di rete interregionale dai VPC nella regione dell'esperimento ai blocchi IP AWS pubblici nella regione di destinazione. Questi blocchi IP pubblici includono gli endpoint dei servizi AWS nella regione di destinazione, ad esempio l'endpoint regionale S3, e i blocchi IP AWS per i servizi gestiti, ad esempio gli indirizzi IP utilizzati per i sistemi di bilanciamento del carico e Amazon API Gateway. Questa azione blocca anche la connettività di rete tramite connessioni di peering VPC tra regioni dalla regione dell'esperimento alla regione di destinazione. Non influisce sull'accesso agli endpoint VPC nella regione dell'esperimento, ma bloccherà il traffico proveniente dalla regione dell'esperimento destinato a un endpoint VPC nella regione di destinazione.
Questa azione si rivolge alle sottoreti nella regione dell'esperimento. Per impostazione predefinita, si rivolge alle sottoreti con un tag denominato DisruptSubnet con un valore di. Allowed Puoi aggiungere questo tag alle tue sottoreti o sostituire il tag predefinito con il tuo tag nel modello dell'esperimento. Per impostazione predefinita, se non viene trovata alcuna sottorete valida, questa azione verrà ignorata.
Interrompi la connettività degli endpoint VPC
Cross Region: Connectivityinclude la connettività aws:network:disrupt-vpc-endpoint disrupt a un servizio associato agli endpoint VPC di destinazione. Ad esempio, se un endpoint VPC crea un collegamento privato a com.amazonaws.us-east-1.ec2, la connettività a quel servizio verrà interrotta.
Questa azione si rivolge agli endpoint VPC nella regione dell'esperimento. Per impostazione predefinita, si rivolge agli endpoint VPC dell'interfaccia con un tag denominato DisruptVpcEndpoint con un valore. Allowed Puoi aggiungere questo tag agli endpoint VPC o sostituire il tag predefinito con il tuo tag nel modello dell'esperimento. Per impostazione predefinita, se non vengono trovati endpoint VPC validi, questa azione verrà ignorata.
Sospendi la replica S3
Cross Region: Connectivityinclude aws:s3:bucket-pause-replication per sospendere la replica S3 dalla regione dell'esperimento alla regione di destinazione per i bucket mirati. La replica dalla regione di destinazione alla regione dell'esperimento non sarà influenzata. Al termine dello scenario, la replica del bucket riprenderà dal punto in cui è stata messa in pausa. Tieni presente che il tempo necessario alla replica per mantenere sincronizzati tutti gli oggetti varierà in base alla durata dell'esperimento e alla velocità di caricamento degli oggetti nel bucket.
Questa azione è indirizzata ai bucket S3 nella regione dell'esperimento con Cross-Region Replication (CRR) abilitato a un bucket S3 nella regione di destinazione. Per impostazione predefinita, si rivolge ai bucket con un tag denominato con un valore di. DisruptS3 Allowed Puoi aggiungere questo tag ai tuoi bucket o sostituire il tag predefinito con il tuo tag nel modello dell'esperimento. Per impostazione predefinita, se non viene trovato alcun bucket valido, questa azione verrà ignorata.
Sospendi la replica di DynamoDB
Cross-Region: Connectivityinclude aws:dynamodb:global-table-pause-replication per sospendere la replica tra la regione dell'esperimento e tutte le altre regioni, inclusa la regione di destinazione. Ciò impedisce la replica in entrata e in uscita dalla regione dell'esperimento ma non influisce sulla replica tra altre regioni. Al termine dello scenario, la replica della tabella riprenderà dal punto in cui è stata messa in pausa. Tieni presente che il tempo necessario alla replica per mantenere sincronizzati tutti i dati varierà in base alla durata dell'esperimento e alla frequenza delle modifiche alla tabella.
Questa azione si rivolge in modo mirato sia alle tabelle globali multiregionali di DynamoDB che eventualmente a quelle globali coerenti nella regione dell'esperimento. Per impostazione predefinita, si rivolge alle tabelle con un tag denominato DisruptDynamoDb con un valore di. Allowed Puoi aggiungere questo tag alle tue tabelle o sostituire il tag predefinito con il tuo tag nel modello dell'esperimento. Per impostazione predefinita, se non vengono trovate tabelle globali valide, questa azione verrà ignorata.
Sospendi la replica multiregionale di MemoryDB
Cross-Region: Connectivityinclude aws:memorydb:multi-region-cluster-pause-replication per sospendere la replica dal cluster membro regionale nella regione dell'esperimento al resto dei cluster nel cluster multiregionale di destinazione. La replica tra altri cluster membri regionali non sarà influenzata. Al termine dello scenario, la replica riprenderà dal punto in cui è stata messa in pausa. Tieni presente che il tempo impiegato dalla replica per sincronizzare i dati tra i cluster membri varierà in base alla durata dell'esperimento e alla velocità di scrittura dei dati nei cluster.
Questa azione si rivolge ai Multi-Region cluster MemoryDB con un membro regionale nella regione dell'esperimento. Per impostazione predefinita, si rivolge ai cluster multi-regione con un tag denominato DisruptMemoryDB con un valore di. Allowed Puoi aggiungere questo tag ai tuoi cluster multiregionali o sostituire il tag predefinito con il tuo tag nel modello di esperimento. Per impostazione predefinita, se non viene trovato alcun cluster valido, questa azione verrà ignorata.
Limitazioni
-
Questo scenario non include le condizioni di arresto. Le condizioni di arresto corrette per l'applicazione devono essere aggiunte al modello di esperimento.
Requisiti
-
Aggiungi l'autorizzazione richiesta al ruolo dell'esperimento AWS FIS.
-
I tag delle risorse devono essere applicati alle risorse destinate all'esperimento. Questi possono utilizzare la tua convenzione di etichettatura o i tag predefiniti definiti nello scenario.
Permissions
La seguente politica concede ad AWS FIS le autorizzazioni necessarie per eseguire un esperimento con lo scenario. Cross-Region: Connectivity Questa policy deve essere associata al ruolo dell'esperimento.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "RouteTableDisruptConnectivity1", "Effect": "Allow", "Action": "ec2:CreateRouteTable", "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity2", "Effect": "Allow", "Action": "ec2:CreateRouteTable", "Resource": "arn:aws:ec2:*:*:vpc/*" }, { "Sid": "RouteTableDisruptConnectivity21", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateRouteTable", "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity3", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateNetworkInterface", "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity4", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:prefix-list/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateManagedPrefixList", "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity5", "Effect": "Allow", "Action": "ec2:DeleteRouteTable", "Resource": [ "arn:aws:ec2:*:*:route-table/*", "arn:aws:ec2:*:*:vpc/*" ], "Condition": { "StringEquals": { "ec2:ResourceTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity6", "Effect": "Allow", "Action": "ec2:CreateRoute", "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "ec2:ResourceTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity7", "Effect": "Allow", "Action": "ec2:CreateNetworkInterface", "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity8", "Effect": "Allow", "Action": "ec2:CreateNetworkInterface", "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:security-group/*" ] }, { "Sid": "RouteTableDisruptConnectivity9", "Effect": "Allow", "Action": "ec2:DeleteNetworkInterface", "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "ec2:ResourceTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity10", "Effect": "Allow", "Action": "ec2:CreateManagedPrefixList", "Resource": "arn:aws:ec2:*:*:prefix-list/*", "Condition": { "StringEquals": { "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity11", "Effect": "Allow", "Action": [ "ec2:DeleteManagedPrefixList", "ec2:ModifyManagedPrefixList" ], "Resource": "arn:aws:ec2:*:*:prefix-list/*", "Condition": { "StringEquals": { "aws:ResourceTag/managedByFIS": "true" } } }, { "Sid": "EC2DescribeResources", "Effect": "Allow", "Action": [ "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeVpcPeeringConnections", "ec2:DescribeManagedPrefixLists", "ec2:DescribeSubnets", "ec2:DescribeRouteTables", "ec2:DescribeVpcEndpoints", "ec2:DescribeTransitGatewayPeeringAttachments", "ec2:DescribeTransitGatewayAttachments", "ec2:DescribeTransitGateways", "ec2:DescribeSecurityGroups" ], "Resource": "*" }, { "Sid": "RouteTableDisruptConnectivity14", "Effect": "Allow", "Action": "ec2:ReplaceRouteTableAssociation", "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:route-table/*" ] }, { "Sid": "RouteTableDisruptConnectivity15", "Effect": "Allow", "Action": "ec2:GetManagedPrefixListEntries", "Resource": "arn:aws:ec2:*:*:prefix-list/*" }, { "Sid": "RouteTableDisruptConnectivity16", "Effect": "Allow", "Action": "ec2:AssociateRouteTable", "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:route-table/*" ] }, { "Sid": "RouteTableDisruptConnectivity17", "Effect": "Allow", "Action": "ec2:DisassociateRouteTable", "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "ec2:ResourceTag/managedByFIS": "true" } } }, { "Sid": "RouteTableDisruptConnectivity18", "Effect": "Allow", "Action": "ec2:DisassociateRouteTable", "Resource": "arn:aws:ec2:*:*:subnet/*" }, { "Sid": "RouteTableDisruptConnectivity19", "Effect": "Allow", "Action": "ec2:ModifyVpcEndpoint", "Resource": "arn:aws:ec2:*:*:route-table/*", "Condition": { "StringEquals": { "ec2:ResourceTag/managedByFIS": "true" } } }, { "Sid": "TransitGatewayDisruptConnectivity1", "Effect": "Allow", "Action": [ "ec2:DisassociateTransitGatewayRouteTable", "ec2:AssociateTransitGatewayRouteTable" ], "Resource": [ "arn:aws:ec2:*:*:transit-gateway-route-table/*", "arn:aws:ec2:*:*:transit-gateway-attachment/*" ] }, { "Sid": "S3CrossRegion1", "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" }, { "Sid": "S3CrossRegion3", "Effect": "Allow", "Action": "s3:PauseReplication", "Resource": "arn:aws:s3:::*", "Condition": { "StringLike": { "s3:DestinationRegion": "*" } } }, { "Sid": "S3CrossRegion4", "Effect": "Allow", "Action": [ "s3:GetReplicationConfiguration", "s3:PutReplicationConfiguration" ], "Resource": "arn:aws:s3:::*", "Condition": { "BoolIfExists": { "s3:isReplicationPauseRequest": "true" } } }, { "Sid": "DynamoDbPauseReplication", "Effect": "Allow", "Action": [ "dynamodb:DescribeTable", "dynamodb:PutResourcePolicy", "dynamodb:GetResourcePolicy", "dynamodb:DeleteResourcePolicy" ], "Resource": [ "arn:aws:dynamodb:*:*:table/*" ] }, { "Sid": "DynamoDbMrscPauseReplication", "Effect": "Allow", "Action": [ "dynamodb:InjectError" ], "Resource": ["*"] }, { "Sid": "ResolveResourcesViaTags", "Effect": "Allow", "Action": "tag:GetResources", "Resource": "*" }, { "Sid": "MemDbCrossRegion", "Effect": "Allow", "Action": [ "memorydb:DescribeMultiRegionClusters", "memorydb:PauseMultiRegionClusterReplication" ], "Resource": [ "arn:aws:memorydb::*:multiregioncluster/*" ] }, { "Sid": "DisruptVPCE1", "Effect": "Allow", "Action": "ec2:CreateSecurityGroup", "Resource": [ "arn:aws:ec2:*:*:vpc/*", "arn:aws:ec2:*:*:security-group/*" ] }, { "Sid": "DisruptVPCE2", "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateSecurityGroup", "aws:RequestTag/managedByFIS": "true" } } }, { "Sid": "DisruptVPCE3", "Effect": "Allow", "Action": [ "ec2:DeleteSecurityGroup", "ec2:RevokeSecurityGroupEgress" ], "Resource": "arn:aws:ec2:*:*:security-group/*", "Condition": { "StringEquals": { "aws:ResourceTag/managedByFIS": "true" } } }, { "Sid": "DisruptVPCE4", "Effect": "Allow", "Action": "vpce:AllowMultiRegion", "Resource": "arn:aws:ec2:*:*:vpc-endpoint/*" }, { "Sid": "ModifyVPCE", "Effect": "Allow", "Action": "ec2:ModifyVpcEndpoint", "Resource": [ "arn:aws:ec2:*:*:vpc-endpoint/*", "arn:aws:ec2:*:*:security-group/*" ] } ] }
Contenuto dello scenario
Il seguente contenuto definisce lo scenario. Questo JSON può essere salvato e utilizzato per creare un modello di esperimento utilizzando il comando create-experiment-template dall'interfaccia a riga di
{ "targets": { "Transit-Gateway": { "resourceType": "aws:ec2:transit-gateway", "resourceTags": { "TgwTag": "TgwValue" }, "selectionMode": "ALL" }, "Subnet": { "resourceType": "aws:ec2:subnet", "resourceTags": { "SubnetKey": "SubnetValue" }, "selectionMode": "ALL", "parameters": {} }, "VPC-Endpoint": { "resourceType": "aws:ec2:vpc-endpoint", "resourceTags": { "DisruptPrivateLink": "Allowed" }, "selectionMode": "ALL" }, "S3-Bucket": { "resourceType": "aws:s3:bucket", "resourceTags": { "S3Impact": "Allowed" }, "selectionMode": "ALL" }, "DynamoDB-Global-Table": { "resourceType": "aws:dynamodb:global-table", "resourceTags": { "DisruptDynamoDb": "Allowed" }, "selectionMode": "ALL" }, "MemoryDB-Multi-Region-Cluster": { "resourceType": "aws:memorydb:multi-region-cluster", "resourceTags": { "DisruptMemoryDb": "Allowed" }, "selectionMode": "ALL" } }, "actions": { "Disrupt-Transit-Gateway-Connectivity": { "actionId": "aws:network:transit-gateway-disrupt-cross-region-connectivity", "parameters": { "duration": "PT3H", "region": "eu-west-1" }, "targets": { "TransitGateways": "Transit-Gateway" } }, "Disrupt-Subnet-Connectivity": { "actionId": "aws:network:route-table-disrupt-cross-region-connectivity", "parameters": { "duration": "PT3H", "region": "eu-west-1" }, "targets": { "Subnets": "Subnet" } }, "Disrupt-Vpc-Endpoint": { "actionId": "aws:network:disrupt-vpc-endpoint", "parameters": { "duration": "PT3H" }, "targets": { "VPCEndpoints": "VPC-Endpoint" } }, "Pause-S3-Replication": { "actionId": "aws:s3:bucket-pause-replication", "parameters": { "duration": "PT3H", "region": "eu-west-1" }, "targets": { "Buckets": "S3-Bucket" } }, "Pause-DynamoDB-Replication": { "actionId": "aws:dynamodb:global-table-pause-replication", "parameters": { "duration": "PT3H" }, "targets": { "Tables": "DynamoDB-Global-Table" } }, "Pause-MemoryDB-Multi-Region-Cluster-Replication": { "actionId": "aws:memorydb:multi-region-cluster-pause-replication", "parameters": { "duration": "PT3H", "region": "eu-west-1" }, "targets": { "MultiRegionClusters": "MemoryDB-Multi-Region-Cluster" } } }, "stopConditions": [ { "source": "none" } ], "roleArn": "", "logConfiguration": { "logSchemaVersion": 2 }, "tags": { "Name": "Cross-Region: Connectivity" }, "experimentOptions": { "accountTargeting": "single-account", "emptyTargetResolutionMode": "skip" }, "description": "Block application network traffic from experiment Region to target Region and pause cross-Region replication" }