适用于 Azure 虚拟网络的常见 PowerShell 命令
如果想要创建虚拟机,需要创建虚拟网络或了解可在其中添加 VM 的现有虚拟网络。 通常情况下,创建 VM 时,还需考虑创建本文所述资源。
有关安装最新版 Azure PowerShell、选择订阅和登录到帐户的信息,请参阅如何安装和配置 Azure PowerShell。
如果运行本文中的多个命令,以下一些变量可能将对你有用:
- $location - 网络资源的位置。 可以使用 Get-AzureRmLocation 查找适合你的地理区域。
- $myResourceGroup - 网络资源所在的资源组名称。
创建网络资源
| 任务 | 命令 |
|---|---|
| 创建子网配置 | $subnet1 = New-AzureRmVirtualNetworkSubnetConfig -Name "mySubnet1" -AddressPrefix XX.X.X.X/XX $subnet2 = New-AzureRmVirtualNetworkSubnetConfig -Name "mySubnet2" -AddressPrefix XX.X.X.X/XX 典型的网络可能包含用于面向 Internet 的负载均衡器的子网,以及用于内部负载均衡器的独立子网。 |
| 创建虚拟网络 | $vnet = New-AzureRmVirtualNetwork -Name "myVNet" -ResourceGroupName $myResourceGroup -Location $location -AddressPrefix XX.X.X.X/XX -Subnet $subnet1, $subnet2 |
| 测试唯一域名 | Test-AzureRmDnsAvailability -DomainNameLabel "myDNS" -Location $location
可以为公共 IP 资源指定一个 DNS 域名,以便在 Azure 托管的 DNS 服务器中创建 domainname.location.chinacloudapp.cn 到公共 IP 地址的映射。 字段只能包含字母、数字和连字符。 第一个和最后一个字符必须是字母或数字,域名在其 Azure 位置内必须是唯一的。 如果返回 True ,则建议的名称是全局唯一的。 |
| 创建公共 IP 地址 | $pip = New-AzureRmPublicIpAddress -Name "myPublicIp" -ResourceGroupName $myResourceGroup -DomainNameLabel "myDNS" -Location $location -AllocationMethod Dynamic
公共 IP 地址使用前面测试过的并由负载均衡器前端配置使用的域名。 |
| 创建前端 IP 配置 | $frontendIP = New-AzureRmLoadBalancerFrontendIpConfig -Name "myFrontendIP" -PublicIpAddress $pip
前端配置包括前面针对传入网络流量创建的公共 IP 地址。 |
| 创建后端地址池 | $beAddressPool = New-AzureRmLoadBalancerBackendAddressPoolConfig -Name "myBackendAddressPool"
提供可通过网络接口访问的负载均衡器后端内部地址。 |
| 创建探测 | $healthProbe = New-AzureRmLoadBalancerProbeConfig -Name "myProbe" -RequestPath 'HealthProbe.aspx' -Protocol http -Port 80 -IntervalInSeconds 15 -ProbeCount 2
包含用于检查后端地址池中虚拟机实例的可用性的运行状况探测。 |
| 创建负载均衡规则 | $lbRule = New-AzureRmLoadBalancerRuleConfig -Name HTTP -FrontendIpConfiguration $frontendIP -BackendAddressPool $beAddressPool -Probe $healthProbe -Protocol Tcp -FrontendPort 80 -BackendPort 80
包含可将负载均衡器上的公共端口分配到后端地址池中的端口的规则。 |
| 创建入站 NAT 规则 | $inboundNATRule = New-AzureRmLoadBalancerInboundNatRuleConfig -Name "myInboundRule1" -FrontendIpConfiguration $frontendIP -Protocol TCP -FrontendPort 3441 -BackendPort 3389
包含将负载均衡器上的公共端口映射到后端地址池中特定虚拟机的端口的规则。 |
| 创建负载均衡器 | $loadBalancer = New-AzureRmLoadBalancer -ResourceGroupName $myResourceGroup -Name "myLoadBalancer" -Location $location -FrontendIpConfiguration $frontendIP -InboundNatRule $inboundNATRule -LoadBalancingRule $lbRule -BackendAddressPool $beAddressPool -Probe $healthProbe |
| 创建网络接口 | $nic1= New-AzureRmNetworkInterface -ResourceGroupName $myResourceGroup -Name "myNIC" -Location $location -PrivateIpAddress XX.X.X.X -Subnet $subnet2 -LoadBalancerBackendAddressPool $loadBalancer.BackendAddressPools[0] -LoadBalancerInboundNatRule $loadBalancer.InboundNatRules[0]
创建一个使用前面所创建公共 IP 地址和虚拟网络子网的网络接口。 |
获取有关网络资源的信息
| 任务 | 命令 |
|---|---|
| 列出虚拟网络 | Get-AzureRmVirtualNetwork -ResourceGroupName $myResourceGroup
列出资源组中的所有虚拟网络。 |
| 获取有关虚拟网络的信息 | Get-AzureRmVirtualNetwork -Name "myVNet" -ResourceGroupName $myResourceGroup |
| 列出虚拟网络中的子网 | Get-AzureRmVirtualNetwork -Name "myVNet" -ResourceGroupName $myResourceGroup | Select Subnets |
| 获取有关子网的信息 | Get-AzureRmVirtualNetworkSubnetConfig -Name "mySubnet1" -VirtualNetwork $vnet
获取指定虚拟网络中子网的相关信息。 $vnet 值表示 Get-AzureRmVirtualNetwork 返回的对象。 |
| 列出 IP 地址 | Get-AzureRmPublicIpAddress -ResourceGroupName $myResourceGroup
列出资源组中的公共 IP 地址。 |
| 列出负载均衡器 | Get-AzureRmLoadBalancer -ResourceGroupName $myResourceGroup
列出资源组中的所有负载均衡器。 |
| 列出网络接口 | Get-AzureRmNetworkInterface -ResourceGroupName $myResourceGroup
列出资源组中的所有网络接口。 |
| 获取有关网络接口的信息 | Get-AzureRmNetworkInterface -Name "myNIC" -ResourceGroupName $myResourceGroup
获取有关特定网络接口的信息。 |
| 获取网络接口的 IP 配置 | Get-AzureRmNetworkInterfaceIPConfig -Name "myNICIP" -NetworkInterface $nic
获取指定网络接口的 IP 配置的相关信息。 $nic 值表示 Get-AzureRmNetworkInterface 返回的对象。 |
管理网络资源
| 任务 | 命令 |
|---|---|
| 将子网添加到虚拟网络 | Add-AzureRmVirtualNetworkSubnetConfig -AddressPrefix XX.X.X.X/XX -Name "mySubnet1" -VirtualNetwork $vnet
将子网添加到现有虚拟网络。 $vnet 值表示 Get-AzureRmVirtualNetwork 返回的对象。 |
| 删除虚拟网络 | Remove-AzureRmVirtualNetwork -Name "myVNet" -ResourceGroupName $myResourceGroup
从资源组中删除指定的虚拟网络。 |
| 删除网络接口 | Remove-AzureRmNetworkInterface -Name "myNIC" -ResourceGroupName $myResourceGroup
从资源组中删除指定的网络接口。 |
| 删除负载均衡器 | Remove-AzureRmLoadBalancer -Name "myLoadBalancer" -ResourceGroupName $myResourceGroup
从资源组中删除指定的负载均衡器。 |
| 删除公共 IP 地址 | Remove-AzureRmPublicIpAddress-Name "myIPAddress" -ResourceGroupName $myResourceGroup
从资源组中删除指定的公共 IP 地址。 |
后续步骤
- 使用创建 VM 时创建的网络接口。
- 了解如何创建具有多个网络接口的 VM。
立即访问http://market.azure.cn
适用于 Azure 虚拟网络的常见 PowerShell 命令的更多相关文章
- Windows Azure 虚拟网络中虚拟机的网络隔离选项
最近我们发布了一份<Windows网络安全白皮书>(单击此处下载),文中深入说明了客户可以如何利用该平台的本地功能,为他们的信息资产提供最好的保护. 由首席顾问Walter Myer ...
- 使用 Azure CLI 管理 Azure 虚拟网络和 Linux 虚拟机
Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程将指导读者部署两个虚拟机,并为这些 VM 配置 Azure 网络. 本教程中的示例假设 VM 将要托管包含数据库后端的 Web ...
- Windows Azure 虚拟网络配置(Point to Site)
说明:本文以Azure国际版为例,中国版在网络位置会存在一定差异. 1. 场景 虚拟网络为我们提供了在Windows Azure云计算环境上构建网络定义的能力,通过虚拟网络,我们可以方便地将Windo ...
- 对 Azure 虚拟网络网关的改进
YU-SHUN WANG Azure 网络高级项目经理 在 2014 年欧洲 TechEd 大会上,我们宣布了对Azure 虚拟网络网关的多项改进: 1. 高性能网关 SKU 2. Azure 虚 ...
- 通过基于 Linux 的软件 VPN 设备连接到 Windows Azure 虚拟网络
摘要 本文章将说明如何通过使用软件 VPN 设备,将本地办公室或站点连接到 Windows Azure 虚拟网络.在构建原型或在构建可以尽快利用云的"开发/测试"工作流时,软件VP ...
- Windows Azure 虚拟网络配置(Site to Site)
上篇我们创建了Point to Site的虚拟网络连接,来满足客户端到云端网络的连接.本篇文章我们将创建Site to Site的虚拟网络连接,以满足本地网络到云端的网络连接. 创建与配置过程与上篇较 ...
- 使用 Azure PowerShell 管理 Azure 虚拟网络和 Windows 虚拟机
Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程介绍了如何在虚拟网络中创建多个虚拟机 (VM),以及如何在虚拟机之间配置网络连接. 你将学习如何执行以下操作: 创建虚拟网络 创 ...
- 如何实现Azure虚拟网络中点到站VPN的自动重连
在Windows Azure早期版本中,用户要在某台Azure平台之外的机器与Azure平台内部的机器建立专用连接,可以借助Azure Connect这个功能.当前的Azure版本,已经没有Az ...
- Azure导出所有用户权限---powershell命令
直接运行脚本 #requires -Version 3.0 -Modules AzureRM.Resourcesparam( [switch] $GroupRolesB ...
随机推荐
- Tensflow的equal函数
一.函数 tf.equal() equal( x, y, name=None ) tf.equal(A, B)是对比这两个矩阵或者向量的相等的元素,如果是相等的那就返回True,反正返回False,返 ...
- xml与Excel转换
使用Python将如下xml格式转换为Excel格式: xml转为xls格式文件: xml格式如下: <?xml version="1.0" encoding="U ...
- 爽爽的GSON解析
Gson解析的各种详细用法我就不说了. 说说我在项目具体遇到的. 当前公司的JSON解析基本上通过阿里的fastjson,以及JSONObject,JSONArray来解析.那种让我无语的感觉不是言语 ...
- Android Bug分析系列:第三方平台安装app启动后,home键回到桌面后点击app启动时会再次启动入口类bug的原因剖析
前言 前些天,测试MM发现了一个比较奇怪的bug. 具体表现是: 1.将app包通过电脑QQ传送到手机QQ上面,点击安装,安装后选择打开app (此间的应用逻辑应该是要触发 [闪屏页Activity] ...
- 【随笔】nginx add_header指令的使用
nginx配置文件通过使用add_header指令来设置response header. 具体方法如下: add_header key value add_header Cache-Control n ...
- (转)eclipse上传项目到码云
把Eclipse项目上传到码云的步骤: 1.登录码云:新建项目 2.输入项目名: 3.空项目创建成功如下图: 4.右键点击Eclipse的项目,选择“Team”—————->“Share Pro ...
- 单例模式写MySQL model类,简单的增、删、改、查
单例模式的用途,可用于数据库操作 <?php Class Db { static private $whe;//条件 static private $tab;//表名 static privat ...
- [Luogu 3613] 睡觉困难综合征
Description 给定一棵 \(n\) 个点的树,每个点上有位运算 \(opt\) 和一个权值 \(x\),位运算有 &,|,^ 三种. 要求支持: 修改点 \(v\) 的 \(opt\ ...
- activeX
对外接口和classid在idl文件中,接口功能实现在ctrl类中实现
- C#服务端判断客户端socket是否已断开的方法
刚开始,用Socket类的Connected属性来实现,却发现行不通,connected只表示 是在上次 还是 操作时连接到远程主机.如果在这之后[连接的另一方]断开了,它还一直返回true, 除非 ...