ceph部署

1 物理拓扑

使用4台服务器搭建该环境

ceph_node01 172.16.1.141

ceph_node02 172.16.1.142

ceph_node03 172.16.1.143

ceph_node04 172.16.1.144

管理节点和客服端节点都在ceph_node01上,monitor在ceph_node02上,osd在ceph_node03、ceph_node04上。

2 在所有节点上创建用户ceph,并让其具有root权限

     adduser -d /home/ceph -m ceph

     passwd ceph

3 在管理节点(ceph_node01)上配置ceph这个用户的ssh免密码认证

    ssh-keygen   直接全部回车

    cd .ssh/

    ssh-copy-id ceph@ceph_node02

    ssh-copy-id ceph@ceph_node03

    ssh-copy-id ceph@ceph_node04

在.ssh目录下需要创建一个config文件,对ceph的节点做解析,在deploy时会使用到。

[ceph@ceph_node01 .ssh]$ pwd

/home/ceph/.ssh

[ceph@ceph_node01 .ssh]$ mkdir config

[ceph@ceph_node01 .ssh]$ chmod 600 config

    

config文件内容:

[ceph@ceph_node01 .ssh]$ cat config 

Host node1

Hostname ceph_node02

User ceph

Host node2

Hostname ceph_node03

User ceph

Host node3

Hostname ceph_node04

User ceph

Host admin-node

Hostname ceph_node01

User ceph

4 配置ntp时钟同步

如果没有ntp相关命令,则每台都需要安装ntp

yum install ntp ntpdate ntp-doc

执行下面的命令同步时间

/usr/sbin/ntpdate time.windows.com

配置定时任务,每5分钟同步一次

echo "*/5 * * * * /usr/sbin/ntpdate time.windows.com >/dev/null 2>&1" >>/var/spool/cron/root

5 关闭防火墙

    systemctl stop firewalld.service

    systemctl disable firewalld.service

    setenforce 0

6 配置epel源

 sudo yum install -y yum-utils && sudo yum-config-manager --add-repo https://dl.fedoraproject.org/pub/epel/7/x86_64/ && sudo yum install --nogpgcheck -y epel-release && sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 && sudo rm /etc/yum.repos.d/dl.fedoraproject.org*

添加ceph.repo源:

[root@ceph_node01 yum.repos.d]# vim ceph.repo

[Ceph]

name=Ceph packages for $basearch

baseurl=http://ceph.com/rpm-hammer/el7/$basearch

enabled=1

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

priority=1

[Ceph-noarch]

name=Ceph noarch packages

baseurl=http://ceph.com/rpm-hammer/el7/noarch

enabled=1

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

priority=1

[ceph-source]

name=Ceph source packages

baseurl=http://ceph.com/rpm-hammer/el7/SRPMS

enabled=1

gpgcheck=1

type=rpm-md

gpgkey=https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc

priority=1

7 更新yum源,并部署deploy工具

sudo yum update && sudo yum install ceph-deploy

sudo yum install yum-plugin-priorities

8 在管理节点上,切换到ceph用户下

    mkdir  my-cluster

    cd my-cluster

    创建集群并制定集群的监控节点

    ceph-deploy   new  ceph_node02

    执行该命令后将在当前目录生产ceph.conf 文件,打开文件并增加以下内容:

    osd pool default size = 2

 在所有节点上安装ceph软件

    ceph-deploy install  ceph_node01 ceph_node02 ceph_node03 ceph_node04 

 初始化监控节点并收集keyring

  ceph-deploy mon create-initial

9 为存储节点osd进程分配磁盘空间

 分别登录到ceph_node03 ceph_node04 

    03上创建:

    /ceph/osd0

    04上创建:

    /ceph/osd1

    在管理节点上执行:开启osd进程,并激活

    sudo ceph-deploy  osd prepare ceph_node03:/ceph/osd0  ceph_node04:/ceph/osd1

    sudo ceph-deploy osd activate ceph_node03:/ceph/osd0  ceph_node04:/ceph/osd1

10 在管理节点上执行下面的命令:把管理节点的配置文件与keyring同步至其它节点:

     sudo ceph-deploy admin  ceph_node01 ceph_node02 ceph_node03 ceph_node04 

     sudo chmod +r /etc/ceph/ceph.client.admin.keyring

11 检查集群健康状态,以下两种方式都可以查看

    [ceph@ceph_node01 my-cluster]$ sudo ceph health

    HEALTH_OK

    [ceph@ceph_node01 my-cluster]$ sudo ceph -s

    

12  在客服端上使用ceph存储空间:

准备client-node

通过admin-node节点执行命令:

ceph-deploy  install  client-node

注:本次实验client节点和管理节点都在一台服务器上,所以前面已经安装了ceph,

ceph-deploy admin   client-node  ---推送配置和keying到客户端

 

创建块设备

    sudo  rbd create foo --size 10000   --块设备大小

将ceph提供的块设备映射到client-node

    sudo rbd map foo --pool rbd 

格式化设备

sudo mkfs.xfs  /dev/rbd0

挂载

sudo mount  /dev/rbd0 /mnt/cephdir/

常用命令:

rbd ls  //查看本机的rbd设备

rbd info foo  //查看模块rbd设备的相关信息

rbd showmapped  //查看rbd设备映射信息

ceph health  //ceph健康状态

ceph status  //ceph当前全部状态

ceph -w //实时监控ceph状态及变化

ceph osd dump //所有osd详细状态 

ceph osd tree  //osd所在位置,及状态 

ceph quorum_status //mon优先级状态

ceph mon dump  //mon节点状态

ceph mds dump  //mds详细状态

ceph --admin-daemon /var/run/ceph/ceph-osd.0.asok config show  //在osd上查看详细的配置信息

时间: 2024-09-17 04:23:15

ceph部署的相关文章

Ceph分布式存储实战.

云计算与虚拟化技术丛书 Ceph分布式存储实战 Ceph中国社区 著 图书在版编目(CIP)数据 Ceph分布式存储实战/Ceph中国社区著. -北京:机械工业出版社,2016.11 (云计算与虚拟化技术丛书) ISBN 978-7-111-55358-8 I. C- II. C- III. 分布式文件系统 IV. TP316 中国版本图书馆CIP数据核字(2016)第274895号 Ceph分布式存储实战 出版发行:机械工业出版社(北京市西城区百万庄大街22号 邮政编码:100037) 责任编

如何在Ubuntu 16.04中安装Ceph存储集群

Ceph 是一个高性能.可靠.可扩展的开源存储平台.它是一个自由的分布式存储系统,提供了对象.块和文件级存储的接口,并可以不受单点故障的影响而运行. 在这个教程中,我将指导你在 Ubuntu 16.04 服务器上安装建立一个 Ceph 集群.Ceph 集群包括这些组件: Ceph OSD (ceph-osd) - 控制数据存储,数据复制和恢复.Ceph 集群需要至少两个 Ceph OSD 服务器.这次安装中我们将使用三个 Ubuntu 16.04 服务器. Ceph Monitor (ceph-

如何在 Ubuntu 16.04 中安装 Ceph 存储集群

Ceph 是一个高性能.可靠.可扩展的开源存储平台.它是一个自由的分布式存储系统,提供了对象.块和文件级存储的接口,并可以不受单点故障的影响而运行. 在这个教程中,我将指导你在 Ubuntu 16.04 服务器上安装建立一个 Ceph 集群.Ceph 集群包括这些组件: Ceph OSD (ceph-osd) - 控制数据存储,数据复制和恢复.Ceph 集群需要至少两个 Ceph OSD 服务器.这次安装中我们将使用三个 Ubuntu 16.04 服务器. Ceph Monitor (ceph-

在 CentOS 7.1 上安装分布式存储系统 Ceph

关于 Ceph 的介绍网上一大堆,这里就不重复了.Sage Weil 读博士的时候开发了这套牛逼的分布式存储系统,最初是奔着高性能分布式文件系统去的,结果云计算风口一来,Ceph 重心转向了分布式块存储(Block Storage)和分布式对象存储(Object Storage),现在分布式文件系统 CephFS 还停在 beta 阶段.Ceph 现在是云计算.虚拟机部署的最火开源存储解决方案,据说有20%的 OpenStack 部署存储用的都是 Ceph 的 block storage. Ce

Ceph分布式存储学习指南1.3 Ceph和存储的未来

1.3 Ceph和存储的未来 企业存储需求最近几年暴发性增长.研究表明,大企业的数据年增长率为40%-60%,而且许多公司的数据占用空间每年翻一番.IDC分析师估计2000年全世界数据量大约是54.4EB.2007年这个数字达到295EB,而到2014年年底,预计会达到8591EB. 所有存储系统的要求都是统一.分布式.可靠.高性能,最重要的是,能够大规模扩展至艾字节,甚至更高级别.Ceph存储系统是一个真正的解决方案,它可以应对这个星球上爆炸式增长的数据.Ceph能够闪电式兴起的原因在于它活跃

ceph之crush map

 编辑crush map: 1.获取crush map: 2.反编译crush map: 3.至少编辑一个设备,桶, 规则: 4.重新编译crush map: 5.重新注入crush map: 获取crush  map 要获取集群的crush map,执行命令: ceph osd  getcrushmap -o {compiled-crushmap-filename} ceph将crush输出(-o)到你指定的文件,由于crush map是已编译的,所以需要反编译: 反编译crush map 要

在CentOS 7上安装分布式存储系统Ceph

关于 Ceph 的介绍网上一大堆,这里就不重复了.Sage Weil 读博士的时候开发了这套牛逼的分布式存储系统,最初是奔着高性能分布式文件系统去的,结果云计算风口一来,Ceph 重心转向了分布式块存储(Block Storage)和分布式对象存储(Object Storage),现在分布式文件系统 CephFS 还停在 beta 阶段.Ceph 现在是云计算.虚拟机部署的最火开源存储解决方案,据说有20%的 OpenStack 部署存储用的都是 Ceph 的 block storage. Ce

如何配置Ceph对象存储作为KVM虚拟机外部存储

凭借良好的可扩展性以及价格优势,Ceph对象存储在KVM虚拟机存储领域逐渐流行起来. 对象存储最初来自于云环境,因为相比于其他环境,云环境对于存储可扩展性需求通常更高.而Ceph对象存储现在是配置KVM虚拟机外部存储最为流行的一种方式. 对于Ceph来说,同一集群中的多个结点协同工作,用户可以访问位于通用硬件的分布式存储系统.通过访问由ceph-mon结点提供的元数据信息,不同类型的客户端可以连接到这些存储结点. 对象存储是一种全新的存储类型:应用程序可以通过调用API直接访问存储,这意味着应用

《 Ceph分布式存储学习指南》导读

本节书摘来自华章出版社< Ceph分布式存储学习指南>一书中,作者Richard Banfield 著 易艺 译   目录 第1章 Ceph存储介绍 1.1 概要 1.2 Ceph的历史和发展 1.3 Ceph和存储的未来 1.4 兼容性组合 1.5 Ceph块存储 1.6 Ceph文件系统 1.7 Ceph对象存储 1.8 Ceph与其他存储解决方案 1.9 GPFS 1.10 iRODS 1.11 HDFS 1.12 Lustre 1.13 Gluster 1.14 Ceph 总结 第2章