1. 环境准备

1.1 系统要求

  • 操作系统:Linux(推荐CentOS 7+/Ubuntu 18.04+)
  • 内存:最小8GB,推荐16GB+
  • 存储:SSD推荐,至少100GB可用空间
  • 网络:千兆以太网

1.2 依赖软件

# 安装基础依赖
sudo yum install -y gcc gcc-c++ make cmake
sudo yum install -y python3 python3-pip
sudo yum install -y git wget curl

2. 源码编译安装

2.1 获取源码

# 克隆MDFS源码
git clone https://github.com/mdfs/mdfs.git
cd mdfs

2.2 编译配置

# 创建构建目录
mkdir build && cd build

# 配置编译选项
cmake .. -DCMAKE_BUILD_TYPE=Release \
         -DCMAKE_INSTALL_PREFIX=/opt/mdfs

# 编译安装
make -j$(nproc)
sudo make install

3. 集群部署

3.1 节点规划

节点类型     | 数量 | 配置要求
------------|------|----------
Monitor     | 3    | 2核4GB
MDS         | 3    | 4核8GB
OSD         | 6+   | 8核16GB

3.2 Monitor节点部署

# 初始化Monitor配置
sudo /opt/mdfs/bin/mdfs-mon --mkfs \
    --cluster mdfs-cluster \
    --mon-id node1

# 启动Monitor服务
sudo systemctl start mdfs-mon
sudo systemctl enable mdfs-mon

3.3 MDS节点部署

# 创建MDS数据目录
sudo mkdir -p /var/lib/mdfs/mds
sudo chown mdfs:mdfs /var/lib/mdfs/mds

# 初始化MDS
sudo /opt/mdfs/bin/mdfs-mds --mkfs \
    --cluster mdfs-cluster \
    --id mds1

# 启动MDS服务
sudo systemctl start mdfs-mds
sudo systemctl enable mdfs-mds

3.4 OSD节点部署

# 准备存储设备
sudo fdisk /dev/sdb  # 创建分区
sudo mkfs.xfs /dev/sdb1

# 创建OSD
sudo /opt/mdfs/bin/mdfs-osd --mkfs \
    --cluster mdfs-cluster \
    --id osd.0 \
    --osd-data /var/lib/mdfs/osd.0

# 启动OSD服务
sudo systemctl start mdfs-osd@0
sudo systemctl enable mdfs-osd@0

4. 配置文件

4.1 主配置文件

# /etc/mdfs/mdfs.conf
[global]
fsid = 12345678-1234-1234-1234-123456789012
mon_initial_members = node1,node2,node3
mon_host = 192.168.1.10,192.168.1.11,192.168.1.12
public_network = 192.168.1.0/24
cluster_network = 192.168.2.0/24

[mon]
mon_data = /var/lib/mdfs/mon

[mds]
mds_data = /var/lib/mdfs/mds

[osd]
osd_data = /var/lib/mdfs/osd.$id
osd_journal_size = 10240

4.2 认证配置

# 生成认证密钥
sudo /opt/mdfs/bin/mdfs-authtool --create-keyring \
    /etc/mdfs/mdfs.client.admin.keyring

# 设置权限
sudo chmod 600 /etc/mdfs/mdfs.client.admin.keyring

5. 服务管理

5.1 服务启动顺序

# 1. 启动Monitor
sudo systemctl start mdfs-mon

# 2. 启动MDS
sudo systemctl start mdfs-mds

# 3. 启动OSD
sudo systemctl start mdfs-osd@*

5.2 集群状态检查

# 检查集群健康状态
sudo /opt/mdfs/bin/mdfs -s

# 检查OSD状态
sudo /opt/mdfs/bin/mdfs osd tree

# 检查MDS状态
sudo /opt/mdfs/bin/mdfs mds stat

6. 客户端配置

6.1 内核客户端

# 挂载文件系统
sudo mount -t mdfs 192.168.1.10:6789:/ /mnt/mdfs \
    -o name=admin,secret=AQD...==

6.2 FUSE客户端

# 安装FUSE客户端
sudo /opt/mdfs/bin/mdfs-fuse /mnt/mdfs \
    -m 192.168.1.10:6789

7. 故障排除

7.1 常见问题

  • 时钟同步问题
  • 网络连接问题
  • 权限配置问题
  • 存储空间不足

7.2 日志分析

# 查看系统日志
sudo journalctl -u mdfs-mon
sudo journalctl -u mdfs-mds
sudo journalctl -u mdfs-osd@0

# 查看MDFS日志
sudo tail -f /var/log/mdfs/mdfs.log

小结

本章详细介绍了MDFS的安装部署过程,包括环境准备、源码编译、集群部署和配置管理。正确的部署是MDFS稳定运行的基础。

下一章将介绍MDFS的基本操作和文件系统管理。