使用 Azure PowerShell 管理 Azure 虚拟网络和 Windows 虚拟机

Azure 虚拟机使用 Azure 网络进行内部和外部网络通信。 本教程介绍了如何在虚拟网络中创建多个虚拟机 (VM),以及如何在虚拟机之间配置网络连接。 你将学习如何执行以下操作:

创建虚拟网络

创建虚拟网络子网

使用网络安全组控制网络流量

查看流量规则的实际运行情况

本教程需要 Azure PowerShell 模块 3.6 或更高版本。 运行Get-Module -ListAvailable AzureRM即可查找版本。 如果需要升级,请参阅安装 Azure PowerShell 模块

创建 VNet

VNet 是自己的网络在云中的表示形式。 VNet 是对专用于订阅的 Azure 云进行的逻辑隔离。 在 VNet 中,可以找到子网、连接到这些子网的规则,以及从 VM 到子网的连接。

创建任何其他 Azure 资源前,需要使用New-AzureRmResourceGroup创建一个资源组。 以下示例在 ChinaEast 位置创建名为 myRGNetwork 的资源组:

PowerShell复制

New-AzureRmResourceGroup-ResourceGroupNamemyRGNetwork-LocationChinaEast

子网是 VNet 的子资源,有助于使用 IP 地址前缀在 CIDR 块中定义地址空间的段。 可以将 NIC 添加到子网,并连接到 VM,以便为各种工作负荷提供连接。

使用New-AzureRmVirtualNetworkSubnetConfig创建子网:

PowerShell复制

$frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig`-NamemyFrontendSubnet `-AddressPrefix10.0.0.0/24

通过New-AzureRmVirtualNetwork使用 myFrontendSubnet 创建名为 myVNet 的 VNET:

PowerShell复制

$vnet=New-AzureRmVirtualNetwork`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-NamemyVNet `-AddressPrefix10.0.0.0/16`-Subnet$frontendSubnet

创建前端 VM

VM 需要使用虚拟网络接口 (NIC) 在 VNet 中进行通信。 由于将通过 Internet 访问 myFrontendVM,因此它也需要公共 IP 地址。

使用New-AzureRmPublicIpAddress创建一个公共 IP 地址:

PowerShell复制

$pip=New-AzureRmPublicIpAddress`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-AllocationMethodStatic `-NamemyPublicIPAddress

使用New-AzureRmNetworkInterface创建 NIC:

PowerShell复制

$frontendNic=New-AzureRmNetworkInterface`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-NamemyFrontendNic `-SubnetId$vnet.Subnets[0].Id `-PublicIpAddressId$pip.Id

使用Get-Credential设置 VM 上管理员帐户所需的用户名和密码。 若要使用这些凭据连接到 VM,请执行其他步骤:

PowerShell复制

$cred=Get-Credential

使用New-AzureRmVMConfigSet-AzureRmVMOperatingSystemSet-AzureRmVMSourceImageSet-AzureRmVMOSDiskAdd-AzureRmVMNetworkInterfaceNew-AzureRmVM创建 VM。

PowerShell复制

$frontendVM=New-AzureRmVMConfig`-VMNamemyFrontendVM `-VMSizeStandard_D1$frontendVM=Set-AzureRmVMOperatingSystem`-VM$frontendVM`-Windows`-ComputerNamemyFrontendVM `-Credential$cred`-ProvisionVMAgent`-EnableAutoUpdate$frontendVM=Set-AzureRmVMSourceImage`-VM$frontendVM`-PublisherNameMicrosoftWindowsServer `-OfferWindowsServer `-Skus2016-Datacenter `-Versionlatest$frontendVM=Set-AzureRmVMOSDisk`-VM$frontendVM`-NamemyFrontendOSDisk `-DiskSizeInGB128`-CreateOptionFromImage `-CachingReadWrite$frontendVM=Add-AzureRmVMNetworkInterface`-VM$frontendVM`-Id$frontendNic.IdNew-AzureRmVM`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-VM$frontendVM

安装 Web 服务器

可使用远程桌面会话在 myFrontendVM 上安装 IIS。 需要获取 VM 的公共 IP 地址才能对其进行访问。

可使用Get-AzureRmPublicIPAddress获取 myFrontendVM 的公共 IP 地址。 以下示例获取前面创建的 myPublicIPAddress 的 IP 地址:

PowerShell复制

Get-AzureRmPublicIPAddress`-ResourceGroupNamemyRGNetwork `-NamemyPublicIPAddress | select IpAddress

请记下此 IP 地址,以便在后续步骤中使用。

使用以下命令创建与 myFrontendVM 的远程桌面会话。 将替换为你之前记录的地址。 出现提示时,输入创建 VM 时使用的凭据。

复制

mstsc /v:

登录 myFrontendVM 后即可使用单行 PowerShell 安装 IIS,并启用本地防火墙规则以允许 Web 流量。 打开 VM 上 RDP 会话中的 PowerShell 提示符并运行以下命令:

使用Install-WindowsFeature运行安装 IIS web 服务器的自定义脚本扩展:

PowerShell复制

Install-WindowsFeature-nameWeb-Server-IncludeManagementTools

现在可使用公共 IP 地址浏览到 VM 来查看 IIS 站点。

管理内部流量

网络安全组 (NSG) 包含一系列安全规则,这些规则可允许或拒绝流向连接到 VNet 的资源的网络流量。 NSG 可与子网或附加到 VM 的单个 NIC 相关联。 使用 NSG 规则打开或关闭通过端口到 VM 的访问。 创建 myFrontendVM 后,会自动打开入站端口 3389 进行 RDP 连接。

可使用 NSG 配置 VM 的内部通信。 本部分介绍了如何在网络中创建附加子网,并向其分配 NSG 以允许端口 1433 上 myFrontendVM 到 myBackendVM 的连接。 然后,在创建子网时将其分配给 VM。

可通过为后端子网创建 NSG,将内部流量限制为仅从 myFrontendVM 流向 myBackendVM。 以下示例使用New-AzureRmNetworkSecurityRuleConfig创建名为 myBackendNSGRule 的 NSG 规则:

PowerShell复制

$nsgBackendRule=New-AzureRmNetworkSecurityRuleConfig`-NamemyBackendNSGRule `-ProtocolTcp `-DirectionInbound `-Priority100`-SourceAddressPrefix10.0.0.0/24`-SourcePortRange* `-DestinationAddressPrefix* `-DestinationPortRange1433`-AccessAllow

使用New-AzureRmNetworkSecurityGroup添加名为myBackendNSG的新网络安全组:

PowerShell复制

$nsgBackend=New-AzureRmNetworkSecurityGroup`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-NamemyBackendNSG `-SecurityRules$nsgBackendRule

添加后端子网

使用Add-AzureRmVirtualNetworkSubnetConfig将 myBackEndSubnet 添加到 myVNet:

PowerShell复制

Add-AzureRmVirtualNetworkSubnetConfig`-NamemyBackendSubnet `-VirtualNetwork$vnet`-AddressPrefix10.0.1.0/24`-NetworkSecurityGroup$nsgBackendSet-AzureRmVirtualNetwork-VirtualNetwork$vnet$vnet=Get-AzureRmVirtualNetwork`-ResourceGroupNamemyRGNetwork `-NamemyVNet

创建后端 VM

创建后端 VM 的最简单方法是使用 SQL Server 映像。 本教程仅使用数据库服务器创建 VM,但不提供有关访问数据库的信息。

创建 myBackendNic:

PowerShell复制

$backendNic=New-AzureRmNetworkInterface`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-NamemyBackendNic `-SubnetId$vnet.Subnets[1].Id

使用 Get-Credential 设置 VM 上管理员帐户所需的用户名和密码:

PowerShell复制

$cred=Get-Credential

创建 myBackendVM:

PowerShell复制

$backendVM=New-AzureRmVMConfig`-VMNamemyBackendVM `-VMSizeStandard_D1$backendVM=Set-AzureRmVMOperatingSystem`-VM$backendVM`-Windows`-ComputerNamemyBackendVM `-Credential$cred`-ProvisionVMAgent`-EnableAutoUpdate$backendVM=Set-AzureRmVMSourceImage`-VM$backendVM`-PublisherNameMicrosoftSQLServer `-OfferSQL2016SP1-WS2016 `-SkusEnterprise `-Versionlatest$backendVM=Set-AzureRmVMOSDisk`-VM$backendVM`-NamemyBackendOSDisk `-DiskSizeInGB128`-CreateOptionFromImage `-CachingReadWrite$backendVM=Add-AzureRmVMNetworkInterface`-VM$backendVM`-Id$backendNic.IdNew-AzureRmVM`-ResourceGroupNamemyRGNetwork `-LocationChinaEast `-VM$backendVM

虽然使用的映像安装了 SQL Server,但本教程中不会使用 SQL Server。 安装它是为了演示如何配置 VM 来处理 Web 流量以及如何配置 VM 来处理数据库管理。

后续步骤

本教程介绍了如何创建和保护与虚拟机相关的 Azure 网络。

创建虚拟网络

创建虚拟网络子网

使用网络安全组控制网络流量

查看正在运行的流量规则

请继续学习下一教程,了解如何使用 Azure 备份监视和保护虚拟机上的数据。 。

在 Azure 中备份 Windows 虚拟机

立即访问http://market.azure.cn

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容