: apt install pssh pssh 也就是 Parallel SSH,可以方便地并发 SSH 到多个节点、批量执行命令,这个工具需要读取主机列表,因此将所有节点(主控除外)的主机名记录到文本文件里...节点基础设施 如果尚未搭建时钟同步,需要手动安装: apt install chrony # 查看能连接到的 servers # 如外网不通则需要改配置连内部服务器,如果不清楚如何配置,联系云服务商技术支持...进入 Ceph 管理容器,后续命令都在这个管理容器内执行。但考虑到主控节点已经在宿主机层面安装了所有需要的工具,事实上不进入 cephadm shell 也是完全可以的。...osd_memory_target 17179869184 组建 Ceph 集群 将所有节点添加进 Ceph 集群,前 5 台节点(含主控)打上 _admin 标签,后续的节点则不需要。...在 JuiceFS 挂载点删除足量的文件,如果 Ceph 一侧没有立即释放容量,则说明遇到了上方提到的「容量超限时,无法执行删除」的死锁问题,这时需要登录 Ceph 主控节点,将阈值临时提高,来允许删除请求
将群集彼此隔离—— 支持多个 Ceph 集群同时存在于同一主机上一直是一个比较小众的场景,但是确实存在,并且以一种健壮,通用的方式将集群彼此隔离,这使得测试和重新部署集群对于开发人员和用户而言都是安全自然的过程...以下是一些事情的列表 cephadm 可以做: cephadm 可以将 Ceph 容器添加到集群。 cephadm 可以从集群中移除 Ceph 容器。 cephadm 可以更新 Ceph 容器。...### 2.将节点状态标记为out ceph osd out osd.x #停止到osd的进程,这个是通知集群这个osd不再映射数据了,不提供服务了,因为本身没权重,就不会影响到整体的分布,也就没有迁移...删除节点 ceph osd rm osd.x # 这个是从集群里面删除这个节点的记录ls ### 5....如果它被添加到 已经包含 Ceph 守护进程的现有主机,将导致 cephadm 移动 其他位置的守护程序(OSD 除外,不会自动删除)。
: 编译后的默认值 集中式配置数据库 保存在本地主机上的配置文件 环境变量 命令行参数 运行时将覆盖 监视器(MON) 节点管理集中的 配置数据库,在启动时,Ceph 守护进程通过命令行选项解析环境变量和本地集群配置文件提供的配置选项...Part2集群监控配置 8Ceph监控配置 Ceph监视器(MONs)存储和维护客户端用来查找MON和OSD节点的集群映射,Ceph客户端在向osd读写任何数据之前,必须连接到一个 MON 来检索集群映射...支持对运行中的集群添加或移除mon,集群配置文件定义了用于集群操作的MON主机IP地址和端口,rnon_host 设置可以包含IP地址或DNS名称,cephadm 工具无法更新集群配置文件,定义一个策略来保持集群配置文件在集群节点之间同步...这提供了额外的安全层,因为它确保只有授权的客户端可以连接到 Ceph 集群。 使用 cephadm 部署集群时,默认启用 cephx。...~]# firewall-cmd --reload 还可以通过将ceph-mon服务添加到防火墙规则中来保护MON节点 [root@node ~]# firewall-cmd --permanent
移除问题主机 节点挂掉后,在确定不能继续开机进入系统的情况下,需要在其他正常的节点将故障节点进行移除,此次宕机的节点为node4,以下命令可能会导致数据丢失,因为 osd 将通过调用每个 osd 来强制从集群中清除...ceph orch host rm node4 --offline --force 节点初始化操作 将node4节点即故障节点更换新的系统盘并重新安装系统,重装后node4主机名我修改成了node1,并更换了新的.../cephadm install ceph-common 向集群中添加新节点 在ceph集群添加新主机 [root@node2 ~]# ceph orch host add node1 Added...ceph集群操作,因为新添加的节点上缺少ceph集群管理的密钥环,在上面的命令中其实可以看到新加的node1是缺少一个_admin标签的,这里提一下ceph是有几个特殊的主机标签的,以_开头的属于ceph...主机的特殊标签,将_admin标签添加到这台新节点,就会导致cephadm 将配置文件ceph.conf和密钥环文件ceph.client.admin.keyring分发到新节点上,这里我们把_admin
前提条件 Cephadm使用容器和systemd安装和管理Ceph集群,并与CLI和仪表板GUI紧密集成。 cephadm仅支持octopus v15.2.0和更高版本。...cephadm命令可以 引导新集群 使用有效的Ceph CLI启动容器化的Shell 帮助调试容器化的Ceph守护进程。...添加主机到集群 将公钥添加到新主机 ssh-copy-id -f -i /etc/ceph/ceph.pub node2 ssh-copy-id -f -i /etc/ceph/ceph.pub node3...告诉Ceph,新节点是集群的一部分 [root@localhost ~]# ceph orch host add node2 Added host 'node2' [root@localhost ~...]# ceph orch host add node3 Added host 'node3' 添加主机会自动扩展mon和mgr节点 ?
将集群公钥复制到每个主机,使用如下命令复制集群密钥到集群节点: 下面的步骤是 cephadm 自动的,不需要显示处理 [root@node -]# cephadm shell [ceph: root@...Ceph 编排器支持为主机分配标签,标签可以用于对集群进行分组 hosts ,以便可以同时将Ceph服务部署到多个主机,主机可以有多个标签 标签可以帮助识别每个主机上运行的守护进程,从而简化集群管理任务...admin节点 [ceph: root@node /)# ceph orch \ host label add AOMIN_NOOE _admin 使用标签将集群守护进程部署到特定的主机 (ceph...分发ssh密钥 作为root用户,将 Ceph 存储集群 SSH 公钥添加到新主机上 root 用户的 authorized_keys 文件中 [root@adm ~]# ssh-copy-id \...-f -i /etc/ceph/ceph.pub \ root@new-osd-1 检查并配置先决条件 作为 root 用户,将新节点添加到目录 /usr/share/cephadm-ansible
Cephadm 包装提供,应该在第一个集群节点上安装这个包,它充当引导节点。...当引导集群时,这个Ceph容器镜像是必需的,因为部署的 Ceph 容器是基于该镜像,为了与 Ceph 集群 节点交互,Cephadm 使用 SSH 连接向集群添加新主机、添加存储或监控这些主机 Cephadm...Ceph 管理工具 Ceph部署在容器中,在引导节点中不需要额外的软件,可以从集群的引导节点中的命令行引导集群,引导集群设置了一个最小的集群配置,其中只有一个主机(引导节点)和两个守护进程(监视器和管理进程...shell,只应该在引导节点中运行此命令,因为在引导集群时,只有这个节点可以访问/etc/ceph中的admin密钥 [root@clienta ~]# cephadm shell Inferring...与Ceph CLI一样,Ceph 将 Dashboard GUI web服务器作为Ceph-mgr 守护进程的一个模块,默认情况下,当创建集群时,Ceph在引导节点中部署Dashboard GUI并使用
/cephadm install # 引导集群 [root@ceph-01 ~]# cephadm bootstrap --mon-ip 192.168.0.14 Creating directory...-01 ~]# # 开启 mds 组件 # cephfs:文件系统名称 # --placement:指定集群内需要几个 mds,后面跟主机名 [root@ceph-01 ~]# ceph orch...ceph orch ls # 列出集群内的主机 ceph orch host ls # 列出集群内容器的详细信息 ceph orch ps # 调整组件的数量 ceph orch apply mon...ceph orch host label add node1 mon # 告诉cephadm根据标签部署mon,修改后只有包含mon的主机才会成为mon,不过原来启动的mon现在暂时不会关闭 ceph...数计算公式如下:PG总数=(OSD数*100)/最大副本数/池数 # 在 ceph 集群,其中一个节点执行即可。
然后我修改了主机名,因为没有dns,所以在三台设备hosts中指定了: 192.168.3.4 ceph-master 192.168.3.5 ceph-node1 192.168.3.6 ceph-node21.2.3.../cephadm install $ which cephadm #检查安装结果1.2. 3.4 开始部署集群 首先创建一个ceph的配置文件存放地点,这里要提示的一点就是以前的版本很多配置都需要写到配置文件里...拉取完成后就开始进行集群的正式部署了 $ cephadm bootstrap --mon-ip ** #是你的master节点IP地址 例如: # ....说白了就是通过这个进程可以让你节点上的硬盘可以在ceph里用。再说白了,添加OSD就是把你的硬盘添加到ceph集群。...pool-name>1.2. 7.2 创建块设备映像 必须先在]创建映像,然后才能将块设备添加到节点。
在node1添加monitor 为集群生成唯一的fsid,fsid是群集的唯一标识符,代表 Ceph 存储群集主要用于 Ceph 文件系统的文件系统 ID uuidgen 创建ceph配置文件,将生成的...--cap mon 'profile bootstrap-osd' --cap mgr 'allow r' 将生成的键添加到 ceph.mon.keyring ceph-authtool /tmp/ceph.mon.keyring...chown ceph:ceph /tmp/ceph.mon.keyring 使用主机名、主机 IP 地址和 FSID 生成monitor映射。...systemctl start ceph-mon@node1 && systemctl enable ceph-mon@node1 在另外两个节点安装mon 将密钥和配置文件拷贝至其他节点 scp /...-i node3 --monmap /tmp/ceph.mon.map --keyring /tmp/ceph.mon.keyring 将新的mon节点添加至ceph集群的mon列表 [root@node1
PoC 测试环境我们搭建了一个单节点的 Redis + 3 节点的 Ceph 对象存储集群,在环境搭建方面因为 Redis 跟 Ceph 都比较成熟,部署运维方案可以参考的资料也比较全,而 JuiceFS.../mlnx_add_kernel_support.sh -m /root/ib -k (kernel 版本) 对象存储 对象存储采用自建的 Ceph 集群,Ceph 集群采用 Cephadm 进行部署,...Cephadm 是随着 Ceph 新版本 v15.2.0(Octopus)发布的安装工具,并且不支持 Ceph 的旧版本,Cephadm 不依赖于外部配置工具,如 Ansible、 Rook 和 Salt...,它通过 SSH 将管理器守护进程连接到主机来实现这一点。...通过 Cephadm 引导一个单节点的集群,Cephadm 会在执行 bootstrap 引导的节点部署 mgr 跟 mon 服务,当添加其他节点的时候,会自动在其中一台部署 mgr 管理节点,目前我们生产采用
/cephadm install # 引导新的集群 [root@ceph-1 ~]# cephadm bootstrap --mon-ip 192.168.1.25 Verifying podman...ceph-common包 scp /etc/yum.repos.d/ceph.repo ceph-2:/etc/yum.repos.d/ #将主节点的ceph源同步至其他节点 scp /etc/yum.repos.d.../ceph.repo ceph-3:/etc/yum.repos.d/ #将主节点的ceph源同步至其他节点 yum -y install ceph-common #在节点安装ceph-common...ceph-2:/etc/ceph/ #将密钥文件传输至对应节点 scp /etc/ceph/ceph.client.admin.keyring ceph-3:/etc/ceph/ #将密钥文件传输至对应节点...orch ls #列出集群内运行的组件 ceph orch host ls #列出集群内的主机 ceph orch ps #列出集群内容器的详细信息 ceph orch apply
可用于生产部署 cephadm,较新的集群自动化部署工具,支持通过图形界面或者命令行界面添加节点,目前不建议用于生产环境 manual,手动部署,一步步部署Ceph集群,支持较多定制化和了解部署细节,安装难度较大...ceph.bootstrap-rbd-mirror.keyring 4、将认证密钥拷贝到其他节点,便于ceph命令行可以通过keyring和ceph集群进行交互,ceph-deploy admin node...因此无法往集群中写数据等操作,如下是ceph -s查看的输出结果 [root@node-1 ceph-admin]# ceph -s cluster: id: 760da58c-0041.../dev/vdb [ceph添加osd节点] 如上已将node-1的vdb添加到ceph集群中,ceph -s可以看到当前有一个osd加入到集群中,执行相同的方法将node-2和node-3上的磁盘添加到集群中...因此可以支持),将mgr部署到node-1节点,执行ceph-deploy mgr create node-1 [Ceph添加mgr节点] 至此,Ceph集群已经部署完毕。
这是Ceph教程系列的第三部分。在第一部分中,我向您展示了如何在CentOS7上构建具有多个节点的“ Ceph集群”。...先决条件 Ceph集群-1个Ceph-admin节点,1个Moinitor节点(ceph-mon),3个Ceph-osd节点(请参阅第1部分)。...第3步-配置Ceph-admin节点 在此步骤中,我们将配置集群,以便我们可以使用ssh密钥(无需密码)从admin连接到client2节点。...vim ~/.ssh/config 在文件末尾,将以下配置粘贴: Host client2 Hostname client2 User cephuser 接下来,将客户端节点的主机配置行添加到...现在,将ceph-admin节点的ssh密钥添加到client2节点。
如果在那四个位置下面无法找到秘钥文件,就会报上面的unable to find a keyring这样的错误,解决方法后面再说。...注意:如果关闭了CephX,那么任何一个客户端只要拥有了MON的IP和集群的fsid,就可以连接到集群中,然后执行所有的Ceph的指令,这是相当危险的,所以对于一个非局域网的集群,是需要开启的。...在集群部署完毕后,可以关闭CephX认证,具体方法如下: 修改部署目录内ceph.conf的cephx->none,将配置推送到所有节点。 重启所有的MON和OSD。...将配置文件推送到各个节点。 重启所有的OSD。 这样OSD在启动时,就会自动加到对应的主机名下的host下方,并将主机名加到default下方。这样CRUSH就可以找到OSD了。...简单点说,如果这个值为false,那么OSD在启动的时候不会去修改你的CRUSH树,也就是说OSD不会自动填加到对应的主机名下再自己添加到root=default下。
最后,TGS 将票证发送给客户端,客户端使用这个票证来访问所需的服务。...的前缀 如果将密钥环文件存储在默认位置,则不需要--keyring选项。...集群中创建两个新的客户端,分别用于编辑和获取名为 replpool1 下的文档资源 cephadm shell -- ceph auth get-or-create client.docedit mon...对应的密钥 cephadm shell -- ceph auth ls | egrep -A3 'docedit|docget' # 将客户端密钥文件同步到另一个服务器上 rsync -v /etc...N docs get adoc /tmp/test # 比较两份数据文件 diff /etc/hosts /tmp/test # 使用未授权的 client.docget 客户端试图写入数据并触发错误
一个Ceph集群中有Monitor节点、MDS节点(用于文件存储)、OSD守护进程。...Ceph基础概念ceph-deploy 一个集群自动化部署工具,使用较久,成熟稳定,被很多自动化工具所集成,可用于生产部署;cephadm 从Octopus开始提供的新集群部署工具,支持通过图形界面或者命令行界面添加节点...admin-node: 需要一个安装管理节点,安装节点负责集群整体部署,这里我们用CephNode01为admin-node和Ceph-Mon节点;mon: monitor节点,即是Ceph的监视管理节点...|+----[SHA256]-----+# 将免密传输到各个主机上ssh-copy-id root@node1ssh-copy-id root@node2ssh-copy-id root@node3#...--cap mon 'profile bootstrap-osd' --cap mgr 'allow r'# 将生成的密钥添加到中ceph.mon.keyring。
场景介绍:在我们的IDC中,存在着运行了3-6年的Ceph集群的服务器,这些服务器性能和容量等都已经无法满足当前业务的需求,在购入一批高性能机器后,希望将旧机器上的集群整体迁移到新机器上,当然,是保证业务不中断的前提下...均已经对接到了 Ceph 集群上,具体节点配置如下: 主机名 IP地址 Openstack 组件 Ceph 组件 con 192.168.100.110 nova,cinder,glance,neutron...,也就是说,将运行于 con,com,ceph三个节点的 Ceph 集群迁移到 new_mon_1,new_mon_2,new_mon_3 这三台新机器上。...在将新旧节点 Ceph 版本一致后(旧节点升级,新节点降级),此现象得以消除。...来连接到 /etc/ceph/ceph.conf配置文件指定IP的MON,认证成功后,可以获取集群的很多MAP( monmap,osdmap,crushmap...)
节点故障检测概述 节点的故障检测是分布式系统无法回避的问题,集群需要感知节点的存活,并作出适当的调整。通常我们采用心跳的方式来进行故障检测,并认为能正常与外界保持心跳的节点便能够正常提供服务。...一个好的故障检测策略应该能够做到: 及时:节点发生异常如宕机或网络中断时,集群可以在可接受的时间范围内感知; 适当的压力:包括对节点的压力,和对网络的压力; 容忍网络抖动 扩散机制:节点存活状态改变导致的元信息变化需要通过某种机制扩散到整个集群...host,即计数来自不同主机的osd报告 mon_osd_min_down_reporters(2): 最少需要多少来自不同的mon_osd_reporter_subtree_level的osd的错误报告...及时:伙伴OSD可以在秒级发现节点失效并汇报Monitor,并在几分钟内由Monitor将失效OSD下线。...Ceph实际上是将故障检测过程中中心节点的压力分散到所有的OSD上,以此提高中心节点Monitor的可靠性,进而提高整个集群的可扩展性; 容忍网络抖动:Monitor收到OSD对其伙伴OSD的汇报后,
领取专属 10元无门槛券
手把手带您无忧上云