Erstellen eines Verzeichnis-Buckets - Amazon Simple Storage Service

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.

Erstellen eines Verzeichnis-Buckets

Um mit der Verwendung der Speicherklasse Amazon S3 Express One Zone zu beginnen, erstellen Sie einen Verzeichnis-Buckets. Die Speicherklasse S3 Express One Zone kann nur mit Verzeichnis-Buckets verwendet werden. Die Speicherklasse S3 Express One Zone unterstützt Anwendungsfälle mit niedriger Latenz und ermöglicht eine schnellere Datenverarbeitung innerhalb einer einzigen Availability Zone. Wenn Ihre Anwendung leistungsempfindlich ist und von PUT- und GET-Latenzen im einstelligen Millisekundenbereich profitiert, empfehlen wir, einen Verzeichnis-Bucket zu erstellen, damit Sie die Speicherklasse S3 Express One Zone verwenden können.

Es gibt zwei Arten von Amazon-S3-Buckets: Allzweck-Buckets und Verzeichnis-Buckets. Sie sollten den Bucket-Typ wählen, der am besten zu Ihren Anwendungs- und Leistungsanforderungen passt. Bei Allzweck-Buckets handelt es sich um den ursprünglichen S3-Bucket-Typ. Allzweck-Buckets werden für die meisten Anwendungsfälle und Zugriffsmuster empfohlen und ermöglichen die Speicherung von Objekten in allen Speicherklassen, mit Ausnahme von S3 Express One Zone. Weitere Informationen über Allzweck-Buckets finden Sie unter Bucket-Übersicht.

Verzeichnis-Buckets verwenden die Speicherklasse S3 Express One Zone, die für Workloads oder leistungskritische Anwendungen konzipiert ist, die eine konsistente Latenz im einstelligen Millisekundenbereich erfordern. S3 Express One Zone ist die erste S3-Speicherklasse, bei der Sie eine einzelne Availability Zone mit der Option auswählen können, Ihren Objektspeicher gemeinsam mit Ihren Computingressourcen zu platzieren, was die höchstmögliche Zugriffsgeschwindigkeit bietet. Wenn Sie einen Directory-Bucket erstellen, können Sie optional eine Availability Zone AWS-Region und eine Availability Zone angeben, die lokal für Ihre Amazon EC2-, Amazon Elastic Kubernetes Service- oder Amazon Elastic Container Service (Amazon ECS) Compute-Instances sind, um die Leistung zu optimieren.

Mit S3 Express One Zone werden Ihre Daten redundant auf mehreren Geräten innerhalb einer einzigen Availability Zone gespeichert. S3 Express One Zone ist für eine Verfügbarkeit von 99,95 Prozent innerhalb einer einzigen Availability Zone konzipiert und wird durch das Amazon S3 Service Level Agreement unterstützt. Weitere Informationen finden Sie unter Einzelne Availability Zone.

Verzeichnis-Buckets organisieren Daten hierarchisch in Verzeichnissen, im Gegensatz zu der flachen Speicherstruktur von Allzweck-Buckets. Es gibt keine Präfixbeschränkungen für Verzeichnis-Buckets und einzelne Verzeichnisse können horizontal skaliert werden.

Weitere Information zu Verzeichnis-Buckets finden Sie unter Verzeichnis-Buckets.

Namen von Verzeichnis-Buckets

Die Namen von Verzeichnis-Buckets müssen diesem Format folgen und den Regeln für die Benennung von Verzeichnis-Buckets entsprechen:

bucket-base-name--azid--x-s3

Der folgende Verzeichnis-Bucket-Name enthält beispielsweise die Availability Zone-ID usw2-az1:

bucket-base-name--usw2-az1--x-s3

Weitere Informationen zu den Benennungsregeln für Verzeichnis-Buckets finden Sie unter Regeln für die Benennung von Verzeichnis-Buckets.

  1. Melden Sie sich bei der Amazon S3 S3-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie in der Navigationsleiste oben auf der Seite den Namen der aktuell angezeigten Datei aus AWS-Region. Wählen Sie als Nächstes die Region aus, in der Sie einen Bucket erstellen möchten.

    Anmerkung

    Wählen Sie eine Region in der Nähe aus, um Latenz und Kosten gering zu halten und behördliche Vorschriften zu erfüllen. In einer Region gespeicherte Objekte verbleiben so lange in der Region, bis sie explizit in eine andere Region verschoben werden. Eine Liste von Amazon S3 finden Sie AWS-Regionen unter AWS-Service Endpoints in der Allgemeine Amazon Web Services-Referenz.

  3. Wählen Sie im linken Navigationsbereich die Option Buckets aus.

  4. Wählen Sie Create Bucket (Bucket erstellen) aus.

    Anschließend wird die Seite Bucket erstellen geöffnet.

  5. Sehen Sie sich unter Allgemeine Konfiguration an, AWS-Region wo Ihr Bucket erstellt wird.

  6. Wählen Sie unter Bucket-Typ die Option Verzeichnis aus.

    Anmerkung
    • Wenn Sie eine Region ausgewählt haben, die keine Verzeichnis-Buckets unterstützt, verschwindet die Option Bucket-Typ und der Bucket-Typ ist standardmäßig ein Allzweck-Bucket. Um einen Verzeichnis-Bucket zu erstellen, müssen Sie eine unterstützte Region auswählen. Eine Liste der Regionen, die Directory-Buckets und die Amazon S3 Express One Zone-Speicherklasse unterstützen, finden Sie unterAvailability Zones und Regionen bei S3 Express One Zone.

    • Nach dem Erstellen des Buckets kann der Bucket-Typ nicht mehr geändert werden.

    Wählen Sie für Availability Zone eine Availability Zone aus, die für Ihre Computing-Services lokal ist. Eine Liste der Availability Zones, die Directory-Buckets und die Speicherklasse S3 Express One Zone unterstützen, finden Sie unter. Availability Zones und Regionen bei S3 Express One Zone

    Anmerkung

    Die Availability Zone kann nicht geändert werden, nachdem der Bucket erstellt wurde.

  7. Markieren Sie unter Availability Zone das Kontrollkästchen, um zu bestätigen, dass Ihre Daten im Falle eines Ausfalls der Availability Zone möglicherweise nicht verfügbar sind oder verloren gehen.

    Wichtig

    Obwohl Directory-Buckets auf mehreren Geräten innerhalb einer einzigen Availability Zone gespeichert werden, speichern Verzeichnis-Buckets Daten nicht redundant über Availability Zones hinweg.

  8. Geben Sie unter Bucket-Name einen Namen für Ihren Verzeichnis-Bucket ein.

    Die Namen von Verzeichnis-Buckets müssen folgende Kriterien erfüllen:

    • Seien Sie innerhalb der ausgewählten AWS-Region Availability Zone einzigartig.

    • Der Name muss zwischen 3 (min) und 63 (maximal) Zeichen lang sein, einschließlich des Suffixes.

    • Nur aus Kleinbuchstaben, Zahlen und Bindestrichen bestehen.

    • Muss mit einer Zahl oder einem Buchstaben beginnen und enden.

    • Muss das folgende Suffix enthalten:. --azid--x-s3

    Dem Basisnamen, den Sie angeben, wenn Sie mit der Konsole einen Verzeichnis-Bucket erstellen, wird automatisch ein Suffix hinzugefügt. Dieses Suffix enthält die ID der Availability Zone, die Sie ausgewählt haben.

    Der Name eines einmal erstellter Buckets kann nicht nachträglich geändert werden. Weitere Informationen zur Benennung von Buckets finden Sie unter Regeln für die Benennung von Buckets.

    Wichtig

    Nehmen Sie keine vertraulichen Informationen wie Kontonummern in den Bucket-Namen auf. Der Bucket-Name wird in der URL angezeigt, die auf die Objekte im Bucket verweist.

  9. Unter Object Ownership ist die Einstellung Bucket Owner erforced automatisch aktiviert und alle Zugriffskontrolllisten (ACLs) sind deaktiviert. Für Verzeichnis-Buckets können ACLs nicht aktiviert werden.

    Deaktivierte ACLs
    • Bucket-Eigentümer erzwungen (Standard) – ACLs sind deaktiviert und der Bucket-Eigentümer besitzt automatisch jedes Objekt im Bucket und hat die volle Kontrolle darüber. ACLs haben keine Auswirkungen mehr auf Zugriffsberechtigungen für Daten im S3-Bucket. Der Bucket verwendet ausschließlich Richtlinien, um die Zugriffssteuerung zu definieren.

      Die meisten modernen Anwendungsfälle in Amazon S3 erfordern keine ACLs mehr. Weitere Informationen finden Sie unter Weitere Informationen finden Sie unter Steuern des Eigentums an Objekten und Deaktivieren von ACLs für Ihren Bucket..

  10. Unter „Einstellungen für öffentlichen Zugriff blockieren“ für diesen Bucket werden alle Einstellungen für „Öffentlichen Zugriff blockieren“ für Ihren Verzeichnis-Bucket automatisch aktiviert. Diese Einstellungen können für Directory-Buckets nicht geändert werden. Weitere Informationen zum Blockieren des öffentlichen Zugriffs finden Sie unter Blockieren des öffentlichen Zugriffs auf Ihren Amazon-S3-Speicher.

  11. Unter Serverseitige Verschlüsselungseinstellungen wendet Amazon S3 serverseitige Verschlüsselung mit Amazon S3 S3-verwalteten Schlüsseln (SSE-S3) als Basisverschlüsselungsebene für alle S3-Buckets an. Alle Objekt-Uploads in Verzeichnis-Buckets werden mit SSE-S3 verschlüsselt. Bei Verzeichnis-Buckets kann der Verschlüsselungstyp nicht geändert werden. Weitere Informationen zu SSE-S3 finden Sie unter Verwenden serverseitiger Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3).

  12. Wählen Sie Bucket erstellen aus.

    Nachdem Sie den Bucket erstellt haben, können Sie ihm Dateien und Ordner hinzufügen. Weitere Informationen finden Sie unter Arbeiten mit Objekten in einem Verzeichnis-Bucket.

SDK for Go

Dieses Beispiel zeigt, wie Sie mit dem einen Verzeichnis-Bucket erstellen. AWS SDK for Go

var bucket = "..." func runCreateBucket(c *s3.Client) { resp, err := c.CreateBucket(context.Background(), &s3.CreateBucketInput{ Bucket: &bucket, CreateBucketConfiguration: &types.CreateBucketConfiguration{ Location: &types.LocationInfo{ Name: aws.String("usw2-az1"), Type: types.LocationTypeAvailabilityZone, }, Bucket: &types.BucketInfo{ DataRedundancy: types.DataRedundancySingleAvailabilityZone, Type: types.BucketTypeDirectory, }, }, }) var terr *types.BucketAlreadyOwnedByYou if errors.As(err, &terr) { fmt.Printf("BucketAlreadyOwnedByYou: %s\n", aws.ToString(terr.Message)) fmt.Printf("noop...\n") return } if err != nil { log.Fatal(err) } fmt.Printf("bucket created at %s\n", aws.ToString(resp.Location)) }
SDK for Java 2.x

Dieses Beispiel zeigt, wie Sie einen Verzeichnis-Bucket mithilfe von erstellen AWS SDK for Java 2.x.

public static void createBucket(S3Client s3Client, String bucketName) { //Bucket name format is {base-bucket-name}--{az-id}--x-s3 //example: doc-example-bucket--usw2-az1--x-s3 is a valid name for a directory bucket created in //Region us-west-2, Availability Zone 2 CreateBucketConfiguration bucketConfiguration = CreateBucketConfiguration.builder() .location(LocationInfo.builder() .type(LocationType.AVAILABILITY_ZONE) .name("usw2-az1").build()) //this must match the Region and Availability Zone in your bucket name .bucket(BucketInfo.builder() .type(BucketType.DIRECTORY) .dataRedundancy(DataRedundancy.SINGLE_AVAILABILITY_ZONE) .build()).build(); try { CreateBucketRequest bucketRequest = CreateBucketRequest.builder().bucket(bucketName).createBucketConfiguration(bucketConfiguration).build(); CreateBucketResponse response = s3Client.createBucket(bucketRequest); System.out.println(response); } catch (S3Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
AWS SDK for JavaScript

Dieses Beispiel zeigt, wie Sie einen Verzeichnis-Bucket mithilfe von erstellen AWS SDK for JavaScript.

// file.mjs, run with Node.js v16 or higher // To use with the preview build, place this in a folder // inside the preview build directory, such as /aws-sdk-js-v3/workspace/ import { S3 } from "@aws-sdk/client-s3"; const region = "us-east-1"; const zone = "use1-az4"; const suffix = `${zone}--x-s3`; const s3 = new S3({ region }); const bucketName = `...--${suffix}`; const createResponse = await s3.createBucket( { Bucket: bucketName, CreateBucketConfiguration: {Location: {Type: "AvailabilityZone", Name: zone}, Bucket: { Type: "Directory", DataRedundancy: "SingleAvailabilityZone" }} } );
AWS SDK for .NET

Dieses Beispiel zeigt, wie ein Verzeichnis-Bucket mithilfe von erstellt wird AWS SDK for .NET.

using (var amazonS3Client = new AmazonS3Client()) { var putBucketResponse = await amazonS3Client.PutBucketAsync(new PutBucketRequest { BucketName = "DOC-EXAMPLE-BUCKET--usw2-az1--x-s3", PutBucketConfiguration = new PutBucketConfiguration { BucketInfo = new BucketInfo { DataRedundancy = DataRedundancy.SingleAvailabilityZone, Type = BucketType.Directory }, Location = new LocationInfo { Name = "usw2-az1", Type = LocationType.AvailabilityZone } } }).ConfigureAwait(false); }
SDK for PHP

Dieses Beispiel zeigt, wie ein Verzeichnis-Bucket mithilfe von erstellt wird AWS SDK for PHP.

require 'vendor/autoload.php'; $s3Client = new S3Client([ 'region' => 'us-east-1', ]); $result = $s3Client->createBucket([ 'Bucket' => 'doc-example-bucket--use1-az4--x-s3', 'CreateBucketConfiguration' => [ 'Location' => ['Name'=> 'use1-az4', 'Type'=> 'AvailabilityZone'], 'Bucket' => ["DataRedundancy" => "SingleAvailabilityZone" ,"Type" => "Directory"] ], ]);
SDK for Python

Dieses Beispiel zeigt, wie ein Verzeichnis-Bucket mithilfe von erstellt wird AWS SDK for Python (Boto3).

import logging import boto3 from botocore.exceptions import ClientError def create_bucket(s3_client, bucket_name, availability_zone): ''' Create a directory bucket in a specified Availability Zone :param s3_client: boto3 S3 client :param bucket_name: Bucket to create; for example, 'doc-example-bucket--usw2-az1--x-s3' :param availability_zone: String; Availability Zone ID to create the bucket in, for example, 'usw2-az1' :return: True if bucket is created, else False ''' try: bucket_config = { 'Location': { 'Type': 'AvailabilityZone', 'Name': availability_zone }, 'Bucket': { 'Type': 'Directory', 'DataRedundancy': 'SingleAvailabilityZone' } } s3_client.create_bucket( Bucket = bucket_name, CreateBucketConfiguration = bucket_config ) except ClientError as e: logging.error(e) return False return True if __name__ == '__main__': bucket_name = 'BUCKET_NAME' region = 'us-west-2' availability_zone = 'usw2-az1' s3_client = boto3.client('s3', region_name = region) create_bucket(s3_client, bucket_name, availability_zone)
SDK for Ruby

Dieses Beispiel zeigt, wie Sie einen Verzeichnis-Bucket mithilfe von erstellen AWS SDK for Ruby.

s3 = Aws::S3::Client.new(region:'us-west-2') s3.create_bucket( bucket: "bucket_base_name--az_id--x-s3", create_bucket_configuration: { location: { name: 'usw2-az1', type: 'AvailabilityZone' }, bucket: { data_redundancy: 'SingleAvailabilityZone', type: 'Directory' } } )

Dieses Beispiel zeigt, wie Sie mit dem einen Verzeichnis-Bucket erstellen AWS CLI. Um den Befehl zu verwenden, ersetzen Sie die Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

Wenn Sie einen Verzeichnis-Bucket erstellen, müssen Sie Konfigurationsdetails angeben und die folgende Benennungskonvention verwenden: bucket-base-name--azid--x-s3

aws s3api create-bucket --bucket bucket-base-name--azid--x-s3 --create-bucket-configuration 'Location={Type=AvailabilityZone,Name=usw2-az1},Bucket={DataRedundancy=SingleAvailabilityZone,Type=Directory}' --region us-west-2

Weitere Informationen finden Sie unter create-bucket im. AWS Command Line Interface