暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

数据平台:Ceph介绍和安装

码奋 2024-11-07
56


1.Ceph简介

Ceph 是一个分布式存储系统,旨在提供高可用、高可靠和高扩展性的数据存储解决方案。它最初是由 Inktank 开发的,后被 Red Hat 收购。Ceph 具有以下几个关键特性:
统一存储:Ceph 提供对象存储、块存储和文件系统存储等多种存储接口,能够满足不同类型的存储需求。
对象存储(RADOS):适合海量数据存储,支持RESTful API。
文件系统(CephFS):为虚拟化和云平台提供块设备支持。
文件系统(CephFS):基于对象存储的分布式文件系统,提供POSIX兼容的文件系统接口。
高可用性:Ceph通过数据复制和纠删码等技术,确保数据的可靠性和高可用性,自动在多个节点间复制数据,并在节点失效时自动恢复。
弹性扩展:Ceph 可以通过增加新的节点来横向扩展,适应数据量的增长,无需停机或重新配置。
自我修复:Ceph 在出现硬件故障或节点失效时,能够自动修复并重新平衡数据,确保存储池的一致性和完整性。
分布式架构:Ceph 使用 CRUSH 算法来实现数据的分布和映射,避免了传统存储系统中的集中式元数据管理瓶颈。
开源和社区支持:Ceph 是一个完全开源的项目,得到了全球社区的广泛支持。

2.Ceph 的架构可以分为以下几个主要组件:

Ceph OSD (Object Storage Daemon):负责存储数据并提供数据的读写操作。每个 OSD 进程管理一组磁盘。
Ceph Monitor (MON):维护集群的状态,包括集群配置、成员信息以及映射信息。每个 Ceph 集群通常有 3 个或更多 MON 节点来确保高可用性。
Ceph Manager (MGR):提供集群的管理、监控和接口功能。MGR 通常是集群的管理节点,负责集群的健康监控和性能调优。
Ceph MDS (Metadata Server):为 CephFS 提供文件系统的元数据管理。每个 CephFS 都需要至少一个 MDS。
Ceph Client:访问 Ceph 存储的应用程序或系统,如虚拟化、备份系统、Web 服务等。

3.Ceph 安装步骤

下面是安装 Ceph 的基本步骤假设我们使用的是 CentOS 7 操作系统,步骤包括集群的配置和 Ceph 服务的安装。
1. 准备环境
确保你有至少 3 个节点来部署 Ceph 集群,通常包括:
1 个或多个 Ceph Monitor 节点
多个 OSD 节点来存储数据
Ceph Manager 和 Ceph MDS 节点
2. 安装 Ceph 仓库
在所有节点上安装 Ceph 仓库。
    sudo yum install -y centos-release-ceph
    sudo yum install -y epel-release
    sudo yum install -y ceph-deploy
    3. 配置 Ceph Monitor 节点
    选择一个节点作为 Ceph Monitor 节点,安装并配置 Ceph Monitor。
      # 在 Monitor 节点上
      sudo yum install -y ceph ceph-deploy


      # 初始化 Ceph 集群
      ceph-deploy new <mon-node>


      # 创建并配置 Ceph Monitor
      ceph-deploy install <mon-node>
      ceph-deploy mon create-initial


      4. 配置 OSD 节点
      接下来,需要在至少一个 OSD 节点上配置 OSD。OSD 是 Ceph 集群的存储组件。
        # 安装 OSD
        ceph-deploy osd create --data dev/sdb <osd-node>


        # 验证 OSD 是否正常启动
        ceph osd tree


        5. 配置 Ceph Manager 和 Ceph MDS
        安装 Ceph Manager 和 Ceph MDS(如果使用 CephFS 文件系统):
          # 安装 Ceph Manager
          ceph-deploy mgr create <mgr-node>


          # 如果使用 CephFS,还需要安装 MDS
          ceph-deploy mds create <mds-node>


          6. 部署 Ceph 文件系统(CephFS) (如果需要)
          如果需要使用 CephFS 文件系统,可以创建并部署 CephFS。
            # 创建文件系统 
            ceph fs volume create cephfs
            # 检查文件系统状态
            ceph fs status
            7. 验证安装
            使用以下命令检查集群状态,确保所有组件都正常运行:
              # 查看 Ceph 集群状态 
              ceph -s
              # 查看集群的健康状态
              ceph health
              8. 客户端配置
              在需要访问 Ceph 存储的客户端上,配置 Ceph 客户端并安装必要的软件包:
                # 安装 Ceph 客户端 
                sudo yum install -y ceph ceph-common
                # 配置 Ceph 客户端
                ceph -s
                9. 扩展集群
                如果需要扩展集群,可以通过添加更多的 OSD 或 Monitor 节点来增加集群的容量和可靠性。
                  ceph-deploy osd create --data dev/sdc
                  常见问题和解决办法
                  数据不平衡:如果在 Ceph 集群中发现数据分布不均,可能需要手动触发数据重平衡:
                    ceph osd reweight-by-utilization
                    Ceph 集群健康检查:定期检查 Ceph 集群的健康状态,确保没有出现不正常的状态。
                      ceph health detail
                      OSD 下线:如果某个 OSD 节点失效,Ceph 会自动进行数据迁移和修复。



                      往期推荐
                      01

                      开源的商业智能BI:Apache Superset介绍&安装

                      02

                      开源的商业智能BI:Metabase介绍&安装

                      03

                      数据平台:下一代大数据存储?Ozone

                      文章转载自码奋,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                      评论