Azure:在资源组之间共享 Public IP 地址

Azure: Sharing Public IP Address between Resource Groups

我的一个资源组中有一个 IP 地址(例如 test-resource-group)。我希望在 AKS 创建的资源组中使用此 IP 地址(例如 MC_xxxx_resource-group)。 AKS 中服务的 IP 分配导致错误,指出“IP 地址不在资源组 MC_xxxx_resource-group。

我想知道最简单的机制是什么 Public 在一个资源组中创建的地址可以与另一个资源组共享??

最好的方法是导出模板并从脚本部署。

1.Login 到您的 Azure 门户并将鼠标悬停到 IP 所在的资源组。现在,在自动化边栏选项卡下单击导出模板。

2.Choose 在导出模板边栏选项卡中部署。

3.Click TEMPLATE > 编辑参数以在在线编辑器中打开 parameters.json 文件。

4.To 编辑 public IP 名称的参数,将 parameters > value from the source public IP name 下的 属性 更改为您的目标名称public IP,确保名称在引号中:

{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
    "publicIPAddresses_myVM1pubIP_name": {
    "value": "<target-publicip-name>"
      }
     }
    }

5.Click 在编辑器中保存。

6.Click 模板 > 编辑模板以在在线编辑器中打开 template.json 文件。

7.To 编辑 public IP 移动的目标区域,更改资源下的位置 属性:

"resources": [
    {
    "type": "Microsoft.Network/publicIPAddresses",
    "apiVersion": "2019-06-01",
    "name": "[parameters('publicIPAddresses_myPubIP_name')]",
    "location": "<target-region>",
    "sku": {
        "name": "Basic",
        "tier": "Regional"
    },
    "properties": {
        "provisioningState": "Succeeded",
        "resourceGuid": "7549a8f1-80c2-481a-a073-018f5b0b69be",
        "ipAddress": "52.177.6.204",
        "publicIPAddressVersion": "IPv4",
        "publicIPAllocationMethod": "Dynamic",
        "idleTimeoutInMinutes": 4,
        "ipTags": []
       }
       }
     ]

8.Click保存在在线编辑器中。

9.Click BASICS > 订阅以选择目标 public IP 将部署到的订阅。设置目标资源组和位置。

  1. 选中“条款和条件”下的框并单击“购买”按钮以部署目标 public IP。

参考文档:https://docs.microsoft.com/en-us/azure/virtual-network/move-across-regions-publicip-portal

我能够通过以下解决方案解决问题:

  1. 转到k8s-cluster创建的资源组。
  2. 进入设置 -> 访问控制 -> 角色分配。
  3. 检查系统创建的参与者角色。
  4. 转到创建 Public IP 地址的资源组(for.e.g test-resource-group)
  5. 进入设置 -> 访问控制 -> 角色分配 -> 添加角色分配
  6. 如果第 2 点中的 ROLE 未列出,请键入它的首字母,它应该会显示。
  7. Select 作为网络贡献者的角色。

以上述方式,您可以使用在其他资源组中为您的 k8s 集群创建的 Public IP 地址。

快乐编码:)