如何使用Java API远程访问Google Compute VM文件系统?

时间:2016-03-29 17:54:05

标签: java google-compute-engine gcloud

我正在构建一个框架应用程序,用于根据角色管理计算引擎之间的文件。我已经能够找到很多关于管理计算引擎本身的信息,但没有任何关于访问它们来管理文件的信息。

2 个答案:

答案 0 :(得分:1)

没有Google API可以从实例外部读取和写入实例文件系统。如果您想要对其文件系统进行外部访问,则需要在实例上运行服务(ftp,sftp,无论如何)。

答案 1 :(得分:0)

Fratzke,首先你的问题是不完整的,你在计算引擎实例上使用什么平台,你只想要只读访问吗?

注意,如果要在多个计算引擎实例之间共享持久性磁盘,则只能在只读模式下执行此操作。谷歌文档明确指出:

  

可以将永久磁盘附加到多个实例。但是,如果将永久磁盘附加到多个实例,则所有实例都必须以只读模式附加永久磁盘。在读写模式下无法将永久磁盘附加到多个实例。

但是,您可以使用托管服务(例如google cloud storagegoogle cloud datastore等在多个实例之间共享文件。类似问题的答案已经在SO上。请参阅此链接:

Share a persistent disk between Google Compute Engine VMs

编辑:
如果要使用JAVA远程访问多个实例上的文件系统,则必须使用服务使文件系统可用。这种服务通常是后台作业,它处理传入的请求并返回响应,例如,用于认证,授权,阅读和写作。请求/响应模式的规范称为协议 - 例如UNIX / LINUX上的NFS。你写自己的文件服务提供商&在instnces上运行它。可以使用用于这种努力套接字(TCP / IP)的传输层。良好的传输层将是http协议,例如享受宁静的服务。

编辑 - 2

另一种可能性是使用sshfs,在每个实例上挂载文件系统,并在java代码中将它们用作挂载的网络共享驱动器。

希望这有助于你......温暖的问候。

相关问题