View a markdown version of this page

fornitori di capacità - AWS Lambda

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

fornitori di capacità

Un fornitore di capacità è la base per l'esecuzione di Lambda Managed Instances. Funge da limite di sicurezza per le tue funzioni e definisce le risorse di calcolo che Lambda fornisce e gestisce per tuo conto.

Quando crei un fornitore di capacità, specifichi:

  • Configurazione VPC: le sottoreti e i gruppi di sicurezza in cui vengono eseguite le istanze

  • Autorizzazioni: ruoli IAM per Lambda per la gestione delle risorse EC2

  • Requisiti di istanza (opzionale) - Preferenze relative all'architettura e al tipo di istanza

  • Configurazione del ridimensionamento (opzionale): in che modo Lambda scala le tue istanze

Comprendere i fornitori di capacità come limite di sicurezza

I fornitori di capacità fungono da limite di sicurezza per le funzioni Lambda all'interno del VPC, sostituendo l'isolamento. Firecracker-based Le funzioni vengono eseguite in contenitori all'interno delle istanze, ma i contenitori non forniscono un forte isolamento di sicurezza tra le funzioni, a differenza di Firecracker MicroVMS.

Concetti chiave di sicurezza:

  • Capacity Provider: il limite di sicurezza che definisce i livelli di affidabilità per le funzioni Lambda

  • Isolamento dei container: i container NON sono un fornitore di sicurezza: non affidatevi a loro per la sicurezza tra carichi di lavoro non attendibili

  • Separazione della fiducia: separa i carichi di lavoro che non sono reciprocamente affidabili utilizzando fornitori di capacità diversi

Creazione di un provider di capacità

È possibile creare un fornitore di capacità utilizzando la AWS CLI, la console di AWS gestione o gli SDK. AWS

Utilizzo AWS della CLI:

aws lambda create-capacity-provider \ --capacity-provider-name my-capacity-provider \ --vpc-config SubnetIds=subnet-12345,subnet-67890,subnet-11111,SecurityGroupIds=sg-12345 \ --permissions-config CapacityProviderOperatorRoleArn=arn:aws:iam::123456789012:role/MyOperatorRole \ --instance-requirements Architectures=x86_64 \ --capacity-provider-scaling-config ScalingMode=Auto

Parametri obbligatori

CapacityProviderName

  • Un nome univoco per il tuo fornitore di capacità

  • Deve essere univoco all'interno del tuo AWS account

VpcConfig

  • SubnetIds(obbligatorio): almeno una sottorete, massimo 16. Usa le sottoreti in più zone di disponibilità per la resilienza

  • SecurityGroupIds(opzionale): gruppi di sicurezza per le tue istanze. Il valore predefinito è il gruppo di sicurezza predefinito di VPC se non specificato

PermissionsConfig

  • CapacityProviderOperatorRoleArn(obbligatorio): ruolo IAM che consente a Lambda di gestire le risorse EC2 nel tuo capacity provider

Parametri facoltativi

InstanceRequirements

Specifica l'architettura e i tipi di istanza per il tuo fornitore di capacità:

  • Architetture: scegli x86_64 o. arm64 L'impostazione predefinita è x86_64

  • AllowedInstanceTypes: Specifica i tipi di istanza consentiti. Ad esempio: m5.8xlarge

  • ExcludedInstanceTypes: specifica i tipi di istanza esclusi utilizzando caratteri jolly. È possibile specificare solo uno tra o AllowedInstanceTypes ExcludedInstanceTypes

Per impostazione predefinita, Lambda sceglie i tipi di istanza ottimali per il carico di lavoro. Ti consigliamo di lasciare che Lambda Managed Instances scelga i tipi di istanza per te, poiché limitare il numero di possibili tipi di istanza potrebbe comportare una minore disponibilità.

CapacityProviderScalingConfig

Configura il modo in cui Lambda ridimensiona le tue istanze:

  • ScalingMode: impostato su Auto per il ridimensionamento automatico o Manual per il controllo manuale. L'impostazione predefinita è Auto

  • MaxVCpuCount: numero massimo di vCPU per il fornitore di capacità. L'impostazione predefinita è 400.

  • ScalingPolicies: definisce le politiche di scalabilità del tracciamento degli obiettivi per l'utilizzo della CPU e della memoria

KmsKeyArn

Specifica una AWS KMS chiave per la crittografia EBS. Il valore predefinito è la chiave AWS gestita se non specificata.

Tag

Aggiungi tag per organizzare e gestire i tuoi fornitori di capacità.

PropagateTags

Configura la propagazione dei tag per applicare automaticamente i tag alle risorse gestite (istanze Amazon EC2, volumi Amazon EBS ed ENI) lanciate dal fornitore di capacità. Usa la propagazione dei tag per applicare l'allocazione dei costi, gli SCP e i requisiti di conformità. Per ulteriori informazioni, consulta Propagazione dei tag. Propagazione di tag

Gestione dei fornitori di capacità

Aggiornare un provider di capacità

È possibile aggiornare determinate proprietà di un fornitore di capacità utilizzando l'UpdateCapacityProviderAPI.

aws lambda update-capacity-provider \ --capacity-provider-name my-capacity-provider \ --capacity-provider-scaling-config ScalingMode=Auto

Eliminare un provider di capacità

Puoi eliminare un fornitore di capacità quando non è più necessario utilizzando l'DeleteCapacityProviderAPI.

aws lambda delete-capacity-provider \ --capacity-provider-name my-capacity-provider

Nota: non è possibile eliminare un fornitore di capacità a cui sono associate versioni di funzioni.

Visualizzazione dei dettagli del fornitore di capacità

Recupera informazioni su un fornitore di capacità utilizzando l'GetCapacityProviderAPI.

aws lambda get-capacity-provider \ --capacity-provider-name my-capacity-provider

Stati del fornitore di capacità

Un fornitore di capacità può trovarsi in uno dei seguenti stati:

  • In sospeso: il fornitore di capacità è in fase di creazione

  • Attivo: il fornitore di capacità è pronto per l'uso

  • Fallito: la creazione del fornitore di capacità non è riuscita

  • Eliminazione: il fornitore di capacità è in fase di eliminazione

Quote

  • Capacità massima dei fornitori per account: 1.000

  • Numero massimo di versioni di funzioni per fornitore di capacità: 100 (non può essere aumentato)

Best practice

  1. Separate per livello di affidabilità: create diversi fornitori di capacità per carichi di lavoro con requisiti di sicurezza diversi

  2. Usa nomi descrittivi: nomina i fornitori di capacità per indicare chiaramente l'uso previsto e il livello di affidabilità (ad esempio,,production-trusted). dev-sandbox

  3. Utilizza più zone di disponibilità: specifica le sottoreti su più AZ per un'elevata disponibilità

  4. Lascia che Lambda scelga i tipi di istanza: a meno che tu non abbia requisiti hardware specifici, consenti a Lambda di selezionare i tipi di istanza ottimali per la disponibilità

  5. Monitora l'utilizzo: AWS CloudTrail da utilizzare per monitorare le assegnazioni dei fornitori di capacità e i modelli di accesso

Fasi successive