

# Amazon S3 on Outposts の開始方法
<a name="S3OutpostsGS"></a>

Amazon S3 on Outposts を使用すると、AWS Outposts で S3 バケットを作成し、ローカルデータアクセス、ローカルデータ処理、データレジデンシーを必要とするアプリケーション用に、オンプレミスのオブジェクトを簡単に保存および取得できます。S3 on Outposts は、新しいストレージクラス、S3 Outposts (`OUTPOSTS`) を提供し、これは Amazon S3 API を使用し、AWS Outposts 上の複数のデバイスやサーバー間でデータを永続的かつ冗長的に保存するように設計されています。仮想プライベートクラウド (VPC) を介したアクセスポイントとエンドポイント接続を使用して、Outposts バケットと通信します。Outposts バケットでは、Amazon S3 と同じ API と機能 (アクセスポリシー、暗号化、タグ付けなど) を使用できます。AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、AWS SDK、または REST API を使用して S3 on Outposts を使用できます。

Amazon S3 on Outposts を使用すると、Amazon S3 と同様に、オブジェクトストレージ、アクセスポリシー、暗号化、タグ付けなどの Amazon S3 API と機能を AWS Outposts で利用できます。S3 on Outposts の詳細については、「[Amazon S3 on Outposts とは](S3onOutposts.md)」を参照してください。

**Topics**
+ [AWS マネジメントコンソール を使用した開始方法](S3OutpostsGSConsole.md)
+ [AWS CLI および SDK for Java の使用開始](S3OutpostsGSCLIJava.md)

# AWS マネジメントコンソール を使用した開始方法
<a name="S3OutpostsGSConsole"></a>

Amazon S3 on Outposts を使用すると、AWS Outposts で S3 バケットを作成し、ローカルデータアクセス、ローカルデータ処理、データレジデンシーを必要とするアプリケーション用に、オンプレミスのオブジェクトを簡単に保存および取得できます。S3 on Outposts は、新しいストレージクラス、S3 Outposts (`OUTPOSTS`) を提供し、これは Amazon S3 API を使用し、AWS Outposts 上の複数のデバイスやサーバー間でデータを永続的かつ冗長的に保存するように設計されています。仮想プライベートクラウド (VPC) を介したアクセスポイントとエンドポイント接続を使用して、Outposts バケットと通信します。Outposts バケットでは、Amazon S3 と同じ API と機能 (アクセスポリシー、暗号化、タグ付けなど) を使用できます。AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、AWS SDK、または REST API を使用して S3 on Outposts を使用できます。詳細については、「[Amazon S3 on Outposts とは](S3onOutposts.md)」を参照してください。

コンソールを使用して S3 on Outposts の使用を開始するには、以下のトピックを参照してください。AWS CLI または AWS SDK for Java を使って開始するには、「[AWS CLI および SDK for Java の使用開始](S3OutpostsGSCLIJava.md)」を参照してください。

**Topics**
+ [バケット、アクセスポイント、およびエンドポイントを作成する](#S3OutpostsGSConsoleCreateBucket)
+ [次のステップ](#S3OutpostsGSConsoleNext)

## バケット、アクセスポイント、およびエンドポイントを作成する
<a name="S3OutpostsGSConsoleCreateBucket"></a>

以下の手順は、S3 on Outposts で最初のバケットを作成する方法を示しています。コンソールを使用してバケットを作成するときには、バケットに関連付けられたアクセスポイントとエンドポイントも作成します。これにより、バケットへのオブジェクトの保存をすぐに開始できます。

1. AWS マネジメントコンソール にサインインし、Amazon S3 コンソール ([https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)) を開きます。

1. 左のナビゲーションペインで、[**Outposts buckets**] (Outposts バケット) を選択します。

1. [**Outposts バケットの作成**] を選択します。

1. [**バケット名**] に、バケットのドメインネームシステム (DNS) に準拠する名前を入力します。

   バケット名には次の条件があります。
   + AWS アカウント、Outpost、および Outpost が属する AWS リージョン 内で一意であること。
   + 3～63 文字である必要があります。
   + 大文字を含めないでください。
   + 先頭の文字には小文字の英文字または数字を使用する。

     バケットを作成したら、その名前を変更することはできません。バケット名の詳細については、「Amazon S3 ユーザーガイド」の「[バケットの名前付け](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html)」を参照してください。**
**重要**  
バケット名にアカウント番号などの機密情報を含めないでください。バケット名は、バケット内のオブジェクトを参照する URL に表示されます。

1. [**Outpost**] で、バケットを配置する Outpost を選択します。

1. **[Bucket Versioning]** (バケットのバージョニング) で、S3 on Outposts バケットの S3 バージョニングの状態を次のいずれかのオプションに設定します。
   + **[Disable]** (無効化) (デフォルト) — バケットはバージョニング無効のままです。
   + **[Enable]** (有効化) — バケット内のオブジェクトの S3 バージョニングを有効にします。バケットに追加されたすべてのオブジェクトは、一意のバージョン ID を受け取ります。

   S3 バージョニングの詳細については、[S3 on Outposts バケットの S3 バージョニングの管理](S3OutpostsManagingVersioning.md) を参照してください。

1. (オプション) Outposts バケットに関連付ける**オプションのタグ**を追加します。タグを使用して、個々のプロジェクトまたはプロジェクトのグループの基準を追跡したり、コスト配分タグを使用してバケットにラベルを付けたりできます。

   デフォルトでは、Outpost バケットに保存されているすべてのオブジェクトは、Amazon S3 マネージド暗号化キー (SSE-S3) によるサーバー側の暗号化を使用して保存されます。また、ユーザーが用意した暗号化キー (SSE-C) で、サーバー側の暗号化を使用してオブジェクトを保存するように明示的に選択することもできます。暗号化タイプを変更するには、REST API、AWS Command Line Interface (AWS CLI)、または AWS SDK を使用する必要があります。

1. [**Outposts access point settings**] (Outposts アクセスポイントの設定) セクションで、アクセスポイント名を入力します。

   S3 on Outposts アクセスポイントは、S3 on Outposts の共有データセットへの大規模なデータアクセスの管理を簡素化します。アクセスポイントは、Outposts バケットにアタッチされた名前付きのネットワークエンドポイントで、S3 オブジェクトのオペレーションを実行するために使用できます。詳細については、「[アクセスポイント](S3OutpostsWorkingBuckets.md#S3OutpostsAP)」を参照してください。

   アクセスポイント名は、このリージョンおよび Outpost のアカウント内で一意であり、「[アクセスポイントの制約と制限](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-restrictions-limitations.html)」に準拠している必要があります。

1. この Amazon S3 on Outposts アクセスポイントの **VPC** を選択します。

   VPC がない場合は、**[Create VPC]** (VPC を作成) を選択します。詳細については、「Amazon S3 ユーザーガイド」の「[仮想プライベートクラウド (VPC) に制限されたアクセスポイントの作成](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-vpc.html)」を参照してください。**

   仮想プライベートクラウド (VPC) を使用すると、定義した仮想ネットワークに AWS リソースを起動できます。仮想ネットワークは、お客様自身のデータセンターで運用されていた従来のネットワークによく似ていますが、 のスケーラブルなインフラストラクチャを使用できるというメリットがありますAWS 

1. (既存の VPC の場合はオプション) エンドポイントの **[Endpoint subnet]** (エンドポイントサブネット) を選択します。

   サブネットは、VPC の IP アドレスの範囲です。必要なサブネットがない場合は、[**Create subnet**] (サブネットの作成) を選択します。詳細については、「[S3 on Outposts のネットワーキング](S3OutpostsNetworking.md)」を参照してください。

1. (既存の VPC の場合はオプション) エンドポイントの **[Endpoint security group]** (エンドポイントセキュリティグループ) を選択します。

   [セキュリティグループ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)は、仮想ファイアウォールとして機能し、インバウンドトラフィックとアウトバウンドトラフィックをコントロールします。

1. （既存の VPC の場合はオプション）**[Endpoint access type]** (エンドポイントアクセスタイプ) を選択します。
   + **プライベート** — VPC と共に使用します。
   + **お客様所有 IP** – オンプレミスネットワーク内からユーザー所有の IP アドレスプール (CoIP プール) と共に使用します。

1. (オプション) **[Outpost access point policy]** (Outpost アクセスポイントポリシー) を指定します。コンソールに、アクセスポイントの **Amazon リソースネーム (ARN)** が自動的に表示されます。これをポリシーで使用できます。

1. [**Outposts バケットの作成**] を選択します。
**注記**  
Outpost エンドポイントが作成され、バケットが使用できるようになるまでに最長で 5 分かかることがあります。追加のバケット設定を構成するには、[**View details**] (詳細の表示) を選択します。

## 次のステップ
<a name="S3OutpostsGSConsoleNext"></a>

Amazon S3 on Outposts では、オブジェクトデータは常に Outpost に保存されます。AWS が Outpost ラックを設置すると、データの常駐要件を満たすために、データは Outpost にローカルに保たれます。オブジェクトが Outpost を離れたり、AWS リージョン 外に出たりすることはありません。AWS マネジメントコンソールはリージョン内でホストされるため、コンソールを使用して Outpost にオブジェクトをアップロードしたり、管理したりすることはできません。ただし REST API、AWS Command Line Interface (AWS CLI)、および AWS SDK を使用して、アクセスポイントを介してオブジェクトのアップロードと管理を行うことができます。

S3 on Outposts バケット、アクセスポイント、およびエンドポイントを作成した後、AWS CLI または SDK for Java を使用して、オブジェクトをバケットにアップロードできます。詳細については、「[S3 on Outposts バケットにオブジェクトをアップロードする](S3OutpostsUploadObjects.md)」を参照してください。

# AWS CLI および SDK for Java の使用開始
<a name="S3OutpostsGSCLIJava"></a>

Amazon S3 on Outposts を使用すると、AWS Outposts で S3 バケットを作成し、ローカルデータアクセス、ローカルデータ処理、データレジデンシーを必要とするアプリケーション用に、オンプレミスのオブジェクトを簡単に保存および取得できます。S3 on Outposts は、新しいストレージクラス、S3 Outposts (`OUTPOSTS`) を提供し、これは Amazon S3 API を使用し、AWS Outposts 上の複数のデバイスやサーバー間でデータを永続的かつ冗長的に保存するように設計されています。仮想プライベートクラウド (VPC) を介したアクセスポイントとエンドポイント接続を使用して、Outposts バケットと通信します。Outposts バケットでは、Amazon S3 と同じ API と機能 (アクセスポリシー、暗号化、タグ付けなど) を使用できます。AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、AWS SDK、または REST API を使用して S3 on Outposts を使用できます。詳細については、「[Amazon S3 on Outposts とは](S3onOutposts.md)」を参照してください。

S3 on Outposts の使用を開始するには、バケット、アクセスポイント、およびエンドポイントを作成する必要があります。その後、バケットにオブジェクトをアップロードできます。以下の例は、AWS CLI および SDK for Javaを使用して、S3 on Outposts の使用を開始する方法を示しています。コンソールを使用して開始するには、「[AWS マネジメントコンソール を使用した開始方法](S3OutpostsGSConsole.md)」を参照してください。

**Topics**
+ [ステップ 1: バケットを作成する](#S3OutpostsGSCreateBucket)
+ [ステップ 2: アクセスポイントの作成](#S3OutpostsGSCreateAccessPoint)
+ [ステップ 3: エンドポイントを作成する](#S3OutpostsGSCreateEndpoint)
+ [ステップ 4: S3 on Outposts バケットにオブジェクトをアップロードする](#S3OutpostsGSUploadObject)

## ステップ 1: バケットを作成する
<a name="S3OutpostsGSCreateBucket"></a>

以下の AWS CLI および SDK for Java の例は、S3 on Outposts バケットを作成する方法を示しています。

------
#### [ AWS CLI ]

**Example**  
次の例では、AWS CLI を使用して S3 on Outposts バケット (`s3-outposts:CreateBucket`) を作成します。このコマンドを実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。  

```
aws s3control create-bucket --bucket example-outposts-bucket --outpost-id op-01ac5d28a6a232904
```

------
#### [ SDK for Java ]

**Example**  
AWS SDK for Java を使用して S3 Outposts バケットを作成する方法の例については、「*AWS SDK for Java 2.x のコード例*」の「[CreateOutpostsBucket.java](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/outposts/CreateOutpostsBucket.java)」を参照してください。

------

## ステップ 2: アクセスポイントの作成
<a name="S3OutpostsGSCreateAccessPoint"></a>

Amazon S3 on Outposts バケットにアクセスするには、アクセスポイントを作成して設定する必要があります。以下の例は、AWS CLI および SDK for Java を使用して、アクセスポイントを作成する方法を示しています。

アクセスポイントは、Amazon S3 の共有データセットへの大規模なデータアクセスの管理を簡素化します。アクセスポイントは、バケットにアタッチされた名前付きのネットワークエンドポイントで、Amazon S3 オブジェクトのオペレーション (`GetObject` や `PutObject` など) を実行するために使用できます。S3 on Outposts では、Outposts バケット内の任意のオブジェクトにアクセスするにはアクセスポイントを使用する必要があります。アクセスポイントでは、仮想ホスト形式のアドレス指定のみがサポートされます。

------
#### [ AWS CLI ]

**Example**  
次の AWS CLI の例では、Outposts バケットのアクセスポイントを作成します。このコマンドを実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。  

```
aws s3control create-access-point --account-id 123456789012 --name example-outposts-access-point --bucket "arn:aws:s3-outposts:region:123456789012:outpost/op-01ac5d28a6a232904/bucket/example-outposts-bucket" --vpc-configuration VpcId=example-vpc-12345
```

------
#### [ SDK for Java ]

**Example**  
AWS SDK for Java を使用して S3 Outposts バケットのアクセスポイントを作成する方法の例については、「*AWS SDK for Java 2.x のコード例*」の「[CreateOutpostsAccessPoint.java](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/outposts/CreateOutpostsAccessPoint.java)」を参照してください。

------

## ステップ 3: エンドポイントを作成する
<a name="S3OutpostsGSCreateEndpoint"></a>

Amazon S3 on Outposts のアクセスポイントにリクエストをルーティングするには、S3 on Outposts エンドポイントを作成し設定する必要があります。エンドポイントを作成するには、Outposts のホームリージョンへのサービスリンクとのアクティブな接続が必要です。Outpost 上の各仮想プライベートクラウド (VPC) に 1 つのエンドポイントを関連付けることができます。エンドポイントクォータの詳細については、[S3 on Outposts のネットワーク要件](S3OnOutpostsRestrictionsLimitations.md#S3OnOutpostsConnectivityRestrictions) を参照してください。Outposts バケットにアクセスしてオブジェクトオペレーションを実行できるようにするには、エンドポイントを作成する必要があります。詳細については、「[エンドポイント](S3OutpostsWorkingBuckets.md#S3OutpostsEP)」を参照してください。

以下の例は、AWS CLI および SDK for Java を使用して、エンドポイントを作成する方法を示しています。エンドポイントの作成と管理に必要な許可の詳細については、「[S3 on Outposts エンドポイントの許可](S3OutpostsIAM.md#S3OutpostsEndpointPermissions)」を参照してください。

------
#### [ AWS CLI ]

**Example**  
次の AWS CLI の例では、VPC リソースアクセスタイプを使用して、Outpost のエンドポイントを作成します。VPC はサブネットから派生します。このコマンドを実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。  

```
aws s3outposts create-endpoint --outpost-id op-01ac5d28a6a232904 --subnet-id subnet-8c7a57c5 --security-group-id sg-ab19e0d1
```
次の AWS CLI の例では、アクセスタイプにユーザー所有の IP アドレスプール (CoIP プール) を使用して、Outpost のエンドポイントを作成します。このコマンドを実行するには、`user input placeholders` をユーザー自身の情報に置き換えます。  

```
aws s3outposts create-endpoint --outpost-id op-01ac5d28a6a232904 --subnet-id subnet-8c7a57c5 --security-group-id sg-ab19e0d1 --access-type CustomerOwnedIp --customer-owned-ipv4-pool ipv4pool-coip-12345678901234567
```

------
#### [ SDK for Java ]

**Example**  
AWS SDK for Java を使用して S3 Outpost のエンドポイントを作成する方法の例については、「*AWS SDK for Java 2.x のコード例*」の「[CreateOutpostsEndPoint.java](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/outposts/CreateOutpostsEndPoint.java)」を参照してください。

------

## ステップ 4: S3 on Outposts バケットにオブジェクトをアップロードする
<a name="S3OutpostsGSUploadObject"></a>

オブジェクトをアップロードするには、「[S3 on Outposts バケットにオブジェクトをアップロードする](S3OutpostsUploadObjects.md)」を参照してください。