适用于 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 ...
随机推荐
- C# 对密码等数据进行对称性加密解密
类: /// <summary> /// DESEncrypt加密解密算法. /// </summary> public class DESEncrypt { private ...
- Odoo : ORM API
记录集 model的数据是通过数据集合的形式来使用的,定义在model里的函数执行时它们的self变量也是一个数据集合 class AModel(models.Model): _name = 'a.m ...
- 批量去除文件的BOM头
<?php class KillBom{ //定义扩展名 public static $m_ext = ['txt','php','js','css']; /** * 传入一个任意文件,自动区分 ...
- eclipse svn 忽略 target目录
这个build失败的解决方案就是不要把你项目的 target目录放在src repository 里面,还有 .project 和 .classpath最好也别放到src repository 里. ...
- java使用google开源工具实现图片压缩
前言 作为靠谱的java服务端程序员,图片这个事情一直是个头疼的事情. 现在很多网站上,都有上传图片这个功能,而图片对于现在的很多手机来说,拍摄出来的都是高清图片,分辨率也是相当的高,当然占用的存储空 ...
- SQL 必知必会·笔记<9>使用子查询
子查询(subquery),即嵌套在其他查询中的查询. 1. 利用子查询进行过滤 SELECT 语句中,子查询总是从内向外处理.示例: SELECT cust_name, cust_contact F ...
- MySQL分布式jdbc连接
参考文档: https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-multi-host-connections.html 服务器故障转移 连 ...
- python中逻辑运算符“+”的特殊之处
num = num + num 与 num += num 的区别(其他语言中这两种方式可以划等号,但是python中不可以): num = num + num: num = [100] def tes ...
- java中Map集合的理解
Map |--Hashtable:底层是哈希表数据结构,不可以存入null键null值.该集合是线程同步的.jdk1.0.效率低. |--HashMap:底层是哈希表数据结构,允许使用 null 值和 ...
- (转)C# 快速高效率复制对象的方式
1.需求 在项目代码中经常需要把对象复制到新的对象中,或者把属性名相同的值复制一遍. 比如: public class Student { public int Id { get; set; } pu ...