本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将控制面板(与集群同置)与 Amazon OpenSearch 服务配合使用
仪表板(与集群同置)是一种开源可视化工具,专为与之配 OpenSearch合使用而设计。Amazon OpenSearch 服务为每个 OpenSearch 服务域提供了控制面板的安装。仪表板在域中的热门数据节点上运行。如果您正在寻找有关在一个端点上支持多个数据源的全新集中式 OpenSearch 用户界面的文档,请参阅集中式用户 OpenSearch 界面(仪表板)。
您可以在 OpenSearch 服务控制台的域名控制面板上找到指向仪表板的链接。对于正在运行的域 OpenSearch,URL是
。对于运行旧版 Elasticsearch 的域名,则URL为。domain-endpoint
/_dashboards/domain-endpoint
/_plugin/kibana
使用此默认仪表板安装进行查询的超时时间为 300 秒。
注意
本文档讨论了 Amazon OpenSearch 服务背景下的控制面板,包括连接该服务的不同方式。有关全面的文档,包括入门指南、仪表板创建说明、仪表板管理和仪表板查询语言 (DQL),请参阅开源 OpenSearch 文档中的OpenSearch 仪表板
控制对仪表板的访问权限
仪表板本身不支持IAM用户和角色,但是 Ser OpenSearch vice 提供了多种控制仪表板访问权限的解决方案:
-
使用精细的访问控制和HTTP基本身份验证。
-
对于公有访问阈,配置一个基于 IP 的访问策略(使用或不使用代理服务器)。
-
对于VPC访问域,请使用使用或不使用代理服务器的开放访问策略,并使用安全组来控制访问权限。要了解更多信息,请参阅 关于VPC域名的访问策略。
使用代理从仪表板访问 OpenSearch 服务
注意
仅当域使用公有访问权限并且您不想使用 Cognito 身份验证时,此过程才适用。请参阅 控制对仪表板的访问权限 。
由于仪表板是一个 JavaScript 应用程序,因此请求来自用户的 IP 地址。基于 IP 的访问控制可能是不切实际的,这是因为,为了让每个用户能够访问 Kibana,需要加入白名单的 IP 地址绝对数量太巨大。一种解决方法是在仪表板和 OpenSearch 服务之间放置代理服务器。然后,您可以添加基于 IP 的访问策略,仅允许来自一个 IP 地址(即代理服务器)的请求。下图演示了此配置。
-
这是您的 OpenSearch 服务域。IAM提供对该域的授权访问权限。此外,基于 IP 的访问策略提供对代理服务器的访问权限。
-
这是在 Amazon EC2 实例上运行的代理服务器。
-
其他应用程序可以使用签名版本 4 签名过程向 OpenSearch 服务发送经过身份验证的请求。
-
仪表板客户端通过代理连接到您的 OpenSearch 服务域。
要启用这种配置,需要在基于资源的策略中指定角色和 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地图服务器
默认安装的 Dashboard OpenSearch s for Service 包括地图服务,但印度和中国地区的域名除外。地图服务最多支持 10 个缩放级别。
无论您所在的区域如何,您都可以将仪表板配置为使用不同的 Web 地图服务 (WMS) 服务器进行坐标地图可视化。区域地图可视化只支持默认地图服务。
要将仪表板配置为使用WMS地图服务器,请执行以下操作:
-
打开控制面板。
-
选择堆栈管理。
-
选择 Advanced Settings (高级设置)。
-
找到可视化:tileMap: WMSdefaults.
-
更改
enabled
为有效地图服务器true
和url
更改为有效WMS地图服务器:URL{ "enabled": true, "url": "
wms-server-url
", "options": { "format": "image/png", "transparent": true } } -
选择 Save changes(保存更改)。
要将新的默认值应用于可视化,您可能需要重新加载控制面板。如果已保存可视化,请在打开可视化后,选择 Options (选项)。确认WMS地图服务器已启用且 WMSurl 包含您的首选地图服务器,然后选择应用更改。
注意
地图服务通常具有许可费用或限制。您负责考虑有关指定的任何地图服务器的所有此类事项。您可能会发现来自美国地质调查局
将本地仪表板服务器连接到 OpenSearch 服务
如果您已经投入了大量时间来配置自己的仪表板实例,则可以使用它来代替 S OpenSearch ervice 提供的默认 Dashboards 实例(或补充)。以下过程适用于将精细访问控制和开放访问策略结合使用的域。
将本地仪表板服务器连接到 OpenSearch 服务
-
在您的 OpenSearch 服务域上,创建具有相应权限的用户:
-
在控制面板中,转到安全、内部用户,然后选择创建内部用户。
-
提供用户名和密码,然后选择创建。
-
转到角色,然后选择一个角色。
-
选择映射的用户,然后选择管理映射。
-
在用户中,添加您的用户名,然后选择映射。
-
-
在自行管理的 Dashboards 安装中下载并OSS安装相应版本 OpenSearch 的安全插件
。 -
在您的本地 Dashboards 服务器上,打开
config/opensearch_dashboards.yml
文件并使用您之前创建的用户名和密码添加您的 OpenSearch 服务端点: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
在仪表板中管理索引
OpenSearch 服务域上安装的仪表板提供了一个有用的用户界面,用于管理域中不同存储层中的索引。从 “仪表板” 主菜单中选择 “索引管理” UltraWarm,查看热存储和冷存储中的所有索引,以及由索引状态管理 (ISM) 策略管理的索引。使用索引管理可以在热存储和冷存储之间移动索引,并监视三个层之间的迁移。
请注意,除非启用了和 UltraWarm /或冷存储,否则您不会看到热索引、温索引和冷索引选项。
其他功能
在每个 OpenSearch 服务域上安装的默认仪表板还有一些其他功能:
-
各种OpenSearch插件的用户界面
-
使用 “报告” 菜单从 “发现” 页面生成按需CSV报告和/或仪表板PDF或可视化效果PNG报告。CSV报告的行数限制为 10,000。