openEuler 上部署大模型:从环境准备到对话验证
在 openEuler 上部署大模型,最直接的方式是使用 Ollama。
它把模型下载、运行和 API 服务打包成一条命令,适合零基础用户在服务器上快速跑起一个可对话的本地模型。
下面按实际执行顺序,从系统检查到对话验证完整走一遍。
先确认系统状态和资源余量
动手前先确认 openEuler 版本、内存和磁盘空间。
大模型对内存要求较高,7B 参数模型通常建议至少 8GB 内存,13B 以上建议 16GB 或更多。
cat /etc/openEuler-release
free -h
df -h /
如果内存不足,模型加载会失败或响应极慢。
磁盘方面,一个 7B 模型文件大约 4GB 左右,预留 20GB 以上比较稳妥。
另外确认网络可以访问外部资源,后续需要下载安装脚本和模型文件。
安装 Ollama 并启动服务
Ollama 官方提供 Linux 安装脚本,在 openEuler 上可以直接执行:
curl -fsSL https://ollama.com/install.sh | sh
安装完成后检查服务状态:
systemctl status ollama
如果服务没有自动启动,手动启动并设为开机自启:
systemctl start ollama
systemctl enable ollama
默认情况下 Ollama 监听 127.0.0.1:11434,只允许本机访问。
如果需要局域网内其他机器调用,需要修改服务配置。
拉取模型并测试对话
先用一个较小的模型验证环境是否正常:
ollama run qwen2.5:7b
首次执行会下载模型文件,下载完成后进入交互对话界面。
输入一句简单问题,例如“你好,请介绍一下你自己”,能正常返回内容说明模型运行成功。
退出对话使用 /bye。
查看已下载模型:
ollama list
如果下载速度慢或中断,可以重新执行 ollama run,它会断点续传。
开放远程访问与防火墙配置
要让其他机器通过 API 调用,需要让 Ollama 监听所有地址。
编辑服务配置:
systemctl edit ollama
在打开的编辑器中加入:
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
保存后重载并重启:
systemctl daemon-reload
systemctl restart ollama
如果开启了 firewalld,放行端口:
firewall-cmd --permanent --add-port=11434/tcp
firewall-cmd --reload
验证远程访问,在另一台机器上执行:
curl http://服务器IP:11434/api/tags
返回 JSON 模型列表即表示网络连通。
容易踩坑的几个地方
- 内存不足导致模型加载失败:报错中常出现
out of memory或进程被杀死。优先换更小参数模型,或增加 swap 和物理内存。 - 防火墙未放行:远程 curl 超时,先检查
firewall-cmd --list-ports是否包含 11434。 - SELinux 拦截:openEuler 默认可能启用 SELinux,若服务异常可查看
/var/log/audit/audit.log,测试环境可临时设为 permissive 排查。 - 模型下载中断:确保磁盘空间充足,重新执行拉取命令即可续传,不要手动删除部分下载文件。
- 服务配置未生效:修改
systemctl edit后必须执行daemon-reload再重启,否则环境变量不生效。
验证部署结果
完整验证分三步:本机对话正常、API 接口返回正常、远程访问正常。
本机 API 测试:
curl http://127.0.0.1:11434/api/generate -d '{"model":"qwen2.5:7b","prompt":"你好","stream":false}'
返回中包含 response 字段即表示 API 可用。
远程访问按上一节方法验证。
如果三步都通过,说明 openEuler 上的大模型部署已经完成,可以继续接入其他应用或做性能调优。
常见疑问
openEuler 版本有要求吗?
Ollama 官方安装脚本主要面向主流 Linux 发行版,openEuler 与 CentOS 系兼容度较高,但不同版本可能存在依赖差异。建议使用较新的 openEuler 稳定版本,安装后以 systemctl status ollama 输出为准判断是否正常。
没有独立显卡能跑吗?
可以,Ollama 会使用 CPU 推理,但速度明显慢于 GPU。7B 模型在纯 CPU 上可以运行,适合测试和轻量使用,生产环境建议配合 GPU 或选择更小模型。
模型文件太大,能换小一点的吗?
可以。Ollama 支持不同参数规模的模型标签,例如 qwen2.5:1.5b、qwen2.5:3b 等,按内存情况选择即可,命令格式不变。
服务重启后模型需要重新下载吗?
不需要。模型文件保存在本地目录,重启服务不会删除,ollama list 可以确认已有模型。