












选择:qdrant-x86_64-unknown-linux-musl.tar.gz 下载安装

这两个文件的核心区别在于它们依赖的C标准库(libc)不同,这直接决定了Qdrant二进制文件的可移植性和运行方式。
| 特性 | ...-linux-gnu.tar.gz |
...-linux-musl.tar.gz |
|---|---|---|
| C标准库 | GNU C 库 (glibc) | musl libc |
| 链接方式 | 动态链接 | 全静态链接 |
| 外部依赖 | 依赖系统已安装的glibc | 无外部依赖,独立运行 |
| 兼容性 | 受限于glibc版本,可能出现“GLIBC_2.xx not found”错误 | 在任何Linux发行版上均可运行 |
| 体积 | 通常较大 | 通常较小 |
选择 ...-linux-musl.tar.gz 的情况:
选择 ...-linux-gnu.tar.gz 的情况:
简单来说,gnu版本更“依赖”你的系统环境,而musl版本则更“独立”和“通用”。如果你不确定如何选择,优先使用 ...-linux-musl.tar.gz 版本通常能避免绝大多数兼容性问题。
在运行前,你可以用 ldd 命令检查二进制文件的动态链接库依赖,从而验证其独立性。
在 CentOS 上安装 Qdrant 的 musl 版本,操作步骤非常直接,无需额外安装依赖库。主要流程是下载、解压并运行。
这里提供一个推荐的生产环境部署方案,它会将 Qdrant 配置为系统服务(systemd)来运行。
你可以直接复制下面的命令块,在 CentOS 终端中依次执行。
1. 下载并安装二进制文件
首先,下载最新的 musl 版本压缩包,并将其解压到 /usr/local/bin/ 目录。
# 下载最新版本的 musl 二进制文件到临时目录
curl -L https://github.com/qdrant/qdrant/releases/latest/download/qdrant-x86_64-unknown-linux-musl.tar.gz -o /tmp/qdrant.tar.gz
# 解压文件到 /usr/local/bin/ 目录
sudo tar -xzf /tmp/qdrant.tar.gz -C /usr/local/bin/
2. 创建专用用户和目录
为了安全和管理方便,创建一个专门的 qdrant 用户和存储数据的目录。
# 创建一个不能登录的 qdrant 用户
sudo useradd -r -s /bin/false qdrant
# 创建数据存储目录
#sudo mkdir -p /var/lib/qdrant/storage /var/lib/qdrant/snapshots
sudo mkdir -p /opt/qdrant/storage /opt/qdrant/snapshots
# 将目录所有权赋予 qdrant 用户
#sudo chown -R qdrant:qdrant /var/lib/qdrant
sudo chown -R qdrant:qdrant /opt/qdrant
3. 创建配置文件
创建一个基础的配置文件 /etc/qdrant/config.yaml,以便更好地控制 Qdrant 的行为。
# 创建配置目录
sudo mkdir -p /etc/qdrant
# 写入基础配置
sudo tee /etc/qdrant/config.yaml > /dev/null <<EOF
storage:
storage_path: /opt/qdrant/storage
snapshots_path: /opt/qdrant/snapshots
service:
host: 0.0.0.0
http_port: 6333
grpc_port: 6334
EOF
4. 创建并启动 systemd 服务
创建 systemd 服务文件,让 Qdrant 能在后台稳定运行,并实现开机自启。
# 创建 systemd 服务文件
sudo tee /etc/systemd/system/qdrant.service > /dev/null <<EOF
[Unit]
Description=Qdrant Vector Database
After=network.target
[Service]
Type=simple
User=qdrant
Group=qdrant
WorkingDirectory=/opt/qdrant
ExecStart=/usr/local/bin/qdrant --config-path /etc/qdrant/config.yaml
Restart=always
[Install]
WantedBy=multi-user.target
EOF
# 重新加载 systemd 配置
sudo systemctl daemon-reload
# 启动 Qdrant 服务并设置开机自启
sudo systemctl enable --now qdrant
安装完成后,可以通过以下命令检查服务状态和运行情况:
检查服务状态:
sudo systemctl status qdrant
如果看到 active (running) 字样,说明服务正在运行。
访问 API 接口:
curl http://localhost:6333/healthz
如果返回类似 {"title":"qdrant - vector search engine","version":"1.x.x"} 的 JSON 信息,则表示 API 服务正常。
常用服务管理命令:
sudo systemctl stop qdrantsudo systemctl restart qdrantsudo journalctl -u qdrant -f防火墙设置:如果需要在其他机器上访问 Qdrant,记得在 CentOS 防火墙中开放 6333 (HTTP) 和 6334 (gRPC) 端口。
sudo firewall-cmd --permanent --add-port=6333/tcp
sudo firewall-cmd --permanent --add-port=6334/tcp
sudo firewall-cmd --reload
验证 musl 版本:如果想确认运行的是 musl 版本,可以用 ldd 命令检查:
ldd /usr/local/bin/qdrant
如果输出是 not a dynamic executable 或 statically linked,就说明它是静态编译的 musl 版本。
# 创建静态文件目录,将 qdrant-web-ui dist 文件传上去
sudo mkdir -p /opt/qdrant/static
# 确保 `qdrant` 用户有权限读取这些文件。
sudo chown -R qdrant:qdrant /var/lib/qdrant/static
# 重启 Qdrant 服务
sudo systemctl restart qdrant
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。