在 AWS 上部署 ParadeDB

本节将指导您如何在 AWS 实例上部署 ParadeDB。您需要拥有 AWS 账户,并可选地安装 AWS CLI。

选择 AWS EC2 实例

实例类型

第一步是启动一个 EC2 实例。如果您正在寻找一个生产就绪的设置,我们建议使用存储优化型实例,如 i3d3 系列。如果您只是进行测试或需要开发环境,您可以使用通用型实例,如 t3m5 系列。

存储

我们建议您使用 EBS 卷为您的实例添加存储。通常,对于索引和搜索,建议使用快速的 SSD 存储。对于开始使用,通用目的存储就足够了。然而,如果您正在寻找更高性能的设置,您可以使用 io1io2 这样的预配置 IOPS 卷。实例至少需要 16GB 的存储空间来安装 ParadeDB,此外还需要存储您预计会在 PostgreSQL 数据库中存储的任何数量的数据。

AMI

您可以使用任何 AMI,只要您可以在其中安装 Docker 和 Docker-compose。我们建议使用最新的 Ubuntu LTS AMI。

在您选择了适合您需求的实例后,您可以通过控制台使用“启动实例”按钮启动实例,或者您可以使用 AWS CLI 来执行此操作。

网络

创建一个 EC2 安全组,并在 ParadeDB 将被暴露的端口上设置入站规则,默认为 5432。

安装 ParadeDB

步骤 1:连接到实例

打开终端或命令提示符,导航到您保存与 EC2 实例关联的 *.pem 文件的目录。使用 SSH 连接到实例:

  1. ssh -i "your-key-file.pem" ubuntu@your-instance-public-ip

步骤 2:在实例上安装 Docker 引擎

下面的说明假设您使用的是基于 Debian 的镜像。如果您选择了不同的 AMI,您将需要使用适当的包管理器(即 yum 等)。更新已安装的包并添加 Docker 仓库:

  1. # 添加 Docker 的官方 GPG 密钥:
  2. sudo apt-get update
  3. sudo apt-get install ca-certificates curl gnupg
  4. sudo install -m 0755 -d /etc/apt/keyrings
  5. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  6. sudo chmod a+r /etc/apt/keyrings/docker.gpg
  7. # 将仓库添加到 Apt 源:
  8. echo \
  9. "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  10. "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  11. sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  12. sudo apt-get update

安装 Docker:

  1. sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

允许非 root 用户使用:

  1. sudo groupadd docker
  2. sudo usermod -aG docker $USER
  3. # 激活组的更改
  4. newgrp docker

将用户添加到 Docker 组后,建议注销并重新登录以使更改生效。

步骤 3:运行 ParadeDB 镜像

拉取并运行 ParadeDB Docker 镜像:

  1. docker run \
  2. --name paradedb \
  3. -e POSTGRESQL_USERNAME=<user> \
  4. -e POSTGRESQL_PASSWORD=<password> \
  5. -e POSTGRESQL_DATABASE=<dbname> \
  6. -e POSTGRESQL_POSTGRES_PASSWORD=<superuser_password> \
  7. -v paradedb_data:/bitnami/postgresql \
  8. -p 5432:5432 \
  9. -d \
  10. paradedb/paradedb:latest

验证 PostgreSQL 服务器是否正在运行:

  1. psql postgresql://your-user:your-password@your-instance-ip:5432/your-db

确保您的实例可以在 PostgreSQL 运行的 TCP 端口上接受连接。

就是这样!您现在可以连接到您的 ParadeDB 实例并开始编写查询。