openstack+ceph大型试验!全程可跟做!

前言

mark

一:CEPH理论基础

1.1:概述

  • Ceph是一个分布式集群系统,是一个可靠、自动重均衡、自动恢复的分布式存储系统,Ceph的主要优点是分布式存储,在存储每一个数据时,都会通过计算得出该数据存储的位置,尽量将数据分布均衡,不存在传统的单点故障的问题,可以水平扩展。
  • Ceph可以提供对象存储(RADOSGW)、块设备存储(RBD)和文件系统服务(CephFS),其对象存储可以对接网盘(owncloud)应用业务等;其块设备存储可以对接(IaaS),当前主流的IaaS运平台软件,如:OpenStack、CloudStack、Zstack、Eucalyptus等以及kvm等。
  • 至少需要一个monitor和2个OSD守护进程,运行Ceph文件系统客户端还需要MS(Metadata server)

1.2:相关概念

  • 什么是OSD
    • OSD是存储数据、处理数据的复制、回复、回填在均衡、并且通过检查其他的OSD的
      守护进程的心跳,向monitor提供给一些监控信息
  • 什么是Monitor
    • 监视整个集群的状态信息、当Ceph的集群为2个副本,至少需要2个OSD ,才能达到健康的状态,同时还守护各种图表(OSD图、PG组、Crush图等等)
  • ceph-mgr
    • Ceph Manager Daemon,简称ceph-mgr。 该组件的主要作用是分担和扩展monitor的部分功能,
      减轻monitor的负担,让更好地管理ceph存储系统ceph

1.3:完全无中心架构

  • 完全无中心架构一-计算模式(ceph)

  • 如图是ceph存储系统的架构,在该架构中与HDFS不同的地方在于该架构中没有中心节点。客户端是通过一个设备映射关系计算出来其写入数据的位置,这样客户端可以直接与存储节点通信,从而避免中心节点的性能瓶颈。

  • 在ceph存储系统架构中核心组件有Mon服务、OSD服务和MDS服务等。对于块存储类型只需要Mon服务、OSD服务和客户端的软件即可。其中Mon服务用于维护存储系统的硬件逻辑关系,主要是服务器和硬盘等在线信息。Mon服务通过集群的方式保证其服务的可用性。OSD服务用于实现对磁盘的管理,实现真正的数据读写,通常一个磁盘对应一个OSD服务。

  • mark

  • 客户端访问存储的大致流程是,客户端在启动后会首先从Mon服务拉取存储资源布局信息,然后根据该布局信息和写入数据的名称等信息计算出期望数据的位置(包含具体的物理服务器信息和磁盘信息),然后该位置信息直接通信,读取或者写入数据。

二:部署CEPH集群

2.1:部署CEPH环境

  • 部署CEPH之前,必须把和存储有关系数据清理干净

    • 1、如果OpenStack安装了实例,必须删除----在控制台dashboard删除
    • 2、如果OPenStack上产的镜像,必须删除----在控制台dashboard删除
    • 3、如果OpenStack的cinder块,必须删除----在控制台dashboard删除
  • 三个节点iptables 防火墙关闭

    '//三个节点操作相同,仅展示控制节点的操作'
    [root@ct ~]# systemctl stop iptables
    [root@ct ~]# systemctl disable iptables
    Removed symlink /etc/systemd/system/basic.target.wants/iptables.service.
    
  • 检查节点的免交互、主机名、hosts、关闭防火墙等

  • 三个节点本地源配置(仅展示控制节点的操作)

    mark

    [root@ct opt]# tar zxvf openstack_rocky.tar.gz 	'//解压上传的包'
    [root@ct opt]# ls
    openstack_rocky  openstack_rocky.tar.gz
    [root@ct opt]# cd /etc/yum.repos.d
    [root@ct yum.repos.d]# vi local.repo
    [openstack]
    name=openstack
    baseurl=file:///opt/openstack_rocky	'//刚解压的文件夹名称和之前的名称一样,所以不需要修改'
    gpgcheck=0
    enabled=1
    
    [mnt]
    name=mnt
    baseurl=file:///mnt
    gpgcheck=0
    enabled=1
    [root@ct yum.repos.d]# yum clean all	'//清除缓存'
    已加载插件:fastestmirror
    正在清理软件源: mnt openstack
    Cleaning up list of fastest mirrors
    [root@ct yum.repos.d]# yum makecache	'//创建缓存'
    
    

2.2:CEPH集群搭建

  • 三个节点安装Python-setuptools工具和ceph软件

    [root@ct yum.repos.d]# yum -y install python-setuptools
    [root@ct yum.repos.d]# yum -y install ceph
    
    
  • 在控制节点,创建ceph配置文件目录并安装ceph-deploy

    [root@ct yum.repos.d]# mkdir -p /etc/ceph
    [root@ct yum.repos.d]# yum -y install ceph-deploy
    
    
  • 控制节点创建三个mon

    [root@ct yum.repos.d]# cd /etc/ceph
    [root@ct ceph]# ceph-deploy new ct c1 c2
    [root@ct ceph]# more /etc/ceph/ceph.conf
    [global]
    fsid = 8c9d2d27-492b-48a4-beb6-7de453cf45d6
    mon_initial_members = ct, c1, c2
    mon_host = 192.168.11.100,192.168.11.101,192.168.11.102
    auth_cluster_required = cephx
    auth_service_required = cephx
    auth_client_required = cephx
    
    
  • 控制节点操作:初始化mon 并收集秘钥(三个节点)

    [root@ct ceph]# ceph-deploy mon create-initial
    [root@ct ceph]# ls
    ceph.bootstrap-mds.keyring  ceph.bootstrap-rgw.keyring  ceph-deploy-ceph.log
    ceph.bootstrap-mgr.keyring  ceph.client.admin.keyring   ceph.mon.keyring
    ceph.bootstrap-osd.keyring  ceph.conf                   rbdmap
    
    
  • 控制节点创建OSD

    [root@ct ceph]# ceph-deploy osd create --data /dev/sdb ct
    [root@ct ceph]# ceph-deploy osd create --data /dev/sdb c1
    [root@ct ceph]# ceph-deploy osd create --data /dev/sdb c2
    
  • 使用ceph-deploy下发配置文件和admin秘钥下发到ct c1 c2

    [root@ct ceph]# ceph-deploy admin ct c1 c2
    
    
  • 给ct c1 c2 每个节点的keyring增加权限.

    [root@ct ceph]# chmod +x /etc/ceph/ceph.client.admin.keyring
    [root@c1 ceph]# chmod +x /etc/ceph/ceph.client.admin.keyring
    [root@c2 ceph]# chmod +x /etc/ceph/ceph.client.admin.keyring
    
    
  • 创建mgr管理服务

    [root@ct ceph]# ceph-deploy mgr create ct
  • 7
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值