Windows Azure 配置实现虚拟机外网IP绑定(云服务)

简介:

我们上一篇介绍了如何对已存在的虚拟网络的外网IP做绑定,今天主要介绍配置实现虚拟机外网绑定,两者区别在于一个已存在,一个不存在,如果不存在的话,我们需要新建一个云服务,同时对新建的云服务做标记,标记后,可创建对应得虚拟机来完成外网IP绑定,具体见下:首先注意配置保留虚拟机外网IP需要注意以下事项

一、 操作前的注意事项:

1. 如果虚拟机要使用虚拟网络,只能在Regional Vnet中使用ReservedIP,已经有部署的基于地缘组的虚拟网络无法直接转换为Regional Vnet

2. 这个操作目前只能由PowerShell完成

3. 必须先建立一个ReservedIP,再创建虚拟机

4. 目前ReservedIP可以应用到挂载在区域虚拟网络下的虚拟机,为其保留公网IP

5. ReservedIP是计费的

关闭虚拟机不会释放掉保留的RIP,但是当云服务中所有虚拟机都删除后,RIP会被释放,但并不会被从订阅中删除,您可以用来绑定到其他云服务中的虚拟机。

二、 创建Regional Vnet:

在门户的虚拟网络中创建新的虚拟网络,由于目前默认创建为“区域虚拟网络”,所以直接在虚拟网络中创建即为区域虚拟网络。

三、下载并导入Publishsettings File

四、 创建ReservedIP

五、 在ReservedIP中创建新的虚拟机:

5.1指定当前的SubID和StorageAccount

1
  Set-AzureSubscription -SubscriptionName  "XXXX"  -CurrentStorageAccountName "

标黄处分别为SubID的名称,即是之前在Publishsettings里中修改的Name字段

后面的是存储账号的名称,如果对应的区域无存储账号,则需要新建一个

5.2列出当前的Image列表之后,列出当前的Image列表:

输入:

1
(Get-AzureVMImage)|Format-Table -Property imagename,PublishedDate –AutoSize

该操作会列出当前所有映像的名称和发布日期。默认情况下请选择时间最新的版本。请先复制imagename全文备用

六、 验证ReservedIP是否生效:

七、 删除ReservedIP:

由于ReservedIP是收费的,如果不想使用了,可以删除。 使用命令:Remove-AzureReservedIP -ReservedIPName "frankVIP" 

具体操作见习:

首先是下载及安装powershell

我们都知道windows azure的相关操作都是依赖于windows azure for powershell来做管理的,所以我们需要安装azure powershell

通过以下方法就可以下载windowsazure订阅

https://manage.windowsauzre.cn/publishsettings

image

然后下载并且安装windowsazure powershell,然后在windowsazure powershell下导入该订阅文件;

访问www.windowsazure.cn ---> 文档和资源---> azure 命令行接口---->windows安装就会提示下载windowsazure powershell

我们同样可以查看上面的windows powershell的相关文档

http://www.windowsazure.cn/documentation/articles/install-configure-powershell/

image

Azure powershell 下载链接,下载的时候选择0.9.3版本

https://github.com/Azure/azure-powershell/releases

image

具体方法可以浏览网页内部

下载后就是安装,根据提示安装完powershell即可;我们可以通过

1
(get-module azure).version

查单当前使用的azure powershell版本

注:执行以下命令需要使用版本为0.9.3的azure powershell,不能用0.9.4的azure powershell,如果安装了最新的卸载 后安装就版本

image

image

1
Import-AzurePublishSettingsFile 导入 .publishsettings 文件以供模块使用

image

因为我已经导入过了,所以再次导入会提示以下信息

image

如果在windowsazure powershell中导入多个订阅文件的话,我们需要选择默认的

我们首先通过get-azuresubscrpit 查看当前powershell下已导入的订阅文件

image

我们发现有两个,所以我们需要通过以下命令来设置默认的即可

image

1
Select-azuresubscript -subsciptionName  "xxxxx"  -default

然后我们可以

Get-azurevm 查看当前订阅性的所有vm信息

“ServiceName” 为云服务名字,”name“为虚机名字

image

我们首先需要创建一个Reservedip( 无法具体指定某个 IP ,此操作 AzureAzure Azure平台会为客户随机指定一个 平台会为客户随机指定一个 VIP) VIP) :

1
$ReservedIP = New-AzureReservedIP -ReservedIPName  "RVIP"  -Label  "testvip"  -Location  "China North"

-ReservedIPName的命名可以任意定义;在此我定义为:RVIP

-Label 为描述 在此我藐视为testvip

-Location 为区域,必须和虚拟网络同区

创建完成

image

我们通过get-azurereservedip查看具体的保留ip信息,如果还没有部署,sevicename(代表云服务名称),DeploymentName(代表虚拟名称)将为空

1
get-azurereservedip -ReservedipName RVIP

image

我们当然也可以通过get-azurereservedip 查看所有的reservedip

image

然后我们在reservedip中创建虚拟机

1指定当前的SubID和StorageAccount (否则创建虚拟机会报错)

1
Set-AzureSubscription -SubscriptionName  "XXXX"  -CurrentStorageAccountName  "YYYY"

标黄处分别为SubID的名称,即是之前在Publishsettings里中修改的Name字段

后面的是存储账号的名称,如果对应的区域无存储账号,则需要新建一个

查看存储账户及subscriptionname

image

image

1
Set-AzureSubscription -SubscriptionName  "MSDN Ultimate"  -CurrentStorageAccountName  "iternaldata"

image

2列出当前的Image列表,记录需要使用的映像的排列数字:输入:

1
(Get-AzureVMImage)|Format-Table -Property label,PublishedDate –AutoSize

该操作会列出当前所有映像名称和发布日期。默认会选择最新的版本

image

1
(Get-AzureVMImage)|Format-Table -Property imagename,PublishedDate –AutoSize

image

我们复制选择出自己选择的imasgename

1
55bc2b193643443bb879a78bda516fc8__Windows-Server-2012-R2-201502.01-zh.cn-127GB.vhd

确认信息后,开始在reservedip中部署虚拟机

如果需要创建windows虚拟机代码如下:

1
2
3
4
5
6
7
8
9
10
New-AzureVMConfig -Name  "windows" [F4] -InstanceSize Small -ImageName (get-azurevmimage)[29].ImageName[F5] | Add-AzureProvisioningConfig -Windows -AdminUsername gavin -Password Password2015 | New-AzureVM -ServiceName  "CustomCloud" [F6] –ReservedIPName  "RVIP" [F7] -Location  "China North" [F8]
Commented [F4]: 定义 该新的 VM 配置 文件名称
Commented [F5]: 指定 要使用的 ImageImageImageImageImage Name,Name,Name,Name,Name,把之前复制 的粘贴过来
Commented [F6]: 新建 云服务的名称
Commented [F7]: 指定 要应用的 ReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIP
Commented [F8]: 生效 的位置( 要与 之前 一致 ))
Commented [F10]: 定义 该新的 VM 配置 文件名称
Commented [F11]: 新建 云服务的名称
Commented [F12]: 指定 要应用的 ReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIPReservedIP
Commented [F13]: 生效 的位置( 要与 之前 一致 ))

我的代码如下:

1
New-AzureVMConfig -Name  "Winodws"  -InstanceSize Large -ImageName  "55bc2b193643443bb879a78bda516fc8__Windows-Server-2012-Datacenter-201502.01-zh.cn-127GB.vhd"  | Add-AzureProvisioningConfig -Windows -AdminUsername gavin -Password Password2015 | New-AzureVM -ServiceName  "CustomCloud"  –ReservedIPName  "RVIP"  -Location  "China North"

如需建立在vnet内部则在 -Location "XXX"后面再添加 –VnetName “vnetname” 虚拟网络名称

同时在Add-AzureProvisioningConig之前添加 | Set-AzureSubnet -SubnetName “subnetname” | 虚拟网络下的子网名称

因为我们是需要指定内部虚拟网络的,所以需要指定参数;具体执行见下:

1
New-AzureVMConfig -Name  "Winodws"  -InstanceSize Large -ImageName  "55bc2b193643443bb879a78bda516fc8__Windows-Server-2012-R2-201502.01-zh.cn-127GB.vhd"  | Set-AzureSubnet -SubnetName  "Subnet-1"  | Add-AzureProvisioningConfig -Windows -AdminUsername gavin -Password Password2015 | New-AzureVM -ServiceName  "CustomCloud"  –ReservedIPName  "RVIP"  -Location  "China North"  -VnetName  "iternal"

如果需要建立linux虚拟机代码如下

1
New-AzureVMConfig -Name  "Linux"  -InstanceSize Large -ImageName  "55bc2b193643443bb879a78bda516fc8__Windows-Server-2012-R2-201502.01-zh.cn-127GB.vhd"  | Add-AzureProvisioningConfig -Linux -LinuxUser gavin -Password Password2015 | New-AzureVM -ServiceName  "CustomCloud"  –ReservedIPName  "RVIP"  -Location  "China North"

如需建立在vnet内部则在 -Location "XXX"后面再添加 –VnetName “vnetname” 为虚拟网络

同时在Add-AzureProvisioningConig之前添加 | Set-AzureSubnet -SubnetName “subnetname” subnetname为虚拟网络下的子网名称

因为我们是需要指定内部虚拟网络的,所以需要指定参数;具体执行见下:

1
New-AzureVMConfig -Name  "Linux"  -InstanceSize Large -ImageName  "55bc2b193643443bb879a78bda516fc8__Windows-Server-2012-R2-201502.01-zh.cn-127GB.vhd"  | Set-AzureSubnet -SubnetName “Subnet-1” | Add-AzureProvisioningConfig -Linux -LinuxUser gavin -Password Password2015 | New-AzureVM -ServiceName  "CustomCloud"  –ReservedIPName  "RVIP"  -Location  "China North"  -VnetName  "iternal"

image

操作成后,我们接下来通过

1
get-azurereservedip

来显示当前已经配置的reservedip

image

然后在portal上进行查看

image

image

接下来就是验证reserverdip是否生效

首先是记录当前vip信息139.219.12.75

image

我们将此vm关机30分钟,关机后地址会释放

image

30分钟后,我们再次启动该vm,然后查看公用虚拟ip地址

image

那怎么删除Reservedip:

由于Reservedip是收费的,所以不想使用,可以删除;

删除前,我们可以通过以下命令查看当前订阅下有哪些Reservedip

1
get-azureReservedip

image

然后删除命名为RVIP的Reservedip

1
Remove-AzureReservedip -ReservedIPName  "RVIP"

需要注意的是:如果相关的云服务中又存在的虚拟机,需要先删除虚拟机才能删除Reservedip,否在会报错

image

我们删除该reservedip下的vm

image

删除后,我们再次尝试删除命名为RVIP的reservedip

1
Remove-AzureReservedip -ReservedIPName  "RVIP"

image

然后我们再次执行

1
get-azurereservedip

查看当前订阅下的所有reservedip

image



本文转自 高文龙 51CTO博客,原文链接:http://blog.51cto.com/gaowenlong/1675494,如需转载请自行联系原作者

相关文章
|
8月前
|
域名解析 API PHP
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
本文介绍了如何通过网络穿透技术让公网直接访问家庭电脑,充分发挥本地硬件性能。相比第三方服务受限于转发带宽,此方法利用自家宽带实现更高效率。文章详细讲解了端口映射教程,包括不同网络环境(仅光猫、光猫+路由器)下的设置步骤,并提供实时同步动态IP的两种方案:自建服务器或使用三方API接口。最后附上VM虚拟机全版本下载链接,便于用户在穿透后将服务运行于虚拟环境中,提升安全性与适用性。
471 7
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
285 0
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
10月前
|
安全 Linux 开发工具
【Azure 环境】Azure 虚拟机上部署 DeepSeek R1 模型教程(1.5B参数)【失败】
遇见错误一:operator torchvision::nms does not exist 遇见错误二:RuntimeError: Failed to infer device type
925 22
|
安全 Windows
【Azure Cloud Service】在Windows系统中抓取网络包 ( 不需要另外安全抓包工具)
通常,在生产环境中,为了保证系统环境的安全和纯粹,是不建议安装其它软件或排查工具(如果可以安装,也是需要走审批流程)。 本文将介绍一种,不用安装Wireshark / tcpdump 等工具,使用Windows系统自带的 netsh trace 命令来获取网络包的步骤
304 32
|
C# Windows
【Azure App Service】在App Service for Windows上验证能占用的内存最大值
根据以上测验,当使用App Service内存没有达到预期的值,且应用异常日志出现OutOfMemory时,就需要检查Platform的设置是否位64bit。
223 11
|
PHP Windows
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
275 1
|
PHP 开发工具 git
【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
202 1
|
网络安全 API 数据安全/隐私保护
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
188 0
|
Shell PHP Windows
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Windows directory.
177 0
|
应用服务中间件 nginx Windows
【Azure 应用服务】在App Service for Windows中实现反向代理
【Azure 应用服务】在App Service for Windows中实现反向代理
179 0