GCE(Google Compute Engine)にGCS(Google Cloud Storage)をマウントする
環境
GCP
- ゾーン : us-west1-b
- マシンタイプ : n1-standard-8
- OS : Ubuntu 18.04 LTS
Cloud Storage FUSEを使う
Cloud Storage FUSEとは?
Cloud Storage FUSE は、オープンソースの Fuse アダプタです。これにより、Cloud Storage バケットを、Linux または OS X システム上でファイル システムとしてマウントできます。
https://cloud.google.com/storage/docs/gcs-fuse
インストール
公式Githubを参考にしながら、下記コマンドを実行します。
export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
echo "deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
echo "deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main" | tee /etc/apt/sources.list.d/gcsfuse.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
sudo apt update
apt update
apt install gcsfuse
マウントする
こちらも公式READMEを参考にしながら。
-
Google Cloud Storage JSON API is enabledが有効になっていないとダメのようなので、わからない場合は最初に確認しておいたほうが良さそうです。
-
mnt_bucket
というバケットを/path/to/mnt_dir
ディレクトリにマウントする$ gcsfuse mnt_bucket /path/to/mnt_dir .... Opening GCS connection... Opening bucket... Mounting file system... File system has been successfully mounted.
こんな感じの出力が出れば成功です。
めっちゃ簡単!
ちなみに、この時sudo
は付けてはいけないらしいです。
アンマウントする
アンマウントは以下のコマンドで
$ fusermount -u /path/to/mnt_dir
コメント
コメントを投稿