k8s 对接 ceph 实现持久化存储

  • Ceph 介绍

  • Ceph 是一个开源的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。它还是一个可靠、自动重均衡、自动恢复的分布式存储系统。主要优点是分布式存储,在存储每一个数据时,都会通过计算得出该数据存储的位置,尽量将数据分布均衡,不存在传统的单点故障的问题,可以水平扩展。
    ceph 官方文档 http://docs.ceph.org.cn/
    ceph 中文开源社区 http://docs.ceph.org.cn/
  • Ceph 是一个开源的分布式文件系统。因为它还支持块存储、对象存储,所以很自然的被用做云计算框架 openstack 或 cloudstack 整个存储后端。当然也可以单独作为存储,例如部署一套集群作为对象存储、SAN 存储、NAS 存储等。
  • 具体信息请查看:
    CentOS 7 部署 Ceph 分布式存储架构_高飞的博客-CSDN博客
  • ceph 实验环境
    系统统一使用 CentOS 7.9.2009
    192.168.1.90  ceph1    # admin,osd, mon 作为管理和监控节点
    192.168.1.91  ceph2   osd, mon
    192.168.1.92  ceph3   osd, mon
     
  • 基本准备工作:配置静态 IP、配置主机名、配置SSH免密互信、关闭防火墙、关闭 selinux、配置时间同步。
  • 配置 Ceph 安装源
    vim /etc/yum.repos.d/ceph-yum.repo
    [ceph]
    name=ceph
    baseurl=https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/x86_64/
    gpgcheck=0
    priority=1
    enable=1
    [ceph-noarch]
    name=cephnoarch
    baseurl=https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/noarch/
    gpgcheck=0
    priority=1
    enable=1
    [ceph-source]
    name=Ceph source packages
    baseurl=https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/SRPMS/
    gpgcheck=0
    priority=1
    enable=1

    yum install -y epel-release

    安装基础软件包
    在 ceph 的每台节点上都操作

    yum install -y yum-utils device-mapper-persistent-data lvm2 wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzip sudo ntp libaio-devel wget vim ncurses-devel autoconf automake zlib-devel python-devel epelrelease openssh-server socat ipvsadm conntrack ntpdate telnet deltarpm

  • 安装 ceph 集群

  • 安装 ceph-deploy
    #在 ceph1 节点安装 ceph-deploy
    yum install python-setuptools ceph-deploy -y

    #在 ceph1 ceph2 和 ceph3 节点安装 ceph
    yum install ceph ceph-radosgw -y

  • 创建 monitor 节点
    #保存 ceph-deploy 生成的配置文件
    ceph-deploy new ceph1 ceph2 ceph3
  •  安装 monitor 服务
    1、修改 ceph 配置文件
    #把 ceph.conf 配置文件里的默认副本数从 3 改成 2。把 osd_pool_default_size = 2 加入[global]段,这样只有 2 个 osd 也能达到 active+clean 状态:
    osd_pool_default_size = 2
    mon clock drift allowed = 0.500
    mon_max_pg_per_osd = 1000

    mon clock drift allowed #监视器间允许的时钟漂移量默认值 0.05
    ceph 对每个 mon 之间的时间同步延时默认要求在 0.05s 之间,这个时间有的时候太短了。如果时钟同步有问题可能导致 monitor 监视器不同步,可以适当增加时间

    2、安装 monitor、收集所有的密钥
    cd /etc/ceph
    ceph-deploy mon create-initial

     3、部署 osd 服务
    ceph-deploy osd create --data /dev/sdc ceph1
    ceph-deploy osd create --data /dev/sdc ceph2
    ceph-deploy osd create --data /dev/sdc ceph3

    ceph-deploy osd list ceph1 ceph2 ceph3

  • 要使用 Ceph 文件系统,你的 Ceph 的存储集群里至少需要存在一个 Ceph 的元数据服务器(mds)。
  • 创建 ceph 文件系统
    创建 mds
    ceph-deploy mds create ceph1 ceph2 ceph3

    查看 ceph 当前文件系统
    ceph fs ls

    一个 cephfs 至少要求两个 librados 存储池,一个为 data,一个为 metadata。
    当配置这两个存储池时,注意:
    1. 为 metadata pool 设置较高级别的副本级别,因为 metadata 的损坏可能导致整个文件系统无法使用
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值