将 Filestore 实例挂载到 Cloud TPU 虚拟机
Filestore 是一种全代管式网络附加存储 (NAS) 服务, Compute EngineFilestore 原生兼容现有的 企业应用,并支持任何与 NFSv3 兼容的客户端。
准备工作
要在您的 Cloud TPU 虚拟机上装载 Filestore 实例,您需要 您需要添加一个 Filestore 角色(Cloud Filestore Editor 或 Cloud Filestore Viewer)更改为与您的 Cloud TPU 虚拟机。如果您在创建 Cloud TPU VM 时未指定自定义服务账号,则 Cloud TPU VM 会使用默认的 Compute Engine 服务账号。有关如何指定 服务账号,请参阅 设置 Cloud TPU 环境。 如需详细了解如何创建服务账号,请参阅 创建服务账号。
向服务账号添加 Filestore 编辑者角色
以下说明介绍了如何将 Cloud Filestore 编辑者角色添加到 Compute Engine 默认服务账号。您可以按照以下说明向任何服务账号添加 Cloud Filestore 编辑者角色。您可以搜索和使用自定义服务账号,而不是 第 2 步中的 Compute Engine 默认服务账号。
打开 IAM 控制台。
选择按主账号查看标签页,然后在过滤条件字段中输入
Name:Compute Engine default service account
。点击服务账号旁边的
。 IAM 控制台会显示一个对话框,其中列出了分配给 Compute Engine 默认服务账号的角色。点击
可添加其他角色。展开选择角色下拉菜单,然后在
Filestore
过滤条件,然后选择 Cloud Filestore 编辑器。点击保存以关闭对话框。您已添加 Filestore Compute Engine 默认服务账号的 Editor 角色。
如需详细了解服务账号,请参阅服务账号概览。 如需详细了解 IAM 角色,请参阅角色和权限。
创建 Filestore 实例
按照创建 Filestore 实例中的说明创建 Filestore 实例。
在 Cloud TPU 虚拟机上装载 Filestore 实例
用于在 Cloud TPU 上装载 Filestore 实例的命令 取决于您使用的是单个 Cloud TPU 还是 Cloud TPU Pod Slice。
在单个 Cloud TPU 虚拟机上装载 Filestore 实例
- 使用 SSH 连接到 Cloud TPU 虚拟机。
gcloud compute tpus tpu-vm ssh your-tpu-name \ --zone=your-zone
- 安装
nfs-common
软件包。sudo apt-get update --allow-releaseinfo-change \ && sudo apt-get -y update \ && sudo apt-get -y install nfs-common
- 创建用于装载 NFS 的目录
sudo mkdir -p mount-dir \ && sudo chmod ugo+rw mount-dir
- 查找 Filestore 的 IP 地址。
gcloud filestore instances describe filestore-instance-name \ --region filestore-region
- 将 Cloud TPU 虚拟机上的 Filestore 实例装载到装载目录上。
sudo mount filestore-ip:file-share-name mount-dir-name
在 Cloud TPU Pod 切片上装载 Filestore 实例
Cloud TPU Pod 切片由 2 个或更多 Cloud TPU 虚拟机组成。通过
以下命令使用 gcloud compute tpus tpu-vm ssh
命令及
用于在所有 Cloud TPU 上运行命令的 --worker=all
和 --command
标志
同时配置多个虚拟机
- 在 Pod 切片中的所有 Cloud TPU 虚拟机上安装
nfs-common
软件包。gcloud compute tpus tpu-vm ssh your-tpu-name \ --project=your-gcp-project \ --zone=your-zone \ --worker=all \ --command="sudo apt-get update --allow-releaseinfo-change && sudo apt-get -y update && sudo apt-get -y install nfs-common"
- 创建一个用于装载 Filestore 实例的目录。
将
mount-dir-name
替换为您选择的目录名称。gcloud compute tpus tpu-vm ssh your-tpu-name \ --project=your-gcp-project \ --zone=your-zone \ --worker=all \ --command="sudo mkdir -p mount-dir-name && sudo chmod ugo+rw mount-dir-name"
- 查找 Filestore 实例的 IP 地址。
gcloud filestore instances describe filestore-instance-name \ --region filestore-region
- 在您的 Cloud TPU 虚拟机上装载 Filestore 实例。请替换以下内容:
sudo mount filestore-ip:file-share-name mount-dir
将数据写入 Filestore 实例
请务必向您挂载 Filestore 实例的目录授予 Linux 读写权限。您可以像使用本地文件系统一样使用该目录。