作者:MeshCloud 脉时云公有云架构师 许多杰
引言
Cloud Storage FUSE 是一种开放源代码 FUSE 适配器,可让您将 Cloud Storage 存储分区作为文件系统装载到 Linux 或 macOS 系统上。
整体架构
准备工作
- 在GCS 中创建需要进行本地化挂载的 Bucket;
- 准备挂载的目标机器,可以是GCP Compute Engine,也可以是其他Linux 或 macOS 系统的机器;
实施步骤
- 安装Cloud Storage FUSE
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
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add –
sudo apt-get update
sudo apt-get install gcsfuse
sudo usermod -a -G {fuse} $USER
#{fuse} 字段替换成linux机器当前用户
- 设置验证的json文件.(GCS.json文件)
在GCP Portal生成 service key,授予权限,保存到本地机器上
- 创建本地挂载目录
mkdir -p /path/to/mount
- 创建一个bucket
在GCS Portal创建需要挂载的Bucket,如果有可以跳过。
- 挂载 bucket
格式:gcsfuse –key-file=”{keyfile path}” {bucket name} /{mount path}
本示例:
gcsfuse –key-file=”/home/xuduojie/spoton-project-fe0bab13df7d.json” wml-test /path/to/mount
- 挂载结果查看
GCS中的数据成功同步到本地文件系统
- 取消挂载
fusermount -u /path/to/mount
- 将文件系统的文件mv到本地磁盘测试
mv后Bucket中的文件就不存在了,文件在本地磁盘中。
参考文档
https://github.com/GoogleCloudPlatform/gcsfuse/blob/master/docs/installing.md