
1、ceph osd tree
2、ceph osd df
3 ceph osd dump从osdmap中获取信息
4 ceph pg dump从pgmap中获取信息
5 ceph pg map pg_id找到osd列表
6 ceph daemon osdx help
osd_enable_op_tracker=true
debug_optracker=5/5
7 ceph daemon osd1 perf dump
8 ceph daemon osd1 dump inflight ops
9 ceph pg pg_id query查询pg详细信息
10 ceph daemon osd1 config show
11 ceph daemon osd1 config set osd_max_backfills 3
12 ceph tell osd1 injectargs —osd_max_backfills =2
13 rados -p test pool put testobject /etc/hosts
14 rados -p testpool ls
15 ceph osd map testpool testobject
目前ceph 12、14版本官方建议使用ansible代替ceph-deploy进行组件部署。
用户管理
用户创建
执行下面的命令新建一个用户 (S3 接口):
实例如下:
获取用户信息
要获取一个用户的信息,你必须使用user info子命令并且制定一个用户ID(—uid={username})
修改用户信息
要修改一个用户的信息,你必须指定用户的ID (—uid={username}),还有 你想要修改的属性值。典型的修改项主要是access和secret密钥,邮件地址,显示名称和访问级别。举例如下:
用户启用/停用
当你创建了一个用户,用户默认情况下是处于启用状态的。然而,你可以暂停用户权限并在以后随时重新启用它们。暂停一个用户,使用user suspend子命令然后指定用户的 ID:
要重新启用已经被停用的用户,使用 user enable 子命令并指明用户的 ID
新建一个密钥
要为用户新建一个密钥,你需要使用key create子命令。对于用户来说,需要指明用户的ID以及新建的密钥类型为s3。要为子用户新建一个密钥,则需要指明子用户的 ID以及密钥类型为swift。实例如下:
新建/删除 ACCESS 密钥
用户和子用户要能使用S3和Swift接口,必须有access密钥。在你新建用户或者子用户的时候,如果没有指明access和secret密钥,这两个密钥会自动生成。你可能需要新建access和/或secret密钥,不管是手动指定还是自动生成的方式。你也可能需要删除一个access和secret。可用的选项有:
删除用户
删除用户时,这个用户以及他的子用户都会被删除。当然,如果你愿意的话可以只删除子用户。要删除用户(及其子用户),可使用user rm子命令并指明用户ID:
只想删除子用户时,可使用 subuser rm 子命令并指明子用户ID。
添加/删除管理权限
Ceph存储集群提供了一个管理API,它允许用户通过REST API执行管理功能。默认情况下,用户没有访问这个API的权限。要启用用户的管理功能,需要为用户提供管理权限。
执行下面的命令为一个用户添加管理权限:
你可以给一个用户添加对用户、bucket、元数据和用量(存储使用信息)等数据的 读、写或者所有权限。举例如下:
实例如下:
要删除某用户的管理权限,可用下面的命令:
展示用户列表
radosgw-admin user list
配额管理
设置用户配额
在你启用用户的配额前 ,你需要先设置配额参数。例如:
实例如下:
最大对象数和最大存储用量的值是负数则表示不启用指定的配额参数。
设置 BUCKET 配额
Bucket 配额作用于用户的某一个 bucket,通过 uid 指定用户。这些配额设置是独立于用户之外的。:
最大对象数和最大存储用量的值是负数则表示不启用指定的配额参数。
启用/禁用用户配额
在你设置了用户配额之后,你可以启用这个配额。实例如下:
你也可以禁用已经启用了配额的用户的配额。举例如下:
读取/写入全局配额
你可以在period配置中读取或写入全局配额设置,查看全局配额配置可以用:
全局配额选项可以用global quota系列命令修改,如quota set、quota enable和quota disable命令。
需要重启集群才能生效
部署方法
本文档使用 ceph nautilus 作环境。
使用ansible部署
1复制group_vars目录下的rgwymlsample到该目录下,并修改名字为rgwyml。
2rgwyml中rgw_create_pools项取消注释,ansible会根据配置文件创建对应的池,ceph集群若缺少当中某一个池,rgw进程将无法正常运行。
3修改池的副本模式、pg_num、size。
1修改allyml文件,增加以下条目:
2修改ini部署文件,增加[rgws]项
这样就能在192168216145、192168215178上部署rgw。
结束语
从上述步骤可以看出ansible部署方法仅需要修改ini文件以及yml即可,部署流程比使用ceph-deploy简单。
以上就是关于今天的全部内容,下期将给大家带来《关于XFS文件系统的简单概述》,敬请期待~
系统的开始使用一个 ceph 集群。
本文将系统的介绍如何使用一个 ceph 集群。
涉及: crush、osd、pool、cache
ceph 版本:nautilus
ceph-deploy 版本:201
在基本使用需求下,一般需要存储集群提供高性能存储(SSD)和普通存储(hdd)。
在 ceph 中,具体表现为某些池使用高性能存储,某些池使用普通存储。而这种需求在 ceph 中由 crush 规则实现。
ceph 提供了缓存的概念。在普通的存储池之上架设一层高性能的缓存池,外部访问首先到达缓存池,如果发生未命中等情况再去访问存储池。这里需要提一点,并不是任何情况都需要缓存。
针对不同的场景,ceph 的使用方式多种多样,这里的介绍只能一切从简,但是会尽量全面。
一个标准的场景:一个存储池加一个缓存池,存储池使用普通设备,缓存池使用高性能设备。
首先添加一块高性能硬盘(我这里是虚拟环境,只能用普通硬盘充数)
然后需要利用 crush 让不同池使用不同的存储设备
这里只能拿普通的虚拟硬盘来做测试。
在 ceph02 虚拟机上增加一块 30G 的虚拟硬盘。
在 ceph03 虚拟机上增加一块 30G 的虚拟硬盘。
现在到部署节点进行 *** 作:
如图 ceph02 出现了 osd6,ceph03 出现了 osd7。
这里涉及到 root (根)的概念,在文章末尾扩展中会介绍。这里可以直接先使用。
将 osd6 osd7 加入名称为 cache 的根中(根名称会自动创建,注意,由于默认情况下 osd 在启动时读取的是 hostname,因此该方法只是临时生效,在文章末尾扩展中会介绍永久生效办法)
“高性能”存储盘现在已经有了,并且将其置于 cache 根下,这么做的意义在下一步中有体现。
现在可以进行下一步了。
当前环境下已经有一个默认的 crush 规则。
具体属性解释参考:
>
以上就是关于维护ceph的15条关键命令全部的内容,包括:维护ceph的15条关键命令、如何使用ansible部署ceph-rgw、ceph(第三步) 基本使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)