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,如需转载请自行联系原作者

相关文章
|
2月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows Server 2012 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows Server 2012 操作系统保姆级教程(附链接)
|
2月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows 7 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows 7 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows 7 操作系统保姆级教程(附链接)
|
2月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows XP 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows XP 操作系统保姆级教程(附链接)
|
5月前
|
Oracle 关系型数据库 Linux
windows 11 hyper-v中oracle linux虚拟机中添加硬盘
在windows 11自带的hyper-v虚拟机中添加硬盘,并分区
71 6
|
4月前
|
Linux 虚拟化 数据安全/隐私保护
【Linux】VMware安装虚拟机- Windows + Linux
【1月更文挑战第20天】【Linux】VMware安装虚拟机- Windows + Linux
|
5月前
|
Web App开发 Java Linux
Nexus【部署 02】最新版本 nexus-3.35.0-02-unix.tar.gz 安装配置启动及测试(JDK版本+虚拟机参数配置说明)
Nexus【部署 02】最新版本 nexus-3.35.0-02-unix.tar.gz 安装配置启动及测试(JDK版本+虚拟机参数配置说明)
141 0
|
2月前
|
PHP
百度虚拟机 bcloud_nginx_user.conf配置
百度虚拟机 bcloud_nginx_user.conf配置
24 0
|
6天前
|
安全 虚拟化 Windows
手把手教你如何在虚拟机上安装Windows 10
手把手教你如何在虚拟机上安装Windows 10
|
6天前
|
NoSQL Linux Redis
Redis的介绍,以及Redis的安装(本机windows版,虚拟机Linux版)和Redis常用命令的介绍
Redis的介绍,以及Redis的安装(本机windows版,虚拟机Linux版)和Redis常用命令的介绍
22 0
|
6天前
|
前端开发 Java 应用服务中间件
在虚拟机的Windows操作系统中:通过Jar方式若依项目,以及在外部的访问!
在虚拟机的Windows操作系统中:通过Jar方式若依项目,以及在外部的访问!

热门文章

最新文章