在Windows上使用Azure文件共享服务

 

之前简单介绍过,你可以通过SMB 3.0协议,将Azure文件共享挂载在本地,就如使用一个网络驱动器是一样的,但需要注意不同版本的Windows对于SMB协议的支持:

如何在Azure的Windows虚拟机中访问共享文件存储昵?

  1. 创建一个Windows 2012虚拟机,可以和你的文件共享存储在一个region,比如都在北京,也可以不在一个地区,一个在北京地区一个在上海地区

  2. 持久化你的访问凭证,如果你只是手工挂载了共享服务,那么重新启动了之后,系统就不会重新自动连接,具体方式是使用cmdkey,执行如下命令:

    cmdkey /add:<storage-account-name>. file.core.chinacloudapi.cn /user:<storage-account-name> /pass:<storage-account-key>

  3. 确保你的上述命令是执行成功的,然后就可以使用net use命令挂载你的Azure文件共享服务到你的驱动器,比如:

     

net use <drive-letter>: \\<storage-account-name>.file.core.chinacloudapi.cn \<share-name>

 

例如在本测试示例中:

 

net use f: \\mystorageacctfile.file.core.chinacloudapi.cn\myfileshare

然后你就可以像访问本地驱动盘一样访问共享存储

 

4. 重启服务器,检测共享服务是否会自动连接,可以看到系统重启以后,文件共享目录被自动加载,然后我们做个简单测试,我们在该目录下创建一个测试目录windows和测试文件mywindows.txt:

 

 

 

5. 打开Powershell,使用powershell获得该文件共享下的文件列表,可以看到新建的目录和文件:

 

 

那么可不可以在用户的数据中心或者我自己的笔记本上直接挂载Azure的文件共享服务?答案是肯定的,前提:

  1. 使用自己数据中心的机器链接到Azure的文件共享服务,必须使用SMB 3.0,所以确保你的机器在SMB3.0列表中,本测试中我使用的是Windows 10

  2. SMB 3.0必须使用445端口,在我的测试中,有些运营商会封掉该端口,导致服务无法访问,不仅仅在中国,在全球其他国家的不同运营商也会有类似的情况,请在测试之前测测445端口

 

在本测试中,我用的中国电信宽带,我的windows 10笔记本,可以成功的链接到Azure文件共享服务,并正常操作:

 

注意事项:如果你在使用Net use命令的时候碰到了如下错误:

 

System error 53 has occurred。

 

那么基本上能够是因为你的网路服务提供商,你的Firewall或者ISP445端口封掉了,请联系你的管理员或者运营商,在美国地区的各个运营商对于445端口的开发情况请参考:

http://social.technet.microsoft.com/wiki/contents/articles/32346.azure-summary-of-isps-that-allow-disallow-access-from-port-445.aspx