Azure:如何更改Resource Manager托管VM / IP的空闲超时

时间:2015-11-27 08:50:01

标签: powershell azure tcp

我很惊讶地发现Azure强制执行一个简单的TCP连接超时,默认设置为4分钟。我需要更改此项,因为我们正在运行长时间运行的TCP连接,并且不应发送任何通信以节省嵌入式设备的电源。

网上有一些指南(https://azure.microsoft.com/en-us/blog/new-configurable-idle-timeout-for-azure-load-balancer/),但它们都涵盖了使用服务管理器(Classic)配置虚拟机的情况。因此,在Classic中更改此功能不是问题,但我们已经在运行通过资源管理器配置的VM。

跑完后:

Switch-AzureMode AzureResourceManager
Get-AzureVM -Name "MyVM" -ResourceGroup "MyGroup" | Get-AzurePublicIpAddress 

我获取了IP的配置打印输出,IdleTimeoutInMinutes设置为默认4

使用以下方式更改:

Get-AzureVM -Name "MyVM" -ResourceGroup "MyGroup" | Get-AzurePublicIpAddress | Set-AzurePublicIpAddress -IdleTimeoutInMinutes 29

失败:A parameter cannot be found that matches parameter name `IdleTimeoutInMinutes`

如何前进的指南或建议将不胜感激。我应该删除IP并创建一个新IP吗?肯定有更好的方法。

1 个答案:

答案 0 :(得分:3)

尝试使用1.x cmdlet:

$p = Get-AzureRmPublicIpAddress -Name MyIP -ResourceGroupName MyGroup
$p.IdleTimeoutInMinutes = 29
Set-AzureRmPublicIpAddress -PublicIpAddress $p

或者,如果您使用旧的0.9.x cmdlet:

Switch-AzureMode
$p = Get-AzurePublicIpAddress -Name MyIP -ResourceGroupName MyGroup
$p.IdleTimeoutInMinutes = 29
Set-AzurePublicIpAddress -PublicIpAddress $p