中国版Azure 文件服务预览版在2015年1月13日已经上线,文件存储使用标准SMB 2.1协议为应用程序提供共享存储。

当我们的虚拟机连接到文件共享后就可以像使用本地共享文件夹一样来读取和写入文件。在使用Azure 文件服务之前我们需要两步准备工作

第一步:创建新存储账户

Note: 只有在Azure 文件服务上线后所创建的存储账户才会有Azure 文件服务功能

1)       打开Azure门户网站:https://manage.windowsazure.cn/

2)       按下图点击 数据服务 -> 存储 -> 快速创建

3)       打开我们创建的存储的仪表盘,我们将看到我们文件服务的终结点

第二步:下载和安装Azure PowerShell cmdlets,关于如何安装和配置 Windows Azure PowerShell请阅读:http://www.windowsazure.cn/zh-cn/documentation/articles/install-configure-powershell/

Note:  Azure PowerShell 0.8.5 及更高版本才支持Azure 文件服务

所有准备工作完成后我们就可以开始了,目前Azure门户网站不支持创建存储共享,我们还是需要以PowerShell的方式来创建。

1)       启动安装好的Windows Azure PowerShell,使用下面的命令来登录你的中国版Azure账户    

Add-AzureAccount -Environment AzureChinaCloud

2)       创建上下文

$ctx=New-AzureStorageContext <帐户名称> <帐户密钥> -Environment AzureChinaCloud

Note: 我们使用的是中国版的Azure,所以需要添加Environment这个参数否则会出现下面的错误,从错误中可以很明显的看到终结点并非我们中国版Azure的后缀core.chinacloudapi.cn

New-AzureStorageShare: The remote name could not be resolved: '<account name>.file.core.windows.net'

3)       使用上下文创建文件共享

$s = New-AzureStorageShare <共享名称> -Context $ctx

4)       下面我们在虚拟机中配置共享目录

右击这台电脑 -> 点击映射网络驱动器

在文件夹输入框内输入 “\\<帐户名称>.file.core.chinacloudapi.cn\<共享名称>“,其中需要勾选“使用其他凭据连接“,因为我们使用的是存储账号和存储密钥的方式进行登陆。

然后在登录界面使用Azure存储的账号和密钥,之后我们就会在网络位置中看到我们的共享文件。

5)           如果文件共享不再需要了我们可以选择删除以避免不必要的费用,关于Azure 文件服务的收费请查看官网:http://www.windowsazure.cn/home/features/storage/#price ,我们可以通过下面的指令来执行删除操作:

a)       检索我们的Azure 文件服务下的所有共享文件

Get-AzureStorageShare -Context $ctx

b)       找到我们需要删除的共享文件名,执行删除操作

Remove-AzureStorageShare -Name <共享名称> -Context $ctx

至此我们就可以在Azure 虚拟机或者云服务中使用Azure 文件服务,但是需要注意的是映射网络驱动这种方式并不适用于本地环境,如果需要在本地环境中使用Azure 文件服务的话,我们就需要借助于File Storage API,下面的内容是演示如何使用.NET来实现企业内部环境使用Azure 文件服务,如果你使用其他语言你也可以尝试通过http请求的方式来实现,Rest API地址是: https://msdn.microsoft.com/zh-cn/library/azure/dn167006.aspx

1)       创建项目,安装Azure 存储NuGet包

a)       打开Visual Studio –> 选择File -> New Project –> Templates -> Visual C# -> 选择Console Application

b)       定义项目名为AzureFilesDemo

c)       右击项目选择” Manage NuGet Packages“,在搜索框内输入Azure Storage,然后安装Azure存储NuGet包。

2)       代码编写

a)       修改App.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<connectionStrings>
<add name="StorageConnectionString" connectionString="BlobEndpoint=https:// <Account Name>.blob.core.chinacloudapi.cn/;QueueEndpoint=https:// <Account Name>.queue.core.chinacloudapi.cn/;TableEndpoint=https:// <Account Name>.table.core.chinacloudapi.cn/;FileEndpoint=https:// <Account Name>.file.core.chinacloudapi.cn/;AccountName=<Account Name>;AccountKey=<Account Key>"/> />
</connectionStrings>
</configuration>

b)       在Program.cs中引入命名空间,并编写代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Blob;
using Microsoft.WindowsAzure.Storage.File;
using System.Configuration; namespace AzureFilesDemo
{
class Program
{
static void Main(string[] args)
{
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString); CloudFileClient fileClient = storageAccount.CreateCloudFileClient();
CloudFileShare share = fileClient.GetShareReference("fileshares");
if (share.Exists())
{
CloudFileDirectory rootDir = share.GetRootDirectoryReference();
CloudFileDirectory sampleDir = rootDir.GetDirectoryReference("Resource");
sampleDir.CreateIfNotExists();
}
}
}
}

通过上述操作我们就可以在企业内部网络文件共享(”fileshares”)里创建一个名为”Resource”的文件夹,我在之前操作的虚拟机中也看到了这个文件夹如下图:

Note:  Azure存储的连接字符串如下

DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1};EndpointSuffix=core.chinacloudapi.cn;

Azure File SDK还提供了我们很多的功能,如果有兴趣,大家可以去研究下。

中国版Azure 文件服务的更多相关文章

  1. [Azure] 使用 Visual Studio 2013 管理中国版 Azure 订阅

    比较关心微软平台技术的朋友应该都知道,微软云服务(Microsoft Azure)以下简称Azure分为全球版和中国版,由于政府法规问题中国版的服务是由二十一世纪互联运营,整体来看中国版Azure和全 ...

  2. 中国版 Azure 现提供 Azure Traffic Manager

    Stephen MaloneAzure网络 - DNS和 Traffic Manager高级项目经理 我们非常高兴地宣布,中国版 Azure中现已提供 Azure Traffic Manager.Az ...

  3. 中国版Azure支持那些版本号Linux

    不在下述列表中的Linux表示尚未经过正式验证,并不意味着不能使用,客户能够通过自行上传镜像文件的方式使用其它Linux版本号,可是不保证是否遇到一些驱动或者兼容问题. 分发 版本号 上次验证时间 驱 ...

  4. Traffic Manager:Azure中国版 正式发布

     我们很高兴地宣布Azure Traffic Manager 现已面向中国版Azure正式发布.此版本现已投入生产,由企业 SLA支持,随时可用于生产场景中. 借助Azure Traffic Ma ...

  5. 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题

    千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...

  6. 中国区 Azure 和全球版 Azure:功能对比

    由世纪互联运营的 Microsoft Azure(文中简称为中国区 Azure)是在中国大陆独立运营的公有云平台,与全球其他地区由微软运营的 Azure (文中简称全球版 Azure)服务在物理上和逻 ...

  7. 跨云应用部署第一步:使用IPSEC VPN连接AWS中国版和Windows Azure中国版

    随着公有云的普及,越来越多的客户将关键应用迁移到云端.但是事实证明,没有哪家云服务提供商可以提供100%的SLA,无论是例行维护还是意外中断服务,对于客户的关键应用而言,都会受到不同程度的影响.此外, ...

  8. 自制Azure中国版“加血包”

    Micrsoft Azure中国版的国际出口最近升级为电话线拨号模式,目测为10个用户共享一条56kb的电话线拨号链路.有图有真相: 中国的IT从业者,有三分之一的职业生涯时间是在跟网络斗智斗勇.这点 ...

  9. 使用VNET-to-VNET连接Microsoft Azure国际版和中国版

    Microsoft Azure的VNET-to-VNET功能可以实现跨虚拟网络的VPN连接,通过VNET-to-VNET互联的两个虚拟网络可以在同一个订阅下或者隶属不同的订阅,而且可以跨数据中心.这实 ...

随机推荐

  1. String类的内存分配

    首先说一下Java内存分配.物理的内存是线性结构,并不存在拥有不同功能的不同区域,编译器(或者JVM)为了更高效地处理数据,会用不同的算法把内存分为各种区域,不同的区域拥有各自的特性,Java中,内存 ...

  2. FPGA和CPLD的比较

    1 FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现. 2 CPLD更适合触发器有限而乘积丰富的结构,更适合完成复杂的组合逻辑:FPGA更适合于触发器丰富的结构,适合完成时序逻辑. 3 c ...

  3. 批量插入数据insert into select示例

    //增加 $addSql =" insert into hxqc_auth_group_limits(group_id,company_id)"; foreach ($add_da ...

  4. POJ3624(背包问题)

    1.题目链接地址 http://poj.org/problem?id=3624 2.源代码 #include<iostream> using namespace std; #define ...

  5. Linux yum失败解决

    Linux yum失败解决 问题: 在CentOS 5.5中需要使用yum安装程序,出现错误: There was a problem importing one of the Python modu ...

  6. python3--生成器并行运算

    # Auther: Aaron Fan """def consumer(name): print("%s 准备吃包子啦!" % name) while ...

  7. 正确设置-Dfile.encoding参数

    正确设置-Dfile.encoding参数 摘自:https://blog.csdn.net/youge/article/details/6178265 2011年02月11日 10:18:00 阅读 ...

  8. 解析json的方法

    解析json的两种方法:JS中的eval().JSON.parse eval不仅解析内容还会解析其中的方法,JSON.parse解析更安全.JSONLint可校验json的错误.

  9. Robot Framework - 基础关键字 BuiltIn 库(二)

    本篇教程,我们继续接着上篇内容进行讲解,我们本节教程讲解的是Robot Framework 机器人框架中的变量中使用判断.字符串的拼接.Evaluate的用法.调用Python文件.条件分支语句.以及 ...

  10. oracle数据库创建表

    实际工作中,在数据库中创建表是经常会用到的.我们今天呢?主要给大家来分享一下在数据库如何通过sql语句去创建表.其实,创建表很简单,只需要把数据库的数据类型和约束搞清楚就可以了,其他的就好说了.接下来 ...