• ceph部署mimic版本集群


    一.简单说明

    ceph mimic版本在对MDS的稳定性等方面做了大量的改进和优化,这里我们k8s集群使用ceph时需要使用cephfs,因此对MDS的稳定性方面有很高的要求,因此,我们选择ceph Mimic版本来进行部署。
    ceph Mimic版本的具体更新可查看以下链接:
    [链接](http://docs.ceph.com/docs/master/releases/mimic/?highlight=backfill#upgrading-from-luminous
    ceph的架构如下图所示:

    二.集群部署

    • 基于k8s集群部署完毕后,我们可以进行部署配置ceph集群
    主机名 IP 功能 系统
    master01 192.168.1.188 mon.osd.mgr centos7.5最小化
    master02 192.168.1.189 mon.osd.mgr centos7.5最小化
    master03 192.168.1.191 mon.osd.mgr centos7.5最小化
    node-01 192.168.1.193 osd centos7.5最小化

    2.1 基础环境配置

    2.1.1 关闭防火墙和禁用selinux

    所有节点都要执行:

    [root@master-01 ~]#systemctl stop firewalld
    [root@master-01 ~]#systemctl disable firewalld
    [root@master-01 ~]#sed -i 's/enforcing/disabled/' /etc/selinux/config
    [root@master-01 ~]#setenforce 0
    

    2.1.2 配置服务器的NTP时间同步

    所有节点都要执行:

    [root@master-01 ~]#yum install ntp ntpdate -y
    [root@master-01 ~]#timedatectl set-ntp yes
    

    2.1.3 配置所有节点/etc/hosts

    [root@master-01 ~]#cat /et/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.1.185 cluster.kube.com
    192.168.1.188 master-01
    192.168.1.189 master-02
    192.168.1.191 master-03
    192.168.1.193 node-01
    

    2.1.4 配置部署节点到所有节点的无秘钥访问

    [root@master-01 ~]#ssh-keygen 一直enter键即可
    [root@master-01 ~]#ssh-copy-id root@192.168.1.188
    

    2.2 安装ceph[所有节点]

    2.2.1 配置ceph的yum源

    [root@master-01 ~]# cat /etc/yum.repos.d/ceph.repo
    [Ceph]
    name=Ceph packages for $basearch
    baseurl=http://download.ceph.com/rpm-mimic/el7/$basearch
    enabled=1
    gpgcheck=1
    type=rpm-md
    gpgkey=https://download.ceph.com/keys/release.asc
    
    [Ceph-noarch]
    name=Ceph noarch packages
    baseurl=http://download.ceph.com/rpm-mimic/el7/noarch
    enabled=1
    gpgcheck=1
    type=rpm-md
    gpgkey=https://download.ceph.com/keys/release.asc
    
    [ceph-source]
    name=Ceph source packages
    baseurl=http://download.ceph.com/rpm-mimic/el7/SRPMS
    enabled=1
    gpgcheck=1
    type=rpm-md
    gpgkey=https://download.ceph.com/keys/release.asc
    

    2.2.2 安装epel-release

    [root@master-01 ~]# yum install -y epel-release
    

    2.2.3 安装ceph和ceph-deploy

    [root@master-01 ~]# yum install -y ceph ceph-deploy
    

    2.2.4 查看ceph的版本

    [root@master-01 ~]# ceph -v
    ceph version 13.2.4 (b10be4d44915a4d78a8e06aa31919e74927b142e) mimic (stable)
    

    2.3 部署ceph的mon服务[部署节点执行即可]

    [root@master-01 ~]# cd /etc/ceph
    #这里是创建三个Mon节点
    [root@master-01 ceph]# ceph-deploy new master-01 master-02 master-03
    #这里是执行mon的初始化
    [root@master-01 ceph]# ceph-deploy mon create-initial
    

    2.4 部署ceph的mgr服务

    [root@master-01 ~]# cd /etc/ceph
    [root@master-01 ceph]# ceph-deploy mgr create master-01 master-02 master-03
    #这里是同步配置文件到所有集群节点
    [root@master-01 ceph]# ceph-deploy admin master-01 master-02 master-03 node-01
    

    2.5 部署ceph的osd服务

    [root@master-01 ~]# cd /etc/ceph
    #这里是将做OSD的磁盘分区格式化
    [root@master-01 ceph]# ceph-deploy disk zap master-01 /dev/sdb
    [root@master-01 ceph]# ceph-deploy osd create --data /dev/sdb master-01
    

    2.6 开启ceph的Dashboard

    [root@master-01 ~]# ceph mgr module enable dashboard     #开启dashboard
    [root@master-01 ~]# ceph dashboard create-self-signed-cert
    [root@master-01 ~]# ceph dashboard set-login-credentials admin admin	#创建管理员
    [root@master-01 ~]# ceph mgr services  #确认验证
    

    2.7 部署ceph的mds服务

    [root@master-01 ~]# cd /etc/ceph
    [root@master-01 ceph]# ceph-deploy mds create master-01 master-02 master-03
    

    2.8 创建ceph的文件系统

    #创建数据存储池
    [root@master-01 ~]# ceph osd pool create datapool 256 256
    #创建元数据存储池
    [root@master-01 ~]# ceph osd pool create metapool 256 256
    #创建文件系统
    [root@master-01 ~]# ceph fs new cephfs metapool datapool
    

    2.9 查看集群服务

    [root@master-01 ~]# ceph -s
      cluster:
        id:     087099a6-b310-40ac-8631-9d3436141f66
        health: HEALTH_OK
    
      services:
        mon: 3 daemons, quorum master-01,master-02,master-03
        mgr: master-01(active), standbys: master-02, master-03
        mds: cephfs-1/1/1 up  {0=master-03=up:active}, 2 up:standby
        osd: 8 osds: 8 up, 8 in
    
      data:
        pools:   2 pools, 512 pgs
        objects: 22  objects, 2.2 KiB
        usage:   8.0 GiB used, 272 GiB / 280 GiB avail
        pgs:     512 active+clean
    
  • 相关阅读:
    VMware 克隆linux后找不到eth0(学习hadoop,所以想快速搭建一个集群)
    Qt之窗体透明 (三种不同的方法和效果)
    Qt之获取本机网络信息(MAC, IP等等,很全)
    Qt之图形(Source和Dest相互覆盖的取舍,真的很方便)
    Qt之QSpacerItem(控件之间的间距不尽相同,可以借助QSpacerItem来设置,并且还可以对QSpacerItem设置QSizePolicy)
    IoC在ASP.NET Web API中的应用
    ASP.NET MVC应用程序展示RDLC报表
    Ninject 在 Winform、 Asp.net MVC中连络EntityFramework的应用
    Apworks框架实战(三):单元测试与持续集成
    总体介绍ASP.NET Web API下Controller的激活与释放流程
  • 原文地址:https://www.cnblogs.com/yuhaohao/p/13099457.html
Copyright © 2020-2023  润新知