Risorse create dai servizi Amazon ECS Express Mode - Amazon Elastic Container Service

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à.

Risorse create dai servizi Amazon ECS Express Mode

Un servizio in modalità Express riduce la complessità della distribuzione di applicazioni containerizzate fornendo impostazioni predefinite ragionevoli e automatizzando la configurazione dei servizi di supporto. AWS Invece di gestire centinaia di parametri di configurazione su più servizi, un servizio in modalità Express richiede solo un'immagine del contenitore, un ruolo di esecuzione delle attività e un ruolo di infrastruttura per iniziare.

I servizi in modalità Express hanno procedure semplificate per il provisioning e la configurazione di un servizio Amazon ECS che raggruppa l'infrastruttura preferita per l'esecuzione di un'applicazione Web di produzione. I servizi in modalità Express incorporano automaticamente le migliori pratiche operative e di configurazione. Vengono create le seguenti risorse:

  • Il cluster ECS predefinito (se non esiste già) con i provider di capacità Fargate

  • Una definizione di attività con configurazioni di container, logging e rete

  • Un servizio con implementazione canaria e scalabilità automatica

  • Application Load Balancer con listener HTTPS, regole di listener e gruppi target

  • Gruppi di sicurezza con ingresso minimo richiesto

  • Service Linked Roles per l'auto-scaling e il bilanciamento del carico

  • Politica di scalabilità degli obiettivi e del tracciamento dei target di Application Auto Scaling.

    La politica di scalabilità aggiunge o rimuove le attività di servizio necessarie per mantenere la metrica pari o vicina al valore target specificato. Oltre a mantenere la metrica vicina al valore target, una politica di scalabilità basata sul tracciamento degli obiettivi si adatta anche alle fluttuazioni della metrica dovute a uno schema di carico fluttuante e riduce al minimo le rapide fluttuazioni nel numero di attività in esecuzione nel servizio.

  • Gruppo di log specifico del servizio

  • Allarme metrico per il rilevamento di implementazioni difettose

  • Certificato ACM

Utilizza le impostazioni predefinite per iniziare a utilizzare i servizi Express Mode o configura l'applicazione utilizzando un set minimo di parametri.

Impostazioni predefinite del cluster

Le seguenti impostazioni predefinite sono configurabili dalla modalità Express per il cluster:

  • ClusterName: utilizza il cluster. default

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o specificando. create-express-gateway-service --cluster

Le seguenti impostazioni predefinite sono impostate da Express Mode ma possono essere aggiornate direttamente nel Cluster.

  • CapacityProviders: ["FARGATE"] - Utilizza Fargate

Impostazioni predefinite per la definizione delle attività

Le seguenti impostazioni predefinite sono configurabili in modalità Express per la definizione dell'attività:

  • cpu: 1024 - 1 unità vCPU allocata all'attività

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o eseguendo. create-express-gateway-service --cpu

  • memoria: 2048 - 2 GB di memoria allocata all'attività

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o eseguendo. create-express-gateway-service --memory

Le seguenti impostazioni predefinite sono impostate da Express Mode ma possono essere aggiornate direttamente nella Task Definition.

  • NetworkMode: «awsvpc»: utilizza la modalità di rete awsvpc

  • operatingSystemFamily: «LINUX» - Funziona sul sistema operativo Linux

  • CPUArchitecture: «X86_64" - Utilizza l'architettura del processore x86_64

  • requiresCompatibilities: ["FARGATE"] - Compatibile con il tipo di lancio Fargate

  • PlatformVersion: «LATEST» - Utilizza l'ultima versione della piattaforma Fargate

Impostazioni predefinite per la definizione del contenitore

Le seguenti impostazioni predefinite sono configurabili dalla modalità Express per il contenitore:

  • port: 80 - Porta predefinita per il traffico di container

Le seguenti impostazioni predefinite sono impostate dalla modalità Express ma possono essere aggiornate direttamente in Task Definition - Container Definition:

  • essential: true - Il contenitore è contrassegnato come essenziale per lo stato delle attività

  • protocol: «tcp» - Protocollo predefinito per la comunicazione con il bilanciamento del carico

  • name: «Main» - Nome predefinito per il contenitore principale

    La modifica del nome del contenitore predefinito può influire sulla capacità di Express Mode di apportare aggiornamenti successivi al servizio. Questa operazione non è consigliata se si intende continuare a utilizzare la console Express Mode o APIs

  • VersionConsistency: abilitato: risolve i tag di immagine da digest per distribuzioni coerenti IDs

  • initProcessEnabled: true - Abilita il supporto del processo di inizializzazione di Docker.

  • stOptimeOut: 30 secondi - Tempo tra i segnali SIGTERM e SIGKILL.

Impostazioni predefinite di registrazione

Le seguenti impostazioni predefinite sono configurabili dalla modalità Express per i registri: CloudWatch

  • <cluster><name>awslogs-group: «/aws/ecs/ -####» - Nome del gruppo di log derivato dal nome del cluster e del servizio

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o eseguendo. create-express-gateway-service --primary-container “awsLogsConfiguration”=[{“logGroup”=“/my/logGroup/”}]

  • awslogs-stream-prefix: «ecs» - Prefisso per i nomi dei flussi di log

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o eseguendo. create-express-gateway-service --primary-container “awsLogsConfiguration”=[{“logStreamPrefix”=“myprefix”}]

Le seguenti impostazioni predefinite sono impostate da Express Mode ma possono essere aggiornate direttamente in Task Definition - Log Configuration:

  • LogDriver: «awslogs» - Utilizza i log CloudWatch

  • awslogs-region: current Region: utilizza la stessa regione del servizio Express Mode

  • mode: «non-blocking» - Modalità di registrazione impostata su non bloccante

  • max-buffer-size: «25m» - Dimensione massima del buffer per le scritture di log

Impostazioni predefinite del servizio

Le seguenti impostazioni predefinite sono configurabili dalla modalità Express per il servizio Amazon ECS:

  • ServiceName: servizio Express Mode → Nome - Nome del servizio (fornito dal cliente o derivato dal nome dell'immagine)

    Il nome può essere configurato solo al momento della creazione e non è disponibile per la configurazione negli aggiornamenti.

  • cluster: servizio Express Mode → Cluster - Cluster ECS per questo servizio (fornito dal cliente o predefinito)

    Il cluster può essere configurato solo al momento della creazione e non è disponibile per la configurazione in caso di aggiornamenti.

  • DesiredCount: servizio Express Mode → MinTasks - Conteggio desiderato per il servizio (il valore predefinito è 1)

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o eseguendo create-express-gateway-service --scaling-target ‘{“minTaskCount”=3}',

  • tag: servizio Express Mode Tag per l' AWS etichettatura (forniti dal cliente)

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o eseguendo. create-express-gateway-service --tags I tag possono essere aggiunti solo al momento della creazione di una nuova risorsa.

Le seguenti impostazioni predefinite sono impostate dalla modalità Express ma possono essere aggiornate direttamente nel servizio Amazon ECS:

  • availabilityZoneRebalancing: true - Abilita il ribilanciamento automatico AZ

  • CapacityProviderStrategy: {"base»: 1, «capacityProvider»: «FARGATE», «weight»: 1} - Utilizza Fargate per la capacità di calcolo

  • DeploymentConfiguration: Canary per impostazione predefinita: il servizio Express Mode utilizza le distribuzioni Canary

    Tieni presente che la strategia di distribuzione non può essere aggiornata sui servizi Express Mode.

  • enable ECSManaged Tags: true - Abilita l'etichettatura delle risorse gestite da ECS

  • healthCheckGracePeriodSeconds: 300 - Periodo di grazia prima che Scheduler esamini i controlli di integrità ELB o Lattice (si allinea al periodo di grazia predefinito per il controllo dello stato di salute ELB)

  • <Not set>LaunchType: - Utilizza fornitori di capacità

  • LoadBalancers: configurazione del bilanciamento del carico gestita da ECS

    Tieni presente che le configurazioni del load balancer non possono essere aggiornate sui servizi Express Mode.

  • Strategia di posizionamento: non impostata: utilizza Fargate all'avvio (deve sempre essere AZ Spread)

  • PlatformVersion: ULTIMA - Versione della piattaforma Fargate (codificata secondo la versione PIÙ RECENTE)

  • propagateTags: «SERVICE» - Propaga i tag dal servizio alle attività

  • SchedulingStrategy: «REPLICA» - I servizi Express Mode sono servizi REPLICA

  • TaskDefinition: servizio Express Mode creato: la definizione dell'attività da utilizzare (fornita dal servizio Express Mode)

Impostazioni predefinite della configurazione di rete

Le seguenti impostazioni predefinite sono configurabili dalla modalità Express per il servizio Amazon ECS - Configurazione di rete:

  • NetworkConfiguration.subnets: se non ne viene fornita nessuna, Express Mode utilizzerà le sottoreti pubbliche predefinite nel VPC predefinito.

    Il VPC predefinito deve avere almeno due sottoreti pubbliche, in almeno due zone di disponibilità, di cui almeno 8 IPs disponibili gratuitamente, per blocco CIDR assegnato, per sottorete.

    Se fornisci sottoreti pubbliche personalizzate, Express Mode fornirà un ALB con accesso a Internet e attiverà AssignPublicIP per le tue attività. Se fornite sottoreti private (sottoreti senza un gateway Internet nella tabella di routing), Express Mode fornirà un ALB interno.

    Se si specificano sottoreti, il primo servizio Express Mode per un VPC definisce le sottoreti associate al bilanciamento del carico con accesso a Internet o interno per quel VPC. I servizi successivi in modalità Express che vengono avviati nello stesso VPC devono disporre di sottoreti che corrispondono alle zone di disponibilità supportate dal load balancer. Per questo motivo, consigliamo di creare servizi Express Mode con sottoreti provenienti da tutte le zone di disponibilità.

  • Configurazione di rete. SecurityGroups: Se non ne viene fornito nessuno, Express Mode crea sia un Service Security Group che un Load Balancer Security Group

    Il Service Security Group consente il traffico in uscita verso la rete Internet pubblica, ma ciò può essere limitato a seconda di altri aspetti della rete, come la configurazione della sottorete.

    Il gruppo di sicurezza Load Balancer Il gruppo di sicurezza Load Balancer consente il traffico in entrata per la risoluzione HTTPS e il traffico in uscita verso il gruppo di sicurezza del servizio sulla porta container specificata (impostazione predefinita 80). E viene aggiornato automaticamente in base alla porta container fornita nelle chiamate Express Mode Create o Update.

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o create-express-gateway-service --network-configuration '{"securityGroup": ["sg-xxxxxxx"]}' eseguendo. Quando si fornisce un gruppo di sicurezza, si fornisce un percorso di ingresso aggiuntivo al servizio.

Le seguenti impostazioni predefinite sono impostate da Express Mode ma possono essere aggiornate direttamente in Amazon ECS Service - Network Configuration:

  • assignPublicIp: In base al tipo di sottorete: abilitato per le sottoreti pubbliche per garantire che gli utenti del VPC predefinito possano accedere alla rete Internet pubblica, abilitiamo il pubblico per ogni attività per impostazione predefinita. IPs Questa opzione è disabilitata se fornisci una sottorete privata e sei quindi responsabile della configurazione di un gateway NAT se le tue attività richiedono l'accesso a Internet.

Impostazioni predefinite dei ruoli IAM

I seguenti ruoli IAM sono configurabili per un servizio in modalità Express con creazione automatica di ruoli collegati ai servizi, ove appropriato.

  • executionRoleArn: Ruolo di esecuzione dell'attività (parametro obbligatorio)

    Sebbene le autorizzazioni richieste siano incluse nella politica gestita, è possibile allegare politiche e autorizzazioni aggiuntive. Ulteriori dettagli su Amazon ECSTask ExecutionRolePolicy nella AWS Managed Policy Reference Guide

  • infrastructureRoleArn: Ruolo dell'infrastruttura per Express Gateway Services (parametro obbligatorio)

    Sebbene le autorizzazioni richieste siano incluse nella policy gestita, è possibile allegare policy e autorizzazioni aggiuntive. Ulteriori dettagli su Amazon ECSInfrastructure RoleforExpressGatewayServices Managed Policy nella AWS Managed Policy Reference Guide

  • taskRoleArn: Task Role per le chiamate dal codice dell'applicazione del contenitore (opzionale)

    È possibile personalizzare questa opzione utilizzando l'opzione Configurazioni aggiuntive nella console o create-express-gateway-service --task-role-arn eseguendo.

    È necessario creare il nuovo ruolo IAM prima di creare o aggiornare il servizio Express Mode.

I seguenti ruoli IAM vengono configurati automaticamente da Express Mode.

  • ecsServiceRoleForeCS: consente ad Amazon ECS di gestire il cluster

  • AWSServiceRoleForElasticLoadBalancing: richiama altri AWS servizi per tuo conto, creati automaticamente da Elastic Load Balancing

  • AWSServiceRoleForApplicationAutoScaling_ECSService: chiama altri AWS servizi per conto dell'utente, creati automaticamente da Application Auto Scaling

Impostazioni predefinite di Application Auto Scaling

Le seguenti impostazioni di Application Auto Scaling possono essere configurate in modalità Express:

  • autoScalingTargetValore: 60 - Percentuale di utilizzo della CPU prevista per la scalabilità

  • autoScalingMetric: "CPUUtilization" - Metrica utilizzata per le decisioni relative alla scalabilità automatica

  • desiredMinTaskNumero: 1 - Numero minimo di attività da mantenere

  • desiredMaxTaskNumero: 20 - Numero massimo di attività a cui è possibile adattare (può essere aumentato o diminuito)

Le seguenti impostazioni possono essere configurate direttamente in Application Auto Scaling:

  • PolicyType: "TargetTrackingScaling" - Utilizza la politica di ridimensionamento del tracciamento degli obiettivi

  • disableScaleIn: false: consente il ridimensionamento quando la domanda diminuisce

Impostazioni predefinite del target di scalabilità delle applicazioni

Gli obiettivi Application Auto Scaling definiscono i limiti scalabili di risorse e capacità per le operazioni di scalabilità automatica. In modalità Express è possibile modificare quanto segue:

  • MaxCapacity: Servizio in modalità Express → MaxTasks - Numero massimo di attività a cui il servizio sarà esteso (impostazione predefinita CreateLoadBalancedService o fornita dal cliente)

  • MinCapacity: Servizio Express Mode → MinTasks - Attività minime a cui il servizio verrà ridimensionato (impostazione predefinita CreateLoadBalancedService o fornita dal cliente)

  • ScalableDimension: ecs:service: DesiredCount - La proprietà da scalare

  • Tag: derivati dai tag passati CreateLoadBalancedService - Tag di risorsa per questa risorsa

Le seguenti impostazioni predefinite possono essere modificate nel target scalabile di Application Auto Scaling:

  • DynamicScalingInSuspended: false - Indica se lo scaling in è sospeso

  • DynamicScalingOutSuspended: false - Indica se la scalabilità orizzontale è sospesa

  • ScheduledScalingSuspended: false - Indica se il ridimensionamento pianificato è sospeso

Impostazioni predefinite dei criteri di scalabilità delle applicazioni

Le politiche di scalabilità implementano algoritmi di tracciamento degli obiettivi che monitorano l'utilizzo della CPU e regolano il numero di attività per mantenere prestazioni ottimali. Dalla modalità Express è possibile modificare quanto segue:

  • TargetValue: 60% - Il valore obiettivo per la politica di tracciamento (servizio Express Mode → scaling-target-value)

  • PredefinedMetricType: ECSService MediaCPUUtilization : il nome, il tipo di metrica da tracciare (servizio Express Mode → scaling-metric)

    La modalità Express fornisce metriche di scalabilità per l'utilizzo medio CPUUtilization, medio della memoria e il numero di richieste per destinazione. Il numero di richieste per target proviene dall'Application Load Balancer e può essere impostato su 65536 richieste per target al secondo, ovvero il servizio Amazon ECS nel gruppo target Application Load Balancer.

Le seguenti impostazioni predefinite sono impostate da Express Mode ma possono essere modificate nella politica Application Auto Scaling:

  • PolicyName: < ServiceName ><» TargetMetric «> - Nome di questa politica di scalabilità (derivato dal nome del servizio ECS e da Target Metric)

  • PolicyType: TargetTrackingScaling - Il tipo di ridimensionamento da eseguire (impostazione predefinita)

  • ScalableDimension: «ecs:service:DesiredCount" - La proprietà da ridimensionare (impostazione predefinita)

  • DisableScaleIn: false - Indica se la scalabilità in è disabilitata

Impostazioni predefinite di Application Load Balancer

Le seguenti impostazioni predefinite di Application Load Balancer possono essere configurate in modalità Express:

  • schema: dipende dalle sottoreti - Crea un sistema di bilanciamento del carico rivolto a Internet con indirizzi IP pubblici quando vengono fornite sottoreti pubbliche. Crea un sistema di bilanciamento del carico interno con indirizzi IP privati quando vengono fornite sottoreti private.

  • ip-address-type: dipende dalle sottoreti: crea un Application Load Balancer IPv4 solo quando gli indirizzi lo sono. IPv4 Quando sono presenti sottoreti IPv6 abilitate, verrà creato un Application Load Balancer dual-stack. Tieni presente che se disponi di sottoreti IPv6 abilitate, il primo servizio Express Mode in un VPC definisce il sistema di bilanciamento del carico interno o connesso a Internet per quel VPC. Per questo motivo, ti consigliamo di creare prima le tue IPv6 sottoreti solo o in un nuovo VPC.

Le seguenti impostazioni predefinite sono impostate in modalità Express e possono essere configurate in Application Load Balancer:

  • desync-mitigation-mode: Disattivata: la mitigazione della desincronizzazione HTTP è disabilitata

  • access-logs.enabled: false - La registrazione degli accessi è disabilitata

  • https - Uses HTTPS protocol for secure comlistener-configurations.protocol: comunicazione

  • listener-configurations.port: 443 - Ascolta sulla porta HTTPS standard

  • listener-configurations.rule-type: host-header: indirizza il traffico in base alle regole dell'intestazione dell'host

Impostazioni predefinite del gruppo target

Le seguenti impostazioni predefinite di Amazon EC2 Target Group possono essere configurate in modalità Express:

  • health-check-path: (impostazione predefinita «/») Percorso di controllo dello stato del servizio in modalità Express - percorso URL per le richieste di controllo sanitario

  • port: (default 80) - Porta su cui le destinazioni ricevono traffico

  • health-check-port: (impostazione predefinita 80) - Porta per le richieste di controllo sanitario

Le seguenti impostazioni predefinite sono impostate dalla modalità Express e possono essere configurate in Amazon EC2 Target Groups:

  • protocollo: HTTP - Protocollo per l'instradamento del traffico verso gli obiettivi

  • protocol-version: HTTP1 - Versione del protocollo HTTP per la comunicazione

  • vpc-id: l'impostazione predefinita è l'identificatore VPC - Virtual Private Cloud predefinito per il gruppo target, ma verrà derivato dalle sottoreti fornite

  • health-check-protocol: Uguale a Protocol: Protocollo per le richieste di controlli sanitari

  • health-check-enabled: Sempre abilitato: i controlli Health vengono abilitati automaticamente

  • health-check-interval-seconds: 30 - Intervallo tra i controlli sanitari dei singoli obiettivi

  • health-check-timeout-seconds: 5 - Durata del timeout per le risposte ai controlli sanitari

  • healthy-threshold-count: 5 - Sono necessari controlli sanitari consecutivi con esito positivo per verificare lo stato di salute

  • unhealthy-threshold-count: 2 - Sono necessari controlli sanitari consecutivi non riusciti per verificare lo stato di salute

  • target-type: ip - Le destinazioni sono registrate in base all'indirizzo IP

  • ip-address-type: ipv4 - Utilizza IPv4 gli indirizzi per la registrazione degli obiettivi

Condivisione delle risorse e ottimizzazione dei costi

I servizi Express Mode condividono automaticamente le risorse quando possibile per ottimizzare i costi:

  • Condivisione del Load Balancer: fino a 25 servizi Express Mode nello stesso VPC possono condividere un Application Load Balancer. Express Mode fornirà ulteriori Application Load Balancer, se necessario, a seconda della quantità di servizi Express Mode forniti. Inoltre, riducendo la quantità di servizi Express Mode nel VPC, Express Mode eliminerà anche gli Application Load Balancer non utilizzati. Questa condivisione riduce il costo effettivo per applicazione man mano che si implementano più servizi Express Mode.

  • Condivisione di cluster: i servizi in modalità Express possono essere raggruppati in Amazon ECS Clusters. I servizi in modalità Express possono anche condividere Amazon ECS Clusters con servizi Amazon ECS non gestiti da Amazon ECS Mode.