如何解决我的 Route 53 解析器终端节点处于“需要执行操作”状态的问题?
上次更新时间:2020 年 6 月 16 日
我的 Amazon Route 53 解析器终端节点处于“需要执行操作”状态。如何解决此问题?
解决方法
在尝试添加或删除终端节点 IP 地址后,您注意到系统显示“需要执行操作”状态
验证您的 AWS Identity and Access Management (IAM) 用户或角色是否具有添加或删除终端节点 IP 地址所需的权限。
向入站或出站解析器终端节点添加 IP 地址时:
- 系统会调用 AssociateResolverEndpointIpAddress API。
- 对于您指定的每个 IP 地址,解析器都会自动创建一个 VPC 弹性网络接口。
- IAM 角色或用户必须具有相应的权限,才能执行“ec2:CreateNetworkInterface”和“ec2:DescribeNetworkInterfaces”操作。如果不具有相应权限,则创建操作将失败,并且状态将变成“需要执行操作”。
从入站或出站解析器终端节点删除 IP 地址时:
- 系统会调用 DisassociateResolverEndpointIpAddress API。
- 与 IP 地址关联的网络接口必须通过执行“ec2:DeleteNetworkInterface”调用来删除。
- IAM 角色或用户必须具有相应的权限,才能执行“ec2:DeleteNetworkInterface”和“ec2:DescribeNetworkInterfaces”操作。如果不具有相应权限,则删除操作将失败,并且状态将变成“需要执行操作”。
请确保 IAM 用户或角色具有以下权限,向 Route 53 解析器终端节点添加 IP 地址或从中删除 IP 地址:
- ec2:DescribeNetworkInterfaces
- ec2:DescribeAvailabilityZones
- ec2:CreateNetworkInterface
- ec2:DeleteNetworkInterface
- ec2:DescribeSubnets
查看 AWS CloudTrail 日志以了解有关拒绝操作的更多详细信息。以下是一个当 IAM 用户或角色缺少相应权限时调用“AssociateResolverEndpointIpAddress”的 CloudTrail 事件示例。
"responseElements": {
"resolverEndpoint": {
"id": "rslvr-in-aaaaaaaaaaaaaaaaa",
"creatorRequestId": "AWSConsole.82.1579676363636",
"arn": "arn:aws:route53resolver:us-east-1:111111111111:resolver-endpoint/rslvr-in-11111111111111111",
"name": "aaa",
"securityGroupIds": [
"sg-11111111111111111"
],
"direction": "INBOUND",
"ipAddressCount": 4,
"hostVPCId": "vpc-11111111",
"status": "ACTION_NEEDED",
"statusMessage": "1 IP address(es) failed to be created. Please remove them from the ResolverEndpoint.",
"creationTime": "2020-01-22T06:59:25.990Z",
"modificationTime": "2020-01-22T06:59:25.990Z"
}
}
您还可以查看 CloudTrail 日志中“AssociateResolverEndpointIpAddress”事件之前或之后的其他事件,以验证所缺少的 IAM 权限。例如,如果 IAM 用户或角色缺少“CreateNetworkInterface”权限,“CreateNetworkInterface”的 CloudTrail 事件如下所示:
"eventSource": "ec2.amazonaws.com",
"eventName": "CreateNetworkInterface",
"awsRegion": "us-east-1",
"sourceIPAddress": "AWS Internal",
"userAgent": "AWS Internal",
"errorCode": "Client.UnauthorizedOperation",
"errorMessage": "You are not authorized to perform this operation."
您注意到“需要执行操作”状态,但您尚未尝试添加或删除终端节点的 IP 地址,或者您具有正确的 IAM 权限
这意味着,该终端节点运行状况不佳,并且解析器无法自动恢复该终端节点。此问题的常见原因包括:
- 删除了与终端节点关联的一个或多个网络接口。
- 无法创建网络接口。
要解决此问题,请检查与终端节点相关联的每个 IP 地址。对于每个不可用的 IP 地址,添加另一个 IP 地址。然后,删除不可用的 IP 地址。
注意:终端节点必须始终包含至少两个 IP 地址。