本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon OpenSearch 服务中使用 OpenSearch 控制面板
OpenSearch 控制面板是一种开源虚拟化工具,专为与之结合使用而设计 OpenSearch。Amazon S OpenSearch ervice 为每个 OpenSearch 服务域提供了安装控制面板的功能。控制面板在域中的热门数据节点上运行。
OpenSearch 仪表板是一种可视化工具,用于浏览和分析单个 OpenSearch 域中的数据。相比之下,集中式 OpenSearch 用户界面(也称为 OpenSearch 应用程序)是一个基于云的用户界面,可连接到多个 OpenSearch域、 OpenSearch 无服务器集合和 Amazon 数据源。它包括用于特定用例(例如可观察性和安全分析)的工作空间,并提供跨数据集的统一体验。虽然仪表板与各个域绑定,但集中式用户界面支持跨域数据集成和分析。有关更多信息,请参阅 在亚马逊 OpenSearch 服务中使用 OpenSearch 用户界面。
在域控制台的控制 OpenSearch 面板上可以找到控制面板上的控制 OpenSearch 面板链接。对于正在运行的域名 OpenSearch,URL 为
。对于运行旧版 Elasticsearch 的域,URL 为 domain-endpoint
/_dashboards/
。domain-endpoint
/_plugin/kibana
使用此默认控制面板安装的查询具有 300 秒超时。
注意
本文档介绍了 Amazon Service 环境中的 OpenSearch 控制面板,包括连接到该 OpenSearch 服务的不同方式。有关全面的文档,包括入门指南、控制面板创建说明、控制面板管理和控制面板查询语言(DQL),请参阅开源 OpenSearch 文档中的OpenSearch 控制面板
控制对控制面板的访问
控制面板本身不支持 IAM 用户和角色,但 Ser OpenSearch vice 提供了多种解决方案来控制对控制面板的访问:
-
将访问权限的精细控制和 HTTP 基本身份验证结合使用。
-
对于公有访问阈,配置一个基于 IP 的访问策略(使用或不使用代理服务器)。
-
对于 VPC 访问阈,配置一个开放访问策略(使用或不使用代理服务器)并使用安全组来控制访问权限。要了解更多信息,请参阅关于 VPC 域的访问策略。
使用代理从控制面板访问 S OpenSearch ervice
注意
仅当域使用公有访问权限并且您不想使用 Cognito 身份验证时,此过程才适用。请参阅控制对控制面板的访问 。
控制面板是一种 JavaScript 应用程序,因此请求源自用户的 IP 地址。基于 IP 的访问控制可能是不切实际的,这是因为,为了让每个用户能够访问 Kibana,需要加入白名单的 IP 地址绝对数量太巨大。一种解决方案是在控制面板和 OpenSearch 服务之间配置一个代理服务器。然后,您可以添加基于 IP 的访问策略,仅允许来自一个 IP 地址(即代理服务器)的请求。下图演示了此配置。

-
这是您的 OpenSearch 服务域。IAM 提供对此域的授权访问权限。此外,基于 IP 的访问策略提供对代理服务器的访问权限。
-
这是在 Amazon EC2 实例上运行的代理服务器。
-
其他应用程序可以使用签名版本 4 签名流程将通过身份验证的请求发送到 S OpenSearch ervice。
-
控制面板客户端通过代理连接到 S OpenSearch ervice 域。
要启用这种配置,需要在基于资源的策略中指定角色和 IP 地址。下面是示例策略:
{ "Version":"2012-10-17", "Statement":[ { "Resource":"arn:aws:es:us-west-2:111111111111:domain/my-domain/*", "Principal":{ "AWS":"arn:aws:iam::111111111111:role/allowedrole1" }, "Action":[ "es:ESHttpGet" ], "Effect":"Allow" }, { "Effect":"Allow", "Principal":{ "AWS":"*" }, "Action":"es:*", "Condition":{ "IpAddress":{ "aws:SourceIp":[ "
203.0.113.0/24
", "2001:DB8:1234:5678::/64
" ] } }, "Resource":"arn:aws:es:us-west-2:111111111111:domain/my-domain/*" } ] }
我们建议您为运行代理服务器的 EC2 实例配置弹性 IP 地址。这样,如果有必要替换实例,仍然可以用相同的公有 IP 地址连接到实例。要了解更多信息,请参阅 Amazon EC2 用户指南中的弹性 IP 地址。
如果使用代理服务器和 Cognito 身份验证,则可能需要添加控制面板和 Amazon Cognito 的设置以避免 redirect_mismatch
错误。请参阅以下 nginx.conf
示例:
server { listen 443; server_name $host; rewrite ^/$ https://$host/_plugin/_dashboards redirect; ssl_certificate /etc/nginx/cert.crt; ssl_certificate_key /etc/nginx/cert.key; ssl on; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; location /_plugin/_dashboards { # Forward requests to Dashboards proxy_pass https://$dashboards_host/_plugin/_dashboards; # Handle redirects to Cognito proxy_redirect https://$cognito_host https://$host; # Update cookie domain and path proxy_cookie_domain $dashboards_host $host; proxy_cookie_path / /_plugin/_dashboards/; # Response buffer settings proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; } location ~ \/(log|sign|fav|forgot|change|saml|oauth2) { # Forward requests to Cognito proxy_pass https://$cognito_host; # Handle redirects to Dashboards proxy_redirect https://$dashboards_host https://$host; # Update cookie domain proxy_cookie_domain $cognito_host $host; } }
注意
(可选)如果您选择预置专用协调器节点,则将自动开始托管 OpenSearch 控制面板。因此可以提高 CPU 和内存等数据节点资源的可用性。由于数据节点资源的可用性提高,这将有助于提高域的整体韧性。
将控制面板配置为使用 WMS 地图服务器
S OpenSearch ervice 控制面板默认安装包括地图服务,但印度和中国区域的域除外。地图服务最多支持 10 个缩放级别。
无论您的区域如何,您都可以将 Kibana 配置为使用不同的 Web 地图服务 (WMS) 服务器来提供坐标地图可视化。区域地图可视化只支持默认地图服务。
将控制面板配置为使用 WMS 地图服务器:
-
打开控制面板。
-
选择堆栈管理。
-
选择 Advanced Settings (高级设置)。
-
定位可视化:TileMap:. WMSdefaults
-
将
enabled
更改为true
并将url
更改为有效 WMS 地图服务器的 URL:{ "enabled": true, "url": "
wms-server-url
", "options": { "format": "image/png", "transparent": true } } -
选择保存更改。
要将新的默认值应用于可视化,您可能需要重新加载控制面板。如果已保存可视化,请在打开可视化后,选择 Options (选项)。验证是否已启用 WMS map server (WMS 地图服务器) 并且 WMS URL 包含首选地图服务器,然后选择 Apply changes (应用更改)。
注意
地图服务通常具有许可费用或限制。您负责考虑有关指定的任何地图服务器的所有此类事项。您可能会发现来自美国地质调查局
将本地控制面板服务器连接到 Serv OpenSearch ice
如果您已投入大量时间来配置自己的控制面板实例,则可以使用该实例而不是(或以及)提供的默认 Dashboards OpenSearch 实例。以下过程适用于将精细访问控制和开放访问策略结合使用的域。
将本地控制面板服务器连接到 Serv OpenSearch ice
-
在您的S OpenSearch ervice 域中,创建具有相应权限的用户:
-
在控制面板中,转到安全、内部用户,然后选择创建内部用户。
-
提供用户名和密码,然后选择创建。
-
转到角色,然后选择一个角色。
-
选择映射的用户,然后选择管理映射。
-
在用户中,添加您的用户名,然后选择映射。
-
-
下载并将 OS 安装在自行管理 OpenSearch 的控制
面板 OSS 安装程序上。 -
在本地的控制面板服务器中,通过您之前创建的用户名和密码打开
config/opensearch_dashboards.yml
文件并添加 Serv OpenSearch ice 端点。opensearch.hosts: ['https://
domain-endpoint
'] opensearch.username: 'username' opensearch.password: 'password'您可以使用以下示例
opensearch_dashboards.yml
文件:server.host: '0.0.0.0' opensearch.hosts: ['https://
domain-endpoint
'] opensearchDashboards.index: ".username" opensearch.ssl.verificationMode: none # if not using HTTPS opensearch_security.auth.type: basicauth opensearch_security.auth.anonymous_auth_enabled: false opensearch_security.cookie.secure: false # set to true when using HTTPS opensearch_security.cookie.ttl: 3600000 opensearch_security.session.ttl: 3600000 opensearch_security.session.keepalive: false opensearch_security.multitenancy.enabled: false opensearch_security.readonly_mode.roles: ['opensearch_dashboards_read_only'] opensearch_security.auth.unauthenticated_routes: [] opensearch_security.basicauth.login.title: 'Please log in using your username and password' opensearch.username: 'username' opensearch.password: 'password' opensearch.requestHeadersWhitelist: [authorization, securitytenant, security_tenant]
要查看您的 OpenSearch 服务索引,请启动本地控制面板服务器,请转到开发工具并运行以下命令:
GET _cat/indices
管理控制面板中的索引
S OpenSearch ervice 域上的控制面板安装为管理域上不同存储层中的索引提供了一个有用的用户界面。从控制面板主菜单中选择索引管理以查看热、冷存储中的全部索引 UltraWarm,以及由 Index State Management (ISM) 策略管理的索引。使用索引管理可以在热存储和冷存储之间移动索引,并监视三个层之间的迁移。

请注意,除非已启用和 UltraWarm /或冷存储,否则不会看到热、暖和冷索引选项。
其他功能
每个 OpenSearch 服务域上的默认仪表板安装具有一些附加功能:
-
各种OpenSearch插件的用户界面
-
使用报告菜单可从“发现”页面生成按需 CSV 报告,以及仪表板或可视化的 PDF 或 PNG 报告。CSV 报告的行数限制为 10,000。