OCIFSユーティリティ
OCIFSユーティリティを使用すると、Oracle Cloud Infrastructure Object Storageバケットをファイル・システムとしてマウントできます。その後、バケット内のオブジェクトを通常のファイルおよびディレクトリとして管理できます。
OCIFSの既知の問題
次の既知の問題は、OCIFSユーティリティで検出された一時的なバグです。このバグは積極的に修正されており、回避策が提供されています。
一部のリージョンは、OCIFSユーティリティ、バージョン1.1および1.2で期限切れまたは欠落しています
OCIFSユーティリティのバージョン1.1および1.2では、一部のリージョンが古いか欠落しており、ストレージ・バケットをマウントしようとすると、次のエラーが表示される場合があります。
# mount -t fuse.ocifs bucket1 /mnt/dir
Failed to get Object Storage namespace
Error: Couldn't resolve host name
ERROR: Failed to init storage connect
回避方法
このメッセージが表示された場合は、mount
コマンドでregion=region_name.realm_domain
オプションを使用します。APIキーベース認証を使用している場合、region
オプションは、CLI構成ファイルで指定されたリージョンをオーバーライドします。また、インスタンス・プリンシパルおよびリソース・プリンシパル認証方式でこの問題に対処します。
たとえば、oraclegovcloud.uk
ドメイン内のuk-gov-london-1
リージョンにbucket1
をマウントするには:
# mount -t fuse.ocifs -o region=uk-gov-london-1.oraclegovcloud.uk bucket1 /mnt/dir
OCIFSユーティリティのバージョン1.2でインスタンス・プリンシパル認証方法を使用している場合、region=region_name.realm_domain
オプションを指定しても、このエラー・メッセージが引き続き表示されることがあります。その場合は、OCIFSユーティリティのバージョン1.1に切り替えて、回避策を再試行してください。
OCIFSユーティリティのインストール
Oracle Linux 8以降のシステムまたはインスタンスにOCIFSユーティリティをインストールします。
前提条件:
-
OCIオブジェクト・ストレージ: OCIFSをインストールするシステム(インスタンス)が、マウントする既存のオブジェクト・ストレージ・バケットにアクセスできるか、接続できることを確認します。バケットは空にすることも、すでにオブジェクトに移入することもできます。オブジェクト・ストレージの詳細は、オブジェクト・ストレージの概要に関する項を参照してください。オブジェクト・ストレージ・バケットの作成方法の詳細は、バケットの作成を参照してください。
-
ローカル・ディスク領域: OCIFSは、オブジェクト・ストレージ・オブジェクトをキャッシュするためにローカル・ディスク領域を消費します。OCIFSは、マウントされたオブジェクト・ストレージ・バケットのオブジェクトを、指定可能なディレクトリにキャッシュします。最適なパフォーマンスを得るには、高速アクセス時間を持つストレージデバイス上のキャッシュ用のローカルディレクトリを指定します。
また、キャッシュ・ディレクトリが、マウントされたオブジェクト・ストレージ・バケット・パスのコンテンツ全体をホストするのに十分な空き領域があるストレージ・デバイス上にあること、または少なくともバケット内のすべてのオブジェクトを読取りまたは書込みできることを確認してください。 - CLI構成ファイル: デフォルトでは、OCIFSはAPIキーベースの認証方法を使用してオブジェクト・ストレージを認証します。この認証方法では、OCIFS固有のエントリを含むCLI構成ファイルが必要です。OCIFSの構成ファイルの設定方法の詳細は、APIキーベース認証を参照してください。
OCIFSユーティリティをインストールするには:
OCIFSユーティリティの更新
最新バージョンのocifs
に更新するには:
sudo yum update ocifs
OCIFSユーティリティの詳細
OCIFSを使用してオブジェクト・ストレージ・バケットをマウントする場合、バケットをファイル・システムとして使用して、バケット内のオブジェクトを通常のディレクトリおよびファイルとして管理できます。
オブジェクト・ストレージ・バケット内のオブジェクトはフラット構造に存在しますが、OCIFSでは、1つ以上のフォワード・スラッシュ(/)を含むオブジェクト名に存在する接頭辞文字列を使用してディレクトリ構造をシミュレートします。OCIFSはFUSEファイル・システムとして実装されるため、ファイル・システムを使用するためにroot権限は必要ありません。
OCIFSファイル・システムは共有ファイル・システムではありません。オブジェクト・データの破損を回避するために、OCIFSを使用して同じオブジェクト・ストレージ・バケット(または重複するバケット・サブフォルダ)を何度も同時にマウントしないでください。また、オブジェクト・ストレージ・バケットのマウント中にバケット・オブジェクト(コンソール、CLI、APIなど)を直接変更しないでください。
オブジェクト・ストレージの詳細は、オブジェクト・ストレージの概要に関する項を参照してください。
OCIFSを使用したマウントの詳細は、「OCIFSを使用したマウントおよびアンマウント」を参照してください。
使用法
ocifs [--auth=method] [--config=file] [--region=name.realm_domain] [--cache=path] [--cache-keep] [--cache-reuse] [--cache-fsfree=] [--cache-purge=never|seconds] [--debug=[,...]] [-o ] [-d] [-f] [-s] [--check-bucket bucket-path] [--version] [--mpu-threshold=size] bucket-path directory
OCIFSユーティリティのオプション
OCIFSオプションは、ocifs
コマンドで長いオプション--option[=value]
または-o
オプション-o option[=value]
を使用して指定できます。
オプション |
説明 |
詳細は、次を参照してください: |
---|---|---|
|
OCI Object Storageへのアクセス時にOCIFSが使用する認証方法を設定します。
|
|
|
APIキーベース認証に使用されるCLI構成ファイルへのパスを設定します。 |
|
|
CLI構成ファイルで指定されたリージョンをオーバーライドします。 |
|
キャッシュ・オプション |
OCIFSキャッシュの機能を定義します。
|
|
|
デバッグ・レベルまたはレベルを設定し、
複数のデバッグ・レベルでは、レベルをカンマで区切ります。 |
|
FUSEオプション |
ocifs コマンドでは、次のFUSEオプションを使用できます。
また、 |
|
|
指定されたオブジェクト・ストレージ・バケットにアクセスできること、およびバケット内のオブジェクトの名前がOCIFSマウント・ルールと互換性があることを確認します。 |
|
|
OCIFSユーティリティのバージョンを表示します。 |
|
mpu-threshold |
マルチパート・アップロードを使用するファイル・サイズを定義します。 |
|
|
マウントするオブジェクト・ストレージ・バケットを指定します。 |
|
|
オブジェクト・ストレージ・バケットをマウントするディレクトリを指定します。 |
OCIFSを使用したマウントおよびアンマウント
OCIFSユーティリティを使用すると、マウントするオブジェクト・ストレージ・バケットをバケット・パスで指定できます。
バケット・パスには、次のいずれかを指定できます。
-
バケット名: 指定したオブジェクト・ストレージ・バケットのすべてのオブジェクトには、マウントされたディレクトリ内の通常のファイルまたはディレクトリとしてアクセスできます。
たとえば、オブジェクト・ストレージ・バケットbucket-1
をディレクトリmydir
にマウントするには:$ mkdir ~/mydir $ ocifs bucket-1 mydir
-
オブジェクト・ストレージ・バケット名であり、そのバケットのサブフォルダを持つバケット・サブフォルダ: 指定されたバケット・サブフォルダのオブジェクトのみが、マウントされたディレクトリ内の通常のファイルまたはディレクトリとしてアクセスできます。
たとえば、オブジェクト・ストレージ・バケットbucket-1
のサブフォルダmarathon/participants
をディレクトリmydir
にマウントするには:$ ocifs bucket-1/marathon/participants mydir
オブジェクト・ストレージ・バケットのマウント
前提条件:
OCIFSを使用してオブジェクト・ストレージ・バケットをマウントする前に、次を確認してください:
-
OCIFSマウントの制限事項: オブジェクト・ストレージ・バケットをマウントするためのガイドラインおよびルール
-
OCIFSユーティリティの詳細: OCIFSユーティリティで使用可能なマウント・オプション
-
OCIFS認証: OCIFSで使用される認証方法、および必要に応じてCLI構成ファイルの編集に関する情報
オブジェクト・ストレージ・バケットをマウントするには:
ocifs
コマンドを使用します。ocifs [options] bucket-path directory
または:
mount(8)
コマンドを使用して、次の操作を行います。mount -t fuse.ocifs [-o options] bucket-path directory
ノート
mount
コマンドでは、-o
オプション(-o option[=value]
)を使用してオプションを指定します。ノート
mount
コマンドには、適切な権限(rootなど)が必要です。
Examples:
-
ocifs
コマンドを使用して、オブジェクト・ストレージ・バケットbucket-1
をディレクトリmydir
にマウントし、アンマウント後にOCIFSキャッシュ・ディレクトリを保持します:$ ocifs --cache-keep bucket-1 mydir
-
mount
コマンドを使用して、オブジェクト・ストレージ・バケットbucket-1
をディレクトリ/mnt
にマウントし、アンマウント後にOCIFSキャッシュ・ディレクトリを保持します:# mount -t fuse.ocifs -o cache-keep bucket-1 /mnt
デフォルトでは、オブジェクト・ストレージ・バケットはAPIキーベース認証を使用してマウントされます。APIキー・ベース認証を参照してください。
オブジェクト・ストレージ・バケットのアンマウント
fusermount -u
コマンドを使用します。fusermount -u directory
または:
umount(8)
コマンドを使用します。umount directory
ノート
umount
コマンドには、適切な権限(rootなど)が必要です。
-
fusermount
コマンドを使用して、ディレクトリmydir
にマウントされているオブジェクト・ストレージ・バケットをアンマウントします:$ fusermount -u mydir
-
umount
コマンドを使用して、ディレクトリ/mnt
にマウントされているオブジェクト・ストレージ・バケットをアンマウントします:# umount /mnt
OCIFSファイル・システムをアンマウントすると、対応するキャッシュ・ディレクトリが削除されます。ただし、ファイル・システムが
cache-keep
オプションでマウントされている場合を除きます。cache-keepを参照してください。OCIFSマウントの制限事項
OCIFSには、オブジェクト・ストレージ・バケットをマウントする前に考慮する必要があるいくつかのマウント制限があります。
次のマウント規則および制限を確認してください。
ファイルのタイプ、属性およびサイズ設定
OCIFSには、次のファイル・タイプ、属性およびサイズ設定のマウント制限があります。
- ファイル・タイプ
- OCIFSでは、通常のファイルおよびディレクトリのみがサポートされます。OCIFSは、シンボリック・リンク、物理リンクおよび特殊ファイル(ブロック、文字、fifo、特殊ファイル)をサポートしません。
- ファイルの属性
- ファイル属性(アクセス権、ユーザーおよびグループの所有権、アクセス/変更/変更時間)は、マウント間で永続的ではありません。OCIFSファイル・システムがアンマウントおよび再マウントされると、すべての属性がリセットされます。
- ファイル・サイズ
- OCIFSの最大ファイル・サイズは10 TiBです。OCIオブジェクト・ストレージの最大オブジェクト・サイズです。
ネーミング・ルール
ファイル、パス、オブジェクトおよび接頭辞のOCIFSマウント・ネーミング・ルールに従います。
- ファイル名
- OCIFSファイル名のサイズは、OCIFSキャッシュに使用されるファイル・システムでサポートされているサイズに制限されます。ファイル・システムの最も一般的なファイル名のサイズ制限は255文字です。オブジェクト・ストレージ・バケットのファイル名サイズが255文字を超えるオブジェクトがある場合、そのオブジェクトはOCIFSファイル・システムでファイルまたはディレクトリとして表示できますが、オブジェクトは読取り専用であり、キャッシュできません。オブジェクトはキャッシュされないため、オブジェクトのアクセス時間が遅くなる可能性があります。
- パスの名前
- OCIFSでは、最大1023文字のパス名がサポートされています。
- 互換性のないオブジェクト名
- オブジェクト・ストレージ・バケットには、Oracle Linuxファイル・システムのネーミング規則(
//directory
やdirectory////mydirectory
など)と互換性がない名前のオブジェクトを含めることができます。ただし、これらのオブジェクトはOCIFSではアクセスできず、表示もできません。OCIFSで使用できるようにするには、そのようなオブジェクトの名前を、Oracle Linuxファイル・システムのネーミング規則と互換性のある名前に変更する必要があります。Oracle Cloudコンソールを使用して、オブジェクトの名前を変更できます。
- オブジェクトと接頭辞名の競合
- 同じ名前がオブジェクト・ストレージのオブジェクト名と接頭辞名の両方として使用されている場合、その名前はOCIFSを含むディレクトリ・エントリとして表示されます。同じ名前のオブジェクトは、OCIFSを介してアクセスできません。OCIFSを介してオブジェクトを表示できるようにするには、接頭辞として使用されていない名前でオブジェクトの名前を変更する必要があります。
データの同期
OCIFSには、データ同期用の様々なオプションが用意されています。
OCIFSファイルに書き込む場合、データは、OCIFSファイルが閉じられると同期されます(データは、対応するオブジェクト・ストレージ・オブジェクトに効果的に書き込まれます)。データ同期エラーは、close(2)
システム・コールによって報告されます。close()
からのエラー・リターンの処理の詳細は、close(2)
のマニュアル・ページのノートの項を参照してください。fsync(2)
またはfdatasync(2)
を使用して、データを明示的に同期するようにリクエストすることもできます。
O_SYNC
またはO_DSYNC
フラグでファイルを開く)またはすべてのファイル(sync
オプション(-o sync
)でOCIFSファイル・システムをマウントすることで)に対して、書込み操作によってデータをただちに同期させることができます。 O_SYNC
またはO_DSYNC
オープン・フラグを使用するか、sync
マウント・オプションを使用すると、パフォーマンスに悪影響を及ぼす可能性があります。OCIFS認証
OCIFSユーティリティでは、APIキーベース(デフォルト)、インスタンス・プリンシパルまたはリソース・プリンシパル認証メソッドを使用します。
OCIFSユーティリティを使用してオブジェクト・ストレージ・バケットをマウントする場合、ocifs
コマンドでauth=method
オプションを使用して、オブジェクト・ストレージへのアクセスおよび認証に使用する認証方法を指定できます。
詳細は、次を参照してください:
APIキーベース認証
OCIFSでオブジェクト・ストレージ・バケットをマウントするためのAPIキーベースの認証方法を指定および構成します。
APIキーベース認証は、OCIFSのデフォルトの認証方法であり、OCIコンピュート・インスタンスまたは他のシステムから使用できます。この認証方法には、ローカルのOCI SDKおよびCLI構成ファイルが必要です。構成ファイルは、ocifs
コマンドでconfig=file
オプションを使用して指定できます。デフォルトでは、構成ファイル~/.oci/config
です。
bucket-1
をmydir
ディレクトリにマウントし、~/my_config
CLI構成ファイルでAPIキーベース認証を使用する場合:$ ocifs --auth=api_key --config=~/my_config bucket-1 mydir
APIキーベースの認証方法を使用してオブジェクト・ストレージ・バケットをマウントする前に、CLI構成ファイル(~/.oci/config
)に[DEFAULT]
プロファイルと、次の表で指定されたエントリがあることを確認してください。
エントリ |
説明 |
例 |
---|---|---|
|
Oracle Cloud Infrastructureにアクセスしているユーザーの |
|
|
テナンシの |
|
|
Oracle Cloud Infrastructureリージョン |
|
|
秘密鍵のフルパスとファイル名 |
|
|
このユーザーに使用される公開キーのフィンガープリント |
|
詳細は、SDKおよびCLIの構成ファイルを参照してください。
インスタンス・プリンシパル認証
デフォルトのAPIキーベースの認証方法のかわりに、OCIFSユーティリティでインスタンス・プリンシパル認証方法を使用できます。
OCIFSのインスタンス・プリンシパル認証方式は、認可されたOracle Cloud Infrastructureインスタンスからのみ使用します。この認証方法では、指定したインスタンスがCLI構成ファイルなしでオブジェクト・ストレージにアクセスできます。その後、インスタンスは自動的に情報を検出して認証します。
インスタンス・プリンシパル認証を使用して、インスタンス・プリンシパルとして構成されたコンピュート・インスタンスにオブジェクト・ストレージ・バケットをマウントする必要があります。
たとえば、インスタンス・プリンシパル認証を使用して、オブジェクト・ストレージ・バケットbucket-1
をmydir
ディレクトリにマウントするには:
$ ocifs --auth=instance_principal bucket-1 mydir
インスタンス・プリンシパル認証を使用するには、コンピュート・インスタンスが動的グループに属している必要があり、ポリシーによって動的グループがオブジェクト・ストレージを管理できるようにする必要があります。manage object-family
動詞およびリソース・タイプを使用して、オブジェクト・ストレージ・オブジェクトの管理を許可するポリシーを定義できます。動的グループの詳細は、動的グループの管理を参照してください。
たとえば、コンピュート・インスタンス(インスタンスIDがocid1.instance.OCID
)がインスタンス・プリンシパル認証を使用できるようにするには:
-
コンピュート・インスタンスに一致する次のルールを使用して、動的グループ
dgroup-ocifs
を作成します:All {instance.id = 'ocid1.instance.OCID'}
-
その動的グループ
dgroup-ocifs
がオブジェクト・ストレージを管理できるようにするポリシーを作成します:Allow dynamic-group dgroup-ocifs to manage object-family in compartment id ocid1.tenancy.tenancy_ID
詳細は、インスタンスからのサービスのコールを参照してください。
リソース・プリンシパル認証
デフォルトのAPIキーベースの認証方法のかわりに、OCIFSでリソース・プリンシパル認証方法を使用できます。
認可されたOracle Cloud Infrastructure (OCI)関数からのみ、OCIFSでリソース・プリンシパル認証方法を使用します。この認証方法では、指定した関数がCLI構成ファイルなしで別のリソース(オブジェクト・ストレージ)にアクセスできます。その後、OCI関数は、認証する情報を自動的に検出します。
リソース認証を使用するには、OCI関数が動的グループの一部である必要があり、ポリシーによって動的グループがそのリソースまたはオブジェクト・ストレージにアクセスできるようにする必要があります。動的グループの詳細は、動的グループの管理を参照してください。
他のOCIリソースにアクセスするOCI関数の詳細は、他のOracle Cloud Infrastructureリソースへのアクセスを参照してください。
OCIFSでリソース認証方法を使用するには、ocifs
コマンドを使用してバケットをマウントするときに--auth=resource_principal
と入力します。
たとえば、リソース・プリンシパル認証を使用して、オブジェクト・ストレージ・バケットbucket-1
をmydir
ディレクトリにマウントするには:
$ ocifs --auth=resource_principal bucket-1 mydir
OCIFS診断の有効化
OCIFS診断を有効にするには、ocifs
コマンドを-f
オプションとともに使用して、フォアグラウンドでOCIFSプロセスを実行し、--debug
オプションを使用してデバッグ・レベルを指定します。
たとえば、mydir
ディレクトリにマウントされたオブジェクト・ストレージ・バケットbucket-1
のすべてのOCIFS操作の診断情報を表示するには:
$ ocifs -f --debug=all bucket-1 mydir
または、ocifs
コマンドで-d
オプションを使用すると、すべての操作でFUSEデバッグを有効にできます。
例:
$ ocifs -d --debug=all bucket-1 mydir
OCIFSキャッシュ・オプション
OCIFSキャッシュ・オプションを使用して、OCIFSキャッシュの機能を指定します。
OCIFSユーティリティは、マウントされたオブジェクト・ストレージ・バケット・パスのオブジェクトをローカル・ディレクトリにキャッシュします(デフォルトでは~/.ocifs/bucket/
)。
キャッシュ・ディレクトリがあるストレージ・デバイスが一杯になると、一部のOCIFS操作が失敗する可能性があります。
OCIFSキャッシュの使用方法を指定し、次のocifs
キャッシュ・オプションを使用してファンクションを実行できます。
キャッシュ
OCIFSキャッシュ・ディレクトリは、ocifs
コマンドのcache=path
オプションを使用して変更できます。
デフォルトでは、OCIFSはオブジェクトを~/.ocifs/
にキャッシュします。このキャッシュディレクトリは、cache=path
オプションを使用して変更できます。このオプションは、キャッシュディレクトリを指定されたパスに設定します。パスには、ユーザーのホーム・ディレクトリへの絶対パスまたは相対パスを指定できます。
bucket-1
をmydir
ディレクトリにマウントし、/var/tmp/ocifs-cache
をOCIFSキャッシュ・ディレクトリとして使用するには:$ ocifs --cache=/var/tmp/ocifs-cache bucket-1 mydir
cache-fsfree
ocifs
コマンドのcache-fsfree
オプションを使用して、OCIFSユーティリティがキャッシュ・ファイル・システムの領域を誤って埋めるのを防ぐことができます。
cache-fsfree
オプションを使用して、キャッシュ・ファイル・システムの空き領域量を指定します。空き領域が指定した量より大きい場合、OCIFSはデータのキャッシュを試みます。それ以外の場合、OCIFSはキャッシュを実行しません。OCIFSがデータをキャッシュできない場合、書込み操作などの一部のOCIFS操作が失敗する可能性があります。
cache-fsfree
オプションは、OCIFSエントリの属性(サイズなど)のキャッシュ方法を変更しません。次の表に、キャッシュ・ディレクトリ・サイズの値を示します。
値 |
説明 |
例 |
---|---|---|
|
キャッシュ・ファイル・システムの空き領域をチェックしないでください。このオプションを使用すると、OCIFSは、キャッシュ・ファイル・システムで使用可能な空き領域量に関係なく、データをキャッシュしようとします。 |
|
|
この値は、キャッシュ・ファイル・システムで解放される必要がある領域の割合(0%から100%)を指定します。 パーセンテージが100%の場合、データはキャッシュされません。 |
|
|
この値は、キャッシュ・ファイル・システムで解放される必要があるキロバイト(K)、メガバイト(M)、ギガバイト(G)またはテラバイト(T)の領域量を指定します。 |
|
|
この値は、キャッシュ・ファイル・システムで解放される必要があるキビバイト(Ki)、メビバイト(Mi)、ギビバイト(Gi)またはテビバイト(Ti)の領域量を指定します。 |
|
ノート:
- デフォルト設定は
cache-fsfree=5%
です。 - オプション
0
、0%
、0
[K|M|G|T
]または0
[K|M|G|T
]i
を使用すると、同じ効果が得られます。 - オプション
100%
、またはファイル・システムのサイズ以上の領域の量を使用すると、同じ効果があります。
キャッシュキープ
OCIFSファイル・システムがアンマウントされている場合でも、ocifs
コマンドのcache-keep
オプションを使用してOCIFSキャッシュを保持できます。
cache-keep
オプションを使用してファイル・システムをマウントしないかぎり、OCIFSファイル・システムをアンマウントすると、OCIFSキャッシュ・ディレクトリが削除されます。
たとえば、オブジェクト・ストレージ・バケットbucket-1
をmydir
ディレクトリにマウントし、アンマウント後にキャッシュを保持するには:
$ ocifs --cache-keep bucket-1 mydir
ノート:
cache-keep
オプションを使用した場合、cache-reuse
オプションを使用しないかぎり、ファイルシステムを再度マウントできないことがあります。- ファイル・システムのアンマウント後にデータをキャッシュに保持すると、次回のファイル・システムのマウント時にパフォーマンスが向上します。ただし、OCIFSでは、キャッシュ内のデータとオブジェクト・ストレージ・バケット内の実際のデータとの間に相違があるかどうかは確認されません。
キャッシュパージ
OCIFSユーティリティのcache-purge
オプションを使用すると、指定した期間クローズされたファイルのデータをOCIFSキャッシュから削除できます。
デフォルトでは、OCIFSキャッシュはパージされません。ファイル・システムがマウントされているかぎり、キャッシュ・データはキャッシュ・ディレクトリに保持されます。キャッシュ・ディレクトリは、OCIFSファイル・システムがアンマウントされている場合にのみ削除されます。
cache-purge
オプションを使用すると、ファイルが閉じられたあとにデータがキャッシュに残る時間を指定できます。これを使用すると、特にファイルが頻繁にアクセスされない場合に、ディスク領域を保持できます。これは、たとえば、新しいファイルを書き、再度ファイルにアクセスしない場合に便利です。
OCIFSキャッシュのパージ遅延は、次の表に示すように指定できます。
値 |
説明 |
例 |
---|---|---|
|
OCIFSキャッシュはパージしないでください。この値を使用すると、OCIFSファイル・システムがマウントされているかぎり、キャッシュされたデータは保持されます。(デフォルト) |
|
遅延時刻 |
キャッシュされたデータをパージするまでのパージ遅延(秒)。パージ遅延が0に設定されている場合、ファイルのキャッシュされたデータは、ファイルがクローズされた直後にパージされます。 |
|
OCIFSキャッシュ・パージ遅延(特に小さい値)を設定すると、パフォーマンスに悪影響を及ぼす可能性があります。これは、ファイルが使用されないと、最終的にデータがキャッシュから削除されるためです。ファイルが後で再オープンされて読み取られると、ファイル・データがキャッシュにないため、パフォーマンスが低下する可能性があります。
キャッシュ再利用
OCIFSユーティリティのcache-reuse
オプションを使用すると、空でないキャッシュ・ディレクトリが存在する場合でも、OCIFSファイル・システムをマウントできます。
デフォルトでは、OCIFSは、空でないキャッシュ・ディレクトリがあるファイル・システムのマウントを防止します。cache-reuse
オプションを使用すると、ファイル・システムを再マウントし、既存のキャッシュ・ディレクトリ(存在する場合)を再利用できます。
たとえば、オブジェクト・ストレージ・バケットbucket-1
をmydir
ディレクトリにマウントし、既存のキャッシュ・ディレクトリを再利用するには:
$ ocifs --cache-reuse bucket-1 mydir
ノート:
- ファイルシステムが以前に
cache-keep
オプションでマウントされていた場合、またはocifs
プロセスが強制終了されたか、またはクラッシュした場合、空でないキャッシュディレクトリを持つことができます。 - OCIFSユーティリティは、キャッシュにすでに存在するデータにすばやくアクセスできるため、既存のキャッシュを再利用するとパフォーマンスが向上します。ただし、OCIFSではキャッシュ内のデータとオブジェクト・ストレージ・バケット内の実際のデータとの間の相違を確認しないため、
cache-reuse
オプションを使用することはお薦めしません。
OCIFSマルチパート・アップロード・オプション
OCIFSは、Oracle Cloud Interface (OCI) Object Storageのマルチパート・アップロードを使用して、ラージ・オブジェクトをOCI Object Storageにアップロードします。
OCIFSは、マルチパート・アップロードを使用してオブジェクトをアップロードする場合、最大パート・サイズが50 GiBのパートにオブジェクトをかなり分割します。その後、パートはスレッドのプールによってアップロードされます。
OCIFSのmpu-threshold
コマンド・オプションを使用して、OCIFSでマルチパート・アップロードを使用する方法を指定できます。
mpu-threshold
OCIFSでは、大規模なファイルをオブジェクト・ストレージにアップロードするためにマルチパート・アップロードを使用するタイミングを決定できます。OCIFS mpu-threshold=size
オプションを使用すると、マルチパート・アップロードを開始するファイル・サイズを指定できます。
デフォルトのマルチパート・アップロード・サイズしきい値は100Mebibytesです(推奨)。
次の表に、サポートされている mpu-threshold=size
オプション値を示します。
値 |
説明 |
例 |
---|---|---|
|
常にマルチパート・アップロードを使用します(非推奨)。 |
|
|
マルチパート・アップロードが使用されるKバイト(K)、Mバイト(M)、Gギガバイト(G)またはTバイト(T)のサイズ。 |
|
|
マルチパート・アップロードが使用されるKibibytes (Ki)、Mebibytes (Mi)、Gibibytes (Gi)またはTebibytes (Ti)のサイズ。 |
|