CEPH分布式存储部署

合集下载

Kubernetes中分布式存储Rook-Ceph部署快速演练

Kubernetes中分布式存储Rook-Ceph部署快速演练

Kubernetes中分布式存储Rook-Ceph部署快速演练最近在项⽬中有涉及到Kubernetes的分布式存储部分的内容,也抽空多了解了⼀些。

项⽬主要基于Rook-Ceph运⾏,考虑到Rook-Ceph部署也不那么简单,的步骤起点也不算低,因此,在整合官⽅⽂档的某些步骤的基础上,写篇⽂章简单总结⼀下。

Rook-Ceph是Kubernetes中分布式存储的⼀种解决⽅案,Rook作为⼀种开源的、云原⽣的存储编排器,为各种存储服务在云原⽣的环境中实现⽆缝整合,提供了所必须的平台、框架和服务;⽽Ceph则是Rook所⽀持的众多存储⽅案的⼀种,在Kubernetes环境⾥,Ceph基于Rook能够为应⽤程序提供块存储(Block Storage),对象存储(Object Storage)以及共享⽂件系统(SFS)服务。

此处就不对Rook Ceph进⾏太多的介绍,直接步⼊正题,⼀步⼀步地演练Rook-Ceph从安装部署到使⽤的整个过程。

注意:本⽂所有的yaml⽂件都是为了配合整个演练过程⽽设计的,理论上不能直接⽤在⽣产环境。

如有需要,在⽤在⽣产环境之前,请确保所需的参数都已正确配置。

安装Kubernetes安装Kubernetes。

安装⽅法有很多,不怕⿇烦可以徒⼿安装,也可以直接使⽤云供应商的托管服务,⽐如Azure AKS,也可以使⽤Rancher RKE,在此就不赘述了。

安装Rook Ceph Operator这⾥我们基于Ceph来讨论。

事实上Rook⽀持Ceph、Cassandra、CockroachDB、EdgeFS、NFS以及YugabyteDB等多种存储供应商(Storage Provider),针对不同的存储供应商,Rook提供不同的Operator来进⾏资源的部署和管理。

使⽤下⾯的命令来安装Rook Ceph Operator:helm repo add rook-release https://charts.rook.io/releasekubectl create namespace rook-cephhelm install --namespace rook-ceph rook-ceph rook-release/rook-ceph安装Ceph集群(Ceph Cluster)可以使⽤下⾯的yaml⽂件:# ceph-cluster-deploy.yamlapiVersion: ceph.rook.io/v1kind: CephClustermetadata:name: rook-cephnamespace: rook-cephspec:cephVersion:image: ceph/ceph:v15.2.7allowUnsupported: falsedataDirHostPath: /var/lib/rookskipUpgradeChecks: falsecontinueUpgradeAfterChecksEvenIfNotHealthy: falsemon:count: 3allowMultiplePerNode: falsemgr:modules:- name: pg_autoscalerenabled: truedashboard:enabled: truessl: truemonitoring:enabled: falserulesNamespace: rook-cephnetwork:crashCollector:disable: falsecleanupPolicy:confirmation: ""sanitizeDisks:method: quickdataSource: zeroiteration: 1allowUninstallWithVolumes: falseannotations:labels:resources:removeOSDsIfOutAndSafeToRemove: falseuseAllNodes: trueuseAllDevices: falsedeviceFilter: nvme1n1config:osdsPerDevice: "1"disruptionManagement:managePodBudgets: falseosdMaintenanceTimeout: 30pgHealthCheckTimeout: 0manageMachineDisruptionBudgets: falsemachineDisruptionBudgetNamespace: openshift-machine-apihealthCheck:daemonHealth:mon:disabled: falseinterval: 45sosd:disabled: falseinterval: 60sstatus:disabled: falseinterval: 60slivenessProbe:mon:disabled: falsemgr:disabled: falseosd:disabled: false然后使⽤以下命令创建Ceph集群:kubectl create -f ceph-cluster-deploy.yaml命令执⾏成功之后,需要等待⼏分钟,以便OSD能够成功启动。

ceph文件存储流程

ceph文件存储流程

ceph文件存储流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!Ceph 文件存储流程。

Ceph 是一种分布式文件系统,它为对象、块和文件存储提供了一个统一的接口。

ceph 运维手册

ceph 运维手册

ceph 运维手册一、引言1.Ceph 简介Ceph 是一款开源的分布式存储系统,它具有高度可扩展性、性能优异、易于管理等特点。

Ceph 能够为云计算、虚拟化和企业级存储场景提供稳定、可靠的存储服务。

2.Ceph 运维手册目的本手册旨在为运维人员提供一份详细的Ceph 运维指南,帮助读者更好地理解和掌握Ceph 存储系统的部署、管理、优化和维护。

二、Ceph 架构1.组件介绍(1)Ceph Monitor(MON)Ceph Monitor 负责维护整个集群的元数据信息,包括监控OSD 节点的状态、存储池配置等。

(2)Ceph OSD 节点Ceph OSD 节点是Ceph 集群中的存储节点,负责存储数据和处理数据复制、恢复等操作。

(3)Ceph 客户端Ceph 客户端用于访问Ceph 存储系统,为应用提供存储服务。

2.架构原理Ceph 采用去中心化的设计,将数据分散存储在多个OSD 节点上,并通过Ceph Monitor 进行统一管理。

数据在OSD 节点之间自动进行复制和分布,以保证数据的可靠性和性能。

三、Ceph 运维流程1.部署Ceph 集群(1)准备环境确保服务器硬件、网络和操作系统满足Ceph 部署要求。

(2)安装和配置Ceph 组件根据Ceph 版本和集群规模,安装MON、OSD 和客户端等相关组件。

(3)配置集群参数设置集群名称、存储池、副本数等参数,以满足业务需求。

2.Ceph 集群日常运维(1)监控集群状态使用Ceph 提供的命令行工具或监控工具,定期检查集群健康状况。

(2)扩容和缩容集群根据业务需求,动态调整集群规模和存储容量。

(3)处理故障遇到故障时,及时排查并采取相应措施解决问题。

3.Ceph 存储管理(1)创建和删除存储池根据业务需求,创建和管理存储池。

(2)配置和调整存储策略根据数据特点,设置合适的存储策略,以提高存储利用率。

(3)监控存储性能定期检查存储性能,优化存储配置。

分布式文件存储CephFS详尽介绍及使用经验

分布式文件存储CephFS详尽介绍及使用经验

分布式文件存储 CephFS详尽介绍及使用经验1. Ceph架构介绍Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统。

特点如下:- 高性能a. 摒弃了传统的集中式存储元数据寻址的方案,采用CRUSH算法,数据分布均衡,并行度高。

b.考虑了容灾域的隔离,能够实现各类负载的副本放置规则,例如跨机房、机架感知等。

c. 能够支持上千个存储节点的规模,支持TB到PB级的数据。

- 高可用性a. 副本数可以灵活控制。

b. 支持故障域分隔,数据强一致性。

c. 多种故障场景自动进行修复自愈。

d. 没有单点故障,自动管理。

- 高可扩展性a. 去中心化。

b. 扩展灵活。

c. 随着节点增加而线性增长。

- 特性丰富a. 支持三种存储接口:块存储、文件存储、对象存储。

b. 支持自定义接口,支持多种语言驱动。

使用场景:•块存储 (适合单客户端使用)o典型设备:磁盘阵列,硬盘。

o使用场景:a. docker容器、虚拟机远程挂载磁盘存储分配。

b. 日志存储。

...•文件存储 (适合多客户端有目录结构)o典型设备:FTP、NFS服务器。

o使用场景:a. 日志存储。

b. 多个用户有目录结构的文件存储共享。

...•对象存储 (适合更新变动较少的数据,没有目录结构,不能直接打开/修改文件) o典型设备:s3, swift。

o使用场景:a. 图片存储。

b. 视频存储。

c. 文件。

d. 软件安装包。

e. 归档数据。

...系统架构:Ceph 生态系统架构可以划分为四部分:1.Clients:客户端(数据用户)2.mds:Metadata server cluster,元数据服务器(缓存和同步分布式元数据)3.osd:Object storage cluster,对象存储集群(将数据和元数据作为对象存储,执行其他关键职能)4.mon:Cluster monitors,集群监视器(执行监视功能)2. NFS介绍1. NAS(Network Attached Storage)- 网络存储基于标准网络协议NFSv3/NFSv4实现数据传输。

ceph接口使用方法

ceph接口使用方法

ceph接口使用方法Ceph接口使用方法Ceph是一个开源的分布式存储系统,拥有强大的可扩展性和高可靠性。

它通过将数据分布在多个节点上,实现了数据冗余和负载均衡的功能。

Ceph提供了一系列的接口,让开发者可以轻松地使用其功能。

本文将介绍Ceph接口的使用方法,包括安装和配置Ceph、使用Ceph 接口进行数据操作等。

通过本文的指导,读者可以快速上手并深入了解Ceph接口的使用。

第一步:安装Ceph在开始使用Ceph接口之前,首先需要在集群中安装和配置Ceph。

Ceph 可以在Linux系统上运行,支持多种发行版。

以下是在Ubuntu上安装Ceph的步骤:1. 更新系统软件包:使用以下命令更新系统软件包以获取最新的软件包列表和安全修复程序。

sudo apt-get updatesudo apt-get upgrade2. 安装Ceph软件包:使用以下命令安装Ceph软件包。

sudo apt-get install ceph ceph-deploy3. 配置Ceph集群:使用Ceph提供的命令行工具ceph-deploy来配置Ceph集群。

首先需要创建一个新的目录作为Ceph集群的工作目录。

mkdir my-clustercd my-cluster然后,在此目录下,运行以下命令来初始化Ceph集群。

ceph-deploy new <MON节点>这将在当前目录下创建一个名为ceph.conf的配置文件,其中包含了集群的基本配置信息。

接下来,使用以下命令将Ceph软件包安装到集群的所有节点。

ceph-deploy install <所有节点>最后,使用以下命令来为集群添加MON节点。

ceph-deploy mon create-initial第二步:配置Ceph存储池一旦Ceph集群安装和配置完成,下一步是创建一个或多个存储池,以供存储数据。

存储池是Ceph中最基本的单元,用于管理数据的存储和分发。

分布式存储基础、Ceph、cinder及华为软件定义的存储方案

分布式存储基础、Ceph、cinder及华为软件定义的存储方案

块存储与分布式存储块存储,简单来说就是提供了块设备存储的接口。

通过向内核注册块设备信息,在Linux 中通过lsblk可以得到当前主机上块设备信息列表。

本文包括了单机块存储介绍、分布式存储技术Ceph介绍,云中的块存储Cinder,以及华为软件定义的存储解决方案。

单机块存储一个硬盘是一个块设备,内核检测到硬盘然后在/dev/下会看到/dev/sda/。

因为需要利用一个硬盘来得到不同的分区来做不同的事,通过fdisk工具得到/dev/sda1, /dev/sda2等,这种方式通过直接写入分区表来规定和切分硬盘,是最死板的分区方式。

分布式块存储在面对极具弹性的存储需求和性能要求下,单机或者独立的SAN越来越不能满足企业的需要。

如同数据库系统一样,块存储在scale up的瓶颈下也面临着scale out的需要。

分布式块存储系统具有以下特性:分布式块存储可以为任何物理机或者虚拟机提供持久化的块存储设备;分布式块存储系统管理块设备的创建、删除和attach/detach;分布式块存储支持强大的快照功能,快照可以用来恢复或者创建新的块设备;分布式存储系统能够提供不同IO性能要求的块设备。

现下主流的分布式块存储有Ceph、AMS ESB、阿里云磁盘与sheepdog等。

1Ceph1.1Ceph概述Ceph目前是OpenStack支持的开源块存储实现系统(即Cinder项目backend driver之一) 。

Ceph是一种统一的、分布式的存储系统。

“统一的”意味着Ceph可以一套存储系统同时提供对象存储、块存储和文件系统存储三种功能,以便在满足不同应用需求的前提下简化部署和运维。

“分布式”在Ceph系统中则意味着真正的无中心结构和没有理论上限的系统规模可扩展性。

Ceph具有很好的性能、可靠性和可扩展性。

其核心设计思想,概括为八个字—“无需查表,算算就好”。

1.2Ceph系统的层次结构自下向上,可以将Ceph系统分为四个层次:基础存储系统RADOS(Reliable, Autonomic, Distributed Object Store,即可靠的、自动化的、分布式的对象存储);基础库LIBRADOS;高层应用接口:包括了三个部分:RADOS GW(RADOS Gateway)、RBD(Reliable Block Device)和Ceph FS(Ceph File System)。

云平台企业级部署方案-案例2-最佳实践-超融合

云平台企业级部署方案-案例2-最佳实践-超融合

云平台企业级部署方案-最佳实践(案例二:20台服务器+ceph超融合)StarVCenter Team2021年4月目录1概述................................................................................................................................1-3 1.1目标..............................................................................................................................1-3 1.2方案优缺点..................................................................................................................1-3 1.3名词解释......................................................................................................................1-3 2硬件设备清单................................................................................................................2-4 3部署结构规划................................................................................................................3-5 3.1标配方案......................................................................................................................3-5 3.2减配方案......................................................................................................................3-6 4IP及主机名规划............................................................................................................4-7 5安装部署........................................................................................................................5-7 5.1上架与布线..................................................................................................................5-7 5.2安装StarVE操作系统 .................................................................................................5-75.2.1Bios设置........................................................................................................5-75.2.2选择安装类型................................................................................................5-85.2.3选择磁盘........................................................................................................5-85.2.4配置主机名、IP.............................................................................................5-9 5.3部署StarVCenter集群 ............................................................................................. 5-105.3.1指定网卡用途............................................................................................. 5-115.3.2配置辅存..................................................................................................... 5-125.3.3配置数据库集群......................................................................................... 5-135.3.4配置管控集群............................................................................................. 5-145.3.5一键部署..................................................................................................... 5-155.3.6验证安装..................................................................................................... 5-16 5.4部署ceph集群......................................................................................................... 5-165.4.1配置存储网................................................................................................. 5-165.4.2配置/etc/hosts ............................................................................................ 5-175.4.3配置ssh免密访问...................................................................................... 5-185.4.4采用辅助软件部署..................................................................................... 5-195.4.5创建pool .................................................................................................... 5-21 6资源池初始化............................................................................................................. 6-226.1加入计算集群........................................................................................................... 6-22 6.2添加存储................................................................................................................... 6-22 6.3添加网络资源........................................................................................................... 6-236.3.1添加VLAN................................................................................................... 6-236.3.2添加端口组(子网)................................................................................. 6-246.3.3添加IP地址池............................................................................................ 6-24 6.4创建虚拟机............................................................................................................... 6-251概述1.1目标很多想要自建云平台的小企业,没有云平台的建设经验,不知道搭建云平台需要哪些软硬件资源,怎么规划,具体怎么落地。

ceph运维手册

ceph运维手册

ceph运维手册Ceph是一个开源的分布式存储系统,可提供高可用性、高性能和可扩展性。

为了能够有效地管理和维护Ceph集群,需要掌握一些运维技巧和最佳实践。

以下是关于Ceph运维的一些指南和手册。

1. 部署和安装Ceph集群:- 选择合适的硬件配置:了解Ceph的硬件要求,并根据需要选择适当的硬件,如存储设备、网络等。

- 安装Ceph软件包:根据操作系统版本和类型,选择合适的Ceph 软件包,并按照官方文档进行安装。

- 配置Ceph集群:了解Ceph的配置文件和参数,按照需求进行相应的配置,如存储池、存储节点等。

2. 监控和调优Ceph集群:- 使用Ceph管理工具:了解Ceph提供的管理工具,如cephadm、ceph-deploy等,可以方便地监控和管理Ceph集群。

- 监控集群状态:配置和使用监控工具,如Ceph Dashboard、Prometheus等,定期监控集群的状态和性能指标,及时发现和解决问题。

- 调优集群性能:根据实际需求和负载特点,调整Ceph集群的参数和配置,例如调整副本数、调整缓存策略等,以提高性能和可靠性。

3. 故障排除和故障恢复:- 日志分析和排查:仔细分析Ceph集群的日志,找出可能的问题根源,并采取相应的解决措施。

- 数据恢复和修复:当发生数据丢失或损坏时,根据Ceph提供的工具和方法,进行数据恢复和修复操作,确保数据的完整性和可用性。

- 灾难恢复:制定和实施灾难恢复计划,确保在灾难事件发生时,能够快速恢复Ceph集群的运行。

4. 安全和权限管理:- 访问控制和身份认证:了解Ceph的访问控制机制,配置和管理用户、角色和权限,确保集群的安全性。

- 数据加密和传输安全:配置和使用Ceph的加密功能,保护数据的隐私和机密性,确保数据在传输过程中的安全性。

5. 升级和扩展Ceph集群:- 升级Ceph软件:根据官方文档,了解和执行Ceph软件的升级过程,确保平滑升级,并避免数据丢失或故障。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
出现以下提示,启动成功:
[root@node1 ~]# ceph -s
cluster a500528d-fc02-464e-b944-bddacbb5c3d1
health HEALTH_ERR 192 pgs stuck inactive; 192 pgs stuck unclean; no osds
initrd /initramfs-3.10.29.img
#ceph osd crush add osd.0 0.2 root=default host=node2
2.3.5启动osd进程
#ceph-osd -i 0
2.3.6查看进程
#ps -ef|grep ceph-osd
以下提示启动成功
[root@node2 ~]# ps -ef|grep ceph-osd
public network= 192.168.100.0/24
cluster network =172.16.100.0/24
osd pool default size =2
osd pool default min size = 1
max open files= 65535
mon osd full ratio = .95
检查mds状态,成功启动如下
[root@node1 ~]# ceph mds stat
e19: 1/1/1 up {0=node1=up:active}
3.1确定操作系统内核
3.1.1查看内核版本
#uname -r
若内核版本低于2.6.32时,建议升级到2.6.34或以上
3.1.2更新内核,编译ceph模块
[root@node1 linux-3.10.29]# ll /boot/|grep 3.10
initramfs-3.10.29.img
System.map -> /boot/System.map-3.10.29
System.map-3.10.29
vmlinuz -> /boot/vmlinuz-3.10.29
[ceph-extras-noarch]
name=Ceph Extras noarch
baseurl=/packages/ceph-extras/rpm/centos6/noarch
enabled=1
priority=2
gpgcheck=1
type=rpm-md
gpgkey=https:///git/?p=ceph.git;a=blob_plain;f=keys/release.asc
vmlinuz-3.10.29
更改grub.conf
#vi /etc/grub.conf
添加
title CentOS (3.10.29)
root (hd0,0)
kernel /vmlinuz-3.10.29 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
[ceph-extras-source]
name=Ceph Extras Sources
baseurl=/packages/ceph-extras/rpm/centos6/SRPMS
enabled=1
priority=2
gpgcheck=1
type=rpm-md
gpgkey=https:///git/?p=ceph.git;a=blob_plain;f=keys/release.asc
192.168.100.101
172.16.100.101
CentOS6.5
mon、mds
node2
192.168.100.102
172.16.100.102
CentOS6.5
osd
node3
192.168.100.103
172.16.100.103
CentOS6.5
osd
操作系统使用CentOS6.5,因为系统已经包含xfs的支持可以直接使用不需要再次编译。
#scp-r root@192.168.100.101:/etc/ceph/root@192.168.100.102:/etc/
2.3.4部署osd节点
#sshroot@192.168.100.102
#parted /dev/sdb mktable gpt
#parted /dev/sdb mkpart osd.0 1 20g //新加的硬盘为20g,并将所有空间划分为一个分区
mon osd nearfull ratio = .85
[mon]
mon data= /data/$cluster-$id
[osd]
osd journal size = 1024
osd journal = /data/$name/journal
osd data = /data/$name
2.2.1编辑配置文件,添加mon参数
#vi /etc/ceph/ceph.conf
[mon.node1]
host =node1
mon addr = 192.168.100.101:6789
2.2.2创建一个mon keyring
#ceph-authtool/etc/ceph/ceph.mon.keyring --create-keyring --gen-key -n mon.
CEPH
PS:本文的所有操作均在mon节点的主机进行,如有变动另有注释
作者:网络技术部徐志权
日期:2014年2月10日
VERSION 1.0
更新历史:
2014.2.10:首次完成ceph部署文档,块设备及对象存储的配置随后添加。
1.1
主机名
公网IP(eth0)
私网IP(eth1)
操作系统
运行服务
node1
baseurl=/packages/ceph-extras/rpm/centos6/$basearch
enabled=1
priority=2
gpgcheck=1
type=rpm-md
gpgkey=https:///git/?p=ceph.git;a=blob_plain;f=keys/release.asc
##ceph osd create//记录得到的编号,该编号是ceph/ceph.conf
添加
[osd.0]
public addr = 192.168.100.102
cluster addr = 172.16.100.102
2.3.3同步配置文档到节点node2
添加
/dev/sdb1 /data/osd.0 xfs defaults0 0
#echo "ceph-osd-i 0" >> /etc/rc.local
2.4
创建mds
#ceph-mds -i node1 -n mds.node1 -c /etc/ceph/ceph.conf -m 192.168.100.101:6789
2.2.3创建mon数据目录
#mkdir-p /data/ceph-node1
#ceph-mon -inode1--mkfs --keyring/etc/ceph/ceph.mon.keyring
2.2.4启动并查看集群状态
#/etc/init.d/ceph start mon.node1
#ceph –s
#rpm --import 'https:///git/?p=ceph.git;a=blob_plain;f=keys/autobuild.asc'
添加ceph-extras库
#vi /etc/yum.repos.d/ceph-extras
[ceph-extras]
name=Ceph Extras Packages
#mkfs-t xfs /dev/sdb1
#mkdir /data/osd.0
#mount /dev/sdb1 /data/osd.0
#ceph-osd -i 0 --mkfs --mkkey
#ceph auth add osd.0 osd 'allow *' mon 'allow rwx' -i /data/osd.0/keyring
添加ceph库
#rpm -Uvh /rpms/el6/noarch/ceph-release-1-0.el6.noarch.rpm
添加epel库
#rpm -Uvh /pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
#make menuconfig
依次选择下面选项,ceph必须编译为模块M
File systems-->Network File Systems--> Ceph distributed file system
保存并退出
#make
#make modules_install
#make install
确定boot木有下存在以下文件
root 1364 10 08:42 ? 00:00:07 ceph-osd -i 0
2.3.7查看osd状态
#exit
#ceph osd stat
osd添加成功
[root@node1 ~]# ceph osd stat
osdmap e41:1osds:1up,1in
相关文档
最新文档