如何对访问 OpenSearch 无服务器控制面板以查看我的集合时出现的问题进行故障排除?
当网络访问权限设置为“VPC 端点”时,我无法在 Amazon OpenSearch 无服务器控制面板中访问我的集合。
简短描述
与 Amazon VPC 端点位于同一个 Amazon Virtual Private Cloud (Amazon VPC) 中的资源可以访问 OpenSearch 无服务器控制面板。或者,您可以通过连接到 VPC 的 VPN 来访问控制面板。
如果您仍然无法访问控制面板,则可能是您遇到了以下问题之一:
- 由于您的资源无法访问 VPC 端点而导致您的连接超时。
- 由于您的客户端计算机位于 VPC 外部,或者访问策略拒绝访问而导致您收到了 401 Unauthorized(401 未授权)错误。
- 由于您没有访问控制面板的权限而导致您收到了 HTTP Error 403(HTTP 错误 403)错误。
解决方法
连接超时
如果在您尝试通过浏览器访问 OpenSearch 控制面板时出现连接超时,则该资源可能没有对 VPC 端点的访问权限。您必须将源安全组或 IP 地址添加到与 OpenSearch 无服务器 VPC 端点关联的安全组的入站规则中。
解析 VPC 端点的 DNS 主机
完成以下步骤:
-
打开 OpenSearch Service 控制台,然后获取 VPC 端点 URL,例如 https://c57qhobw71y128nmhkkc.ap-southeast-2.aoss.amazonaws.com。
-
在客户端计算机上,打开终端并运行以下命令:
nslookup c57qhobw71y368nmhkkc.ap-southeast-2.aoss.amazonaws.com
输出结果中将列出 IP 地址,如以下示例中所示:
Non-authoritative answer: Name: privatelink.a00.b11.iad.prod.aoss.searchservices.aws.dev Addresses: 172.X1.Y1.123 172.X2.Y2.456 Aliases: 2yc453ixd67ue89fqsll.us-east-1.aoss.amazonaws.com
-
要在端口 443 上运行 telnet 测试,请运行以下命令:
telnet 172.X1.Y1.123 443
**注意:**请将 172.X1.Y1.123 443 替换为您收到的输出结果中的 IP 地址。
如果您可以连接到 VPC 端点,则会得到与以下示例类似的输出结果:$ telnet 172.X1.Y1.123 443 Trying 172.X1.Y1.123... Connected to 172.X1.Y1.123. Escape character is '^]'.
使用 Reachability Analyzer 验证 EC2 是否可以连接到 VPC 端点
如果您使用 Amazon Elastic Compute Cloud (Amazon EC2) 访问您的 VPC 端点,请使用 Reachability Analyzer 对连接问题进行故障排除。
完成以下步骤:
- 打开 AWS Network Manager 控制台。
- 在导航窗格的 Monitoring and troubleshooting(监控和故障排除)下,选择 Reachability Analyzer。
- 选择 Create and analyze path(创建和分析路径)。
- 在 Create and analyze path(创建和分析路径)页面上,输入以下信息:
在 Path source(路径源)下,对于 Source type(源类型),选择 Instances(实例)。然后,选择您的 Amazon EC2 实例。
在 Path destination(路径目标)下,对于 Destination type(目标类型),选择 VPC endpoints(VPC 端点)。然后,选择该集合的 VPC 端点。
对于 Protocol(协议),选择 TLS。
选择 Create and analyze path(创建和分析路径)。 - 在 Analyses(分析)选项卡下,查看可达性测试结果。
401 未授权错误
要么是因为您使用的客户端计算机的 IP 地址包含在安全组入站规则中,但该计算机位于 VPC 外。或者是因为,您无法访问该集合,因为网络访问策略拒绝访问。
解析 VPC 端点的 DNS 主机
完成以下步骤:
-
在客户端计算机上,打开终端并运行以下命令,以确定主机名是否解析为私有链接:
nslookup c57qhobw71y368nmhkkc.ap-southeast-2.aoss.amazonaws.com
输出结果中将列出 IP 地址,如以下示例中所示:
Non-authoritative answer: Name: privatelink.a00.b11.iad.prod.aoss.searchservices.aws.dev Addresses: 172.X1.Y1.123 172.X2.Y2.456 Aliases: 2yc453ixd67ue89fqsll.us-east-1.aoss.amazonaws.com
-
如果您的 DNS 解析为公有主机名,请检查您的 VPC、子网和安全组的配置。
DNS 解析示例:Server: ip-A1-B-C2-D.ap-southeast-2.compute.internal Address: 10.A.BC.D Non-authoritative answer: Name: example.sgw.syd.prod.aoss.searchservices.aws.dev Addresses: 3.X1.YZ1.55 54.X2.YZ2.95 54.X3.YZ3.119 Aliases: c57qhobw71y368nmhkkc.ap-southeast-2.aoss.amazonaws.com
-
检查解析器主机和 IP 地址配置,以确定解析器是否配置为意外,例如代理解析器。如果配置为意外解析器,则该解析器可能会在内部使用另一个 Amazon VPC 解析器。
-
如果 nslookup 解析为私有链接,但仍出现 401 错误,请创建一个 HAR 文件来解决此错误。
创建 HAR 文件
在浏览器中重现该问题,然后创建 HAR 文件以确定出现此错误的原因。
HAR 文件示例:
"response": { "status": 401, "statusText": "Unauthorized", "httpVersion": "HTTP/1.1", "headers": [ { "name": "content-length", "value": "0" }, { "name": "date", "value": "Thu, 30 Mar 2023 00:29:21 GMT" }, { "name": "server", "value": "aoss-amazon" }, { "name": "x-aoss-response-hint", "value": "X01:network-policy-deny" }, { "name": "x-request-id", "value": "b1211888-1234-9e64-9999-aaxyzab1fd6" } ], ...
在前面的示例中,由于存在 X01:network-policy-deny 网络访问策略,因此对控制面板的访问将被拒绝。要解决此问题,请更新您的网络访问策略,使网络策略中的 VPC 端点与您集合的 VPC 端点相匹配。
HTTP 错误 403: You don't have authorization to view this page(您无权查看此页面)
如果您收到 HTTP 错误 403,则表示用户配置文件没有访问控制面板的权限。在浏览器中重现该问题。然后,创建 HAR 文件以确定访问控制面板所需的权限。
HAR 文件示例:
"response": { "status": 403, "statusText": "Forbidden", "httpVersion": "HTTP/1.1", "headers": [ { "name": "content-length", "value": "0" }, { "name": "date", "value": "Mon, 17 Apr 2023 00:10:25 GMT" }, { "name": "server", "value": "aoss-amazon-d" }, { "name": "x-aoss-response-hint", "value": "X01:dashboards-authz-denied" }, { "name": "x-envoy-upstream-service-time", "value": "19" }, { "name": "x-request-id", "value": "b559fd8f-315e-9fe9-a9e8-6ff5791b765a" } ...
更新您的 AWS Identity and Access Management (IAM) 权限以包括所需的权限。
其他故障排除措施
更新数据面板策略的 IAM 权限
要通过浏览器访问 Amazon OpenSearch 无服务器数据面板 API 和 OpenSearch 控制面板,请更新您的 IAM 权限。您必须将 aoss:APIAccessAll 和 aoss:DashboardsAccessAll IAM 权限添加到权限策略中。
更新您的 IAM 用户或组配置
更新附加到您的集合的数据访问策略,以包括 IAM 用户或组的正确权限。然后,以具有数据访问策略权限的 IAM 用户或组身份登录 AWS 管理控制台。OpenSearch 控制面板会自动使用 IAM 凭证让您登录 OpenSearch 控制面板。
更新您的 SAML 用户或组配置
对于 SAML 用户或组,请使用具有正确数据访问策略权限的实体登录。更新用户或组以匹配 SAML 提供商配置。用户或组与 SAML 提供商之间的映射区分大小写,且必须匹配。要对真实断言的内容进行故障排除,您可以使用 SAML 跟踪器之类的工具。有关详细信息,请参阅配置 SAML 字段。
不要从 AWS 管理控制台打开 OpenSearch 控制面板 URL。请改为在新选项卡或窗口中输入该 URL。如果您使用 AWS 管理控制台中的链接,则控制台会尝试对 IAM 用户进行身份验证。
相关信息
相关内容
- AWS 官方已更新 2 年前
- AWS 官方已更新 2 年前
- AWS 官方已更新 10 个月前