Transfer Family を使用して FSx for NetApp ONTAP ファイルシステムにアクセスする - AWS Transfer Family

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Transfer Family を使用して FSx for NetApp ONTAP ファイルシステムにアクセスする

概要:

Transfer Family は、S3 アクセスポイントを介して Amazon FSx for NetApp ONTAP をサポートします。Amazon FSx for NetApp ONTAP は、NetApp の人気のある ONTAP ファイルシステム上に構築された、信頼性が高く、スケーラブルで、パフォーマンスが高く、機能が豊富なファイルストレージを提供するフルマネージドサービスです。FSx ファイルシステムで Transfer Family を設定すると、ユーザーは標準のファイル転送クライアントを使用して Transfer Family エンドポイントに接続します。Transfer Family は、FSx ボリュームにアタッチされた S3 アクセスポイントを介してファイルオペレーションをルーティングしますが、データは FSx ファイルシステムに残ります。FSx for NetApp ONTAP の詳細については、「Amazon FSx for NetApp ONTAP とは」を参照してください。

この統合により、次のことが可能になります。

  • SFTP、FTPS、または FTP プロトコルを使用してエンタープライズグレードのファイルストレージにファイルを転送する

  • 複数のプロトコル (SFTP、NFS、SMB) を介して同じデータにアクセスする

  • スナップショット、バックアップ、データ階層化などの FSx 機能を使用する

重要

名前変更や追加オペレーションなど、Transfer Family で FSx ファイルシステムを使用する場合、一部のファイルオペレーションはサポートされません。アップロードオペレーションの場合、ファイルサイズは 5 GB に制限されます。制限の完全なリストについては、「アクセスポイントの互換性」を参照してください。

前提条件

Amazon FSx で Transfer Family を設定する前に、次の要件を満たす必要があります。

FSx for NetApp ONTAP の要件

Transfer Family で FSx for NetApp ONTAP を使用するには、以下が必要です。

  • ONTAP バージョン 9.17.1 以降を実行する FSx for NetApp ONTAP ファイルシステム

  • 同じ AWS リージョン内のファイルシステムと S3 アクセスポイント

  • ファイルシステムとアクセスポイントの両方を所有する同じ AWS アカウント

詳細については、「Amazon FSx for NetApp ONTAP の開始方法」を参照してください。

必要な IAM 許可

各 S3 アクセスポイントは、そのアクセスポイントを使用して行われたリクエストに対して S3 が適用する個別のアクセス許可とネットワークコントロールで設定できます。S3 アクセスポイントは、リソース、ユーザー、またはその他の条件別にアクセスポイントの使用を制御するために使用できる IAM リソースポリシーをサポートしています。アプリケーションまたはユーザーがアクセスポイントを介してファイルにアクセスするには、アクセスポイントと基になるボリュームの両方がリクエストを許可する必要があります。詳細については、「IAM アクセスポイントポリシー」を参照してください。

FSx 用の Amazon S3 アクセスポイントは、IAM アクセス許可とファイルシステムレベルのアクセス許可を組み合わせた二層式認可モデルを使用します。このアプローチにより、データアクセスリクエストが AWS サービスレベルと基盤となるファイルシステムレベルの両方で適切に承認されます。

アプリケーションまたはユーザーがアクセスポイントを介してデータに正常にアクセスするには、S3 アクセスポイントポリシーと基盤となる FSx ボリュームの両方がリクエストを許可する必要があります。

この統合を作成して設定するには、次のアクセス許可が必要です。

  • fsx:CreateAndAttachS3AccessPoint

  • s3:CreateAccessPoint

  • s3:GetAccessPoint

  • s3:PutAccessPointPolicy (オプションのアクセスポイントポリシーを作成する場合)

Transfer Family での FSx ストレージの仕組み

FSx ファイルシステムで Transfer Family を設定すると、次のコンポーネントが連携してファイル転送を有効にします。

  1. ユーザーは、SFTP、FTPS、または FTP クライアントを使用して Transfer Family サーバーに接続します。

  2. Transfer Family は、サービスマネージド ID、カスタム ID プロバイダー、または を使用してユーザーを認証します AWS Directory Service for Microsoft Active Directory。認証されると、Transfer Family はユーザーに関連付けられた IAM ロールを引き受けます。

  3. ファイルオペレーションごとに、Transfer Family は標準の S3 API クライアントとして機能し、ユーザーの引き受けた IAM ロールを使用して S3 アクセスポイントにリクエストを行い、S3 アクセスポイントポリシーに対するアクセス許可を検証します。

  4. FSx ファイルシステムは、アクセスポイントに関連付けられたファイルシステムユーザーに、リクエストされたオペレーションを実行するアクセス許可があることを確認します。次に、FSx ボリュームでファイルオペレーションが実行されます。

ファイルオペレーションを成功させるには、両方の認可レイヤーでリクエストを許可する必要があります。

注記

S3 アクセスポイントを FSx ボリュームにアタッチしても、NFS または SMB 経由で直接アクセスした場合のボリュームの動作は変わりません。既存のファイルプロトコルへのアクセスは引き続き変更されません。

ファイルシステムのユーザー ID

各アクセスポイントは、アクセスポイントの作成時に指定したファイルシステムユーザー ID を使用します。この ID は、そのアクセスポイントを介して行われたすべてのファイルアクセスリクエストを承認します。ファイルシステムのユーザーは、基盤となる Amazon FSx ファイルシステムのユーザーアカウントです。ファイルシステムユーザーが読み取り専用アクセス権を持っている場合、アクセスポイントを使用して行われた読み取りリクエストのみが承認され、書き込みリクエストはブロックされます。ファイルシステムユーザーに読み取り/書き込みアクセスがある場合、アクセスポイントを使用してアタッチされたボリュームへの読み取りリクエストと書き込みリクエストの両方が許可されます。

FSx 用の S3 アクセスポイントの作成

Transfer Family を設定する前に、FSx ボリュームにアタッチされた S3 アクセスポイントを作成する必要があります。S3 アクセスポイントは、バケットや Amazon FSx for ONTAP ボリュームなどのデータソースにアタッチされた名前付きネットワークエンドポイントです。Amazon FSx コンソール、 AWS CLI、または API を使用して、アクセスポイントを作成して FSx for NetApp ONTAP にアタッチできます。アタッチしたら、S3 オブジェクト API を使用してファイルデータにアクセスできます。データは引き続き Amazon FSx ファイルシステムに存在し、既存のワークロードから直接アクセスできます。バックアップ、スナップショット、ユーザーおよびグループのクォータ、圧縮など、すべての FSx for NetApp ONTAP ストレージ管理機能を使用してストレージを管理し続けます。

詳細については、「アクセスポイントの作成」を参照してください。

アクセスポイントの命名

アクセスポイントに名前を付けるときは、次のガイドラインに従ってください。

  • アクセスポイント名は、 AWS アカウントとリージョン内で一意である必要があります。

  • 名前は で終わることはできません -ext-s3alias (エイリアス用に予約されています)。

  • 機密情報は DNS で公開されるため、名前に含めないでください。

命名規則の完全なリストについては、「アクセスポイントの命名規則、制限、制限」を参照してください。

FSx for NetApp ONTAP のアクセスポイントの作成

次の手順を使用して、FSx for NetApp ONTAP ボリュームの S3 アクセスポイントを作成します。

アクセスポイントを作成するには (コンソール)
  1. https://console.aws.amazon.com/fsx/ で Amazon FSx コンソールを開きます。

  2. ナビゲーションペインで、[File systems] (ファイルシステム) を選択します。

  3. FSx for NetApp ONTAP ファイルシステムを選択します。

  4. [Volumes] (ボリューム) タブを選択します。

  5. アタッチするボリュームを選択します。

  6. アクション で、S3 アクセスポイントの作成 を選択します。

  7. アクセスポイント名には、わかりやすい名前 ( などtransfer-family-ap) を入力します。

  8. ファイルシステムのユーザー ID タイプで、次のいずれかを選択します。

    • UNIX ID - UNIX セキュリティスタイルのボリュームの場合

    • Windows ID - NTFS セキュリティスタイルのボリュームの場合

  9. (オプション) アクセスポイントポリシーには、このアクセスポイントを介してアクセスされたオブジェクトに対してどの IAM プリンシパルがどのオペレーションを実行できるかを定義する IAM ポリシーを入力します。詳細については、「アクセスポイントアクセスの管理」を参照してください。

  10. [作成] を選択します。

  11. 作成後、Transfer Family 設定で使用するアクセスポイントエイリアスを書き留めます。

注記

接続された SFTP/FTPS ユーザーに代わって が S3 リソース AWS Transfer Family にアクセスすると、リクエストは VPC からではなく AWS Transfer Family インフラストラクチャから送信されます。このため、VPC ネットワークオリジンで設定された S3 アクセスポイントは、これらのリクエストを拒否します。ただし、インターネットネットワークオリジンで設定されたアクセスポイントを使用しても、Transfer Family とアクセスポイント間のすべてのトラフィックはプライベートのままであり、 AWS バックボーンネットワークを経由します。パブリックインターネットを経由することはありません。

ファイルシステムのアクセス許可の設定

指定するファイルシステムユーザーは、Transfer Family ユーザーが実行できるオペレーションを決定します。FSx ボリュームに適切なアクセス許可を設定する必要があります。

UNIX の例:

# Create a directory for Transfer Family users mkdir -p /vol1/transfer-users # Set ownership to match the access point user chown 1001:1001 /vol1/transfer-users # Set permissions chmod 755 /vol1/transfer-users

Windows の例:

# Create a directory for Transfer Family users New-Item -Path "D:\vol1\transfer-users" -ItemType Directory # Set permissions for the file system user associated with the access point # Replace DOMAIN\TransferUser with your Windows user identity icacls "D:\vol1\transfer-users" /grant "DOMAIN\TransferUser:(OI)(CI)M" /T # Verify permissions icacls "D:\vol1\transfer-users"

FSx での S3 アクセスポイントエイリアスの使用

Transfer Family で FSx ファイルシステムを使用する場合は、S3 アクセスポイントエイリアスを使用する必要があります。Transfer Family は、FSx ストレージのアクセスポイント ARNs やその他のリファレンスメソッドの使用をサポートしていません。

重要

AWS Transfer Family は、FSx ファイルシステムを使用する場合、S3 アクセスポイントエイリアスのみをサポートします。アクセスポイント ARNs またはvirtual-hosted-style URIs を使用することはできません。

重要

アクセスポイントは、ボリュームと同じリージョンにある必要があります。

アクセスポイントエイリアスについて

FSx ボリュームにアタッチされた S3 アクセスポイントを作成すると、Amazon S3 は自動的にアクセスポイントエイリアスを生成します。このエイリアスは、S3 バケット名を使用する任意の場所で使用できる一意の識別子です。

FSx ボリュームにアタッチされたアクセスポイントの場合、エイリアスは次の形式を使用します。

access-point-name-metadata-ext-s3alias

エイリアスの例:

my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias
注記

-ext-s3alias サフィックスは FSx アクセスポイントエイリアス用に予約されています。このサフィックスをアクセスポイント名に使用することはできません。

アクセスポイントエイリアスの検索

アクセスポイントエイリアスは、アクセスポイントの作成後に確認できます。

アクセスポイントエイリアスを検索するには (コンソール)
  1. https://console.aws.amazon.com/fsx/ で Amazon FSx コンソールを開きます。

  2. ナビゲーションペインで、[File systems] (ファイルシステム) を選択します。

  3. ファイルシステムを選択します。

  4. ボリュームタブを選択し、アクセスポイントを作成したボリュームを選択します。

  5. S3 アクセスポイントの詳細列に移動します。

  6. エイリアスはエイリアス列に表示されます。

アクセスポイントエイリアスを検索するには (CLI)

describe-s3-access-point-attachments コマンドを使用します。

aws fsx describe-s3-access-point-attachments \ --filters Name=file-system-id,Values=fs-0123456789abcdef0

レスポンスにはエイリアスが含まれます。

{ "S3AccessPointAttachments": [ { "S3AccessPoint": { "ResourceARN": "arn:aws:s3:us-east-1:111122223333:accesspoint/my-fsx-ap", "Alias": "my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias" } } ] }

Transfer Family ユーザーを設定するときは、ホームディレクトリマッピングでアクセスポイントエイリアスを使用します。

ホームディレクトリの形式:

/access-point-alias/path/to/directory

:

/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith

FSx ストレージ用の Transfer Family の設定

S3 アクセスポイントを作成したら、それを使用するように Transfer Family サーバーを設定します。

IAM ロールの作成

Transfer Family に S3 アクセスポイントへのアクセスを許可する IAM ロールを作成する必要があります。

重要

IAM ポリシーには、エイリアスではなくアクセスポイント ARN 形式が必要です。IAM ポリシーのリソースステートメントarn:aws:s3:region:account-id:accesspoint/access-point-nameで 形式を使用します。アクセスポイントエイリアス ( で終わる-ext-s3alias) は、ホームディレクトリマッピングにのみ使用されます。

IAM ロールを作成するには
  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで、ロールを選択し、ロールの作成を選択します。

  3. [信頼できるエンティティタイプ] で、[AWS サービス] を選択してください。

  4. ユースケースで、転送を選択します。

  5. [次へ] を選択します。

  6. ポリシーの作成を選択し、ポリシーを入力します (以下のサンプルポリシーを参照)。

  7. ポリシーをロールにアタッチし、ロールの作成を選択します。

IAM ポリシーの例:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowFileOperations", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:GetObjectTagging", "s3:PutObjectTagging" ], "Resource": "arn:aws:s3:us-east-2:111122223333:accesspoint/my-fsx-ap/object/*" }, { "Sid": "AllowDirectoryOperations", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:us-east-2:111122223333:accesspoint/my-fsx-ap" } ] }

FSx ストレージのユーザーの管理

S3 アクセスポイントエイリアスを使用するホームディレクトリマッピングを使用して Transfer Family ユーザーを作成します。

ユーザーの作成

FSx ストレージのユーザーを作成するときは、ホームディレクトリマッピングでアクセスポイントエイリアスを使用します。

サービスマネージドユーザーを作成するには (コンソール)
  1. https://console.aws.amazon.com/transfer/ で AWS Transfer Family コンソールを開きます。

  2. ナビゲーションペインで [Servers] (サーバー) を選択します。

  3. サーバーを選択します。

  4. ユーザー セクションで、ユーザーの追加 を選択します。

  5. [ユーザー名] には、ユーザー名を入力します。

  6. ロール で、作成した IAM ロールを選択します。

  7. Home ディレクトリで、「制限あり」を選択します。

  8. ホームディレクトリマッピングの場合は、アクセスポイントエイリアスを使用してマッピングを追加します。

    [{"Entry": "/", "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith"}]

ユーザーを作成するには (CLI)

create-user コマンドを使用します。アクセスポイントエイリアスをエイリアスに置き換えます。

aws transfer create-user \ --server-id s-0123456789abcdef0 \ --user-name jsmith \ --role arn:aws:iam::111122223333:role/TransferFamilyFSxRole \ --home-directory-type LOGICAL \ --home-directory-mappings '[ { "Entry": "/", "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith" } ]'

複数のディレクトリマッピングの設定

複数の仮想ディレクトリを FSx ボリュームの異なるパスにマッピングできます。

例: アップロードディレクトリとダウンロードディレクトリを分離する

aws transfer create-user \ --server-id s-0123456789abcdef0 \ --user-name jsmith \ --role arn:aws:iam::111122223333:role/TransferFamilyFSxRole \ --home-directory-type LOGICAL \ --home-directory-mappings '[ { "Entry": "/inbox", "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith/inbox" }, { "Entry": "/outbox", "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith/outbox" } ]'

ファイル転送クライアントの設定

Transfer Family で FSx ファイルシステムを使用する場合は、サポートされていない機能を無効にするようにファイル転送クライアントを設定する必要があります。

WinSCP 設定

WinSCP は、FSx の S3 アクセスポイントではサポートされていない一時的な名前変更機能をデフォルトで使用します。

警告

WinSCP で一時的な名前変更機能を無効にしないと、ファイルのアップロードは失敗します。

WinSCP で一時的な名前変更を無効にするには
  1. WinSCP を開きます。

  2. ログインダイアログで、編集を選択してセッション設定を変更します。

  3. [Advanced] (アドバンスト) を選択します。

  4. 左側のナビゲーションの Transfer で、Endurance を選択します。

  5. Enable transfer resume/transfer to temporary filename で、Disable を選択します。

  6. [OK] を選択して、設定を適用します。

または、既存のセッションでこの設定を無効にすることもできます。

  1. Transfer Family サーバーに接続します。

  2. Options を選択しPreferences を選択します。

  3. Transfer を選択し、Endurance を選択します。

  4. Enable transfer resume/transfer to temporary filename で、Disable を選択します。

  5. [OK] を選択してください。

その他の SFTP クライアント

他の SFTP クライアントでは、使用可能な場合は次の機能を無効にします。

  • 一時ファイルのアップロード (一時ファイルへのアップロード、名前の変更)

  • 一時ファイルを使用した転送の再開

  • 名前変更オペレーションを使用したアトミックアップロード

  • アップロードの追加モード

特定の設定手順については、クライアントドキュメントを参照してください。

FSx ストレージのトラブルシューティング

このセクションでは、FSx ファイルシステムで Transfer Family を使用する際の一般的な問題を特定して解決する方法について説明します。

ファイルオペレーションの問題

アクセス許可が拒否されました

アクセス許可拒否エラーが表示された場合:

  1. IAM ロールにアクセスポイントエイリアスに対する正しいアクセス許可があることを確認します。これを行うには、S3 APIs。

  2. アクセスポイントポリシーで IAM ロールが許可されていることを確認します。

  3. ファイルシステムユーザーがターゲットパスに対するアクセス許可を持っていることを確認します。

  4. ホームディレクトリマッピングが正しいアクセスポイントエイリアスを使用していることを確認します。

WinSCP でアップロードが失敗する

WinSCP でファイルのアップロードが失敗した場合、一時的な名前変更を無効にします。

  1. WinSCP で、オプションを選択し、次に設定を選択します。

  2. Transfer を選択し、Endurance を選択します。

  3. Enable transfer resume/transfer to temporary filename で、Disable を選択します。

詳細については、「ファイル転送クライアントの設定」を参照してください。

ファイルのアップロードが失敗する

ファイルのアップロードが失敗した場合:

  1. ファイルサイズが 5 GB 未満であることを確認します。

  2. FSx ボリュームに十分な使用可能なストレージがあることを確認します。

  3. CloudWatch メトリクスのスロットリングをモニタリングします。