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.
Voraussetzungen für S3-Dateien
Bevor Sie mit der Verwendung von S3-Dateien beginnen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllt haben.
AWS Konto- und Recheneinrichtung
Sie haben ein AWS Konto.
Sie haben eine Rechenressource und einen S3-Allzweck-Bucket in AWS der gewünschten Region, in der Sie Ihr Dateisystem erstellen möchten. Weitere Informationen finden Sie unter Erstellen eines Allzweck-Buckets.
Für Ihren S3-Bucket ist die Versionierung aktiviert. Für S3 Files ist die S3-Versionierung erforderlich, um Änderungen zwischen Ihrem Dateisystem und Ihrem S3-Bucket zu synchronisieren. Weitere Informationen finden Sie unter Aktivieren des Versioning für Buckets.
Ihr S3-Bucket muss einen der folgenden Verschlüsselungstypen verwenden: Server-side Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) oder Server-side Verschlüsselung mit AWS Key Management Service (AWS KMS) -Schlüsseln (SSE-KMS).
S3-Dateien-Client
Um S3 Files mit Amazon EC2 zu verwenden, müssen Sie den Client installierenamazon-efs-utils, eine gemeinsam genutzte Open-Source-Sammlung von Tools für Amazon EFS und Amazon S3 Files. Um mit S3-Dateien arbeiten zu können, benötigen Sie amazon-efs-utils Version 3.0.0 oder höher. Der Client enthält ein Mount-Hilfsprogramm, das das Mounten von S3-Dateisystemen vereinfacht und CloudWatch Amazon-Metriken zur Überwachung des Mount-Status Ihres Dateisystems ermöglicht.
Schritt 1: Installieren Sie den Client
Greifen Sie über Secure Shell (SSH) auf das Terminal für Ihre Amazon EC2-Instance zu und melden Sie sich mit dem entsprechenden Benutzernamen an. Weitere Informationen finden Sie im Amazon Elastic Compute Cloud-Benutzerhandbuch unter Stellen Sie eine Verbindung zu Ihrer EC2-Instance her.
-
Wenn Sie Amazon Linux verwenden, gehen Sie wie folgt vor, um efs-utils aus den Repositorys von Amazon zu installieren:
sudo yum -y install amazon-efs-utils -
Wenn Sie andere unterstützte Linux-Distributionen verwenden, können Sie Folgendes tun:
curl https://amazon-efs-utils.aws.com/efs-utils-installer.sh | sudo sh -s -- --install -
Informationen zu anderen Linux-Distributionen finden Sie unter Über andere Linux-Distributionen in
der README-Datei von amazon-efs-utils. GitHub
Schritt 2: Installieren Sie Botocore
Der amazon-efs-utils Client verwendet Botocore, um mit anderen Diensten zu interagieren. AWS Beispielsweise müssen Sie Botocore installieren, um Amazon zur Überwachung Ihres Dateisystems verwenden CloudWatch zu können. Anweisungen zur Installation und Aktualisierung von Botocore finden Sie unter Installation von Botocore in der README-Datei von
FIPS-Modus für S3-Dateien aktivieren
Wenn Sie die Federal Information Processing Standards (FIPS) einhalten müssen, müssen Sie den FIPS-Modus im Client aktivieren. Um den FIPS-Modus zu aktivieren, müssen Sie die s3files-utils.conf Datei auf dem Betriebssystem ändern.
Gehen Sie wie folgt vor, um den FIPS-Modus im Client für S3-Dateien zu aktivieren:
Öffnen Sie mit einem Texteditor Ihrer Wahl die Datei
/etc/amazon/efs/s3files-utils.conf.Suchen Sie die Zeile mit dem folgenden Text:
fips_mode_enabled = falseÄndern Sie den Text wie folgt:
fips_mode_enabled = trueSpeichern Sie Ihre Änderungen.
IAM-Rollen und -Richtlinien
Um S3-Dateien verwenden zu können, müssen Sie IAM-Rollen und angehängte Richtlinien für zwei Zwecke konfigurieren:
Vom Dateisystem aus auf Ihren Bucket zugreifen
Ihr Dateisystem an AWS Rechenressourcen anhängen
IAM-Rolle für den Zugriff auf Ihren Bucket vom Dateisystem aus
Wenn Sie ein S3 Files-Dateisystem erstellen, geben Sie eine IAM-Rolle an, von der S3 Files annimmt, dass sie aus Ihrem S3-Bucket liest und in diesen schreibt. Diese Rolle gewährt S3 Files die Berechtigung, Änderungen zwischen Ihrem Dateisystem und Ihrem Bucket zu synchronisieren, einschließlich EventBridge Amazon-Regeln, die die Synchronisation auslösen. Sie müssen auch sicherstellen, dass Ihre S3-Bucket-Richtlinie den Zugriff auf Ihre Rechenressourcen nicht verweigert.
Für S3-Dateien ist die S3-Versionierung in Ihrem Bucket erforderlich. Es verwendet versionsspezifische API-Operationen wie s3:GetObjectVersion und s3:GetObjectVersionTagging zusätzlich zu. s3:GetObject Die folgende Richtlinie verwendet Platzhalter (z. B. s3:GetObject* anstelle vons3:GetObject), um sowohl versionierte als auch nicht versionierte Aktionen abzudecken.
Anmerkung
Wenn Sie mithilfe der AWS Management Console ein Dateisystem erstellen, erstellt S3 Files automatisch diese IAM-Rolle mit den erforderlichen Berechtigungen.
Für diese IAM-Rolle ist Folgendes erforderlich:
-
Eine Inline-Richtlinie wie folgt:
{ "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/*" ] } ] }Ersetzen Sie die Platzhalterwerte durch Ihre eigenen Werte.
# Placeholder Description Beispiel 1 bucketDer Name Ihres S3-Buckets mein-Bucket 2 regionDie AWS Region Ihres Eimers us-east-1 3 accountIdDeine AWS Konto-ID 123456789012 -
Eine Vertrauensrichtlinie, die es S3 Files ermöglicht, die IAM-Rolle zu übernehmen. Fügen Sie der IAM-Rolle die folgende Vertrauensrichtlinie hinzu, damit der S3 Files-Dienst sie übernehmen kann. Ersetzen Sie
accountIdundregiondurch Ihre Werte.{ "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/*" } } } ] }
IAM-Rolle zum Anhängen Ihres Dateisystems an AWS Ressourcen berechnen
Ihren Rechenressourcen, auf denen Sie ein S3-Dateisystem bereitstellen, muss eine IAM-Rolle (z. B. ein EC2-Instance-Profil) mit Richtlinien zugeordnet sein, die es Ihrer Rechenressource ermöglichen, mit Ihrem S3-Dateisystem und Ihrem S3-Quell-Bucket zu interagieren. Sie müssen auch sicherstellen, dass die Bucket-Richtlinien Ihres Quell-Buckets den Zugriff von Ihrer Rechenressource aus nicht verweigern.
Fügen Sie der IAM-Rolle, die Ihrer Rechenressource zugeordnet ist, die folgenden beiden Richtlinien hinzu:
-
Berechtigungen für die Rechenressource, um eine Verbindung zu S3-Dateisystemen herzustellen und mit diesen zu interagieren
Die IAM-Rolle muss Berechtigungen für den Mount Helper enthalten, um eine Verbindung zu S3-Dateisystemen herzustellen und mit diesen zu interagieren. Sie können eine AWS verwaltete Richtlinie, z. B. eine
AmazonS3FilesClientFullAccessverwaltete Richtlinie, anhängen, wenn Sie der Rechenressource vollen Lese- und Schreibzugriff auf Ihr S3-Dateisystem gewähren möchten, oder wenn Sie nur lesendenAmazonS3FilesClientReadOnlyAccessZugriff gewähren möchten. Sie können dieAmazonElasticFileSystemsUtilsverwaltete Richtlinie auch anhängen, wenn Sie die CloudWatch Amazon-Überwachung aktivieren möchten. Weitere Informationen und eine vollständige Liste der verfügbaren verwalteten Richtlinien für S3-Dateien finden Sie unter AWS Verwaltete Richtlinien für Amazon S3-Dateien. Sie können diese Berechtigungen auch bereitstellen, indem Sie der IAM-Rolle Ihrer Rechenressource individuelle IAM-Berechtigungen wies3files:ClientMountoders3files:ClientWrite(nicht erforderlich für schreibgeschützte Verbindungen) hinzufügen. -
Eine Inline-Richtlinie, die der Rechenressource Lesezugriff auf S3-Objekte gewährt
Fügen Sie der IAM-Rolle die folgende Inline-Richtlinie hinzu. Diese Richtlinie gewährt den Rechenressourcen die Berechtigungen, Objekte aus dem verknüpften S3-Bucket im gleichen Konto direkt zu lesen, um die Leseleistung zu optimieren.
bucketErsetzen Sie ihn durch Ihren S3-Bucket-Namen oder Bucket-Namen mit Präfix.{ "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" } ] }
Sicherheitsgruppen
Sobald Ihr Dateisystem und Ihre Mount-Ziele erstellt sind, müssen Sie die richtigen Sicherheitsgruppen konfigurieren, um Ihr Dateisystem verwenden zu können. Sicherheitsgruppen sowohl auf der Rechenressource als auch auf dem Mount-Ziel müssen den erforderlichen Datenverkehr zulassen, wie in der folgenden Tabelle dargestellt:
| Sicherheitsgruppe | Typ der Regel | Protocol (Protokoll) | Port | Source/destination |
|---|---|---|---|---|
| EC2-Instance | Ausgehend | TCP | 2049 | Mounten Sie die Ziel-Sicherheitsgruppe |
| Mount-Ziel | Eingehend | TCP | 2049 | EC2-Instance-Sicherheitsgruppe |