ceph安装包介绍:

  1.ceph-deploy:

    ceph的部署软件,通过该软件可以简便部署,这个软件并非整个ceph集群系统中必须的

  2.ceph:

    ceph整个服务集群中的每个节点必须的软件。提供分布式的存储与文件系统服务 (osd,mon守护进程)

  3.ceph-mds:

    元数据服务端 (mds 守护进程)

  4.libcephfs:

    客户端的编程接口(c语言)

  5.python-cephfs:

    客户端的编程接口(python)

  6.ceph-common,ceph-fs-common 客户端:

    使用ceph服务的客户端必须

ceph的配置

  ceph的进程:

    这三种进程分布于集群中的服务器上,服务器中可以只运行一种,也可以多个同时运行,推荐为一个服务器运行一种,使得负载均衡

    osd 守护进程:即为存储守护进程

    mon 守护进程:监视器守护进程

    mds 守护进程:元数据守护进程

  启动本机上所有进程:启动ceph在本机上配置的所有守护进程

$service ceph start
$service ceph stop

  查看本机上运行那些ceph进程

$ps  aux |grep ceph

  ceph的文件:

    可以在配置文件中修改位置

    配置文件:默认 /etc/ceph/ceph.conf

    日志文件:默认 /var/log/ceph

    运行时文件:默认 /var/run/ceph

      每个进程的管理套接字位置:/var/run/ceph/$cluster-$name.asok

      使用管理套接字查看osd.0的运行时配置信息:

$ceph --admin-daemon /var/run/ceph/ceph-osd..asok config show | less

  配置文件ceph.conf

    集群启动后,每个守护进程从配置文件 /etc/ceph/ceph.conf中查看配置信息。(/etc/ceph/ceph.conf 或者 ~/.ceph/config 或者 ./ceph.conf)

    ceph.conf的格式

[ global ]
#该配置下设置应用于所有ceph守护进程
[ osd ]
#该配置下设置应用于所有osd守护进程
#或者重写global配置
[ osd. ]
#该配置设置应用于osd 0进程,或者重写前面配置
[ mon ]
#该配置应用于所有监视器进程
[ mds ]
#该配置应用于所有元数据服务进程

配置集群无密码互联:

  整个集群机器一般在一个局域网的内网里,ceph-deploy一般只安装在一台机器上,但可以对集群内任意机器进行安装配置等操作,且该操作是需要具有root权限的。因此可以如下配置无密码操作网内其他机器。

  1.在每台机器上建立root权限用户,名称例如 ceph;

  2.为每台机器设置ssh服务;

    在cesh-deploy上安装ssh服务器 

$apt-get install openssh-server

    使用ssh-keygen生成私钥,公钥

$ssh-keygen

    然后将生成的公复制到每台机器,使得ceph-deploy能够访问每台机器

$ssh-copy-id xxx.xxx.xxx.xxx

    修改~/.ssh/config文件,配置访问ip,以及用户ceph

使用ceph-deploy进行安装:

使用ceph-deploy进行卸载:

  对集群中某个节点ceph-node卸载其上的服务

$stop ceph-all                                                         # 停止所有ceph进程

$ceph-deploy uninstall  [{ceph-node}]                                  # 卸载所有ceph程序

$ceph-deploy purge   [[ceph-node} [{ceph-node}]                        #删除ceph相关的包

$ceph-deploy purgedata {ceph-node} [{ceph-node}]                       # 删除ceph相关的包
$ceph-deploy forgetkeys #删除key

错误:  

  安装好之后,查看一下pool,默认只有rbd

$ ceph osd pool ls

  

  这时查看状态

$ceph -s

  有时候会出现HEALTH_WARN,先查看一下rbd的大小,如果osd数目小于这个数字,就会出错,所以需要手动将数量设置为与目前osd个数相同。

$ceph osd pool get rbd size
$ceph osd pool set rbd size 1
$ceph osd pool set rbd min_size

  

  问题1:ceph-deploy部署的方式。就算我3个osd装在两台机器上,osd pool default size还是要设置为2,才行,不然还是会提示 degraded; pgs stuck unclean  

  答案1:因为ceph deploy 默认吧osd 设置在同一个bucket下面,而ceph算法规则默认将不同的备份数分发到不同的不同的bucket下,所以ceph认为你的bucket少于你的备份 数从而报这个错。要避免这个问题可以手动部署ceph不用cephdeploy,或者手动去修改

  

  由于做试验的时候,使用的机器台数不同,以及osd数量不同,会出现,HEALTH_WARN  pgs degraded,undersized 等警告,这个时候需要调整池子的大小,size,min_size.

  特别是单机安装的时候,容易出现这种错误。

  

  安装的时候某个osd总是down状态,后来重启机器就好了。

优化:  

PG Number

PG和PGP数量一定要根据OSD的数量进行调整,计算公式如下,但是最后算出的结果一定要接近或者等于一个2的指数。

Total PGs = (Total_number_of_OSD * 100) / max_replication_count

例如15个OSD,副本数为3的情况下,根据公式计算的结果应该为500,最接近512,所以需要设定该pool(volumes)的pg_num和pgp_num都为512.

ceph osd pool set volumes pg_num 512
ceph osd pool set volumes pgp_num 512

  

  

使用ceph-deploy进行ceph安装的更多相关文章

  1. 分布式存储Ceph的几种安装方法,源码,apt-get,deploy工具,Ubuntu CentOS

    最近搞了下分布式PB级别的存储CEPH  尝试了几种不同的安装,使用 期间遇到很多问题,和大家一起分享. 一.源码安装 说明:源码安装可以了解到系统各个组件, 但是安装过程也是很费劲的,主要是依赖包太 ...

  2. ceph luminous版本的安装部署

    1. 前期准备   本次安装环境为:   ceph1(集群命令分发管控,提供磁盘服务集群) CentOs7.5 10.160.20.28   ceph2(提供磁盘服务集群) CentOs7.5 10. ...

  3. ceph Luminous版手动安装零散记录

    1.安装必要的依赖包,关防火墙,向/etc/hosts内添加域名等 2.安装ceph 配置yum源 (如果嫌慢,可以配置cachedir=/home/yum/$basearch/$releasever ...

  4. ceph mimic版本 部署安装

    ceph 寻址过程 1. file --- object映射, 把file分割成N个相同的对象 2. object - PG 映射, 利用静态hash得到objectID的伪随机值,在 "位 ...

  5. ceph工作原理和安装

    一.概述 Ceph是一个分布式存储系统,诞生于2004年,最早致力于开发下一代高性能分布式文件系统的项目.随着云计算的发展,ceph乘上了OpenStack的春风,进而成为了开源社区受关注较高的项目之 ...

  6. ceph对象存储RADOSGW安装与使用

    本文章ceph版本为luminous,操作系统为centos7.7,ceph安装部署方法可以参考本人其他文章. [root@ceph1 ceph-install]# ceph -v ceph vers ...

  7. ceph存储之ceph客户端

    CEPH客户端: 大多数Ceph用户不会直接往Ceph存储集群里存储对象,他们通常会选择Ceph块设备.Ceph文件系统.Ceph对象存储之中的一个或多个: 块设备: 要实践本手册,你必须先完成存储集 ...

  8. 二十八. 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虚 ...

  9. ceph 010 clustermap ceph调优

    cluster map [ceph: root@clienta /]# ceph mon dump epoch 4 fsid 2ae6d05a-229a-11ec-925e-52540000fa0c ...

  10. 查看,修改ceph节点的ceph配置命令

    标签(空格分隔): ceph,ceph运维,ceph配置 查看ceph配置 1. 查看ceph默认配置: # ceph --show-config 2. 查看 type.num 的ceph默认配置: ...

随机推荐

  1. Mongodb基于oplog恢复至任意时间

    背景: 最近后端基于mongo的项目越来越多,MySQL基于冷备份+binlog可以恢复至任意时间点,那么mongo是否有同样的功能呢?经过调研发现可以通过dump+oplog可以实现粒度更细致的恢复 ...

  2. git 常用commands(转)

    常用 Git 命令清单   作者: 阮一峰 日期: 2015年12月 9日 我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60- ...

  3. 基于mosquitto的MQTT服务器---SSL/TLS 单向认证+双向认证

    基于mosquitto的MQTT服务器---SSL/TLS 单向认证+双向认证 摘自:https://blog.csdn.net/ty1121466568/article/details/811184 ...

  4. 项目中遇到的死锁问题: Lock wait timeout exceeded; try restarting transaction

    最近项目中频繁出现  Lock wait timeout exceeded; try restarting transaction这个错误,把我们弄得痛苦不堪啊,为了解决问题,上网上找好多资料,终于把 ...

  5. ThinkPhp数据缓存技术

    1.缓存初始化 在 ThinkPHP 中,有一个专门处理缓存的类:Cache.class.php(在Thinkphp/Library/Think/cache.class.php,其他的各种缓存类也在这 ...

  6. ubuntu 14.04常见问题

    1. 改root密码 sudo passwd root 2. 显示登录框 sudo gedit /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 添加 ...

  7. JavaEE互联网轻量级框架整合开发(书籍)阅读笔记(12):XML配置自动扫描包,自动加载*.properties文件

    一.XML和注解组合使用 前几篇的测试案例都是在Java类中配置,现在换一种使用方式,在XML中配置,使Spring IoC容器在启动之后自动去扫描配置的包路径,扫描加载指定路径下的propertie ...

  8. 第几天——第九届蓝桥杯C语言B组(省赛)第一题

    原创 标题:第几天 2000年的1月1日,是那一年的第1天. 那么,2000年的5月4日,是那一年的第几天? 注意:需要提交的是一个整数,不要填写任何多余内容. 这题是送分题,只需要注意一下2000年 ...

  9. 浅谈HTTPS以及Fiddler抓取HTTPS协议(摘抄)

    一.浅谈HTTPS 我们都知道HTTP并非是安全传输,在HTTPS基础上使用SSL协议进行加密构成的HTTPS协议是相对安全的.目前越来越多的企业选择使用HTTPS协议与用户进行通信,如百度.谷歌等. ...

  10. 彻底的卸载SQL Server2005

    昨天不小心把SQL Server 2005弄坏了.所以,对彻底卸载他进行了研究.在这里记录一下,嘿嘿~ 1.首先在控制面板中卸载所有与SQL Server 2005相关的程序,要记得最后一个卸载Mic ...