一 基础准备

  • 参考《002.Ceph安装部署》文档部署一个基础集群;
  • 新增节点主机名及IP在deploy节点添加解析:
 [root@deploy ~]# echo "172.24.8.75 cephclient" >>/etc/hosts
  • 配置国内yum源:
 [root@cephclient ~]# yum -y update
[root@cephclient ~]# rm /etc/yum.repos.d/* -rf
[root@cephclient ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@cephclient ~]# yum -y install epel-release
[root@cephclient ~]# mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
[root@cephclient ~]# mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
[root@cephclient ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
 

二 块设备

2.1 添加普通用户

 [root@cephclient ~]# useradd -d /home/cephuser -m cephuser
[root@cephclient ~]# echo "cephuser" | passwd --stdin cephuser #cephclient节点创建cephuser用户
[root@cephclient ~]# echo "cephuser ALL = (root) NOPASSWD:ALL" > /etc/sudoers.d/cephuser
[root@cephclient ~]# chmod 0440 /etc/sudoers.d/cephuser
[root@deploy ~]# su - manager
[manager@deploy ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub cephuser@172.24.8.75
 

2.2 安装ceph-client

 [root@deploy ~]# su - manager
[manager@deploy ~]$ cd my-cluster/
[manager@deploy my-cluster]$ vi ~/.ssh/config
Host node1
Hostname node1
User cephuser
Host node2
Hostname node2
User cephuser
Host node3
Hostname node3
User cephuser
Host cephclient
Hostname cephclient #新增cephclient节点信息
User cephuser
[manager@deploy my-cluster]$ ceph-deploy install cephclient #安装Ceph
 
注意:若使用ceph-deploy部署的时候出现安装包无法下载,可在部署时候指定ceph.repo为国内源:
 ceph-deploy install cephclient --repo-url=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/ --gpg-url=https://mirrors.aliyun.com/ceph/keys/release.asc
 [manager@deploy my-cluster]$ ceph-deploy admin cephclient
提示:为方便后期deploy节点管理cephclient,在CLI中使用命令中简化相关key的输出,可将key复制至相应节点。ceph-deploy 工具会把密钥环复制到/etc/ceph目录,要确保此密钥环文件有读权限(如 sudo chmod +r /etc/ceph/ceph.client.admin.keyring )。

2.3 创建pool

 [manager@deploy my-cluster]$ ssh node1 sudo ceph osd pool create mytestpool 64

2.4 初始化pool

 [root@cephclient ~]# ceph osd lspools
[root@cephclient ~]# rbd pool init mytestpool
 

2.5 创建块设备

 [root@cephclient ~]# rbd create mytestpool/mytestimages --size 4096 --image-feature layering

2.6 确认验证

 [root@cephclient ~]# rbd ls mytestpool
mytestimages
[root@cephclient ~]# rbd showmapped
id pool image snap device
0 mytestpool mytestimages - /dev/rbd0
[root@cephclient ~]# rbd info mytestpool/mytestimages
 

2.7 将image映射为块设备

 [root@cephclient ~]# rbd map mytestpool/mytestimages --name client.admin
/dev/rbd0
 

2.8 格式化设备

 [root@cephclient ~]# mkfs.ext4 /dev/rbd/mytestpool/mytestimages
[root@cephclient ~]# lsblk
 

2.9 挂载并测试

 [root@cephclient ~]# sudo mkdir /mnt/ceph-block-device
[root@cephclient ~]# sudo mount /dev/rbd/mytestpool/mytestimages /mnt/ceph-block-device/
[root@cephclient ~]# cd /mnt/ceph-block-device/
[root@cephclient ceph-block-device]# echo 'This is my test file!' >> test.txt
[root@cephclient ceph-block-device]# ls
lost+found test.txt
 

2.10 自动map

 [root@cephclient ~]# vim /etc/ceph/rbdmap
# RbdDevice Parameters
#poolname/imagename id=client,keyring=/etc/ceph/ceph.client.keyring
mytestpool/mytestimages id=admin,keyring=/etc/ceph/ceph.client.admin.keyring
 

2.11 开机挂载

 [root@cephclient ~]# vi /etc/fstab
#……
/dev/rbd/mytestpool/mytestimages /mnt/ceph-block-device ext4 defaults,noatime,_netdev 0 0
 

2.12 rbdmap开机启动

 [root@cephclient ~]# systemctl enable rbdmap.service
[root@cephclient ~]# df -hT #查看验证
 
提示:若出现开机后依旧无法自动挂载,rbdmap也异常,可如下操作:
 [root@cephclient ~]# vi /usr/lib/systemd/system/rbdmap.service
[Unit]
Description=Map RBD devices
WantedBy=multi-user.target #需要新增此行
#……
 

004.Ceph块设备基础使用的更多相关文章

  1. Ceph 块设备 - 块设备快速入门

    目录 一.准备工作 二.安装 Ceph 三.使用块存储   一.准备工作 本文描述如何安装 ceph 客户端,使用 Ceph 块设备 创建文件系统并挂载使用. 必须先完成 ceph 存储集群的搭建,并 ...

  2. Ceph 块设备 - 命令,快照,镜像

    目录 一.Ceph 块设备 二.块设备 rbd 命令 三.操作内核模块 四.快照基础 rbd snap 五.分层快照 六.镜像 rbd mirror 七.QEMU 八.libvirt 九.Openst ...

  3. Ceph 块存储

    任何普通的linux主机都可以充当ceph客户机,客户机通过网络与ceph存储集群交互以存储或检索用户数据.Ceph RBD支持已经添加到linux主线内核中,从2.6.34以及以后版本开始. === ...

  4. 二十八. Ceph概述 部署Ceph集群 Ceph块存储

    client   :192.168.4.10 node1 :192.168.4.11 ndoe2 :192.168.4.12 node3 :192.168.4.13   1.实验环境 准备四台KVM虚 ...

  5. 004 ceph存储池

    介绍:前面已经使用deploy和ansble部署了ceph集群,现在对集群的池进行简单介绍和简单操作 一.部分概念 池是ceph存储集群的逻辑分区,用于存储对象 对象存储到池中时,使用CRUSH规则将 ...

  6. Ceph块设备

    Ceph块设备 来自这里. 块是一个字节序列(例如,一个512字节的数据块).基于块的存储接口是最常见的存储数据的方法,它通常基于旋转介质,像硬盘.CD.软盘,甚至传统的9道磁带. 基本的块设备命令 ...

  7. 学习ceph官网的ceph块设备命令(一)

    一)存储池命令 1.列出存储池 #ceph osd lspools #ceph osd pool ls 2.创建存储池 # ceph osd pool create yhcpool 512 pool ...

  8. ceph 块设备

    数据的存储设备? 数据的存储有3种形式,1种是直接以二进制数据的形式存储在裸设备(包括块设备)上,另外一种是以文件的形式经过文件系统管理进行存储.第三种就是以对象的形式进行对象存储.本篇讨论围绕着块设 ...

  9. Ceph块存储介绍

    1. 块存储是什么 块存储简称RBD(RADOS Block Device),是一种有序的字节序块,也是在Ceph三大存储类型中最为常用的存储方式 ,Ceph的块存储是基于RADOS的,因此它也借助R ...

随机推荐

  1. 快速理解VirtualBox的四种网络连接方式

    VirtualBox中有4中网络连接方式: NAT Bridged Adapter Internal Host-only Adapter VMWare中有三种,其实他跟VMWare 的网络连接方式都是 ...

  2. Confluence 6 附件是如何被索引的

    当一个文件被上传到 Confluence 后,Confluence 将会尝试对文件进行解压,然后对文件中的内容进行索引.这样系统就能够允许用户对文件中的内容进行搜索,而不仅仅是搜索文件名.这个过程对系 ...

  3. Confluence 6 数据库整合的方法 2:针对有大量附件的运行实例

    设置准备 这个方法仅仅针对附件存储在文件系统中.如果你存储附件在数据库中,请参考 Attachment Storage Configuration 文档中的内容来找到如何在 2 种不同的文件存储方式之 ...

  4. Uiautomator - 6.0 以上权限受限问题

    问题:在android studio中使用UiAutomator 2.0 编写测试用例时,要实现截图(非命令方式),写入文件时出现权限被拒绝的提示.例如: java.io.FileNotFoundEx ...

  5. SQL语法汇总

    以下默认为mySQL与SQLsever都能使用SQLsever不能使用的另外标出来了 显示数据库SHOW DATABASES;进入其中一个数据库USE students;显示进入数据库中的所有表SHO ...

  6. 前端:Jquery 处理同一Name的Radio组时,绑定checked属性异常的问题.(已解决)

    将: $("input[type=radio][name=optionsContractGroup][value=201]").attr("checked",t ...

  7. Linux查找当前目录5天的文件并打包

    find . -name "*.sh" -mtime -5 |xargs tar zcvf /tmp/log.tar.gz 解释: *.sh是查找以.sh结尾的文件,也可以是其他如 ...

  8. HTML学习之给div高度设置百分比不生效的问题

    这几天在学习HTML的知识,今天想做一个极为简单的页面,就是分为头部,内容和底部,本来用三个div即可,可是给div高度设置百分比时发现不生效,具体页面如下,非常简单. 下面是html部分: < ...

  9. C#使用Emit生成构造函数和属性

    假设我们需要一个名叫Kitty的类,其在Pets程序集下. 1 // specify a new assembly name 2 var assemblyName = new AssemblyName ...

  10. element-ui上传文件带token

    template> <el-upload action="test" :headers="myHeaders"></el-upload& ...