使用cephadmin部署ceph集群

一、知识点:ceph集群部署使用

Ceph是一个PB,EB级别的分布式存储系统,可以提供文件存储,对象存储、和块存储。它可靠性高,易扩展,管理简便。

所有 Ceph 部署都始于 Ceph 存储集群。基于 RADOS 的 Ceph 对象存储集群包括两类守护进程:term:对象存储守护进程( OSD )把存储节点上的数据存储为对象;term:Ceph 监视器( MON )维护集群运行图的主拷贝。

一个 Ceph 集群可以包含数千个存储节点,最简系统至少需要一个监视器和两个 OSD 才能做到数据复制

Ceph块设置

Ceph 块设备是精简配置的、大小可调且将数据条带化存储到集群内的多个 OSD 。Ceph 块设备利用 RADOS 的多种能力,如快照、复制和一致性。Ceph 的 RADOS 块设备( RBD )使用内核模块或 librbd 库与 OSD 交互。

Ceph架构主要包含了:Rados集群,librados接口层,rgw、rbd和cephfs这三种存储服务。

Rados集群:Rados是Ceph系统的核心,包含了分布式集群管理和数据管理,集群的扩展性和高可用性是在这里体现的。主要的组件有monitor、osd和mds。Monitor是集群的关键服务,它保证了集群元数据的一致性和集群的可服务性。Osd是ceph的数据服务,它负责了业务数据的落盘,数据状态的监控,数据状态恢复,数据的迁移和恢复等流程。Mds是cephfs的元数据服务,维护文件系统的超级块信息,目录结构,文件信息等。一般如果不使用cephfs,是可以不用部署mds的。

librados接口层:统一封装的接口层,提供集群连接接口,pool创建接口,obj读写接口等,作为基础库提供给上层调用,比如librbd、libcephfs和librgw。第三方的应用可以直接调用librados对ceph做二次开发。

客户端:ceph客户端包括rbd、rgw、cephfs这三种类型,同时也包括librbd、libcephfs和librgw这些开发库。对外提供存储服务,比如rbd可以导出scsi块设备,cephfs可以mount到Linux主机上做为文件系统,也可以通过cifs/nfs导出为网络文件服务,rgw对外直接提供s3或者

不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 Ceph 作为他用,所有 Ceph 存储集群的部署都始于部署一个个 Ceph 节点、网络和 Ceph 存储集群。 Ceph 存储集群至少需要一个 Ceph Monitor 和两个 OSD 守护进程。而运行 Ceph 文件系统客户端时,则必须要有元数据服务器( Metadata Server )。

Ceph OSDs: Ceph OSD 守护进程( Ceph OSD )的功能是存储数据,处理数据的复制、恢复、回填、再均衡,并通过检查其他OSD 守护进程的心跳来向 Ceph Monitors 提供一些监控信息。当 Ceph 存储集群设定为有2个副本时,至少需要2个 OSD 守护进程,集群才能达到 active+clean 状态( Ceph 默认有3个副本,但你可以调整副本数)。

Monitors: Ceph Monitor维护着展示集群状态的各种图表,包括监视器图、 OSD 图、归置组( PG )图、和 CRUSH 图。 Ceph 保存着发生在Monitors 、 OSD 和 PG上的每一次状态变更的历史信息(称为 epoch )。

MDSs: Ceph 元数据服务器( MDS )为 Ceph 文件系统存储元数据(也就是说,Ceph 块设备和 Ceph 对象存储不使用MDS )。元数据服务器使得 POSIX 文件系统的用户们,可以在不对 Ceph 存储集群造成负担的前提下,执行诸如 ls、find 等基本命令。

Ceph 把客户端数据保存为存储池内的对象。通过使用 CRUSH 算法, Ceph 可以计算出哪个归置组(PG)应该持有指定的对象(Object),然后进一步计算出哪个 OSD 守护进程持有该归置组。 CRUSH 算法使得 Ceph 存储集群能够动态地伸缩、再均衡和修复。

二、实验环境:

7.10 还原至新系统,添加3块scsi100G硬盘,开机,ceph1

7.11 还原至新系统,添加3块scsi100G硬盘,开机,ceph2

7.12 还原至新系统,添加3块scsi100G硬盘,开机,ceph3

7.13 还原至新系统,添加3块scsi100G硬盘,开机,client

三、修改四台机器的主机名:

四、关闭sestatus和防火墙

五、做时间同步,同步阿里云时间

有IP证明时间同步成功

六、列出当前系统中所有磁盘及其分区的详细信息

七、编辑本地主机名到 IP 地址的映射的配置文件

八、在ceph1机器上用rsa的加密算法生成ssl的加密密钥

[root@ceph1 ~]# ssh-keygen -t rsa			用rsa的加密算法生成ssl的加密密钥

九、在ceph1机器上将ssl的公钥传递给ceph2、ceph3、client

[root@ceph1 ~]# ssh-copy-id root@ceph2		将ssl的公钥传递给ceph2
[root@ceph1 ~]# ssh-copy-id root@ceph3		将ssl的公钥传递给ceph3
[root@ceph1 ~]# ssh-copy-id root@client		将ssl的公钥传递给客户端

十、安装第三方的数据源、查询版本

[root@ceph1 ~]# dnf -y install epel-release 安装第三方的数据源

[root@ceph1 ~]# dnf search release-ceph		查询版本
Extra Packages for Enterprise Linux 9 - x86_64                 1.2 MB/s |  23 MB     00:19
Extra Packages for Enterprise Linux 9 openh264 (From Cisco) -  1.2 kB/s | 2.5 kB     00:02
================================= Name Matched: release-ceph ==================================
centos-release-ceph-pacific.noarch : Ceph Pacific packages from the CentOS Storage SIG  用这个,稳定
                                   : repository
centos-release-ceph-quincy.noarch : Ceph Quincy packages from the CentOS Storage SIG repository
centos-release-ceph-reef.noarch : Ceph Reef packages from the CentOS Storage SIG repository
centos-release-ceph-squid.noarch : Ceph Squid packages from the CentOS Storage SIG repository  最新的

十一、安装ceph-pacific数据源、ceph
管理端、ceph通用软件

[root@ceph1 ~]# dnf -y install centos-release-ceph-pacific.noarch  								安装ceph-pacific数据源
[root@ceph1 ~]# dnf -y install cephadm															安装ceph管理端
[root@ceph1 ~]# dnf -y install ceph-common														安装ceph通用软件

十二、安装ceph集群cephadm bootstrap,并把图形界面安装上

[root@ceph1 ~]# cephadm bootstrap --mon-ip 192.168.7.10 --allow-fqdn-hostname --initial-dashboard-user admin --initial-dashboard-password redhat --dashboard-password-noupdate
安装ceph集群cephadm bootstrap,并把图形界面安装上,192.168.7.10是监控节点IP,允许完整域名--allow-fqdn-hostname,图形界面的用户为adimn --initial-dashboard-user,图形界面的密码为redhat,图形界面密码不更新
Ceph Dashboard is now available at:

             URL: https://ceph1:8443/		生成图形界面的网址,用户,密码
            User: admin
        Password: redhat

Enabling client.admin keyring and conf on hosts with "admin" label
Enabling autotune for osd_memory_target
You can access the Ceph CLI as following in case of multi-cluster or non-default config:

        sudo /usr/sbin/cephadm shell --fsid 01099852-15ae-11f0-a52f-000c29133fd0 -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring

Or, if you are only running a single cluster on this host:

        sudo /usr/sbin/cephadm shell

Please consider enabling telemetry to help improve Ceph:

        ceph telemetry on

For more information see:

        https://docs.ceph.com/en/pacific/mgr/telemetry/

十三、将ceph集群的公钥复制到ceph2、ceph3、client

[root@ceph1 ~]# ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph2 		将ceph集群的公钥复制到ceph2
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/etc/ceph/ceph.pub"

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@ceph2'"  			将ceph2加入到集群中
and check to make sure that only the key(s) you wanted were added.

[root@ceph1 ~]# ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph3 		  将ceph集群的公钥复制到ceph3
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/etc/ceph/ceph.pub"

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@ceph3'"             将ceph3加入到集群中
and check to make sure that only the key(s) you wanted were added.

[root@ceph1 ~]# ssh-copy-id -f -i /etc/ceph/ceph.pub root@client 		    将ceph集群的公钥复制到client

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/etc/ceph/ceph.pub"

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@client'"                将client加入到集群中
and check to make sure that only the key(s) you wanted were added.

十四、将ceph2、ceph3、client加入到集群中

[root@ceph1 ~]# ceph orch host add ceph2 192.168.7.11					将ceph2加入到集群中
Added host 'ceph2' with addr '192.168.7.11'
[root@ceph1 ~]# ceph orch host add ceph3 192.168.7.12					将ceph3加入到集群中
Added host 'ceph3' with addr '192.168.7.12'
[root@ceph1 ~]#
[root@ceph1 ~]# ceph orch host add client 192.168.7.13					将client加入到集群中
Added host 'client' with addr '192.168.7.13'

十五、给ceph打管理员的标签、给client打管理员的标签

[root@ceph1 ~]# ceph orch host label add ceph1 _admin					给ceph打管理员的标签
Added label _admin to host ceph1
[root@ceph1 ~]# ceph orch host label add client _admin					给client打管理员的标签
Added label _admin to host client

十六、将ceph配置文件、ceph客户端的密钥复制到客户端的ceph目录下

[root@ceph1 ~]# cd /etc/ceph/  进入到ceph目录
[root@ceph1 ceph]# ls
ceph.client.admin.keyring  ceph.conf  ceph.pub  rbdmap
[root@ceph1 ceph]# scp ceph.conf root@client:/etc/ceph 					将ceph配置文件复制到客户端的ceph目录下
ceph.conf                                                    100%  175    87.7KB/s   00:00
[root@ceph1 ceph]# scp ceph.client.admin.keyring root@client:/etc/ceph  将ceph客户端的密钥复制到客户端的ceph目录下
ceph.client.admin.keyring 

十七、查看集群的主机

[root@ceph1 ~]# cd
[root@ceph1 ~]# ceph orch host ls										查看集群的主机	
HOST    ADDR          LABELS  STATUS
ceph1   192.168.7.10  _admin
ceph2   192.168.7.11
ceph3   192.168.7.12
client  192.168.7.13  _admin
4 hosts in cluster

十八、将ceph1、ceph2、ceph3应用监控,ceph1、ceph2、ceph3添加主引导记录mgr

[root@ceph1 ~]# ceph orch apply mon "ceph1,ceph2,ceph3"					将ceph1ceph2ceph3应用监控
Scheduled mon update...
[root@ceph1 ~]#
[root@ceph1 ~]# ceph orch apply mgr --placement="ceph1,ceph2,ceph3"		将ceph1ceph2ceph3添加主引导记录mgr
Scheduled mgr update...
[root@ceph1 ~]#

十九、分别将ceph1、ceph2、ceph3主机中的所有磁盘sdb、sdc、sdd添加osd(osd对象存储设备)

[root@ceph1 ~]# ceph orch daemon add osd ceph1:/dev/sdb					将ceph1主机中的所有磁盘sdb、sdc、sdd添加osd(osd对象存储设备)
Created osd(s) 0 on host 'ceph1'
[root@ceph1 ~]# ceph orch daemon add osd ceph1:/dev/sdc					
Created osd(s) 1 on host 'ceph1'
[root@ceph1 ~]# ceph orch daemon add osd ceph1:/dev/sdd
Created osd(s) 2 on host 'ceph1'
[root@ceph1 ~]#
[root@ceph1 ~]# ceph orch daemon add osd ceph2:/dev/sdb					将ceph2主机中的所有磁盘sdb、sdc、sdd添加osd
Created osd(s) 3 on host 'ceph2'
[root@ceph1 ~]# ceph orch daemon add osd ceph2:/dev/sdc
Created osd(s) 4 on host 'ceph2'
[root@ceph1 ~]# ceph orch daemon add osd ceph2:/dev/sdd
Created osd(s) 5 on host 'ceph2'
[root@ceph1 ~]#
[root@ceph1 ~]# ceph orch daemon add osd ceph3:/dev/sdb					将ceph3主机中的所有磁盘sdb、sdc、sdd添加osd
Created osd(s) 6 on host 'ceph3'
[root@ceph1 ~]# ceph orch daemon add osd ceph3:/dev/sdc
Created osd(s) 7 on host 'ceph3'
[root@ceph1 ~]# ceph orch daemon add osd ceph3:/dev/sdd
Created osd(s) 8 on host 'ceph3'

二十、查看ceph集群设备

[root@ceph1 ~]# ceph orch device ls										查看ceph集群设备
HOST    PATH      TYPE  DEVICE ID                                             SIZE  AVAILABLE  REFRESHED  REJECT REASONS
ceph1   /dev/sdb  hdd                                                         100G             60s ago    Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph1   /dev/sdc  hdd                                                         100G             60s ago    Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph1   /dev/sdd  hdd                                                         100G             60s ago    Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph1   /dev/sr0  hdd   VMware_Virtual_IDE_CDROM_Drive_10000000000000000001  10.7G             60s ago    Has a FileSystem
ceph2   /dev/sdb  hdd                                                         100G             61s ago    Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph2   /dev/sdc  hdd                                                         100G             61s ago    Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph2   /dev/sdd  hdd                                                         100G             61s ago    Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph2   /dev/sr0  hdd   VMware_Virtual_IDE_CDROM_Drive_10000000000000000001  10.7G             61s ago    Has a FileSystem
ceph3   /dev/sdb  hdd                                                         100G             9s ago     Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph3   /dev/sdc  hdd                                                         100G             9s ago     Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph3   /dev/sdd  hdd                                                         100G             9s ago     Has a FileSystem, Insufficient space (<10 extents) on vgs, LVM detected
ceph3   /dev/sr0  hdd   VMware_Virtual_IDE_CDROM_Drive_10000000000000000001  10.7G             9s ago     Has a FileSystem
client  /dev/sr0  hdd   VMware_Virtual_IDE_CDROM_Drive_10000000000000000001  10.7G             88s ago    Has a FileSystem
[root@ceph1 ~]#

二十一、ceph1上查看ceph集群信息

[root@ceph1 ~]# ceph -s													查看ceph集群信息
  cluster:
    id:     01099852-15ae-11f0-a52f-000c29133fd0
    health: HEALTH_OK				看这个

  services:
    mon: 2 daemons, quorum ceph1,ceph2 (age 39m)
    mgr: ceph1.isduku(active, since 49m), standbys: ceph2.udjukz
    osd: 9 osds: 9 up (since 25m), 9 in (since 25m)

  data:
    pools:   1 pools, 1 pgs
    objects: 0 objects, 0 B
    usage:   2.6 GiB used, 897 GiB / 900 GiB avail
    pgs:     1 active+clean

二十二、在client上安装ceph数据源、ceph通用软件

[root@client ~]# dnf -y install centos-release-ceph-pacific.noarch		安装ceph数据源
[root@client ~]# dnf -y install ceph-common								安装ceph通用软件

二十三、查看ceph集群信息

[root@client ~]# ceph -s
  cluster:
    id:     01099852-15ae-11f0-a52f-000c29133fd0
    health: HEALTH_OK		健康警告OK									

  services:
    mon: 3 daemons, quorum ceph1,ceph2,ceph3 (age 29s)
    mgr: ceph1.isduku(active, since 52m), standbys: ceph2.udjukz, ceph3.orvclg
    osd: 9 osds: 9 up (since 28m), 9 in (since 28m)

  data:
    pools:   1 pools, 1 pgs
    objects: 0 objects, 0 B
    usage:   2.6 GiB used, 897 GiB / 900 GiB avail
    pgs:     1 active+clean

二十四、真实机上测试验证

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇