在 Amazon Web Services (AWS) 上部署 Meilisearch 实例
使用我们的 Meilisearch AMI,Meilisearch 可以在几分钟内在 AWS 上部署完成。
以下指南将引导您完成在 AWS EC2 实例中部署 Meilisearch 的每个步骤。 如果您的 AWS 镜像有任何问题,请在此存储库中创建一个 issue。
请参阅 AWS 的文档,以了解有关创建和配置实例的更多信息。
第一部分:部署开箱即用的 Meilisearch 实例
1. 从 AWS 控制台启动实例
登录您的 AWS 控制台后,导航至“计算”服务。然后转到“EC2”,最后打开您的“实例”控制台。
在右上角,单击“启动实例”按钮以开始配置 Meilisearch 实例的过程。
2. 从“社区 AMI”中选择“Meilisearch” AMI
现在,您将选择要用来运行实例的 AMI 或系统镜像。在搜索栏中键入 meilisearch
,然后在左侧边栏中选择“社区 AMI”选项卡。 Meilisearch 的所有者 ID 为 567502172578。
单击“选择”(屏幕右侧)以确认您的选择。
3. 大小和规格
选择您希望 Meilisearch 运行的服务器的规格。
我们建议优先分配内存,以获得更好的 Meilisearch 性能。
提示
免费套餐足以进行测试或原型设计,但不建议用于大型数据集。
选择完成后,单击“下一步:配置实例详细信息”继续。
4. 实例详细信息
在这里,您可以指定 实例的详细信息。由于本节不是运行 Meilisearch 所必需的,因此我们不会在本指南中介绍它。
单击“下一步:添加存储”继续。
5. 存储
为您的 Meilisearch 实例选择存储设备和大小。
所需的存储空间量可能会根据您计划索引的数据而差异很大。在此示例中,我们将使用 25 GiB,对于大多数小型数据集(< 100 万个文档)来说,这已足够。我们将“卷类型”设置为“通用 SSD (gp2)”。
准备就绪后,单击“下一步:添加标签”继续。
6. 标签
标签用于在 AWS 中标识您的资源。Meilisearch 不需要它们。
单击“下一步:配置安全组”。
7. 安全组:网络和连接
为了使您的 Meilisearch 实例能够与外界通信,允许 SSH 连接、HTTP 和 HTTPS 流量非常重要。
- 单击“添加规则”,然后从下拉菜单中选择“SSH”。这将打开 SSH 端口 (22)
- 单击“添加规则”,然后从下拉菜单中选择“HTTP”。这将打开 HTTP 端口 (80)
- 单击“添加规则”,然后从下拉菜单中选择“HTTPS”。这将打开 HTTPS 端口 (443)
默认情况下,打开的端口接受来自任何来源的入站流量。如果您希望限制允许请求您的 Meilisearch 实例的 IP 地址,请转到“来源”列并选择“自定义”选项。“来源”默认设置为“任何位置”。
如果需要,您也可以使用现有的安全组。
配置看起来与上面的图像类似后,单击“查看和启动”。
8. 设置并下载密钥对
查看实例配置后,在启动实例之前,还有最后一步。
点击“启动”,将会弹出一个窗口,要求您选择一个密钥对。这个密钥对非常重要,因为它是您通过 SSH 访问实例的私钥,这是在生产环境中配置 Meilisearch 实例所必需的。
如果您已经有现有的密钥对,可以使用它。否则,请选择“创建新的密钥对”选项并为其命名。然后,点击“下载密钥对”并将此文件存储在安全的地方。
下载密钥对后(且仅在下载后),点击“启动实例”,然后点击“查看实例”。
9. 享受在 AWS 上运行的 Meilisearch 实例!
您的实例可能需要一两分钟才能启动并运行(请查看“实例状态”列)。
一旦“实例状态”变为“运行中”,请使用您的 Web 浏览器导航至 AWS 实例仪表板中显示的“公共 IPv4 地址”或“公共 IPv4 DNS”。您应该会看到 Meilisearch 本地预览。
您的 Meilisearch 实例现在可以使用了!
请记住,您的 Meilisearch 实例目前运行在开发环境中,这对于生产使用是不安全的。如果您想设置生产环境,请继续阅读下一节。
否则,如果您想开始创建索引和添加文档,请随时查看我们的入门指南或API 参考。
当然,尽情享受吧!
第二部分:配置生产设置
在生产环境中配置 Meilisearch 实例不仅直接,而且是完全自动化的。只需与您的实例建立 SSH 连接,脚本就会指导您完成整个过程。
1. 将您的域名指向您的实例 IP
如果您想使用自己的域名(或子域名),请在您的域名提供商帐户中添加一个 A 记录
。否则,您可以跳过此步骤。
您的域名现在应该已链接到您的 Meilisearch 实例。运行健康检查以验证您的实例是否正在运行并且您的 DNS 配置正确
curl -v http://<your-domain-name>/health
服务器应返回 200 OK
状态代码,如下例所示
...
< HTTP/1.1 200 OK
...
2. 设置 API 密钥和 SSL (HTTPS)
Meilisearch 目前运行在开发环境中。您尚未设置 API 密钥,这意味着任何人都可以从您的 Meilisearch 中读取/写入,并且您尚未启用 HTTPS,这使得此配置对于生产是不安全的。
要启动配置过程,请通过 SSH 连接到您的新 Meilisearch 实例,并按照出现的说明操作。
2.1. 保护您的密钥对
打开终端窗口,并导航到您保存密钥对的位置。它应该是一个 .pem
文件。
运行以下命令以保护您的密钥对。
chmod 400 <YourMeilisearchKeyPair>.pem
2.2. 运行配置脚本
接下来,使用“admin”作为用户名,通过 SSH 连接到公共 IPv4 地址或您的域名。您还需要提供您的 .pem
文件的相对路径。
ssh -i <relative-path-to-your-key-pair> admin@<your-ipv4-address>
ssh -i <relative-path-to-your-pem-file> admin@<your-domain-name>
您应该会看到类似这样的内容
________________________________________________
________________________________________________
_ _ _ __ _
/\/\ ___(_) (_) _\ ___ __ _ _ __ ___| |__
/ \ / _ \ | | \ \ / _ \/ _` | '__/ __| '_ \
/ /\/\ \ __/ | | |\ \ __/ (_| | | | (__| | | |
\/ \/\___|_|_|_\__/\___|\__,_|_| \___|_| |_|
________________________________________________
________________________________________________
当询问您是否要在生产环境中使用 Meilisearch 时,输入 yes
并按 Enter
键以接受身份验证过程。
一个脚本将自动运行,要求您提供设置和所需的配置。如果您想随时再次运行此脚本,可以使用以下命令
meilisearch-setup
3. 享受您即用型的 Meilisearch 实例
您的 Meilisearch 实例已在 AWS 上启动并运行,并且已准备好在生产中使用。
要检查一切是否运行顺畅,请再次对 /health
路由进行 HTTP 调用
curl -v https://<your-domain-name>/health
请注意,这次我们使用的是 HTTPS。
服务器应返回 200 OK
状态代码,如下例所示
...
< HTTP/1.1 200 OK
...
您已准备好在 AWS 上在生产中使用 Meilisearch!如果您对我们的 AWS 镜像有任何问题,请在此存储库中创建一个问题。