大家都知道我们默认创建的Azure虚拟机的内部IP地址都是从DHCP自动获取的,如果自己创建了虚拟网络,那我们的虚拟机会获取我们创建虚拟网络子网中的IP地址,那么如果我们想要指定IP地址怎么办,自动获取的IP地址在哪种情况下可能会有问题
1、和传统我们部署的DHCP一样的,每台服务器自动获取的IP地址在重启服务器之后可能会发生变化,这种场景本身并不适合服务器使用;
2、Azure上的云服务要保留固定的公用虚拟IP地址,那么至少要求此云服务上至少有一个开启的虚拟机,假如云服务或虚拟机暂时关闭,再重新启动起来,那么此云服务上的公用IP地址就会改变。
所以我们需要为虚拟机配置固定IP地址,在这里我们先说怎样配置固定的内部IP;
首先我们先看一下当前创建的虚拟机的IP地址:
公用虚拟IP:168.63.203.48
内部IP:10.0.1.4
我们要改虚拟机的IP地址,需要使用Azure powershell
首先下载一个.publishsettings文件导入Azure powershell中为我们提供管理订阅的凭证
打开Azure
Powershell 输入以下命令下载publishsettings文件
国内版Azure:Get-AzurePublishSettingsFile
-Environment AzureChinaCloud
国际版Azure:Get-AzurePublishSettingsFile -Environment AzureCloud
我这里使用国际版做演示所以如图:
下一步将文件导入到Azure Powershell中,才能使用Azure powershell管理订阅,这里我为了方便把文件所有的空格都删除了,命令如下:
Import-AzurePublishSettingsFile -PublishSettingsFile <publishsetting文件路径>
下面指定订阅的管理账户
国内版:Add-AzureAccount
-Environment AzureChinacloud
国际版:Add-AzureAccount
-Environment Azurecloud
登录账户
使用以下命令为虚拟机指定IP地址
get-azurevm
-servicename arvincloud -name
vm01 |set-azuresubnet -subnetnames ‘subnet-1‘| set-azurestaticvnetip -ipaddress
10.0.1.8 | UPdate-azurevm
等待命令更新 显示succeeded
等待更新虚拟机并重启虚拟机之后 查看虚拟机IP地址,这里看到已成功更改为10.0.1.8
在portal上点击关闭虚拟机,等待虚拟机状态显示为已停止,再打开虚拟机,查看获取到的IP地址依然是更改之后的10.0.1.8,进虚拟机看也是一样,完成!