ceph

基于Openresty+CEPH实现海量数据管理系统

為{幸葍}努か 提交于 2020-08-11 16:07:38
「持续更新中,欢迎关注...」 1. 需求: 作为一家专注于三维高精度地图服务的公司,有海量(PB级)的原始数据、中间数据、成功数据,需要存储、管理、并定期归档。 按项目管理数据,数据分类航飞数据、控制点数据、中间数据、成果数据、其他数据。数据来源包括无人机数据、载荷数据、地面站数据、人工打点数据等。不同渠道汇集而来的数据。 采用类似百度网盘的形式,上传、下载,支持断点续传、进度跟踪。 支持细化到文件级别的权限控制,以及更多的文件(夹)属性。 2. 分析: 系统重点在于数据存储的选型,支持海量数据的存储,能够支持在复杂网络下的数据上传。选用CEPH作为数据存储,RGW对象存储,S3协议上传下载,完美支持分片和断点续传。 系统难点在于文件级别的业务权限控制,以及文件(夹)更多的属性支持。CEPH RGW本身支持权限控制,但是无法和业务权限做对接。对象存储本身没有文件夹的概念,无法对文件夹做分类、数量展示、大小展示。所以实现自定义索引服务,CEPH主要负责存储,自定义索引服务实现展示与查询。 3. 实现 系统重点在于海量数据上传的可靠性与海量数据索引的管理。 3.1 架构 上传助手就是类百度网盘的桌面端软件,采用 Electron JS )实现。主要实现功能:项目展示、上传、下载。 业务层包括网关服务、账号服务、项目服务、文件索引服务等。采用Java + Spring Boot +

挂载 Ceph RBD 磁盘

感情迁移 提交于 2020-08-11 13:23:19
一、安装ceph 客户端安装ceph-common包 # dnf install ceph-common 注意:安装ceph-common软件包与Ceph集群软件版本要一致 二、创建池与块设备 创建一个新的存储池作为磁盘使用 [root@ceph01 ~]# ceph osd pool create k8s_rbd 32 32 # 两个 32 指定的 pg 和 pgp 的数量 [root@ceph01 ~]# ceph osd pool application enable k8s_rbd rbd 下面的命令创建了一个 2G 大小的磁盘,image-feature 参数指定的是 RBD 镜像的功能特性,很多功能特性只有高版本的 Linux kernel 才支持,甚至有些都没有 kernel 版本支持,所以只打开最基本的 layering 即可 [root@ceph01 ~]# rbd create k8s_rbd/k8s_dev --size 2G --image-feature=layering 创建并授权一个用户可访问rbd存储池ks8_rbd [root@ceph01 ~]# ceph auth add client.k8s_user mon "allow r" osd "allow * pool=k8s_rbd" 创建用户client.k8s_user,对OSD有所有的权限

Ubuntu14.04安装calamari

懵懂的女人 提交于 2020-08-11 11:09:14
Ubuntu14.04 安装 calamari 操作系统安装 …… 省略 …… 配置服务器信任 …… 省略 …… Calamari 服务端部署 1、 配置 ubuntu 默认仓库为阿里云镜像库 deb http://mirrors.aliyun.com/ubuntu/trusty main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/trusty-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/trusty-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/trusty-proposed main restricted universe multiverse debhttp://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universemultiverse 2、 配置 ceph calamari salt 仓库 echo “ debhttp://mirrors.aliyun.com/ceph

基于Ceph对象存储构建实践

家住魔仙堡 提交于 2020-08-11 05:51:52
存储发展 数据存储是人类永恒的话题和不断探索的主题 绳结记事 原始社会,文字未发明之前 ,人们所使用的一种记事方法,在绳子上打结记事。 穿孔卡 穿孔卡片是始于20世纪的主要存储方法,也是最早的机械化信息存储形式,进入20世纪60年代后,逐渐被其他存储手段取代。目前穿孔卡片已经极少使用,除非用于读出当年存储的历史数据。 磁鼓存储器 20世纪50年代,磁鼓作为内存储器应用于IBM 650。在后续的IBM 360/91和DEC PDP-11中,磁鼓也用作交换区存储和页面存储。磁鼓的代表性产品是IBM 2301固定头磁鼓存储器。磁鼓是利用铝鼓筒表面涂覆的磁性材料来存储数据的。鼓筒旋转速度很高,因此存取速度快。它采用饱和磁记录,从固定式磁头发展到浮动式磁头,从采用磁胶发展到采用电镀的连续磁介质。这些都为后来的磁盘存储器打下了基础。 磁鼓最大的缺点是存储容量太小。一个大圆柱体只有表面一层用于存储,而磁盘的两面都可用来存储,显然利用率要高得多。因此,当磁盘出现后,磁鼓就被淘汰了。 磁带 磁带是从1951年起被作为数据存储设备使用的,磁带是所有存储媒体中单位存储成本最低、容量最大、标准化程度最高的常用存储介质之一。从 20 世纪 70 年代后期到 80 年代出现了小型的盒式磁带,长度为 90 分钟的磁带每一面可以记录大约 660KB的数据。 软盘 软盘发明于1969年,直径是8英寸

spdk(三)----qemu使用spdk

可紊 提交于 2020-08-10 22:42:55
0. 配置 HUGEMEM=2048 ./scripts/setup.sh 1.启动vhost application: ./app/vhost/vhost -S /var/tmp -s 1024 -m 0x3 & 2. 创建SPDK bdev (注意:SPDK bdev是SPDK中对多种存储后端(storage backend)的抽象。 这些存储后端(storage backend)包括:ceph RBD,ramdisk,NVMe,iSCSI,逻辑卷,甚至是virtio)。这里就体现了SPDK block device layer的概念。 2.1 创建基于physical NVMe的spdk nvme bdev 这里要求运行qemu的Host上插有physical NVME SSD。 ./scripts/rpc.py bdev_nvme_attach_controller -b Nvme0 -t pcie -a 0000:01:00.0 ./scripts/rpc.py vhost_scsi_controller_add_target vhost.0 0 Nvme0n1 2.2 创建基于ramdisk的spdk bdev Malloc0 (vhost-scsi) ./scripts/rpc.py bdev_malloc_create -b Malloc0 128 4096

云原生存储系列文章(一):云原生应用的基石

橙三吉。 提交于 2020-08-10 07:06:46
作者| 郡宝 阿里云技术专家 参与文末留言互动,即有机会获得赠书福利! 导读:存储服务支撑了应用的状态、数据的持久化,是计算机系统中的重要组成部分,也是所有应用得以运行的基础,其重要性不言而喻。在存储服务演进过程中,每一种业务类型、新技术方向都会对存储的架构、性能、可用性、稳定性等提出新的要求,而在当今技术浪潮走到云原生技术普及的时代,存储服务需要哪些特性来支持应用呢? 从本文开始,我们将用一个系列文章对云原生存储进行方方面面的探析,该系列文章将从云原生存储服务的概念、特点、需求、原理、使用、案例等方面,和大家一起探讨云原生存储技术新的机遇与挑战,欢迎大家讨论: "There is no such thing as a 'stateless' architecture" - Jonas Boner 云原生存储系列文章(一):云原生应用的基石 云原生存储系列文章(二):容器存储与K8S存储卷 云原生存储系列文章(三):Kubernetes存储架构 云原生存储系列文章(四):K8S存储实践-Flexvolume 云原生存储系列文章(五):K8S存储实践-CSI 云原生存储系列文章(六):存储卷高可用方案 云原生存储系列文章(七):存储调度与容量感知 云原生存储系列文章(八):数据卷扩缩容能力 云原生存储系列文章(九):云原生存储安全 云原生存储系列文章(十):高性能计算场景的存储优化

云原生存储系列文章(一):云原生应用的基石

落爺英雄遲暮 提交于 2020-08-10 05:38:44
作者| 郡宝 阿里云技术专家 参与文末留言互动,即有机会获得赠书福利! 导读:存储服务支撑了应用的状态、数据的持久化,是计算机系统中的重要组成部分,也是所有应用得以运行的基础,其重要性不言而喻。在存储服务演进过程中,每一种业务类型、新技术方向都会对存储的架构、性能、可用性、稳定性等提出新的要求,而在当今技术浪潮走到云原生技术普及的时代,存储服务需要哪些特性来支持应用呢? 从本文开始,我们将用一个系列文章对云原生存储进行方方面面的探析,该系列文章将从云原生存储服务的概念、特点、需求、原理、使用、案例等方面,和大家一起探讨云原生存储技术新的机遇与挑战,欢迎大家讨论: "There is no such thing as a 'stateless' architecture" - Jonas Boner 云原生存储系列文章(一):云原生应用的基石 云原生存储系列文章(二):容器存储与K8S存储卷 云原生存储系列文章(三):Kubernetes存储架构 云原生存储系列文章(四):K8S存储实践-Flexvolume 云原生存储系列文章(五):K8S存储实践-CSI 云原生存储系列文章(六):存储卷高可用方案 云原生存储系列文章(七):存储调度与容量感知 云原生存储系列文章(八):数据卷扩缩容能力 云原生存储系列文章(九):云原生存储安全 云原生存储系列文章(十):高性能计算场景的存储优化

赞!期待已久的《架构解密:从分布式到微服务》终于出第2版了

我的未来我决定 提交于 2020-08-10 05:00:42
微服务、云原生、Kubernetes、Service Mesh 是分布式领域的热点技术,它们并不是凭空出现的,一定继承了某些“前辈”的优点。我们不仅要了解这些技术,还要深入理解其发展脉络、原理等,才能游刃有余地将其用于现有的项目开发或老系统改造中。 以下是这位资深架构师的笔记内容: 由于内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容。有需要获取完整版的朋友点赞后,私信【笔记】即可(一定要记得关注我,不然没办法回复陌生人私信) 第1章:深入理解网络 讲解分布式的基础一-网络, 对国际互联网、NIO、AIO、网络传输中的对象序列化问题、HTTP的前世今生、TCP/IP、从CDN到SD-WAN等知识进行深入讲解。 详细章节介绍: 从国际互联网开始 NIO, 一本难念的经 AIO,大道至简的设计与苦涩的现实 网络传输中的对象序列化问题 HTTP的前世今生 分布式系统的基石: TCP/IP 从CDN到SD-WAN 第2章:分布式系统的经典理论 讲解分布式系统的经典理论,涉及分布式系统的设计理念、-致性原理; ZooKeeper 的使用场景; CAP理论的前世今生; BASE准则;分布式事务的原理。 详细章节介绍: 从分布式系统的设计理念说起 分布式系统的一致性原理 分布式系统的基石之ZooKeeper 经典的CAP理论 BASE准则,一个影响深远的指导思想

Proxmox VE 超融合集群ceph OSD磁盘塞满处理

人盡茶涼 提交于 2020-08-06 21:19:43
故障描述 查看pve管理后台概述,发现有告警,提示ceph健康告警。 点这个黄色图标,得到更进一步的信息:有2个OSD磁盘塞满了。 再用鼠标点击第一行“2 nearfull osd(?)”右侧的感叹号,可确定序号为5与7的磁盘塞满了。 处理过程 确定被数据塞满的OSD位于哪些节点,然后在该节点删除没有运行的虚拟机或者不需要的虚拟机,以释放磁盘空间。  确定磁盘位于哪些节点。 从上图可知,两个塞满了数据的磁盘分别位于两台不同的物理节点。分别登录两节点,使用命令行df –h 来查看磁盘使用情况,以进一步印证问题所在。  Proxmox VE管理界面,删除未运行的虚拟机。 手工输入欲删除的虚拟机ID。 效果确认 登录任意节点,运行指令ceph health,输出为OK即可。也可在web管理界面,查看集群概述,健康状况图标显示为绿色,就算暂时处理好了。 来源: oschina 链接: https://my.oschina.net/u/4360424/blog/4278199

云原生存储系列文章:云原生应用的基石

别等时光非礼了梦想. 提交于 2020-08-05 04:37:23
作者| 郡宝 阿里云技术专家 参与文末留言互动,即有机会获得赠书福利! 导读:存储服务支撑了应用的状态、数据的持久化,是计算机系统中的重要组成部分,也是所有应用得以运行的基础,其重要性不言而喻。在存储服务演进过程中,每一种业务类型、新技术方向都会对存储的架构、性能、可用性、稳定性等提出新的要求,而在当今技术浪潮走到云原生技术普及的时代,存储服务需要哪些特性来支持应用呢? 从本文开始,我们将用一个系列文章对云原生存储进行方方面面的探析,该系列文章将从云原生存储服务的概念、特点、需求、原理、使用、案例等方面,和大家一起探讨云原生存储技术新的机遇与挑战,欢迎大家讨论: "There is no such thing as a 'stateless' architecture" - Jonas Boner 云原生存储系列文章(一):云原生应用的基石 云原生存储系列文章(二):容器存储与K8S存储卷 云原生存储系列文章(三):Kubernetes存储架构 云原生存储系列文章(四):K8S存储实践-Flexvolume 云原生存储系列文章(五):K8S存储实践-CSI 云原生存储系列文章(六):存储卷高可用方案 云原生存储系列文章(七):存储调度与容量感知 云原生存储系列文章(八):数据卷扩缩容能力 云原生存储系列文章(九):云原生存储安全 云原生存储系列文章(十):高性能计算场景的存储优化