【向量数据库 Milvus】centos8源码安装和部署 Milvus 2.5.3

在龙晰操作系统(LoongArch 架构)的 CentOS 8 环境中通过源码安装和部署 Milvus 2.5.3 可能会面临一些挑战,因为 Milvus 的官方支持主要集中在 x86 和 ARM 架构上。以下是一个详细的安装步骤,但需要注意,某些依赖项可能需要手动适配或编译。


1. 环境准备

确保系统满足以下要求:

  • 操作系统: 龙晰操作系统 CentOS 8(LoongArch 架构)
  • Go: 1.18 或更高版本
  • CMake: 3.18 或更高版本
  • GCC: 7.5 或更高版本
  • Python: 3.7 或更高版本

安装必要的工具和依赖:

bash 复制代码
sudo dnf update
sudo dnf install -y git make cmake gcc gcc-c++ openblas-devel openssl-devel zlib-devel

2. 安装 Go

如果系统没有安装 Go,可以手动安装:

bash 复制代码
wget https://golang.google.cn/dl/go1.23.4.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.23.4.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin

验证 Go 安装:

bash 复制代码
go version

3. 克隆 Milvus 源码

从 GitHub 克隆 Milvus 的源码:

bash 复制代码
git clone https://github.com/milvus-io/milvus.git
cd milvus
git checkout v2.5.3

4. 编译 Milvus

Milvus 依赖一些 C++ 库(如 Faiss、Knowhere),这些库可能需要手动适配 LoongArch 架构。

4.1 修改 CMake 配置

检查 CMakeLists.txtthird-party 目录下的依赖项,确保支持 LoongArch 架构。如果某些库不支持 LoongArch,可能需要手动编译这些库。

4.2 编译

运行以下命令编译 Milvus:

bash 复制代码
make milvus

如果编译过程中遇到错误,可能需要手动修改源码或依赖项以适配 LoongArch 架构。


5. 配置 Milvus

复制并修改配置文件:

bash 复制代码
cp configs/milvus.yaml.example configs/milvus.yaml

根据需要编辑 configs/milvus.yaml,调整存储路径、端口等配置。


6. 启动 Milvus

启动 Milvus 服务:

bash 复制代码
./bin/milvus run

服务启动后,默认监听端口为 19530


7. 验证安装

使用 curl 或 Milvus SDK 验证服务是否正常运行:

bash 复制代码
curl http://localhost:19530/version

如果返回版本信息,说明安装成功。


8. 注意事项

  1. 架构适配问题

    • LoongArch 架构可能不完全兼容 Milvus 的某些依赖项(如 Faiss)。如果遇到问题,可能需要手动编译这些依赖项。
    • 可以参考 LoongArch 社区的文档,寻找适配的库或工具链。
  2. 性能问题

    • LoongArch 架构的性能可能与 x86 或 ARM 有所不同,建议进行性能测试。
  3. 社区支持

    • 如果遇到问题,可以向 Milvus 社区或 LoongArch 社区寻求帮助。

9. 参考文档

通过以上步骤,你应该能够在龙晰操作系统 CentOS 8 上通过源码安装和部署 Milvus 2.5.3。如果遇到架构适配问题,可能需要进一步调整源码或依赖项。

相关推荐
远方16097 分钟前
16-Oracle 23 ai-JSON-Relational Duality-知识准备
数据库·oracle·json
Wooden-Flute12 分钟前
七、数据库的完整性
数据库·oracle
珹洺29 分钟前
数据库系统概论(十七)超详细讲解数据库规范化与五大范式(从函数依赖到多值依赖,再到五大范式,附带例题,表格,知识图谱对比带你一步步掌握)
java·数据库·sql·安全·oracle
TDengine (老段)38 分钟前
TDengine 开发指南——无模式写入
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
TDengine (老段)1 小时前
TDengine 在电力行业如何使用 AI ?
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
观无1 小时前
redis分布式锁
数据库·redis·分布式
Bug.Remove()2 小时前
PostgreSQL数据类型使用
数据库·postgresql
逝水如流年轻往返染尘2 小时前
MySQL中的内置函数
数据库·mysql
咖啡啡不加糖2 小时前
深入理解MySQL死锁:从原理、案例到解决方案
java·数据库·mysql
文牧之2 小时前
PostgreSQL 的扩展pageinspect
运维·数据库·postgresql