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à.
Prerequisiti per i file S3
Prima di iniziare a utilizzare S3 Files, assicurati di aver completato i seguenti prerequisiti.
AWS configurazione dell'account e del calcolo
Hai un AWS account.
Disponi di una risorsa di elaborazione e di un bucket S3 per uso generico nella AWS regione desiderata in cui desideri creare il file system. Per ulteriori informazioni, consulta Creazione di un bucket per uso generico.
Il tuo bucket S3 ha il controllo delle versioni abilitato. S3 Files richiede S3 Versioning per sincronizzare le modifiche tra il file system e il bucket S3. Per ulteriori informazioni, consulta Abilitazione della funzione Controllo delle versioni sui bucket.
Il tuo bucket S3 deve utilizzare uno dei seguenti tipi di crittografia: Server-side crittografia con chiavi gestite Amazon S3 SSE-S3 () Server-side o crittografia AWS con chiavi Key Management Service AWS (KMS) (). SSE-KMS
Client S3 Files
Per utilizzare S3 Files con Amazon EC2, devi installare il amazon-efs-utils client, una raccolta condivisa open source di strumenti per Amazon EFS e Amazon S3 Files. Per lavorare con S3 Files, è necessaria amazon-efs-utils la versione 3.0.0 o successiva. Il client include un programma di supporto per il montaggio che semplifica il montaggio dei file system S3 e abilita Amazon CloudWatch Metrics per il monitoraggio dello stato di montaggio del file system.
Fase 1: Installare il client
Accedi al terminale per la tua istanza Amazon EC2 tramite Secure Shell (SSH) e accedi con il nome utente appropriato. Per ulteriori informazioni, consulta Connect alla tua istanza EC2 nella Amazon Elastic Compute Cloud User Guide.
-
Se usi Amazon Linux, procedi come segue per installare efs-utils dai repository di Amazon:
sudo yum -y install amazon-efs-utils -
Se usi altre distribuzioni Linux supportate, puoi fare quanto segue:
curl https://amazon-efs-utils.aws.com/efs-utils-installer.sh | sudo sh -s -- --install -
Per altre distribuzioni Linux, consulta Su altre distribuzioni Linux nel file README di amazon-efs-utils
su. GitHub
Passaggio 2: installa botocore
Il amazon-efs-utils client utilizza botocore per interagire con altri servizi. AWS Ad esempio, devi installare botocore per utilizzare Amazon per CloudWatch monitorare il tuo file system. Per istruzioni sull'installazione e l'aggiornamento di botocore, consulta Installazione di botocore nel README di amazon-efs-utils
Attivazione della modalità FIPS per i file S3
Se è necessario rispettare gli standard federali di elaborazione delle informazioni (FIPS), è necessario abilitare la modalità FIPS nel client. L'attivazione della modalità FIPS comporta la modifica del s3files-utils.conf file sul sistema operativo.
Segui questi passaggi per abilitare la modalità FIPS nel client per S3 Files:
Utilizzando un editor di testo a scelta, aprire il file
/etc/amazon/efs/s3files-utils.conf.Trova la riga contenente il testo seguente:
fips_mode_enabled = falseCambia il testo nel modo seguente:
fips_mode_enabled = trueSalvare le modifiche.
Ruoli IAM e policy
Per utilizzare S3 Files, devi configurare i ruoli IAM e le policy associate per due scopi:
Accedere al bucket dal file system
Collegamento del file system alle risorse di calcolo AWS
Ruolo IAM per l'accesso al bucket dal file system
Quando crei un file system S3 Files, specifichi un ruolo IAM da cui S3 Files presume di leggere e scrivere nel tuo bucket S3. Questo ruolo concede a S3 Files l'autorizzazione a sincronizzare le modifiche tra il tuo file system e il tuo bucket, incluse le EventBridge regole di Amazon che attivano la sincronizzazione. Devi anche assicurarti che la policy del bucket S3 non neghi l'accesso alle tue risorse di elaborazione.
S3 Files richiede S3 Versioning sul tuo bucket. Utilizza operazioni API specifiche della versione come e in aggiunta a. s3:GetObjectVersion s3:GetObjectVersionTagging s3:GetObject La seguente politica utilizza i caratteri jolly (ad esempio, s3:GetObject* anzichés3:GetObject) per coprire sia le azioni con versione che quelle senza versione.
Nota
Quando crei un file system utilizzando la console di AWS gestione, S3 Files crea automaticamente questo ruolo IAM con le autorizzazioni richieste.
Questo ruolo IAM richiede quanto segue:
-
Una politica in linea come segue:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3BucketPermissions", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListBucketVersions" ], "Resource": "arn:aws:s3:::bucket", "Condition": { "StringEquals": { "aws:ResourceAccount": "accountId" } } }, { "Sid": "S3ObjectPermissions", "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject*", "s3:GetObject*", "s3:List*", "s3:PutObject*" ], "Resource": "arn:aws:s3:::bucket/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "accountId" } } }, { "Sid": "UseKmsKeyWithS3Files", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Encrypt", "kms:Decrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo" ], "Condition": { "StringLike": { "kms:ViaService": "s3.region.amazonaws.com", "kms:EncryptionContext:aws:s3:arn": [ "arn:aws:s3:::bucket", "arn:aws:s3:::bucket/*" ] } }, "Resource": "arn:aws:kms:region:accountId:*" }, { "Sid": "EventBridgeManage", "Effect": "Allow", "Action": [ "events:DeleteRule", "events:DisableRule", "events:EnableRule", "events:PutRule", "events:PutTargets", "events:RemoveTargets" ], "Condition": { "StringEquals": { "events:ManagedBy": "elasticfilesystem.amazonaws.com" } }, "Resource": [ "arn:aws:events:*:*:rule/DO-NOT-DELETE-S3-Files*" ] }, { "Sid": "EventBridgeRead", "Effect": "Allow", "Action": [ "events:DescribeRule", "events:ListRuleNamesByTarget", "events:ListRules", "events:ListTargetsByRule" ], "Resource": [ "arn:aws:events:*:*:rule/*" ] } ] }Sostituisci i valori segnaposto con i tuoi valori.
# Placeholder Description Esempio 1 bucketIl nome del tuo bucket S3 il mio secchio 2 regionLa AWS regione del tuo secchio us-east-1 3 accountIdL'ID del tuo AWS account 123456789012 -
Una politica di fiducia che consente a S3 Files di assumere il ruolo IAM. Aggiungi la seguente policy di fiducia al ruolo IAM per consentire al servizio S3 Files di assumerlo. Sostituisci
accountIderegioncon i tuoi valori.{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowS3FilesAssumeRole", "Effect": "Allow", "Principal": { "Service": "elasticfilesystem.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:s3files:region:accountId:file-system/*" } } } ] }
Ruolo IAM per il collegamento del file system a AWS risorse di calcolo
Le risorse di elaborazione su cui monti un file system S3 devono avere un ruolo IAM associato (ad esempio, un profilo di istanza EC2) con policy che consentano alle risorse di elaborazione di interagire con il file system S3 e il bucket S3 di origine. È inoltre necessario assicurarsi che le policy relative ai bucket del bucket di origine non impediscano l'accesso dalla risorsa di elaborazione.
Aggiungi le seguenti due policy al ruolo IAM associato alla tua risorsa di elaborazione:
-
Autorizzazioni per la risorsa di calcolo a connettersi e interagire con i file system S3
Il ruolo IAM deve includere le autorizzazioni per consentire al mount helper di connettersi e interagire con i file system S3. Puoi allegare una policy AWS gestita, ad esempio una policy
AmazonS3FilesClientFullAccessgestita, se desideri concedere alla risorsa di calcolo l'accesso completo in lettura e scrittura al tuo file system S3 o l'accesso in sola lettura.AmazonS3FilesClientReadOnlyAccessPuoi anche allegare la policyAmazonElasticFileSystemsUtilsgestita se desideri abilitare il CloudWatch monitoraggio di Amazon. Per ulteriori informazioni e un elenco completo delle politiche gestite disponibili per i file S3, consulta le politiche AWS gestite per Amazon S3 Files. Puoi anche fornire queste autorizzazioni aggiungendo autorizzazioni IAM individuali comes3files:ClientMountos3files:ClientWrite(non richiesto per le connessioni di sola lettura) al ruolo IAM della tua risorsa di calcolo. -
Una policy in linea che garantisce alla risorsa di calcolo l'accesso in lettura agli oggetti S3
Aggiungi la seguente policy in linea al ruolo IAM. Questa policy concede alle risorse di calcolo le autorizzazioni per leggere direttamente gli oggetti dal bucket S3 collegato nello stesso account per ottimizzare le prestazioni di lettura. Sostituiscilo
bucketcon il nome del bucket S3 o il nome del bucket con prefisso.{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3ObjectReadAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::bucket/*" }, { "Sid": "S3BucketListAccess", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::bucket" } ] }
Gruppi di sicurezza
Una volta creati il file system e gli obiettivi di montaggio, è necessario configurare i gruppi di sicurezza giusti per iniziare a utilizzare il file system. I gruppi di sicurezza sia sulla risorsa di elaborazione che sulla destinazione di montaggio devono consentire il traffico richiesto, come illustrato nella tabella seguente:
| Gruppo di sicurezza | Tipo di regola | Protocollo | Porta | Source/destination |
|---|---|---|---|---|
| Istanza EC2 | In uscita | TCP | 2049 | Monta il gruppo di sicurezza di destinazione |
| Destinazione di montaggio | In entrata | TCP | 2049 | Gruppo di sicurezza dell'istanza EC2 |