本页内容
- 准备工作
- 系统配置
- 安装 OpenSearch
- 配置 OpenSearch
- 使用 TLS 证书保护 OpenSearch 安全 生成根 CA 证书 生成管理员证书 生成节点证书 配置证书
- 将 TLS 证书添加到 OpenSearch
- 设置 OpenSearch 管理员用户
- 安装 OpenSearch Dashboards
- 配置 OpenSearch Dashboards
- 访问 OpenSearch Dashboards
- 总结
- 生成根 CA 证书
- 生成管理员证书
- 生成节点证书
- 配置证书
OpenSearch 是 Amazon 主导的一个社区驱动项目,是 Elasticsearch 和 Kibana 的一个分支。它是一套完全开源的搜索引擎和分析套件,具备丰富的功能与创新特性。OpenSearch 项目的主要组件是 OpenSearch(Elasticsearch 的分支)以及 OpenSearch Dashboards(Kibana 的分支)。这两个组件都提供了企业级安全、告警、机器学习、SQL、索引状态管理等功能。
OpenSearch 是 100% 开源的,采用 Apache 2.0 许可证。它让你能够轻松地摄取、保护、搜索、聚合、查看和分析数据,适用于日志分析、应用搜索、企业搜索等多种使用场景。
本文介绍如何在 Rocky Linux 9 服务器上安装 OpenSearch——一套开源的搜索、分析与可视化套件。本文涵盖使用 TLS/SSL 证书保护 OpenSearch 部署,以及在 OpenSearch 上配置身份认证与授权。
本文还将介绍如何安装 OpenSearch Dashboards——一款类似 Kibana 的开源可视化工具,并将其配置为连接到 OpenSearch。完成本文操作后,你的 Rocky Linux 服务器上就会拥有一套数据分析与可视化套件。
准备工作
要开始本指南,你必须满足以下要求:
- 一台运行 Rocky Linux 9 且内存至少 4GB 的服务器——本示例使用的 Rocky Linux 服务器主机名为 ' node-rock1 ',IP 地址为 ' 192.168.5.25 ',内存为 8GB。
- 一个具备 sudo/root 管理员权限的非 root 用户。
- SELinux 运行于 permissive(宽松)模式。
就这些;让我们开始安装 OpenSearch。
系统配置
你必须做的第一件事是准备好你的 Rocky Linux 主机。这包括设置正确的主机名和 fqdn、禁用 SWAP,以及提高系统的最大映射内存(max maps memory)。
为此,你必须登录到你的 Rocky Linux 服务器。
现在执行以下命令,为你的 Rocky Linux 服务器设置正确的主机名和 fqdn。
在本示例中,你将系统主机名设置为 ' node-rock1 ',fqdn 设置为 ' node-rock1.hwdomain.lan '。同时,请务必将以下命令中的 IP 地址替换为你服务器的 IP 地址。
sudo hostnamectl set-hostname node-rock1
echo '192.168.5.25 node-rock1.hwdomain.lan node-rock1' >> /etc/hosts
退出当前会话并重新登录。然后,通过以下命令验证 fqdn。
sudo hostname -f
你应该会得到类似这样的输出。主机上的 fqdn 已配置为 'node-rock1.hwdomain.lan'。

接下来,你需要在 Rocky Linux 主机上禁用内存分页和 SWAP。禁用内存分页和 SWAP 可以提升你的 OpenSearch 服务器性能。
执行以下命令以在你的系统上禁用 SWAP。第一条命令通过注释掉 ' /etc/fstab ' 文件中的 SWAP 配置来永久禁用 SWAP;第二条命令用于在当前会话中禁用 SWAP。
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
sudo swapoff -a
通过以下命令验证你系统上 SWAP 的状态。
free -m
你会收到类似以下的输出——' Swap '(交换)部分的总值为 0,这表明 SWAP 已被禁用。

最后,你必须为了提高 OpenSearch 性能而提高系统的最大映射内存。这可以通过 '/etc/sysctl.conf ' 文件来完成。
执行以下命令将最大映射内存提高到 ' 262144 ' 并应用更改。这样,你会向 /etc/sysctl.conf 文件添加一项新配置 'vm.max_map_count=262144 ',并通过 ' sysctl -p ' 命令在系统上应用更改。
sudo echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sudo sysctl -p
现在你可以通过以下命令查看系统上最大映射内存的状态。并且 ' max_map_count ' 应该已提高到 ' 262144 '。
cat /proc/sys/vm/max_map_count
输出:

系统配置完成后,你就可以开始安装 OpenSearch 了。
安装 OpenSearch
OpenSearch 可以通过多种方式安装。你可以通过 tarball、Docker、RPM 和 Kubernetes 安装 OpenSearch。对于基于 RHEL 的发行版,你可以轻松地通过官方 OpenSearch 仓库进行安装。
执行下面的 curl 命令,将 OpenSearch 仓库下载到你的系统。然后,通过下面的命令验证可用仓库列表。
sudo curl -SL https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/opensearch-2.x.repo -o /etc/yum.repos.d/opensearch-2.x.repo
sudo dnf repolist
如果成功,你应该在终端输出中看到可用的仓库 ' OpenSearch 2.x '。

你也可以通过执行以下命令查看 ' opensearch ' 的可用软件包。
sudo dnf info opensearch
在撰写本文时,OpenSearch 仓库为不同的系统架构提供了两个版本的 OpenSearch——面向 x86_64 和 aarch64 的 OpenSearch 2.5。

执行以下 dnf 命令,在你的 Rocky Linux 服务器上安装 OpenSearch。当提示确认时,输入 y 确认并按 ENTER 继续。
sudo dnf install opensearch
输出:

在安装过程中,你还会被提示添加 OpenSearch 仓库的 GPG 密钥。输入 y 确认并按 ENTER。

OpenSearch 成功安装后,使用下面的 systemctl 命令重新加载 systemd 管理器并应用新的更改。
sudo systemctl daemon-reload
现在使用下面的命令启动并启用 OpenSearch。这样,OpenSearch 将以默认配置运行,并且已被启用,这意味着 OpenSearch 会在系统启动时自动启动。
sudo systemctl start opensearch
sudo systemctl enable opensearch

要确认 OpenSearch 正在工作并运行,你可以通过以下 systemctl 命令进行验证。
sudo systemctl status opensearch
你应该会收到类似以下的输出——输出中的 'active (running) '(运行中)确认 OpenSearch 服务正在运行,而 ' ... enabled;... ' 则确认 OpenSearch 服务已启用。

现在你已经安装好 OpenSearch,它正在运行且已启用。你可以进入下一步,配置你的 OpenSearch 安装。
配置 OpenSearch
默认情况下,OpenSearch 的配置文件存储在 '/etc/opensearch' 目录中。在这一步,你将以单节点模式对 OpenSearch 进行基本配置。你还会提高系统的最大堆内存,以获得更好的 OpenSearch 服务器性能。
使用下面的 nano 编辑器命令打开 OpenSearch 配置文件 '/etc/opensearch/opensearch.yml'。
sudo nano /etc/opensearch/opensearch.yml
使用以下行修改一些默认的 OpenSearch 参数。这样,你将在特定的网络 IP 地址 ' 192.168.5.25 ' 上运行 OpenSearch,部署类型为 ' single-node '(单节点),并重新启用 OpenSearch 安全插件。
# Bind OpenSearch to the correct network interface. Use 0.0.0.0 # to include all available interfaces or specify an IP address # assigned to a specific interface. network.host: 192.168.5.25 # Unless you have already configured a cluster, you should set # discovery.type to single-node, or the bootstrap checks will # fail when you try to start the service. discovery.type: single-node # If you previously disabled the security plugin in opensearch.yml, # be sure to re-enable it. Otherwise you can skip this setting. plugins.security.disabled: false
完成后保存并退出文件 '/etc/opensearch/opensearch.yml'。

接下来,使用下面的 nano 编辑器命令打开 OpenSearch 的默认 JVM 选项文件 ' /etc/opensearch/jvm.options '。
sudo nano /etc/opensearch/jvm.options
使用以下行修改默认的最大堆内存。这取决于你的服务器内存,如果你的 RAM 内存更大,可以为 OpenSearch 分配更多,例如 2GB。
-Xms2g -Xmx2g
完成后保存文件并退出编辑器。

最后,运行下面的 systemctl 命令以重启 OpenSearch 服务并应用更改。
sudo systemctl restart opensearch
现在 OpenSearch 应该已在 IP 地址 ' 192.168.5.25 ' 的默认端口 ' 9200 ' 上运行。通过执行下面的 ss 命令验证你系统上的开放端口列表。
ss -tulpn
使用 TLS 证书保护 OpenSearch 安全
在这一步,你将生成多张用于保护 OpenSearch 部署的证书。你将使用 TLS 证书保护节点间通信,并通过 TLS 保护客户端与服务器之间 REST 层的流量。
以下是将要生成的证书列表:
- 根 CA 证书:这些证书将用于签署其他证书。
- 管理员证书:这些证书将用于获取执行与安全插件相关的所有任务的管理权限。
- 节点与客户端证书:这些证书将由 OpenSearch 集群中的节点和客户端使用。
在生成新的 TLS 证书之前,我们先移除一些默认的证书和默认的 OpenSearch 配置。
执行以下命令以移除默认的 OpenSearch TLS 证书。然后,使用下面的 nano 编辑器命令打开 OpenSearch 配置文件 '/etc/opensearch/opensearch.yml '。
rm -f /opt/opensearch/{esnode-key.pem,esnode.pem,kirk-key.pem,kirk.pem,root-ca.pem}
sudo nano /etc/opensearch/opensearch.yml
在该文件末尾,注释掉默认的 OpenSearch 安全演示配置,如下所示。

完成后保存并退出文件。
接下来,执行以下命令创建一个新目录 ' /etc/opensearch/certs '。该目录将用于存储将要生成的新 TLS 证书。然后,将你的工作目录切换到该目录中。
mkdir -p /etc/opensearch/certs; cd /etc/opensearch/certs
生成根 CA 证书
使用以下命令生成根 CA 证书的私钥。
openssl genrsa -out root-ca-key.pem 2048
现在通过以下命令生成自签名的根 CA 证书。你也可以将 ' -subj ' 参数中的值替换为你的信息。
openssl req -new -x509 -sha256 -key root-ca-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=ROOT" -out root-ca.pem -days 730
这样,你应该会得到根 CA 私钥 ' root-ca-key.pem ' 和根 CA 证书 ' root-ca.pem '。
输出:

生成管理员证书
使用以下命令生成新的管理员证书私钥 ' admin-key-temp.pem '。
openssl genrsa -out admin-key-temp.pem 2048
将默认的管理员私钥转换为 PKCS#8 格式。对于 Java 应用,你需要将默认私钥转换为兼容 PKCS#12 的算法(3DES)。这样,你的管理员私钥应为 ' admin-key.pem '。
openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem
接下来,运行以下命令,从 ' admin-key.pem ' 私钥生成管理员 CSR(证书签名请求)。你生成的 CSR 现在应为 'admin.csr ' 文件。
由于此证书用于认证提升的访问权限,且不与任何主机绑定,因此你可以在 ' CN ' 配置中任意填写。
openssl req -new -key admin-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=A" -out admin.csr
最后,运行以下命令,使用根 CA 证书和私钥为管理员 CSR 签名。管理员证书的输出为 ' admin.pem ' 文件。
openssl x509 -req -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem -days 730
你的管理员证书现在应为 ' admin.pem ' 文件,由根 CA 证书签名。管理员私钥为 ' admin-key.pem ',已转换为 PKCS#8 格式。
输出:

生成节点证书
生成节点证书的过程与生成管理员证书类似。但你可以将 CN 值指定为你的节点主机名或 IP 地址。
使用以下命令生成节点私钥。
openssl genrsa -out node-rock1-key-temp.pem 2048
将节点私钥转换为 PKCS#8 格式。你的节点私钥现在应为 ' node-rock1-key.pem '。
openssl pkcs8 -inform PEM -outform PEM -in node-rock1-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out node-rock1-key.pem
接下来,为节点证书创建一个新的 CSR。请务必将 ' CN ' 值替换为你节点的主机名。此证书与主机绑定,你必须将 CN 值指定为你的 OpenSearch 节点的主机名或 IP 地址。
openssl req -new -key node-rock1-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=node-rock1.hwdomain.lan" -out node-rock1.csr
在为节点证书签名之前,运行以下命令创建一个 SAN 扩展文件 ' node-rock1.ext '。该文件将包含节点的主机名或 FQDN 或 IP 地址。
echo 'subjectAltName=DNS:node-rock1.hwdomain.lan' > node-rock1.ext
最后,使用根 CA 证书和私钥,通过以下命令为节点证书 CSR 文件签名。
openssl x509 -req -in node-rock1.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out node-rock1.pem -days 730 -extfile node-rock1.ext
这样,你的节点证书为 ' node-rock1.pem ' 文件,私钥为 ' node-rock1-key.pem '。
输出:

配置证书
运行以下命令,移除临时证书、CSR 和 SAN 扩展文件。
rm *temp.pem *csr *ext
ls
将根 CA 证书转换为 .crt 格式。
openssl x509 -outform der -in root-ca.pem -out root-ca.crt
使用以下命令将根 CA 证书添加到你的 Rocky Linux 系统中。将 root-ca.crt 文件复制到 ' /etc/pki/ca-trust/source/anchors/ ' 目录,并将新的根 CA 证书加载到你的系统。
sudo cp root-ca.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust
输出:

最后,运行以下命令设置证书的正确权限和所有权。目录 '/etc/opensearch/certs' 的所有权应归属于用户 ' opensearch ',权限为 0700。对于所有证书文件,权限应为 0600。
sudo chown -R opensearch:opensearch /etc/opensearch/certs
sudo chmod 0700 /etc/opensearch/certs
sudo chmod 0600 /etc/opensearch/certs/*.pem
sudo chmod 0600 /etc/opensearch/certs/*.crt

将 TLS 证书添加到 OpenSearch
生成 TLS 证书后,根 CA 证书、管理员证书和节点证书已经就绪。接下来,你将把证书添加到 OpenSearch 配置文件 '/etc/opensearch/opensearch.yml' 中。在本示例中,你将创建一个新的 bash 脚本,用于向 OpenSearch 添加证书和 TLS 安全插件设置。
使用下面的 nano 编辑器命令创建一个新文件 ' add.sh '。
nano add.sh
将以下行添加到文件中。请务必更改并使用你的证书文件和目标 OpenSearch 配置文件的正确路径。
#! /bin/bash # Before running this script, make sure to replace the CN in the # node's distinguished name with a real DNS A record. echo "plugins.security.ssl.transport.pemcert_filepath: /etc/opensearch/certs/node-rock1.pem" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.ssl.transport.pemkey_filepath: /etc/opensearch/certs/node-rock1-key.pem" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.ssl.transport.pemtrustedcas_filepath: /etc/opensearch/certs/root-ca.pem" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.ssl.http.enabled: true" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.ssl.http.pemcert_filepath: /etc/opensearch/certs/node-rock1.pem" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.ssl.http.pemkey_filepath: /etc/opensearch/certs/node-rock1-key.pem" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.ssl.http.pemtrustedcas_filepath: /etc/opensearch/certs/root-ca.pem" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.allow_default_init_securityindex: true" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.authcz.admin_dn:" | sudo tee -a /etc/opensearch/opensearch.yml echo " - 'CN=A,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.nodes_dn:" | sudo tee -a /etc/opensearch/opensearch.yml echo " - 'CN=node-rock1.hwdomain.lan,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.audit.type: internal_opensearch" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.enable_snapshot_restore_privilege: true" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.check_snapshot_restore_write_privileges: true" | sudo tee -a /etc/opensearch/opensearch.yml echo "plugins.security.restapi.roles_enabled: [\"all_access\", \"security_rest_api_access\"]" | sudo tee -a /etc/opensearch/opensearch.yml
完成后保存并退出文件。
接下来,使文件 ' add.sh ' 可执行并执行它。OpenSearch 的新 TLS 安全插件配置应被添加到 OpenSearch 配置文件 ' /etc/opensearch/opensearch.yml ' 中。
chmod +x add.sh
./add.sh
输出:

如果你查看 OpenSearch 配置文件 ' /etc/opensearch/opensearch.yml' ,你应该会看到由脚本 ' add.sh ' 生成的新设置。
现在,你已经将 TLS 证书添加到 OpenSearch 并启用了安全插件。在下一步,你将通过在 OpenSearch 上创建一个新用户,使用身份认证与授权来保护 OpenSearch。
设置 OpenSearch 管理员用户
首先,通过执行下面的 cd 命令,将你的工作目录切换到 '/usr/share/opensearch/plugins/opensearch-security/tools'。
cd /usr/share/opensearch/plugins/opensearch-security/tools
执行 ' hash.sh ' 脚本,为 OpenSearch 生成一个新的密码哈希。输入你将创建的密码并按 ENTER。
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./hash.sh
你应该会得到生成的密码哈希。请复制该哈希,因为你需要将该哈希密码添加到 OpenSearch 配置中。

重新运行 'hash.sh ' 脚本,生成另一个将用于 OpenSearch Dashboards 的密码哈希。
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./hash.sh
至此,你已经为 OpenSearch 生成了两个哈希密码。
接下来,使用下面的 nano 编辑器命令打开 OpenSearch 用户配置文件 ' /etc/opensearch/opensearch-security/internal_users.yml '。你现在将通过 OpenSearch Security 设置 OpenSearch 用户。
sudo nano /etc/opensearch/opensearch-security/internal_users.yml
删除所有默认的 OpenSearch 用户,并替换为以下行。请务必将哈希密码替换为你生成的密码。在本示例中,你将为 OpenSearch 创建两个用户,一个是 OpenSearch 的 ' admin ' 用户,另一个是供 OpenSearch Dashboards 使用的 ' kibanaserver ' 用户。
... ... admin: hash: "$2y$12$BnfqwqWRi7DkyuPgLa8.3.kLzdpIY11jFpSXTAOKOMCVj/i20k9oW" reserved: true backend_roles: - "admin" description: "Admin user" kibanaserver: hash: "$2y$12$kYjgPjPzIp9oTghNdWIHcuUalE99RqSYtTCh6AiNuS5wmeEaWnbzK" reserved: true description: "Demo OpenSearch Dashboards user"
完成后保存并退出文件。

现在执行以下 systemctl 命令以重启 OpenSearch 服务并应用更改。
sudo systemctl restart opensearch
现在切换到目录 ' /usr/share/opensearch/plugins/opensearch-security/tools ',并调用脚本 ' securityadmin.sh ',以在 OpenSearch Security 上应用新的更改。
cd /usr/share/opensearch/plugins/opensearch-security/tools
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./securityadmin.sh -h 192.168.5.25 -p 9200 -cd /etc/opensearch/opensearch-security/ -cacert /etc/opensearch/certs/root-ca.pem -cert /etc/opensearch/certs/admin.pem -key /etc/opensearch/certs/admin-key.pem -icl -nhnv
脚本 ' securityadmin.sh ' 将连接到运行在 IP 地址 ' 192.168.5.25 '、默认端口 ' 9200 ' 上的 OpenSearch 服务器。然后,将你在文件 ' /etc/opensearch/opensearch-security/internal_users.yml ' 中配置的新用户应用到 OpenSearch 部署中。

最后,在通过 ' securityadmin.sh ' 脚本添加并应用新用户之后,你现在可以通过下面的 curl 命令验证 OpenSearch 用户。请务必将主机名或 IP 地址,以及 OpenSearch 的用户名和密码替换为你自己的。
curl https://node-rock1:9200 -u admin:password -k
curl https://node-rock1:9200 -u kibanaserver:kibanapass -k
如果用户的配置成功,你应该会收到类似以下的输出:
验证 OpenSearch 用户 ' admin '。

验证 OpenSearch 用户 ' kibanaserver '。

至此,你已经在 Rocky Linux 9 服务器上通过 RPM 软件包完成了 OpenSearch 的安装,并通过 TLS 证书保护了 OpenSearch 部署,同时借助 OpenSearch Security 插件启用了用户身份认证与授权。
在下一步,你将安装 OpenSearch Dashboards,并使用你创建的 'kibanaserver' 新用户将你的 OpenSearch 服务器添加进去。
安装 OpenSearch Dashboards
由于 OpenSearch 仓库仍使用传统的 SHA1 哈希来验证 OpenSearch Dashboards 软件包,因此你必须将 Rocky Linux 上默认的加密策略更改为 LEGACY。
运行以下命令,将默认的加密策略更新为 LEGACY。
sudo update-crypto-policies --set LEGACY
接下来,通过下面的 curl 命令将 OpenSearch Dashboards 仓库添加到你的系统中。
sudo curl -SL https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/opensearch-dashboards-2.x.repo -o /etc/yum.repos.d/opensearch-dashboards-2.x.repo
然后验证你系统上的可用仓库列表。你应该会在仓库列表中看到可用的 'OpenSearch Dashboard 2.x' 仓库。
sudo dnf repolist
输出:

现在执行以下 dnf 命令,安装 OpenSearch Dashboards 软件包。当提示时,输入 y 确认并按 ENTER 继续。
sudo dnf install opensearch-dashboards

在安装过程中,你还会被提示接受 OpenSearch Dashboards 仓库的 GPG 密钥。输入 y 并按 ENTER 确认。

OpenSearch Dashboards 安装完成后,运行下面的 systemctl 命令以启动并启用 'opensearch-dashboard' 服务。OpenSearch Dashboards 现在应以默认配置运行,并且应已启用,这意味着该服务会在系统启动时自动启动。
sudo systemctl start opensearch-dashboards
sudo systemctl enable opensearch-dashboards

验证 OpenSearch Dashboards 服务,确保该服务正在运行。
sudo systemctl status opensearch-dashboards
你应该会收到类似以下的输出——OpenSearch Dashboards 服务的状态为正在运行,并且现在也已启用,会在系统启动时自动运行。

现在进入下一步,配置你的 OpenSearch Dashboards 安装。
配置 OpenSearch Dashboards
在这一步,你将设置 OpenSearch Dashboards 应在哪个 IP 地址和端口上运行,同时你还将建立与 OpenSearch 服务器的连接。
使用下面的 nano 编辑器打开 OpenSearch Dashboards 配置文件 ' /etc/opensearch-dashboards/opensearch-dashboard.yml '。
sudo nano /etc/opensearch-dashboards/opensearch-dashboard.yml
取消注释并使用以下行修改默认参数 'server.port' 和 ' server.host '。默认的 OpenSearch Dashboards 将在端口 ' 5601 ' 上运行,请务必将 'server.host' 参数调整为你的服务器 IP 地址。
# OpenSearch Dashboards is served by a back end server. This setting specifies the port to use. server.port: 5601 # Specifies the address to which the OpenSearch Dashboards server will bind. IP addresses and host names are both valid values. # The default is 'localhost', which usually means remote machines will not be able to connect. # To allow connections from remote users, set this parameter to a non-loopback address. server.host: "192.168.5.25"
转到配置的末尾,修改用于连接 OpenSearch 服务器的 OpenSearch 参数详情。请务必将 ' opensearch.hosts '、' opensearch.username ' 和 ' opensearch.password ' 参数替换为你 OpenSearch 服务器的信息。
opensearch.hosts: [https://192.168.5.25:9200] opensearch.ssl.verificationMode: none opensearch.username: kibanaserver opensearch.password: kibanapass
完成后保存文件并退出编辑器。

接下来,运行下面的 systemctl 命令以重启 OpenSearch Dashboards 服务并应用更改。
sudo systemctl restart opensearch-dashboards
这样,OpenSearch Dashboards 应该在 IP 地址 ' 192.168.5.25 '、端口 ' 5601 ' 上运行。同时,OpenSearch Dashboards 将以用户 'kibanaserver' 的身份连接到 OpenSearch 服务器。
访问 OpenSearch Dashboards
至此,你已经完成了 OpenSearch Dashboards 的安装与配置。现在你将通过 Web 浏览器访问它来验证 OpenSearch Dashboards 的安装,并通过 ' Dev Tools '(开发工具)验证与 OpenSearch 服务器的连接。
在访问 OpenSearch Dashboards 之前,你必须在 firewalld 上开放端口 5601。
执行以下 firewall-cmd 命令以开放 TCP 端口 5601。然后重新加载 firewalld 以应用更改。
sudo firewall-cmd --add-port=5601/tcp --permanent
sudo firewall-cmd --reload
接下来,使用下面的命令验证 firewalld 上的规则列表。你应该会看到端口 5601 已在 firewalld 上开放。
sudo firewall-cmd --list-all

现在打开你的 Web 浏览器,访问带有端口 5601 的 OpenSearch Dashboards IP 地址(即:http://192.168.5.25:5601)。你现在会看到 OpenSearch Dashboards 的登录页面。
输入你创建的用户名和密码。在本示例中,用户为 'kibanaserver'。然后点击 ' Log in '(登录)按钮进行确认并登录到 OpenSearch Dashboards。

成功后,你应该会看到如下页面,并显示消息 ' Welcome to OpenSearch Dashboards '(欢迎使用 OpenSearch Dashboards)。你现在可以点击 ' Add data '(添加数据)向你的 OpenSearch 服务器添加新数据,或者点击 'Explore my own'(探索我自己的)稍后再进行设置。

接下来,为确保 OpenSearch Dashboards 已连接到 OpenSearch 服务器,请执行以下步骤:
点击左侧菜单,进入 Management(管理)部分,然后点击 ' Dev Tools '(开发工具)。

现在在控制台上输入 'GET /' 查询,并点击播放按钮。成功后,你应该会在右侧看到包含你的 OpenSearch 服务器详细信息的输出。同时,你可以在右上角看到 HTTP 状态码 ' 200 - OK ',这表明查询已无错误地执行。

至此,你已经通过 RPM 软件包在 Rocky Linux 服务器上安装了 OpenSearch Dashboards。同时,你已经将 OpenSearch Dashboards 配置为连接到 OpenSearch 服务器。
总结
在本文中,你已经在 Rocky Linux 9 服务器上通过 RPM 安装了 OpenSearch。你还使用 TLS 证书保护了 OpenSearch 的安全,启用了身份认证与授权,并在 OpenSearch 中配置了用户。此外,你还对 Rocky Linux 服务器进行了配置和优化,以便部署 OpenSearch。
你还在 Rocky Linux 9 服务器上通过 RPM 安装了 OpenSearch Dashboards。你已成功配置 OpenSearch Dashboards 并将其连接到 OpenSearch 服务器(已启用身份认证),并成功验证了 OpenSearch 与 OpenSearch Dashboards 的安装。
通过此配置,你可以通过部署 OpenSearch 集群、设置更多身份认证等方式进一步探索 OpenSearch。你可以从 OpenSearch 的官方文档中了解更多相关信息。