如何使用 Powershell 7 将保留的 IP 地址分配给 Azure 上的云服务?

How to assign a reserved IP address to a cloud service on Azure using Powershell 7?

我一直在使用 New-AzureReservedIP cmdlet 在 Azure 中创建一个新的保留 IP 地址并将其与 Azure 云服务暂存槽相关联。基本上描述了什么 此 cmdlet 是 Azure 模块的一部分。但是,据我们所知,Azure 和 AzureRM 模块在 PS7 中不再可用。而且这个工作步骤在 Azure GUI 中甚至不可用。

As Microsoft recommends switching to PS7 and the Az module 我假设还有另一种方法可以实现同样的目的。但是,到目前为止,我无法找到解决方案。

问题是如果生产插槽有一个临时插槽需要保留 IP。为了限制开支,我们在部署后删除了暂存槽。如果我们只是保留并更新它,那将不是问题。此外,我无法找到一种方法来为下一次暂存部署重新使用现有的保留 IP(之前使用 New-AzureReservedIP 创建),到目前为止,我总是需要使用 [=10= 创建一个新的 IP ].我最终得到了很多我不再使用的保留 IP 地址,所以我想知道它们是否可以以某种方式回收?

在 PS7 中解决此问题的最佳做法是什么?

保留 IP 属于 ASM API(经典)并将在 2023 年弃用。因此它在 ARM 中不存在。新的 ARM API 不支持此功能。在 ARM 中,您可以选择使用静态 Public IP(Microsoft 拥有的 IP)或购买 IP address/IP 范围时的 Public IP 前缀。

New-AzPublicIpAddress https://docs.microsoft.com/en-us/powershell/module/az.network/new-azpublicipprefix?view=azps-4.5.0

New-AzPublicIpPrefix https://docs.microsoft.com/en-us/powershell/module/az.network/new-azpublicipaddress?view=azps-4.5.0

但需要注意的一件事是,如果您使用应用服务,您实际上会为您的应用服务获得一个静态 Public IP,但该 IP 与许多其他客户共享,因此您需要使用您的应用服务URL 例如。 https://[AppServiceName].azurewebsites.net 或将自定义域添加到您的应用服务。

因此,如果您确实需要一个未共享的 Public IP,则必须转移到 IaaS,例如。虚拟机