Windows Azure Virtual Network (5) 设置Azure Virtual Machine固定Private IP

简介:

 《Windows Azure Platform 系列文章目录

   

  注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪互联运维的Azure China,请参考下面的连接。

  Azure China (8) 使用Azure PowerShell创建虚拟机,并设置固定Virtual IP Address和Private IP 

 

  熟悉Azure Virtual Network的读者都知道,如果我们设置了Azure Virtual Network (VNet)的IP Rang是xxx.xxx.0.0 - xxx.xxx.0.255

  那第一个加入VNet的虚拟机Private IP为0.4(0.0到0.3的IP地址被系统占用),第二个加入VNet的虚拟机Private IP为0.5,以后加入VNet的虚拟机Private IP地址为在已创建的Azure Private IP上加1。

 

  但是这样会产生3个问题:

  1.不能手动设置Private IP地址,Private IP是系统自动生成的,无法预先设置。

  2.无法修改Private IP地址。在系统自动分配Private IP之后,想手动修改Private IP也是不可能的。

  3.无法固定Private IP地址。在某些情况下,Azure管理人员关闭了VM,造成VM的状态为Stop(Deallocate)的情况下,再次启动Azure VM会造成Private IP改变。

 

  最新的PowerShell (版本号: PowerShell cmdlets for Windows Azure Version 0.7.3)命令增加了新的PowerShell命令,允许用户设置Azure VM Private IP。这4个命令是:

  -  Get-AzureStaticVNetIP

  -  Set-AzureStaticVNetIP

  -  Remove-AzureStaticVNetIP

  -  Test-AzureStaticVNetIP

  接下来,笔者会详细介绍以上的PowerShell命令。

  在开始演示之前,请按照[New Portal]Windows Azure Virtual Machine (16) 使用Azure PowerShell创建Azure Virtual Machine中的内容,通过PowerShell将本地证书上传至Azure云端。

 

  在上一章内容中,笔者已经创建Azure Virtual Network:MyVNet。同时创建了2台Azure VM,分别为:

IP 说明
192.168.0.0-192.168.0.3 Azure Virtual Network 保留
192.168.0.4 AD Server
192.168.0.5 Web Server 001

  在这里,笔者将介绍如何创建第2台Web服务器,即Web Server 002进行负载均衡,并且观察Web Server 002的Private IP设置。

 

  1.确认某个Private IP是否可用

  我们要用到的命令是Test-AzureStaticVNetIP:

Test-AzureStaticVNetIP –VNetName <VNetName> –IPAddress <Address>

  比如我要查询MyVNet这个虚拟网络中,Private IP为192.168.0.4是否可用,PowerShell命令为:

Test-AzureStaticVNetIP –VNetName MyVNet –IPAddress 192.168.0.4

  执行结果为:

  

  可以看到IsAvailable值为False(因为192.168.0.4已经被AD Server占用了)。

  然后Azure会在AvailableAddresses中,提供其他可用的IP地址,比如192.168.0.6,192.168.0.7等等

  

  2.创建新的虚拟机,同时设置Private IP

  我们用到的命令是Set-AzureStaticVNetIP

Set-AzureStaticVNetIP -IPAddress  <YourIPAddress>

 

来创建个更加复杂的Azure Virtual Machine

首先我们指定默认的存储,在Powershell输入以下命令:

Set-AzureSubscription -SubscriptionName 'Windows Azure MSDN - Visual Studio Ultimate' -CurrentStorageAccount 'leivms'

   按照以下规格创建虚拟机:

-  DNS Name为LeiWeb (需要负载均衡)

-  显示名称为LeiWeb002

-  VM Size为Basic_A1 (1Core/1.75GB)

-  VM Image为Windows Server 2012 DataCenter 201403.01-en.us

-  Windows用户名为leizhang,密码为Pass@word1

-  storage account为leivms

-  地缘组为EastAsiaGroup

-  虚拟网络为 MyVNet,子网为Subnet-1

-  Private IP设置为192.168.0.7

然后我们输入以下命令:

复制代码
$vm = New-AzureVMConfig -Name 'LeiWeb002' -InstanceSize Basic_A1 -ImageName (Get-AzureVMImage)[52].ImageName 

$vm | Add-AzureProvisioningConfig `  -Windows ` -AdminUsername 'leizhang' `  -Password 'Pass@word1'

$vm | Set-AzureSubnet -SubnetNames 'Subnet-1' |  Set-AzureStaticVNetIP -IPAddress 192.168.0.7

$vm | New-AzureVM -ServiceName 'LeiWeb' -VNetName 'MyVNet'
复制代码

  执行结果,如下图:

  

  我们也可以在Management Portal上查看到Azure正在开始创建LeiWeb002这台虚拟机,截图下图:

  

  执行完毕后,我们可以查看到虚拟机LeiWeb002的Private IP设置为 192.168.0.7。如下图:

  

 

  另外告诉各位读者一个特大喜讯:如果你在VNet中的Virtual Machine已经通过Set-AzureStaticVNetIP命令,设置了Private IP。

  即使你的VM关机后状态变成Stop_Deallocate,重新开机后这台VM的Private IP还是不会改变的。 O YEAH!!!

 

  3.修改Private IP

  这里用到的命令为Set-AzureStaticVNetIP

Set-AzureStaticVNetIP -IPAddress <NewIPAddress>

  之前笔者创建的LeiWeb002的Private IP为192.168.0.7,如果需要重新设置怎么办?

  LeiWeb002这台虚拟机的信息如下:

  -  DNS: LeiWeb.cloudapp.net

  -  Virtual Machine: LeiWeb002

  -  设置新的Private IP : 192.168.0.6

  然后执行以下PowerShell命令:

Get-AzureVM -ServiceName LeiWeb -Name LeiWeb002 | Set-AzureStaticVNetIP -IPAddress 192.168.0.6 | Update-AzureVM

  执行结果截图如下:

  

 

  我们可以通过Management Portal查看LeiWeb002这台虚拟机的Private IP已经被修改为192.168.0.6

  

  

  最后我们回顾一下配置的虚拟机信息:

 

IP 说明
192.168.0.0-192.168.0.3 Azure Virtual Network 保留
192.168.0.4 AD Server
192.168.0.5 Web Server 001

192.168.0.6 Web Server 002




本文转自Lei Zhang博客园博客,原文链接:http://www.cnblogs.com/threestone/p/3802747.html,如需转载请自行联系原作者

目录
相关文章
|
13天前
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
13天前
|
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. 错误
|
13天前
|
网络安全 API 数据安全/隐私保护
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
【Azure App Service】.NET代码实验App Service应用中获取TLS/SSL 证书 (App Service Windows)
|
13天前
|
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.
|
3月前
|
Unix Linux 虚拟化
虚拟机VMware知识积累
虚拟机VMware知识积累
|
16天前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
29 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
18天前
|
编解码 Linux 虚拟化
超详细VMware虚拟机安装Win10操作系统过程图解
这篇文章提供了一个详细的VMware虚拟机安装Windows 10操作系统的图解教程,包括了从创建虚拟机到安装操作系统的全过程,以及安装后的一些基本设置,如屏幕分辨率调整等。作者还提到了后续会分享关于磁盘分区的创建过程。
超详细VMware虚拟机安装Win10操作系统过程图解
|
9天前
|
虚拟化
vmware虚拟机使用主机代理访问谷歌
vmware虚拟机使用主机代理访问谷歌
|
2月前
|
存储 SQL 运维
服务器数据恢复—Isilon存储误删除vmware虚拟机的数据恢复案例
Isilon存储使用的是分布式文件系统OneFS。在Isilon存储集群里面每个节点均为单一的OneFS文件系统,所以Isilon存储在进行横向扩展的同时不会影响数据的正常使用。Isilon存储集群所有节点提供相同的功能,节点与节点之间没有主备之分。当用户向Isilon存储集群中存储文件时,OneFS文件系统层面将文件划分为128K的片段分别存放到不同的节点中,而节点层面将128K的片段分成8K的小片段分别存放到节点的不同硬盘中。用户文件的Indoe信息、目录项及数据MAP则会分别存储在所有节点中,这样可以确保用户不管从哪个节点都可以访问到所有数据。Isilon存储在初始化时会让用户选择相应的
55 12