Cloud Storage Gateway (CSG) を使用すると、Object Storage Service (OSS) バケットを共有ファイルシステムとしてマウントでき、複数のユーザーが異なる場所やデバイスからそのデータにアクセスして共有できます。バケットをマウントした後、OSS 内のオブジェクトをローカルのファイルやフォルダのように管理できます。
前提条件
-
CSG を有効化し、OSS、ECS、VPC へのアクセス権限を付与していること。
-
CSG は特定のリージョンでのみ利用可能です。詳細については、「利用可能なリージョン」をご参照ください。
-
バケットと同じリージョンに VPC と vSwitch を作成していること。詳細については、「VPC の作成と管理」および「vSwitch の作成と管理」をご参照ください。
-
バケットと同じリージョンに ECS インスタンスを作成していること。詳細については、「ECS インスタンスの作成」をご参照ください。
注意事項
-
CSG を使用してマウントしたバケットに、アーカイブ、コールドアーカイブ、ディープコールドアーカイブのファイルを直接書き込むことは避けてください。
クライアントがファイルゲートウェイにファイルを書き込む際、CSG は CopyObject 操作を呼び出してオブジェクトメタデータ (最終変更時刻など) を変更します。アーカイブ、コールドアーカイブ、ディープコールドアーカイブのオブジェクトに対しては、CopyObject 操作で時間のかかる復元が発生します。これによりアップロードパフォーマンスが低下し、書き込みが失敗する可能性があります。ファイルを書き込んだ後、長期間変更しない場合は、スタンダードまたは低頻度アクセス (IA) ファイルとして書き込むことを検討してください。その後、ライフサイクルルールを使用してアーカイブ、コールドアーカイブ、ディープコールドアーカイブに移行できます。詳細については、「最終変更時刻に基づくライフサイクルルール」をご参照ください。
-
CSG を使用して OSS バケットをマウントしてアクセスする場合、ゲートウェイ Edition、キャッシュタイプ、パブリック帯域幅の料金に加えて、ストレージ料金やリクエスト料金などの OSS 項目についても課金されます。詳細については、「Cloud Storage Gateway の料金」をご参照ください。
ステップ 1: ファイルゲートウェイの設定
OSSコンソールにログインします。
左側のナビゲーションウィンドウで、バケット をクリックします。 [バケット] ページで、目的のバケットを見つけてクリックします。
-
左側のナビゲーションペインで、 を選択し、ゲートウェイの設定 をクリックします。
-
基本情報 ペインで、次のパラメーターを設定し、次へ をクリックします。
パラメータ
説明
Edition
バケットの容量と必要な帯域幅に基づいて、ゲートウェイ Edition を選択します。ゲートウェイ Edition の詳細については、「ファイルゲートウェイ」をご参照ください。
VPC
ECS インスタンスが属する VPC を選択します。
vSwitch
ECS インスタンスが属する VPC 内の vSwitch を選択します。
-
プロトコルの設定 ペインで、次のパラメーターを設定し、次へ をクリックします。
パラメータ
説明
[名前]
ファイルゲートウェイの名前を入力します。
名前は 60 文字以内で、英字または漢字で始まり、英字、漢字、数字、アンダースコア (_)、ハイフン (-)、ピリオド (.) を使用できます。
サブディレクトリ
バケットのサブディレクトリを ECS インスタンスにファイルシステムとしてマウントするには、バケット名 の横にあるサブディレクトリ オプションを選択し、サブディレクトリ名を入力します。
プロトコル
ファイルゲートウェイのプロトコルを選択します。
-
NFS: Linux クライアント用。
-
SMB: Windows クライアント用。
共有名
マウントされたバケットのネットワーク共有名を設定します。
名前は 32 文字以内で、英字で始まり、英字、数字、および次の文字 (
._-) のみ使用できます。ユーザーマッピング
マウントされたディレクトリにアクセスする NFS クライアントのユーザー ID を指定します。このパラメーターは、プロトコルタイプ を [NFS] に設定した場合にのみ利用可能です。
-
none: NFS クライアントユーザーは、サーバー上で元の ID を保持します。
-
root_squash: NFS クライアントの root ユーザーを NFS サーバー上の nobody ユーザーにマッピングします。
-
all_squash: 元の ID に関係なく、すべての NFS クライアントユーザーを NFS サーバー上の nobody ユーザーにマッピングします。
-
all_anonymous: 元の ID に関係なく、すべての NFS クライアントユーザーを NFS サーバー上の匿名ユーザーにマッピングします。
説明デフォルトでは、CSG を使用して ECS インスタンスに OSS バケットをマウントすると、すべてのユーザーに OSS ファイルに対する読み取り、書き込み、実行権限が付与されます。次の要件に基づいて [ユーザーマッピング] を設定できます。
-
権限を管理する必要がある場合は、[ユーザーマッピング] を [なし] に設定し、root ユーザーを使用して権限を管理します。 詳細については、「ファイルアクセス権限の設定」をご参照ください。
-
権限を管理する必要がない場合は、他のマッピングオプションを選択できます。
逆方向同期
OSS バケットからゲートウェイのキャッシュディスクにメタデータを同期し、バケットとゲートウェイのキャッシュ間の整合性を確保します。
[逆同期間隔] を設定します。値は 15~36,000 秒の範囲で設定できます。3,600 秒を超える間隔を推奨します。
重要逆方向同期機能は、バケット内のすべてのファイルをスキャンするため、API リクエスト料金が発生する可能性があります。詳細については、「リクエスト料金」をご参照ください。
キャッシュディスクタイプ
利用可能なタイプは、Ultra Disk、Standard SSD、ESSD です。サポートされるキャッシュディスクタイプはリージョンによって異なります。ビジネス要件に応じてタイプを選択してください。
[キャッシュ容量]
データキャッシュの容量 (単位: GB) を設定します。値の範囲は 100~32,768 です。
CSG は、ECS インスタンス上にホットデータをキャッシュして、アクセスパフォーマンスを向上させ、レイテンシを削減します。
-
-
課金情報 ペインで Cloud Storage Gateway サービス規約 を読み、選択してから、完了 をクリックします。
説明デフォルトでは、従量課金のファイルゲートウェイが作成されます。作成後、コストを抑えるために、課金方法をサブスクリプションに変更できます。詳細については、「従量課金ゲートウェイからサブスクリプションゲートウェイへの変換」をご参照ください。
ステップ 2: バケットのマウントとアクセス
ファイルゲートウェイを作成した後、対象バケットを ECS インスタンスにマウントします。次の手順では、NFS プロトコルを使用してバケットをマウントする方法について説明します。SMB プロトコルを使用する場合は、「SMB 共有へのアクセス」をご参照ください。
-
バケット詳細ページで、左側のナビゲーションペインでを選択します。
-
ファイルゲートウェイのリストで、目的のゲートウェイの サーバーのマウントターゲット を探します。
-
Linux ECS インスタンスにログインします。インスタンスはバケットと同じリージョンにある必要があります。詳細については、「VNC を使用したインスタンスへの接続」をご参照ください。
-
NFS マウントコマンドを実行して、対象バケットをマウントします。
たとえば、サーバーマウントターゲットが
172.16.0.2:/testで、ローカルディレクトリが/mnt/nfs/の場合、次のコマンドを実行します:mount.nfs 172.16.0.2:/test /mnt/nfs/ -
対象バケットにアクセスします。
次のコマンド例を使用して、マウントされたディレクトリを介してバケットにアクセスします:
-
バケットのルートディレクトリ内のファイルをリストします。
ls /mnt/nfs/ -
バケットのルートディレクトリから example.txt ファイルをローカルシステムにコピーします。
cp /mnt/nfs/example.txt example.txt
-
(オプション) ステップ 3: ファイルアクセス権限の設定
-
root ユーザーとして NFS クライアントにログインします。
-
ファイルアクセス権限を設定します。
次の例は、nfsnobody ユーザーグループ (デフォルトの UID および GID:
429496****) に example.txt ファイルへの読み取り専用アクセスを付与する方法を示しています:-
example.txt ファイルの所有者グループを nfsnobody ユーザーグループに変更します。
chgrp -R 429496**** example.txt -
nfsnobody ユーザーグループに example.txt ファイルへの読み取り専用権限を付与します。
chmod 444 example.txt
説明権限を設定した後、[ユーザーマッピング] の設定を [root_squash]、[all_squash]、または [all_anonymous] に変更して、root ユーザーの権限を制限します。
-
-
オプション: ユーザーマッピング設定を変更します。
-
にログインします。
-
左側のナビゲーションペインで、[ゲートウェイ] をクリックします。次に、目的のゲートウェイの名前をクリックします。
-
[共有]をクリックし、次に共有ページで、操作列の[設定]をクリックします。
-
NFS 共有の設定 ダイアログボックスで、必要に応じて [ユーザーマッピング] 設定を変更します。
-
OK をクリックします。
-
よくある質問
CSG と ossfs の比較
CSG は優れたパフォーマンスを提供します。ossfs ツールは、高並行性シナリオや大きなファイルのアップロードおよびダウンロードには適していません。小さなファイルの管理に最適です。ossfs の詳細については、「ossfs」をご参照ください。
バケットを削除すると、ゲートウェイも削除されますか?
いいえ。ファイルゲートウェイが不要になった場合は、継続的な課金を避けるために、CSG コンソールで手動で削除する必要があります。