在当今大数据和云计算时代,Ubuntu分布式文件系统成为企业构建高可用、可扩展存储架构的重要选择。本文将带你从零开始,在Ubuntu系统上部署一个基于Ceph的分布式存储部署环境。即使你是Linux新手,也能轻松上手!

什么是Ceph?
Ceph是一个开源的、统一的分布式文件系统,提供对象存储、块设备和文件系统三种接口。它具备高可靠性、高性能和自动故障恢复能力,非常适合用于构建大规模存储集群。
准备工作
本教程假设你有三台运行Ubuntu 20.04或22.04的服务器(也可以使用虚拟机),分别命名为:
ceph-admin:管理节点 ceph-node1:OSD节点1 ceph-node2:OSD节点2确保所有节点之间可以通过主机名互相解析,并配置SSH免密登录。
步骤一:配置SSH免密登录(在ceph-admin上操作)
在每台机器上执行以下命令: 执行完成后,你会看到一个Web仪表盘地址(如 https://ceph-admin:8443),以及初始密码。请妥善保存。 在ceph-admin上执行以下命令,将其他节点加入集群: 假设每个节点都有一个空闲磁盘 /dev/sdb,执行: 稍等几分钟,Ceph会自动格式化磁盘并启动OSD服务。 如果输出中显示 通过本教程,你已经成功在Ubuntu上部署了一个基础的Ceph分布式文件系统。这不仅为你提供了可靠的存储解决方案,也为后续学习Kubernetes集成、对象存储网关(RGW)等高级功能打下坚实基础。 如果你正在寻找企业级、可横向扩展的存储方案,那么掌握Ceph安装教程绝对是值得的投资。赶快动手试试吧!# 生成SSH密钥(一路回车即可)ssh-keygen# 将公钥复制到所有节点(包括自己)ssh-copy-id ceph-adminssh-copy-id ceph-node1ssh-copy-id ceph-node2步骤二:在所有节点上安装Ceph依赖
sudo apt updatesudo apt install -y python3-pip ntp chrony# 添加Ceph官方仓库(以Quincy版本为例)sudo apt install -y wgetcurl -fsSL https://download.ceph.com/keys/release.asc | sudo gpg --dearmor -o /usr/share/keyrings/ceph-archive-keyring.gpgecho "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ceph-archive-keyring.gpg] https://download.ceph.com/debian-quincy $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/ceph.listsudo apt update步骤三:在管理节点安装cephadm
# 安装cephadmsudo apt install -y cephadm# 引导Ceph集群(首次初始化)sudo cephadm bootstrap --mon-ip <ceph-admin的IP地址>步骤四:添加OSD节点
# 添加节点(会自动部署ceph-common等组件)sudo ceph orch host add ceph-node1 <ceph-node1的IP>sudo ceph orch host add ceph-node2 <ceph-node2的IP># 查看节点状态sudo ceph orch host ls步骤五:创建OSD(对象存储守护进程)
# 在ceph-admin上为每个节点创建OSDsudo ceph orch apply osd --all-available-devices# 或者手动指定设备sudo ceph orch daemon add osd ceph-node1:/dev/sdbsudo ceph orch daemon add osd ceph-node2:/dev/sdb验证集群状态
# 查看集群健康状态sudo ceph -s# 查看OSD状态sudo ceph osd statusHEALTH_OK,恭喜你!你的Ubuntu集群存储已成功部署。常见问题与优化建议
确保所有节点时间同步(推荐使用chrony) 生产环境建议至少3个MON节点以提高可用性 使用SSD作为日志盘(DB/WAL)可显著提升性能 定期监控集群容量和性能指标结语
