📣
TiDB Cloud Premium はパブリックプレビュー中です。エンタープライズワークロード向けの無制限のスケーリング、即時の弾力性、高度なセキュリティを提供します。このページは自動翻訳されたものです。原文はこちらからご覧ください。

TiDB Cloud Filesystem をマウントする



TiDB Cloud CLI では、アプリケーションがローカルファイルシステムのパスを通じてリモートデータにアクセスする必要がある場合に、TiDB Cloud Filesystem をマウントできます。

前提条件

  • TiDB Cloud CLI をインストールして設定する。
  • --file-system-id を渡す、TI_FS_FILE_SYSTEM_ID を設定する、または Filesystem を識別する FS トークンを指定して、Filesystem を選択します。
  • --fs-token、TI_FS_TOKEN、または選択した Filesystem 用に保存されているローカル認証情報を通じて FS トークンを指定します。
  • Linux では、FUSE3 をインストールし、/dev/fuse へのアクセスを提供します。

マウントドライバーを選択する

プラットフォーム--driver auto注記
macOSWebDAVFUSE サポートを使用するには macFUSE をインストールし、--driver fuse を選択します。
LinuxFUSEWebDAV マウントはサポートされていません。
Windowsサポートされていませんマウントせずに ti fs のデータプレーンコマンドを使用します。

Filesystem をマウントする

macOS または Linux では、ローカルパスを作成し、Filesystem をバックグラウンドでマウントします。

mkdir -p /path/to/workspace ti fs mount-file-system \ --file-system-id "<file-system-id>" \ --mount-path /path/to/workspace

CLI はバックグラウンドのマウントプロセスを開始し、drain コマンドとアンマウントコマンドが正しいプロセスを見つけられるように、ローカルのマウントロケーターを書き込みます。

サブツリーを公開するには --remote-path を使用し、書き込みを防ぐには --read-only を使用します。レイヤーまたは checkpoint をマウントするには、FUSE ドライバーを選択し、mount-file-system リファレンスで説明されている適切な layer オプションを渡します。

コンテナ内でマウントする

イメージ内に FUSE3 をインストールするだけでは不十分です。ホストが /dev/fuse を公開し、コンテナがマウントを実行できるよう許可されている必要があります。Docker では、次と同等の設定を指定します。

docker run --rm -it \ --device /dev/fuse \ --cap-add SYS_ADMIN \ --security-opt apparmor=unconfined \ --env TI_FS_TOKEN \ --env TI_REGION_CODE \ --env TI_FS_FILE_SYSTEM_ID \ <image>

Docker Compose では、同じデバイス、ケーパビリティ、セキュリティ、および環境変数の設定を渡します。

services: agent: image: <image> devices: - /dev/fuse:/dev/fuse cap_add: - SYS_ADMIN security_opt: - apparmor=unconfined environment: TI_FS_TOKEN: ${TI_FS_TOKEN} TI_REGION_CODE: ${TI_REGION_CODE} TI_FS_FILE_SYSTEM_ID: ${TI_FS_FILE_SYSTEM_ID}

Ubuntu 26.04 のマウントパス

Ubuntu 26.04 は /usr/bin/fusermount3 に AppArmor プロファイルを適用します。デフォルトでは、/workspace の代わりに、現在のユーザーのホームディレクトリ、/mnt、/media、/tmp、または /run/user/<uid> の配下にあるパスを使用してください。

例:

mkdir -p "$HOME/workspace" ti fs mount-file-system \ --file-system-id "<file-system-id>" \ --mount-path "$HOME/workspace"

アプリケーションが /workspace を必要とする場合は、次のルールを /etc/apparmor.d/local/fusermount3 に追加します。

mount fstype=@{fuse_types} options=(nosuid,nodev) options in (ro,rw,noatime,dirsync,nodiratime,noexec,sync) -> /workspace/{,**/}, umount /workspace/{,**/},

その後、プロファイルを再読み込みします。

sudo apparmor_parser -r /etc/apparmor.d/fusermount3

関連するエラーについては、TiDB Cloud CLI のトラブルシューティングを参照してください。

drain またはアンマウントする

unmount-file-system を実行すると、CLI はマウントを停止する前に、開いているファイルハンドルと保留中の FUSE 処理を自動的にフラッシュします。

ti fs unmount-file-system --mount-path /path/to/workspace

FUSE マウントをオンラインのまま維持しつつ耐久性バリアが必要な場合(たとえば、レイヤーのチェックポイントを作成する前など)は、drain-file-system を明示的に実行します。このコマンドは、アンマウントせずに保留中の書き込みをフラッシュし、それらが完了するまで待機します。

ti fs drain-file-system --mount-path /path/to/workspace --timeout 30s

次のステップ

このページは役に立ちましたか?