ceph集群搭建,ceph块存储,文件存储,对象存储

一.ceph集群搭建步骤流程
		
	1.利用cephadm工具初始化ceph集群,Ceph1节点初始化节点为管理节点
		Ceph在使用过程中是无中心化结构,但搭建过程中选择集群某一个节点作为初始化管理节点,然后扩容其他节点
		[root@ceph1 ~]# ./cephadm bootstrap \	           #初始化集群 
			> --mon-ip 192.168.88.11 \                  #指定初始化节点IP地址
			> --initial-dashboard-password=123456 \     #指定dashboard面板密码
			> --dashboard-password-noupdate             #不更新dashboard面板密码

	2.同步ceph密钥
		Ceph 集群通常由多个节点组成,包括监视器(MON)、对象存储守护进程(OSD)和管理器(MGR)等
		通过将 Ceph 公钥同步到所有节点,可以简化管理员通过 SSH 登录到这些节点的过程,无需每次输入密码

			ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph1 #-f强制 
		
	3.扩容ceph集群
			ceph orch host add ceph2 192.168.88.12  #将ceph2加入集群
				
	4.搭建OSD服务
			ceph orch daemon add osd ceph1:/dev/vdb #绑定单个硬盘
			ceph orch apply osd --all-available-device #OSD绑定所有可用状态硬盘

	5.确认集群状态
			ceph -s

1.Ceph块存储使用(大量数据读写,数据库服务为主)
块存储客户端的使用流程:
	     1)获取集群配置文件,和用户认证文件
		yum -y install ceph-common
		scp root@192.168.88.11:/etc/ceph/ceph.conf /etc/ceph/
		scp root@192.168.88.11:/etc/ceph/ceph.client.admin.keyring /etc/ceph/
		/etc/ceph/ceph.client.admin.keyring:存储了公钥和私钥,有这个位文件才能操作集群


	     2)创建存储池,设置类型
			ceph osd pool create aaa 64
			ceph osd pool application enable aaa rbd 
	     3)创建镜像
			rbd create aaa/img1(名) --size 10G:创建镜像,aaa为存储池子名
	     4)映射镜像
			rbd map img1
	     5)格式化挂载使用
			mkfs.xfs /dev/rbd0            
			mount /dev/rbd0 /data/         

	     6)创建快照,保护快照
			rbd snap create img1 --snap img1-sn1   #创建名为img1-sn1快照
			rbd snap protect img1 --snap img1-sn1  #保护指定快照
	     7)快照克隆(实现数据共享)
			rbd clone img2 --snap img2-sn1 img2-sn1-clone1  #克隆镜像img2-sn1-1
	     8)独立克隆镜像
			rbd flatten img2-sn1-2             #将img2所有的数据拷贝到克隆镜像
		
	     9)开机自动映射和自动挂载

		 开机自动映射:
			编辑配置文件: /etc/ceph/rbdmap 
			 rbd/img1   id=admin,keyring=/etc/ceph/ceph.client.admin.keyring
			 	     (admin用户,以及它对应的密码文件路径)
			重启服务:systemctl enable rbdmap.service --now

		 开机自动挂载:
			编辑配置文件:  /etc/fstab 
			/dev/rbd/rbd/img1   /data/  xfs    noauto 0 0
			(/dev/rbd磁盘的rbd池的img1镜像,noauto,开机加载出磁盘及服务后在挂载)

2.ceph文件存储服务MDS的搭建及使用(创建一个共享文件目录)
	1.搭建MDS服务
		(两个存储池=数据池+元数据池)
		1)创建数据池/元数据池
			ceph osd pool create data01/metadata01 128  
  
		2)利用两个池子创建文件系统存储
			ceph fs new myfs01 metadata01 data01
	  
		3)部署mds服务
			ceph orch apply mds myfs01 --placement='3 ceph1 ceph2 ceph3' 

		4)挂载使用
			192.168.88.11,192.168.88.12,192.168.88.13:/ /mydata ceph name=admin,secret=AQAVfwtmJmI/CRAAKg1mVOsRIHcTvQckllYZsA==,fs=myfs01,_netdev 0 2
	2.MDS的使用
		1)确认cephfs支持相关包已安装
		2)创建目录挂载使用
		3)永久挂载/etc/fstab
			192.168.88.11,192.168.88.12,192.168.88.13:/ /mydata ceph name=admin,secret=AQAVfwtmJmI/CRAAKg1mVOsRIHcTvQckllYZsA==,fs=myfs01,_netdev 0 2


3.Ceph对象存储服务RGW的搭建及使用(大量的非结构化的图形,图像数据)

	1.搭建rgw服务

		1)部署rgw服务
		ceph orch apply rgw myrgw --placement="3 ceph1 ceph2 ceph3" --port 8080
	
		2)创建rgw用户,分配桶权限
		radosgw-admin user create --uid=testuser --display-name="Test User" --email=test@tedu.cn --access-key=12345 --secret-key=67890

		3)安装awscli工具,配置用户绑定
			yum -y install awscli.noarch
	
			aws configure --profile=ceph
				指定密码给用户绑定桶:
				AWS Access Key ID [None]: 12345         #输入access_key
				AWS Secret Access Key [None]: 67890     #输入secret_key

		4)创建桶:数据的容器
		   aws --profile=ceph --endpoint=http://ceph1:8080 s3 mb s3://testbucket
				--profile=ceph:上面已经绑定的名称
				--endpoint:指定空间位置
				testbucket:这是要创建的S3存储桶的名称
	2.RGW使用

		1)文件上传
			aws --profile=ceph --endpoint=http://ceph1:8080 --acl=public-read-write s3 cp /etc/hosts s3://testbucket/hosts.txt
			--acl:访问控制列表,指定某人读取该文件的权限等

		2)文件下载
			wget -O zhuji.txt http://ceph1:8080/testbucket/hosts.txt
			-o:指定日志文件的输出位置,默认终端

一.ceph集群搭建步骤流程

1.利用cephadm工具初始化ceph集群,Ceph1节点初始化节点为管理节点

Ceph在使用过程中是无中心化结构,但搭建过程中选择集群某一个节点作为初始化管理节点,然后扩容其他节点

[root@ceph1 ~]# ./cephadm bootstrap \ #初始化集群

> --mon-ip 192.168.88.11 \ #指定初始化节点IP地址

> --initial-dashboard-password=123456 \ #指定dashboard面板密码

> --dashboard-password-noupdate #不更新dashboard面板密码

2.同步ceph密钥

Ceph 集群通常由多个节点组成,包括监视器(MON)、对象存储守护进程(OSD)和管理器(MGR)等

通过将 Ceph 公钥同步到所有节点,可以简化管理员通过 SSH 登录到这些节点的过程,无需每次输入密码

ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph1 #-f强制

3.扩容ceph集群

ceph orch host add ceph2 192.168.88.12 #将ceph2加入集群

4.搭建OSD服务

ceph orch daemon add osd ceph1:/dev/vdb #绑定单个硬盘

ceph orch apply osd --all-available-device #OSD绑定所有可用状态硬盘

5.确认集群状态

ceph -s

1.Ceph块存储使用(大量数据读写,数据库服务为主)

块存储客户端的使用流程:

1)获取集群配置文件,和用户认证文件

yum -y install ceph-common

scp root@192.168.88.11:/etc/ceph/ceph.conf /etc/ceph/

scp root@192.168.88.11:/etc/ceph/ceph.client.admin.keyring /etc/ceph/

/etc/ceph/ceph.client.admin.keyring:存储了公钥和私钥,有这个位文件才能操作集群

2)创建存储池,设置类型

ceph osd pool create aaa 64

ceph osd pool application enable aaa rbd

3)创建镜像

rbd create aaa/img1(名) --size 10G:创建镜像,aaa为存储池子名

4)映射镜像

rbd map img1

5)格式化挂载使用

mkfs.xfs /dev/rbd0

mount /dev/rbd0 /data/

6)创建快照,保护快照

rbd snap create img1 --snap img1-sn1 #创建名为img1-sn1快照

rbd snap protect img1 --snap img1-sn1 #保护指定快照

7)快照克隆(实现数据共享)

rbd clone img2 --snap img2-sn1 img2-sn1-clone1 #克隆镜像img2-sn1-1

8)独立克隆镜像

rbd flatten img2-sn1-2 #将img2所有的数据拷贝到克隆镜像

9)开机自动映射和自动挂载

开机自动映射:

编辑配置文件: /etc/ceph/rbdmap

rbd/img1 id=admin,keyring=/etc/ceph/ceph.client.admin.keyring

(admin用户,以及它对应的密码文件路径)

重启服务:systemctl enable rbdmap.service --now

开机自动挂载:

编辑配置文件: /etc/fstab

/dev/rbd/rbd/img1 /data/ xfs noauto 0 0

(/dev/rbd磁盘的rbd池的img1镜像,noauto,开机加载出磁盘及服务后在挂载)

2.ceph文件存储服务MDS的搭建及使用(创建一个共享文件目录)

1.搭建MDS服务

(两个存储池=数据池+元数据池)

1)创建数据池/元数据池

ceph osd pool create data01/metadata01 128

2)利用两个池子创建文件系统存储

ceph fs new myfs01 metadata01 data01

3)部署mds服务

ceph orch apply mds myfs01 --placement='3 ceph1 ceph2 ceph3'

4)挂载使用

192.168.88.11,192.168.88.12,192.168.88.13:/ /mydata ceph name=admin,secret=AQAVfwtmJmI/CRAAKg1mVOsRIHcTvQckllYZsA==,fs=myfs01,_netdev 0 2

2.MDS的使用

1)确认cephfs支持相关包已安装

2)创建目录挂载使用

3)永久挂载/etc/fstab

192.168.88.11,192.168.88.12,192.168.88.13:/ /mydata ceph name=admin,secret=AQAVfwtmJmI/CRAAKg1mVOsRIHcTvQckllYZsA==,fs=myfs01,_netdev 0 2

3.Ceph对象存储服务RGW的搭建及使用(大量的非结构化的图形,图像数据)

1.搭建rgw服务

1)部署rgw服务

ceph orch apply rgw myrgw --placement="3 ceph1 ceph2 ceph3" --port 8080

2)创建rgw用户,分配桶权限

radosgw-admin user create --uid=testuser --display-name="Test User" --email=test@tedu.cn --access-key=12345 --secret-key=67890

3)安装awscli工具,配置用户绑定

yum -y install awscli.noarch

aws configure --profile=ceph

指定密码给用户绑定桶:

AWS Access Key ID [None]: 12345 #输入access_key

AWS Secret Access Key [None]: 67890 #输入secret_key

4)创建桶:数据的容器

aws --profile=ceph --endpoint=http://ceph1:8080 s3 mb s3://testbucket

--profile=ceph:上面已经绑定的名称

--endpoint:指定空间位置

testbucket:这是要创建的S3存储桶的名称

2.RGW使用

1)文件上传

aws --profile=ceph --endpoint=http://ceph1:8080 --acl=public-read-write s3 cp /etc/hosts s3://testbucket/hosts.txt

--acl:访问控制列表,指定某人读取该文件的权限等

2)文件下载

wget -O zhuji.txt http://ceph1:8080/testbucket/hosts.txt

-o:指定日志文件的输出位置,默认终端

相关推荐
一名技术极客17 分钟前
Nginx性能优化全方案:打造一个高效服务器
服务器·nginx·性能优化
jekc86823 分钟前
Ubuntu安装grafana
linux·ubuntu·grafana
重生之Java开发工程师27 分钟前
如何保证消息队列的高可用?(RabbitMQ)
分布式·面试·rabbitmq
dog25035 分钟前
TCP 的文化内涵
服务器·网络·tcp/ip
sz66cm40 分钟前
Linux基础 -- epoll监听Netlink并实现
linux
枇杷鹭41 分钟前
Linux shell 使用 trap 命令优雅处理程序中断: shell 中的回调、锁与事务、以及 debug 调试
linux·运维·服务器
星光璀璨山河无恙1 小时前
【Linux】系统信息和状态命令
大数据·linux
羑悻的小杀马特1 小时前
什么是缓冲区???
linux·缓冲区
不会吉他的肌肉男不是好的挨踢男1 小时前
记录解决 linux部署完web服务却只能127.0.0.1访问但不能公网ip访问
linux·前端·tcp/ip
嵌入式小能手1 小时前
shell编程入门之提取字符并设置rtc时间
linux·单片机·嵌入式硬件·arm