如何删除与 VPC 终端节点服务(PrivateLink)关联的 Network Load Balancer?

上次更新日期:2022 年 4 月 12 日

我有一个与 Amazon Virtual Private Cloud(Amazon VPC)终端节点服务(PrivateLink)关联的 Network Load Balancer。如何删除此 Network Load Balancer?

简短描述

如果您尝试删除与 PrivateLink 关联的 Network Load Balancer,会收到错误“Network Load Balancer is currently associated with another service(Network Load Balancer 当前与另一服务关联)”。您必须先解除与任何已关联 VPC 终端节点服务之间的关联,才能删除 Network Load Balancer。

解决方法

首先,确认您尝试删除的 Network Load Balancer 未与 VPC 终端节点服务关联。如果 Network Load Balancer 与 VPC 终端节点服务关联,请确保执行以下步骤:

  1. 拒绝终端节点服务上的终端节点连接。
  2. 解除 Network Load Balancer 与终端节点服务之间的关联。
  3. 删除该 Network Load Balancer。

您可以使用 Amazon VPC 控制台或 AWS Command Line Interface(AWS CLI)来执行这些步骤。

打开 Amazon VPC 控制台

1.    打开 Amazon VPC 控制台

2.    选择 Endpoint services(终端节点服务)。

3.    在 Filter(筛选条件)字段中输入 Network Load Balancer 的 ARN,搜索终端节点服务。

4.    选择 Endpoint connections(终端节点连接)选项卡,以确定哪些终端节点连接与您的终端节点服务关联。

5.    对于所有未处于 Rejected(已拒绝)状态的连接,请选择 Actions(操作),然后选择 Reject endpoint connection request(拒绝终端节点连接请求)。

6.    选择 Load Balancers(负载均衡器)选项卡。

7.    选择 Associate or Disassociate Load Balancers(关联或解除关联负载均衡器),以解除 Network Load Balancer 与终端节点服务之间的关联。

8.    取消选中 Available Load Balancers(可用负载均衡器)下的 Network Load Balancer 名称,然后选择 Save changes(保存更改)。

注意:如果没有其他负载均衡器与此终端节点服务关联,您会收到错误消息“Must select at least one Load Balancer(必须至少选择一个负载均衡器)”。如果您收到此错误,请删除 VPC 终端节点服务以删除关联。

9.    要删除 Network Load Balancer,请参阅删除 Network Load Balancer

使用 AWS CLI

注意:如果在运行 AWS CLI 命令时遇到错误,请确保您使用的是最新版本的 AWS CLI

1.    运行 describe-vpc-endpoint-service-configurations 命令来描述 VPC 终端节点服务配置:

注意:在以下示例命令中,将 us-east-1 替换为您的 Network Load Balancer 所在的区域。

aws ec2 describe-vpc-endpoint-service-configurations --region us-east-1 | grep -B 1 -A 3 /net/

上述命令会筛选区域中的 Network Load Balancer ARN 和关联的终端节点服务名称。在命令输出中,搜索 Network Load Balancer 的 ARN(或在 grep 中使用更具体的筛选条件)。如果找到匹配项,Network Load Balancer 将与 VPC 终端节点服务关联。记下 VPC 终端节点服务的服务 ID。

示例输出

$ aws ec2 describe-vpc-endpoint-service-configurations --region us-east-1 | grep -B 1 -A 3 /net/
            "NetworkLoadBalancerArns": [
                "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/net/NLB-Test/ca76ff83bdfc24c6"
            ],
            "ServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-1234abc1234abc123",
            "Tags": [

2.    使用 reject-vpc-endpoint-connections 命令拒绝服务上的终端节点连接,如下例所示:

aws ec2 reject-vpc-endpoint-connections --service-id vpce-svc-1234abc1234abc123 --vpc-endpoint-ids vpce-1234abc1234abc123

3. 运行 modify-vpc-endpoint-service-configuration 命令以取消 Network Load Balancer 与 VPC 终端节点服务的关联,如以下示例所示:

aws ec2 modify-vpc-endpoint-service-configuration --service-id vpce-svc-1234abc1234abc123 --remove-network-load-balancer-arns arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/net/NLB-Test/ca76ff83bdfc24c

4.运行 delete-load-balancer 删除 Network Load Balancer。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?